[Ajuda] Alguem por-favor!
#1

poderiia coloca esse comandos feito por Drakns(Drakins Seu la o nome dele), para mais jogadores poder usar ?

Код:
#include <a_samp>
#define DIALOG_DUELO 24245
new bool:InvitedDuel[MAX_PLAYERS];
new IdDuel[MAX_PLAYERS];
new bool:ArenaUsada;
new Contar = 5;
new ContarDuelo[5][5] ={"~r~1","~b~2","~p~3","~y~4","~g~5"};
forward ExecutarContagem(playerid,pid);
public ExecutarContagem(playerid,pid)
{
    if (Contar > 0)
    {
        GameTextForPlayer(playerid,ContarDuelo[Contar-1], 2500, 3);
        GameTextForPlayer(pid,ContarDuelo[Contar-1], 1000, 3);
        Contar--;
        SetTimerEx("IrDuelo",1000,false,"ii",playerid,pid);
    }
    else
    {
        GameTextForPlayer(playerid,"~>~~g~Go~w~Go~r~Go~b~Go~<~", 2500, 3);
        GameTextForPlayer(pid,"~>~~g~Go~w~Go~r~Go~b~Go~<~", 2500, 3);
        Contar = 5;
        TogglePlayerControllable(playerid,true);
        TogglePlayerControllable(pid,true);
    }
    return 1;
}


public OnPlayerCommandText(playerid, cmdtext[])
{
    new cmd[128];
    new idx;
    new id;
    cmd = otherplayerids(cmdtext, idx);
    if(!strcmp("/duelo", cmd, true))
    {
        new tmp[128];
        new string[128];
        tmp = otherplayerids(cmdtext, idx);
        id = strval(tmp);
        if(InvitedDuel[playerid] == true) return SendClientMessage(playerid,0xF41917AA,"»»[DUELO]«« : Vocк Jб Convidou alguйm,Aguarde Expirar o Convite");
        if(ArenaUsada == true) return SendClientMessage(playerid,0xF41917AA,"»»[DUELO]«« : No momento a Arena estб Sendo Usada");
        if(!strlen(tmp)) return SendClientMessage(playerid,0xF41917AA,"»»[DUELO]«« : Vocк deve digitar os ID do Player seguindo a Maneira (/duelo-run [playerid])");
        if(id == playerid) return SendClientMessage(playerid,0xF41917AA,"»»[DUELO]«« : Vocк nгo pode convidar a Si-Mesmo");
        if(InvitedDuel[id] == true) return SendClientMessage(playerid,0xF41917AA,"»»[DUELO]«« : No Momento o Player estб em um Duelo, Aguarde..");
        new name[MAX_PLAYER_NAME];
        GetPlayerName(playerid, name, sizeof(name));
        format(string, sizeof(string), "»»[DUELO]«« : %s esta lhe convidando  para um \n Duelo Leve (Clique Aceitar para Aceitar)",name);
        ShowPlayerDialog(id,DIALOG_DUELO,DIALOG_STYLE_MSGBOX,"»»[DUELO]«« :",string,"Aceitar", "Recusar");
        GameTextForPlayer(id,"~r~DUE~w~LO !", 2500, 3);
        InvitedDuel[id] = true;
        IdDuel[id] = playerid;
        SetTimerEx("LimparDuelo",15000,false,"ii",id,playerid);
        return 1;
    }
    return 0;
}


forward IrDuelo(playerid,pid);
public IrDuelo(playerid,pid)
{
    //-> Funзхes para o X1 <-//
    //SetPlayerPos
    //SetPlayerArmor
    //SetPlayerHealth

    //-> Funзхes para Contagem no x1<-//
    TogglePlayerControllable(playerid,false);
    TogglePlayerControllable(pid,false);
    ExecutarContagem(playerid,pid);
    return 1;
}


forward LimparDuelo(playerid,pid);
public LimparDuelo(playerid,pid)
{
    if(ArenaUsada == false)
    {
        SendClientMessage(pid,0x1DF6F6AA,"»»[DUELO]«« : Desafio Expirado, Ele Recusou");
        SendClientMessage(playerid,0x1DF6F6AA,"»»[DUELO]«« : Desafio Expirado,Vocк Automaticamente Recusou");
        InvitedDuel[pid] = false;
        InvitedDuel[playerid] = false;
        IdDuel[playerid] = playerid;
        IdDuel[pid] = pid;
    }
    return 1;
}


