[Ajuda] Ativar Item ?
#1

Bom Galerra, vim aqui para pedir ajuda pra vocкs, estou fazendo um GM sobre zombies, jб indo bem, sem erros. Porйm gostaria de adicionar um funзгo chamada /perks, estб funзгo somente poderia ser ativada caso ele selecionasse um item.

Exemplo: ele selecionou o perk " high jump ", Entгo o cуdigo que estб no OnPlayerKeyStateChange seria ativado, e caso ele mudasse de perk, " selecionasse o " empty " que й vбzio, o perk " high jump" fosse desativado.

Apenas retirei as partes necessбrias para o funcionamento, obrigado por ajudar.



Код:
new Menu:perksz;

public OnGameModeInit()
{  
   AddMenuItem(perksz, 0, "High Jump");
   AddMenuItem(perksz, 0, "Empty");
}

public OnPlayerCommandText(playerid, cmdtext[])
{
    if(strcmp(cmdtext, "/perks", true) == 0)
	{
        if(gTeam[playerid] == ZOMBIE)
	    {
		    ShowMenuForPlayer(perksz, playerid); 
		    TogglePlayerControllable(playerid, false);  
		    SendClientMessage(playerid, 0xFFFFFFAA, "Select a perk !"); 
		    return 1;
	    }
	}
	return 0;
}

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{   
    if(newkeys & KEY_JUMP)
    {
         if(gTeam[playerid] == ZOMBIE)
         {
             new Float:SuperJump[3];
             GetPlayerVelocity(playerid, SuperJump[0], SuperJump[1], SuperJump[2]);
             SetPlayerVelocity(playerid, SuperJump[0], SuperJump[1], SuperJump[2]+5);
		 }
    }
    return 1;
}

public OnPlayerSelectedMenuRow(playerid, row)
{
    new Menu:CurrentMenu = GetPlayerMenu(playerid);
	if(CurrentMenu == perksz) // Por isso essas linhas <
	{
		switch(row) // Agora й cada opзгo por si
		{
			case 0: // PERK JUMP
			{
                             if(gTeam[playerid] == 	ZOMBIE)
	                    {
                                 new Float:SuperJump[3];
                                 GetPlayerVelocity(playerid, SuperJump[0], SuperJump[1], SuperJump[2]);
                                 SetPlayerVelocity(playerid, SuperJump[0], SuperJump[1], SuperJump[2]+5);
		                 TogglePlayerControllable(playerid, 1);
			    }
			}
			case 1: 
			{
				TogglePlayerControllable(playerid, 1);
				SendClientMessage(playerid, 0xFFFFFFAA, "> You didn't choose any item !"); 
			}
		}
	}
        TogglePlayerControllable(playerid,1);	
	VerifyInventoryMenuRowSelected(playerid, row);
	DestroyPlayerInventoryMenu(playerid);
	return 1;
}

public OnPlayerExitedMenu(playerid)
{
        TogglePlayerControllable(playerid, true);
	return 1;
}
Reply


Messages In This Thread
[Ajuda] Ativar Item ? - by leonardo1434 - 13.05.2012, 21:13
Re: [Ajuda] Ativar Item ? - by zbt - 13.05.2012, 21:52
Re: [Ajuda] Ativar Item ? - by Joker_OutLock - 13.05.2012, 21:53
Re: [Ajuda] Ativar Item ? - by leonardo1434 - 13.05.2012, 22:06

Forum Jump:


Users browsing this thread: 1 Guest(s)