[Ajuda] /eventos em Dialog
#1

Galera como eu crio um /evento, ai abre um Dialog, com as opзхes,
Chuck
X1
Kart, etc.

aki um cmd de evento.

pawn Код:
if(dialogid == 2449)
    {
        if(response == 0)
        {
            SendClientMessage(playerid, COLOR_RED, "Voce Optou por nao ir No Evento de Chucky Norris!");
            PlayerInfo[playerid][pTrazerChucky] = 0;
            return 1;
        }
        if(response == 1)
        {
            if(PlayerInfo[playerid][pJailed] != 0)
            {
                SendClientMessage(playerid,COR_PM,"ERRO* Vocк esta preso e nao pode ir no Evento de Chucky Norris!");
                   return 0;
            }
            if(WantedPoints[playerid] > 0)
            {
                SendClientMessage(playerid,COR_PM,"ERRO* Vocк nгo pode ir no evento estando procurado!");
                return 0;
            }
            RemovePlayerFromVehicle(playerid);
            SetVehicleToRespawn(GetPlayerVehicleID(playerid));
            PlayerInfo[playerid][pTrazerChucky] = 1;
            PrimeiroChuck[playerid] = 1;
            SendClientMessage(playerid, COLOR_RED, "Seja Bem vindo ao Evento de Chuck Norris!");
            TempoEventoChuck = SetTimerEx("ZerarEventoChuck", 180000, 0, "i", playerid);
            if(PrimeiroChuck[playerid] == 1 && LimiteChuck == 0)
            {
                SendClientMessage(playerid, COLOR_WHITE, "Vocк foi o primeiro a entrar no evento e virou o Chuck Norris");
                GivePlayerWeapon(playerid, 38, 9999999);
                GivePlayerWeapon(playerid, 27, 9999999);
                GivePlayerWeapon(playerid, 30, 9999999);
                SetPlayerSkin(playerid,264);
                SetPlayerArmour(playerid, 200);
                SetPlayerHealth(playerid, 200);
                SetPlayerColor(playerid,0xFF0000FF);
                SetPlayerVirtualWorld(playerid,0);
                SetPlayerInterior(playerid,0);
                PlayerInfo[playerid][pInt] = 0;
                SetPlayerWorldBounds(playerid, -347.175231, -459.175231, 2292.944824, 2164.944824);
                LimiteChuck = 1;
                new rand;
                rand = random(sizeof(gChuckEvento));
                SetPlayerPos(playerid, 2511.3423,-1671.1489,13.4475);
                SetPlayerFacingAngle(playerid, 2511.3423,-1671.1489,13.4475);
                PrimeiroChuck[playerid] = 1;
                PlayerInfo[playerid][pTrazerChucky] = 0;
                return 1;
            }
            if(PlayerInfo[playerid][pTrazerChucky] == 1)
            {
                PrimeiroChuck[playerid] = 0;
                SpawnPlayer(playerid);
            }
            return 1;
        }
        return 1;
   }
Reply
#2

pawn Код:
ShowPlayerDialog(playerid, 2449, DIALOG_STYLE_LIST,"Tipo de evento","Chuck\nX1\nKart","Criar","Cancelar");
Reply
#3

mas e akele sim e nгo??
como q faзo?
Reply
#4

Entгo, eu axei esse tutorial aki.
pawn Код:
new Clicado[MAX_PLAYERS];//Usado para armazenar o ID do player clicado

public OnPlayerClickPlayer(playerid, clickedplayerid, source) //Quando o player clicar em outro player (No Tab)
{
    if(IsPlayerAdmin(playerid))
    {
      new str[64] = "Ir atй\nTrazer\nKickar\nBanir"; //Para cada item use "/n" o que pularб uma linha para o prуximo item.
      ShowPlayerDialog(playerid, 0, DIALOG_STYLE_LIST, "Opзхes - Administrador", str, "Selecionar", "Cancelar"); //mostrarб o dialog
        Clicado[playerid] = clickedplayerid;//armazenarб o id do player clicado
    }
    return 1;
}