otherplayerids(const string[], &index)
{
    new length = strlen(string);
    while ((index < length) && (string[index] <= ' '))
    {
        index++;
    }
    new offset = index;
    new result[20];
    while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
    {
        result[index - offset] = string[index];
        index++;
    }
    result[index - offset] = EOS;
    return result;
}


public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    if(dialogid == DIALOG_DUELO)
    {
        if(!response) return LimparDuelo(playerid,IdDuel[playerid]);
        if(response)
        {
            ArenaUsada = true;
            new name[MAX_PLAYER_NAME], string[44];
            GetPlayerName(playerid, name, sizeof(name));
            format(string, sizeof(string), "»»[DUELO]«« : %s aceitou o desafio aguarde 8 Segundos para Irem ao Duelo.",name);
            SendClientMessage(IdDuel[playerid],0xF6F600AA,string);
            SendClientMessage(playerid,0xF6F600AA,"»»[DUELO]«« : Vocк aceitou o Duelo Aguarde 8 Segundos para Processarmos seus Dados");
            SetTimerEx("IrDuelo",8000,false,"ii",playerid,IdDuel[playerid]);
        }
        return 1;
    }
    return 1;
}


public OnPlayerDeath(playerid, killerid, reason)
{
    if(InvitedDuel[killerid] == true)
    {
        new Float:healthkiller;
        new namekiller[24],namedeather[24],string[44];
        GetPlayerName(killerid, namekiller, 24);
        GetPlayerName(playerid, namedeather, 24);
        GetPlayerHealth(killerid,healthkiller);
        format(string, sizeof(string), "»»[DUELO]«« : %s Ganhou Duelo de %s com %0.0f de energia (Colete & Vida)",namekiller,namedeather,healthkiller);
        SendClientMessageToAll(0xF600F6AA, string);
        InvitedDuel[killerid] = false;
        InvitedDuel[playerid] = false;
        IdDuel[playerid] = playerid;
        IdDuel[killerid] = killerid;
        ArenaUsada = false;
        healthkiller = 0;
        SpawnPlayer(killerid);
    }
    return 1;
}
Reply
#2

Copia os code das publics e as new do topo e tals, tudo direitinho, e vai colando no teu GM uй! :O
Se nгo quiser por no GM, abre o pawno > new > seleciona tudo > apaga > cola tudo isso que tu postou >
aperta F5 > Vai aparecer um local para salvar o arquivo, digite um nome > acha teu samp-server > entra na pasta filterscripts > clica em salvar > vai salvar e compilar, entгo depois entre no seu samp server > abre server.cfg > vai na linha filterscripts > coloca o nome que tu usou pra salvar o arquivo.
Reply
#3

PQP VC LEU O TOPICO ?
Reply
#4

Й sу vocк retirar, oque define a arena usada ou nгo.
Tente dessa maneira

pawn Код:
#include <a_samp>
#define DIALOG_DUELO 24245
new bool:InvitedDuel[MAX_PLAYERS];
new IdDuel[MAX_PLAYERS];
new bool:ArenaUsada;
new Contar = 5;
new ContarDuelo[5][5] ={"~r~1","~b~2","~p~3","~y~4","~g~5"};
forward ExecutarContagem(playerid,pid);
public ExecutarContagem(playerid,pid)
{
    if (Contar > 0)
    {
        GameTextForPlayer(playerid,ContarDuelo[Contar-1], 2500, 3);
        GameTextForPlayer(pid,ContarDuelo[Contar-1], 1000, 3);
        Contar--;
        SetTimerEx("IrDuelo",1000,false,"ii",playerid,pid);
    }
    else
    {
        GameTextForPlayer(playerid,"~>~~g~Go~w~Go~r~Go~b~Go~<~", 2500, 3);
        GameTextForPlayer(pid,"~>~~g~Go~w~Go~r~Go~b~Go~<~", 2500, 3);
        Contar = 5;
        TogglePlayerControllable(playerid,true);
        TogglePlayerControllable(pid,true);
    }
    return 1;
}


