[AJUDA] Como criar comando /assaltar?
#1

[AJUDA] Como criar comando /assaltar? Para um gangster assaltar um player. Se vocкs tiverem o comando feito, pode me mostrar? Ou podem me ajudar a criar?
Desde jб, agradeзo.
Reply
#2

Olha Ver se Assim dar Certo !


Topo do GameMode !

pawn Код:
forward UsarNovamente(playerid);
new UsouComando[MAX_PLAYERS] = 0;
new giveplayerid, moneys, idx;
forward ProxDetectorS(Float:radi, playerid, targetid);


Comando /assaltar

pawn Код:
if(strcmp(cmd,"/assaltar",true)==0)
    {
        if(IsPlayerConnected(playerid))
        {
            new money = strval(tmp);
            if(money < 1000 || money > 50000)
            {
                MSGPLAYER(playerid, COLOR_GREY, " O Preзo Tem que ser entre R$ 1000 e R$ 50000!");
                return 1;
            }
            if (IsPlayerConnected(giveplayerid))
            {
                if(giveplayerid != INVALID_PLAYER_ID)
                {
                    if (ProxDetectorS(5.0, playerid, giveplayerid))
                    {
                        GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                        GetPlayerName(playerid, sendername, sizeof(sendername));
                        format(string, sizeof(string), "* Vocк estб assaltando $%d de %s.", money, giveplayer);
                        MSGPLAYER(playerid, COLOR_LIGHTBLUE, string);
                        format(string, sizeof(string), "* %s: Isso й um assalto,pague $%d! nгo seja Ant-RPG.", sendername, money);
                        MSGPLAYER(giveplayerid, COLOR_LIGHTBLUE, string);
                        MSGPLAYER(giveplayerid, COLOR_LIGHTBLUE, "/aceitar assalto para aceitar");
                        format(string, sizeof(string), "*%s estб assaltando %s!", sendername,giveplayer);
                        ProxDetector(20.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                        OfAssalto[giveplayerid] = playerid;
                        precoassalto[giveplayerid] = money;
                        SetPlayerCriminal(playerid,255, "Tentativa de Assalto");
                        UsouComando[playerid] = 1;
                        SetTimerEx("UsarNovamente",300000,0,"d",playerid);
                    }
                    else
                    {
                        MSGPLAYER(playerid, COLOR_GREY, "Esse jogador nгo estб perto de vocк!");
                    }
                }
                else
                {
                    MSGPLAYER(playerid, COLOR_GREY, "   ID/Nome Invalido !");
                    return 1;
                }
            }
        }
        return 1;
    }


Public Final do Gamemode

pawn Код:
public UsarNovamente(playerid)
{
    UsouComando[playerid] = 0;
}

public ProxDetectorS(Float:radi, playerid, targetid)
{
    if(IsPlayerConnected(playerid)&&IsPlayerConnected(targetid))
    {
        new Float:posx, Float:posy, Float:posz;
        new Float:oldposx, Float:oldposy, Float:oldposz;
        new Float:tempposx, Float:tempposy, Float:tempposz;
        GetPlayerPos(playerid, oldposx, oldposy, oldposz);
        //radi = 2.0; //Trigger Radius
        GetPlayerPos(targetid, posx, posy, posz);
        tempposx = (oldposx -posx);
        tempposy = (oldposy -posy);
        tempposz = (oldposz -posz);
        //printf("DEBUG: X:%f Y:%f Z:%f",posx,posy,posz);
        if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
        {
            return 1;
        }
    }
    return 0;
}
Reply
#3

Bem simples. pegue como base!
pawn Код:
if(strcmp(cmdtext, "/assaltar", true) == 0)
{
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
        new Float:X, Float:Y, Float:Z;
        GetPlayerPos(i, X, Y, Z);
        if(IsPlayerInRangeOfPoint(playerid, 3, X, Y, Z)
        {
            new string[128], Nome[MAX_PLAYER_NAME], Name[MAX_PLAYER_NAME], rand = random(4500)+500;
            GetPlayerName(i, Nome, sizeof(Nome));
            GetPlayerName(playerid, Name, sizeof(Name));
            format(string, sizeof(string), "Vocк assaltou o jogador %s e roubou R$ %d,00 dele!", Nome, rand);
            SendClientMessage(playerid, -1, string);
            format(string, sizeof(string), "Vocк foi assaltado pelo jogador %s e ele te roubou %d!", Name, rand);
            SendClientMessage(i, -1, string);
            GivePlayerMoney(playerid, rand);
            GivePlayerMoney(i, -rand);
        }
    }
    return 1;
}
Reply
#4

Vlw pessoal, se n der certo, peзo ajuda de novo, kk'
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)