//Agora no OnDialogResponse

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])//Dialog criado por [VGS]Mac_OC
{
    new string[128];
   
    if(dialogid == 0)
    {
        if(IsPlayerAdmin(playerid))//verifica se o player й administrador, caso nгo queira sу para administrador, retire-o
        {
        if(response)//botгo 1
        {
          new Float:Coord[3];
          if(listitem == 0)//Item 0 da lista( й o primeiro da lista)
          {
                    GetPlayerPos(Clicado[playerid], Coord[0], Coord[1], Coord[2]);
                    new intid = GetPlayerInterior(Clicado[playerid]);
                    if(IsPlayerInAnyVehicle(playerid))
                    {
                        new vid = GetPlayerVehicleID(playerid);
                        SetVehiclePos(vid, Coord[0], Coord[1]+4, Coord[2]+4);//teleportarб o veiculo
                        SetPlayerInterior(playerid, intid);
                        LinkVehicleToInterior(vid, intid);
                    }
                    else
                    {
                        SetPlayerInterior(playerid, intid);
                        SetPlayerPos(playerid, Coord[0], Coord[1]+4, Coord[2]+4);//teleportarб o player
                    }
                    format(string, sizeof(string), "Vocк se teleportou atй %s(id: %d)", PlayerName(Clicado[playerid]), Clicado[playerid]);
                    SendClientMessage(playerid, Cor_Verde, string);
                    return 1;
          }
         
          else if(listitem == 1)//item da lista 1 (segundo da lista) farб com que traga o player
          {
                    GetPlayerPos(playerid, Coord[0], Coord[1], Coord[2]);
                    new intid = GetPlayerInterior(playerid);
                    if(IsPlayerInAnyVehicle(Clicado[playerid]))
                    {
                        new vid = GetPlayerVehicleID(Clicado[playerid]);
                        SetVehiclePos(vid, Coord[0], Coord[1]+4, Coord[2]+4);
                        SetPlayerInterior(Clicado[playerid], intid);
                        LinkVehicleToInterior(vid, intid);
                    }
                    else
                    {
                        SetPlayerInterior(Clicado[playerid], intid);
                        SetPlayerPos(Clicado[playerid], Coord[0], Coord[1]+4, Coord[2]+4);
                    }
                    format(string, sizeof(string), "Vocк trouxe %s(id: %d) atй vocк.", PlayerName(Clicado[playerid]), Clicado[playerid]);
                    SendClientMessage(playerid, Cor_Verde, string);
                    return 1;
                }
               
                else if(listitem == 2)
                {
                format(string, sizeof(string),"%s foi kickado por %s ", PlayerName(Clicado[playerid]), PlayerName(playerid));
                SendClientMessageToAll(Cor_Vermelho, string);
                Kick(Clicado[playerid]);
                return 1;

                }
               
                else if(listitem == 3)
                {
                    format(string, sizeof(string), "%s foi kickado por %s ", PlayerName(Clicado[playerid]), PlayerName(playerid));
                    SendClientMessageToAll(Cor_Vermelho, string);
                    Ban(Clicado[playerid]);
                  return 1;

                }
           }
        }
        return 1;
    }
    return 0;
}
tipo como faзo para ser o comando /eventos.
cero ai vai aparecer uma lista, x1,kart,etc.
atй ai tudo bem, agora como definoo para kd evento?
Код:
if(strcmp(cmd, "/trazertodosx1", true) == 0)
	{
	    if(IsPlayerConnected(playerid))
		{
		    if(PlayerInfo[playerid][pAdmin] >= 4)
			{
			    if(admtrampando[playerid] < 1 && PlayerInfo[playerid][pAdmin] != 1342)
				{
					SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo estб trabalhando! (/trabalhar)");
					return 1;
				}
	   			GetPlayerPos(playerid, trazerx, trazery, trazerz);
				for(new i=0; i<MAX_PLAYERS; i++)
				{
				    if(IsPlayerConnected(i))
				    {
                    	TrazerTodosX1[i] = 1;
                    	SendClientMessage(i ,COLOR_LIGHTBLUE, "Admin estб chamando todos para um evento de X1!");
                    	SendClientMessage(i ,COLOR_LIGHTBLUE, "Digite 'Sim' para ir e 'Nao' para continuar onde estб.");
                    	OnTrazerX1 = 1;
                    }
				}
				if(TrazerTodosX1[playerid] == 1)
				{
                    SetPlayerPos(playerid,-2326.8809,-1636.9822,483.7031);
				    SendClientMessage(playerid ,COLOR_LIGHTRED, "Vocк ativou o /trazertodosx1!");
				   	TrazerTodosX1[playerid] = 0;
				   	return 1;
				}
    			if(OnTrazerX1 == 1)
				{
				    SendClientMessage(playerid ,COLOR_GREY, "Ja estгo usando /trazertodos,use  /destruirtrazer para criar outro!");
					return 1;
				}
			    return 1;
			}
		    return 1;
		}
		return 1;
	}
sу faзa 1 com esse, q dps no resto eu me viro.

Pra ajuda.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)