public OnPlayerCommandText(playerid, cmdtext[])
{
    new cmd[128];
    new idx;
    new id;
    cmd = otherplayerids(cmdtext, idx);
    if(!strcmp("/duelo", cmd, true))
    {
        new tmp[128];
        new string[128];
        tmp = otherplayerids(cmdtext, idx);
        id = strval(tmp);
        if(InvitedDuel[playerid] == true) return SendClientMessage(playerid,0xF41917AA,"»»[DUELO]«« : Vocк Jб Convidou alguйm,Aguarde Expirar o Convite");
        if(!strlen(tmp)) return SendClientMessage(playerid,0xF41917AA,"»»[DUELO]«« : Vocк deve digitar os ID do Player seguindo a Maneira (/duelo-run [playerid])");
        if(id == playerid) return SendClientMessage(playerid,0xF41917AA,"»»[DUELO]«« : Vocк nгo pode convidar a Si-Mesmo");
        if(InvitedDuel[id] == true) return SendClientMessage(playerid,0xF41917AA,"»»[DUELO]«« : No Momento o Player estб em um Duelo, Aguarde..");
        new name[MAX_PLAYER_NAME];
        GetPlayerName(playerid, name, sizeof(name));
        format(string, sizeof(string), "»»[DUELO]«« : %s esta lhe convidando  para um \n Duelo Leve (Clique Aceitar para Aceitar)",name);
        ShowPlayerDialog(id,DIALOG_DUELO,DIALOG_STYLE_MSGBOX,"»»[DUELO]«« :",string,"Aceitar", "Recusar");
        GameTextForPlayer(id,"~r~DUE~w~LO !", 2500, 3);
        InvitedDuel[id] = true;
        IdDuel[id] = playerid;
        SetTimerEx("LimparDuelo",15000,false,"ii",id,playerid);
        return 1;
    }
    return 0;
}


forward IrDuelo(playerid,pid);
public IrDuelo(playerid,pid)
{
    //-> Funзхes para o X1 <-//
    //SetPlayerPos
    //SetPlayerArmor
    //SetPlayerHealth

    //-> Funзхes para Contagem no x1<-//
    TogglePlayerControllable(playerid,false);
    TogglePlayerControllable(pid,false);
    ExecutarContagem(playerid,pid);
    return 1;
}


forward LimparDuelo(playerid,pid);
public LimparDuelo(playerid,pid)
{
    if(ArenaUsada == false)
    {
        SendClientMessage(pid,0x1DF6F6AA,"»»[DUELO]«« : Desafio Expirado, Ele Recusou");
        SendClientMessage(playerid,0x1DF6F6AA,"»»[DUELO]«« : Desafio Expirado,Vocк Automaticamente Recusou");
        InvitedDuel[pid] = false;
        InvitedDuel[playerid] = false;
        IdDuel[playerid] = playerid;
        IdDuel[pid] = pid;
    }
    return 1;
}


otherplayerids(const string[], &index)
{
    new length = strlen(string);
    while ((index < length) && (string[index] <= ' '))
    {
        index++;
    }
    new offset = index;
    new result[20];
    while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
    {
        result[index - offset] = string[index];
        index++;
    }
    result[index - offset] = EOS;
    return result;
}


public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    if(dialogid == DIALOG_DUELO)
    {
        if(!response) return LimparDuelo(playerid,IdDuel[playerid]);
        if(response)
        {
            new name[MAX_PLAYER_NAME], string[44];
            GetPlayerName(playerid, name, sizeof(name));
            format(string, sizeof(string), "»»[DUELO]«« : %s aceitou o desafio aguarde 8 Segundos para Irem ao Duelo.",name);
            SendClientMessage(IdDuel[playerid],0xF6F600AA,string);
            SendClientMessage(playerid,0xF6F600AA,"»»[DUELO]«« : Vocк aceitou o Duelo Aguarde 8 Segundos para Processarmos seus Dados");
            SetTimerEx("IrDuelo",8000,false,"ii",playerid,IdDuel[playerid]);
        }
        return 1;
    }
    return 1;
}


public OnPlayerDeath(playerid, killerid, reason)
{
    if(InvitedDuel[killerid] == true)
    {
        new Float:healthkiller;
        new namekiller[24],namedeather[24],string[44];
        GetPlayerName(killerid, namekiller, 24);
        GetPlayerName(playerid, namedeather, 24);
        GetPlayerHealth(killerid,healthkiller);
        format(string, sizeof(string), "»»[DUELO]«« : %s Ganhou Duelo de %s com %0.0f de energia (Colete & Vida)",namekiller,namedeather,healthkiller);
        SendClientMessageToAll(0xF600F6AA, string);
        InvitedDuel[killerid] = false;
        InvitedDuel[playerid] = false;
        IdDuel[playerid] = playerid;
        IdDuel[killerid] = killerid;
        healthkiller = 0;
        SpawnPlayer(killerid);
    }
    return 1;
}
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)