SA-MP Forums Archive
[AJUDA] Algumas coisas - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [AJUDA] Algumas coisas (/showthread.php?tid=332084)



[AJUDA] Algumas coisas - Pedro Pawno - 07.04.2012

Bom gente, queria que vocкs fizezem um radio bem simples pro exйrcito e para farc й simples nгo consegui fazer.

e tambйm, me ajudar a arrumar o spawn tipo o server funciona assim:

Vocк entra e escolhe qual org quer /farc ou /exe, pуrem, tem uma coisa quando vocк escolhe, uma das orgs e morri, ele vai pro spawn padrao do samp e fica com skin de cj, e continua na org em vez disso queria que ele respawnase para a coordenada que ta no /farc e o mesmo pro /exe mais ainda fica na org, so queria que me ajuda-sem a fazer isso acho que sу falta isso pro gm fica nos conformes.



pawn Код:
#include <a_samp>


//Variaveis.

new Equipe[MAX_PLAYERS]; //Variбvel da equipe.

//fechando

//Defines

#define Civil 0  //Sнmbolo "Civil" vale 0.
#define Farc 1  //Sнmbolo "Farc" vale 1.
#define Exercito 2  //Sнmbolo "Exercito" vale 2.
#define  COR_LARANJA 0xFF5A00FF
#define  COR_VERDE   0x91FF00FF

//fechando

public OnGameModeInit()
{
    SetGameModeText("FARC X EXE ");
    return 1;
}

public OnGameModeExit()
{
    ShowPlayerMarkers(1);
    return 1;
}

public OnPlayerRequestClass(playerid, classid)
{
    return 1;
}

public OnPlayerConnect(playerid)
{
    return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
    return 1;
}

public OnPlayerSpawn(playerid)
{

    return 1;
}

public OnPlayerDeath(playerid, killerid, reason)
{
    return 1;
}

public OnVehicleSpawn(vehicleid)
{
    return 1;
}

public OnVehicleDeath(vehicleid, killerid)
{
    return 1;
}

public OnPlayerText(playerid, text[])
{
        new Float:p[3], s[128], n[24];
        GetPlayerName(playerid, n, 24);
        GetPlayerPos(playerid, p[0], p[1], p[2]);
        format(s, 128, "%s diz: %s", n, text);
        for(new i, j = GetMaxPlayers(); i != j; i++)
        {
        if(IsPlayerInRangeOfPoint(i, 5, p[0], p[1], p[2]))
        {
        SendClientMessage(i, -1, s);
        }
        }
        return false;
}
   

public OnPlayerCommandText(playerid, cmdtext[])
{
//Comandos Gerais.




        if(strcmp("/creditos",cmdtext,true) ==0)
        {
        SendClientMessage(playerid,COR_LARANJA,"=========Crйditos==================");
        SendClientMessage(playerid,-1,"Versгo Game Mode 1.1");
        SendClientMessage(playerid,-1,"Progamador: Pedro Shogun Crйdito total.");
        SendClientMessage(playerid,-1,"Credito Sistema de registro JFS");
        SendClientMessage(playerid,-1,"Agradecimento aos que ajudaram a fazer, algumas coisas");
        return 1;
}
//fechando


        if(strcmp("/pedircontas",cmdtext,true) ==0)
        {
        if(Equipe[playerid] == Civil) return SendClientMessage(playerid,-1,"<!> Vocк jб й civil."); //Checa se o jogador й civil, se for, para o comando e manda uma mensagem.
        Equipe[playerid] = Civil; //Torna o jogador que digitou o comando um civil.
        SetPlayerSkin(playerid,7);
        SendClientMessage(playerid,-1,"<!> Vocк saiu de sua organizaзгo.");
        return 1;
}

//=======================================================//Comandos Exйrcito=====================================================//

        if(strcmp("/ajudaexe",cmdtext,true) ==0)
        {
        if(Equipe[playerid] != Exercito) return SendClientMessage(playerid,-1,"<!> Vocк nгo й do exercito.");
        SendClientMessage(playerid,-COR_LARANJA,"<!> Lista de comando exйrcito");
        SendClientMessage(playerid,-1,"/equipar1 /equipar2  /dominar /morroe.");
        return 1;
}
        if(strcmp("/morroe",cmdtext,true) ==0)
        {
        if(Equipe[playerid] != Exercito) return SendClientMessage(playerid,-1,"<!> Vocк nгo й do exйrcito.");
        SendClientMessage(playerid,-COR_LARANJA ,"<!> Vocк veio para guerra.");
        SetPlayerPos(playerid,-1280.8210,2609.4365,88.6547);
        return 1;
}
        if(strcmp("/equipar1",cmdtext,true) ==0)
        {
        if(!IsPlayerInRangeOfPoint(playerid, 7.0, 211.6514,1812.0859,21.8594)) return SendClientMessage(playerid,-1,"<!> Vocк nгo estб no Armazйn.");
        {
        if(Equipe[playerid] != Exercito) return SendClientMessage(playerid,-1,"<!> Vocк nгo й do exйrcito."); //Checa se o jogador nгo й do exйrcito, se isso for verdade, para o comando e manda uma mensagem.
        ResetPlayerWeapons(playerid);
        SendClientMessage(playerid,-COR_VERDE,"<!> Vocк pegou seus equipamentos de Infantaria");
        GivePlayerWeapon(playerid,31,250);
        GivePlayerWeapon(playerid,23,200);
        SetPlayerHealth(playerid,35);
        SetPlayerArmour(playerid,35);
        }
        return 1;
}
        if(strcmp("/equipar2",cmdtext,true) ==0)
        {
        if(!IsPlayerInRangeOfPoint(playerid, 7.0, 211.6514,1812.0859,21.8594)) return SendClientMessage(playerid,-1,"<!> Vocк nгo estб no Armazйn.");
        {
        if(Equipe[playerid] != Exercito) return SendClientMessage(playerid,-1,"<!> Vocк nгo й do exйrcito."); //Checa se o jogador nгo й do exйrcito, se isso for verdade, para o comando e manda uma mensagem.
        ResetPlayerWeapons(playerid);
        SendClientMessage(playerid,-COR_VERDE,"<!> Vocк pegou seus equipamentos de Atirador de Elite.");
        GivePlayerWeapon(playerid,34,50);
        GivePlayerWeapon(playerid,23,200);
        SetPlayerHealth(playerid,35);
        SetPlayerArmour(playerid,35);
        }
        return 1;
}

        if(strcmp("/exe",cmdtext,true) ==0)
        {
        if(Equipe[playerid] == Exercito) return SendClientMessage(playerid,-1,"<!> Vocк jб й do exйrcito."); //Checa se o jogador й do exйrcito, se for, para o comando e manda uma mensagem.
        Equipe[playerid] = Exercito; //Torna o jogador que digitou o comando membro do exйrcito.
        ResetPlayerWeapons(playerid);
        SetPlayerSkin(playerid,287);
        SetPlayerPos(playerid,197.6434,1813.9235,17.6406);
        SendClientMessage(playerid,-1,"<!> Vocк Virou exйrcito");
        return 1;
}
        if(strcmp("/Dominar",cmdtext,true) ==0)
        {
        if(Equipe[playerid] != Exercito) return SendClientMessage(playerid,-1,"<!> Vocк nгo й do exйrcito."); //Checa se o jogador nгo й do exйrcito, se isso for verdade, para o comando e manda uma mensagem
        SendClientMessageToAll(-1,"==================Anuncio Governamental=======================");
        SendClientMessageToAll(-COR_VERDE,"Exйrcito Irб atacar EL'Quebrados.");
        SendClientMessage(playerid,-1,"Vб para guerra digite : /Morroe.");
        return 1;
}
//==========================================Fechando os Comandos do exйrcito================================================================//

 //========================================Comandos FARC.=================================================================================/


        if(strcmp("/ajudaf",cmdtext,true) ==0)
        {
        if(Equipe[playerid] != Farc) return SendClientMessage(playerid,-1,"<!> Vocк nгo й da farc.");
        SendClientMessage(playerid,-COR_LARANJA,"<!> Lista de comandos da Farc.");
        SendClientMessage(playerid,-1,"/farc1 /farc2  /atacar /morrof.");
        return 1;
}
        if(strcmp("/farc 1",cmdtext,true) ==0)
        {
        if(!IsPlayerInRangeOfPoint(playerid, 7.0, -1107.1281,-1638.4855,76.3672)) return SendClientMessage(playerid,-1,"Vocк nгo estб no asernal das FARC");
        {
        if(Equipe[playerid] != Farc) return SendClientMessage(playerid,-1,"<!> Vocк nгo й da farc."); //Checa se o jogador nгo й da farc, se isso for verdade, para o comando e manda uma mensagem.
        ResetPlayerWeapons(playerid);
        SendClientMessage(playerid,COR_VERDE,"<!> Vocк pegou seus equipamentos de Infantaria.");
        GivePlayerWeapon(playerid,30,250);
        GivePlayerWeapon(playerid,23,200);
        SetPlayerHealth(playerid,35);
        SetPlayerArmour(playerid,35);
        }
        return 1;
}
        if(strcmp("/farc 2",cmdtext,true) ==0)
        {
        if(IsPlayerInRangeOfPoint(playerid, 7.0, -1107.1281,-1638.4855,76.3672)) return SendClientMessage(playerid,-1,"Vocк nгo estб no asernal das FARC");
        {
        if(Equipe[playerid] != Farc) return SendClientMessage(playerid,-1,"<!> Vocк nгo й da farc."); //Checa se o jogador nгo й da farc, se isso for verdade, para o comando e manda uma mensagem.
        ResetPlayerWeapons(playerid);
        SendClientMessage(playerid,-COR_VERDE,"<!> Vocк pegou seus equipamentos de Atirador de Elite.");
        GivePlayerWeapon(playerid,34,50);
        GivePlayerWeapon(playerid,23,150);
        return 1;
        }
}
        if(strcmp("/ATACAR",cmdtext,true) ==0)
        {
        if(Equipe[playerid] != Farc) return SendClientMessage(playerid,-1,"<!> Vocк nгo й da farc."); //Checa se o jogador nгo й da farc, se isso for verdade, para o comando e manda uma mensagem.
        SendClientMessageToAll(-1,"====================Anuncio terrorista===========================");
        SendClientMessageToAll(COR_LARANJA,"FARC Irб atacar EL Quebrados");
        SendClientMessage(playerid,-1,"Vб para guerra digite : /Morrof");
        return 1;

}
        if(strcmp("/morrof",cmdtext,true) ==0)
        {
        if(Equipe[playerid] != Farc) return SendClientMessage(playerid,-1,"<!> Vocк nгo й da farc");
        SendClientMessage(playerid,-1,"<!> Vocк veio para guerra.");
        SetPlayerPos(playerid,-1532.0839,2802.5271,90.9337);
        return 1;
}
        if (strcmp("/FARC", cmdtext, true, 10) == 0)
        {
        if(Equipe[playerid] == Farc) return SendClientMessage(playerid,-1,"<!> Vocк jб й da farc."); //Checa se o jogador й da farc, se for
        Equipe[playerid] = Farc; //Torna o jogador que digitou o comando membro da farc.
        ResetPlayerWeapons(playerid);
        SetPlayerPos(playerid,-1106.7771,-1639.0135,76);
        SetPlayerSkin(playerid,294);
        SendClientMessage(playerid,-1,"<!> Vocк virou um farc.");
        return 1;
}
        return SendClientMessage(playerid,-1,"[ERRO] Comando Invбlido!");
}


//===================================Fechando Comandos FARC================================================================================//
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
    SendClientMessage(playerid,-1,"Vocк entrou, no veiculo diriga com cuidado");
    return 1;
}

public OnPlayerExitVehicle(playerid, vehicleid)
{
    SendClientMessage(playerid,-1,"Vocк saiu do veiculo");
    return 1;
}



Re: [AJUDA] Algumas coisas - ViniBorn - 07.04.2012

Use SetSpawnInfo


Respuesta: Re: [AJUDA] Algumas coisas - Pedro Pawno - 07.04.2012

Quote:
Originally Posted by Viniborn
Посмотреть сообщение
Use SetSpawnInfo
Pode me dar um exemplo de como usar?


Re: [AJUDA] Algumas coisas - ViniBorn - 07.04.2012

pawn Код:
SetSpawnInfo( playerid, 0, Skin, X, Y, Z, Angulo, 0, 0, 0, 0, 0, 0 );
SpawnPlayer(playerid);



Respuesta: Re: [AJUDA] Algumas coisas - Pedro Pawno - 07.04.2012

Quote:
Originally Posted by Viniborn
Посмотреть сообщение
pawn Код:
SetSpawnInfo( playerid, 0, Skin, X, Y, Z, Angulo, 0, 0, 0, 0, 0, 0 );
SpawnPlayer(playerid);
tipo

if(Equipe[playerid] != Exercito)
SetSpawnInfo( playerid, 0, Skin, X, Y, Z, Angulo, 0, 0, 0, 0, 0, 0 ); nгo mechi aqui ainda mais vou mecher
SpawnPlayer(playerid);

й tipo assim?


Re: [AJUDA] Algumas coisas - ViniBorn - 07.04.2012

SpawnPlayer(playerid); eu sу coloquei pra vocк saber a ordem...

Й tipo isso aн. Se ele й do exercito, spawn й em um lugar, se nгo for, no outro, e assim vai ...


Respuesta: Re: [AJUDA] Algumas coisas - Pedro Pawno - 07.04.2012

Quote:
Originally Posted by Viniborn
Посмотреть сообщение
SpawnPlayer(playerid); eu sу coloquei pra vocк saber a ordem...

Й tipo isso aн. Se ele й do exercito, spawn й em um lugar, se nгo for, no outro, e assim vai ...
olha, cara :

pawn Код:
public OnPlayerSpawn(playerid)
{
    if(Equipe[playerid] != Farc)
    SetSpawnInfo(294,-1106.7771,-1638.3529,76.3672,359.9608,0,0,0,0,0,0); // //FC
    SpawnPlayer(playerid);
    return 1;
}
pawn Код:
F:\Arquivos\SV\CRP\gamemodes\RP.pwn(49) : warning 213: tag mismatch
F:\Arquivos\SV\CRP\gamemodes\RP.pwn(49) : warning 213: tag mismatch
F:\Arquivos\SV\CRP\gamemodes\RP.pwn(49) : warning 202: number of arguments does not match definition
F:\Arquivos\SV\CRP\gamemodes\RP.pwn(49) : warning 202: number of arguments does not match definition
Pawn compiler 3.2.3664          Copyright (c) 1997-2006, ITB CompuPhase


4 Warnings.



Re: [AJUDA] Algumas coisas - steeldark - 07.04.2012

tenta:

pawn Код:
public OnPlayerSpawn(playerid)
{
    if(Equipe[playerid] != Farc){
    SetSpawnInfo(playerid,Equipe[playerid], 294,-1106.7771,-1638.3529,76.3672,359.9608,0,0,0,0,0,0); // //FC
    SpawnPlayer(playerid);
    }
    return 1;
}



Respuesta: Re: [AJUDA] Algumas coisas - Pedro Pawno - 07.04.2012

Quote:
Originally Posted by steeldark
Посмотреть сообщение
tenta:

pawn Код:
public OnPlayerSpawn(playerid)
{
    if(Equipe[playerid] != Farc){
    SetSpawnInfo(playerid,Equipe[playerid], 294,-1106.7771,-1638.3529,76.3672,359.9608,0,0,0,0,0,0); // //FC
    SpawnPlayer(playerid);
    }
    return 1;
}

Bom cara deu uns bugs, louco vei tipo eu tenho que arrumar, um geito de quando o cara logar ele й setado para civil, e quando escolher, farc ou exe quando morrerem irem pro spawn que ta la no /exe e no /farc.

deu o bug quando o cara loga, ele fica morrendo e etc.

pawn Код:
if(Equipe[playerid] != Exercito)
    {
    SetSpawnInfo(playerid,Equipe[playerid], 287,197.6434,1813.9235,17.6406,359.9608,0,0,0,0,0,0);//exe
    SpawnPlayer(playerid);
    }

    if(Equipe[playerid] != Farc)
    {
    SetSpawnInfo(playerid,Equipe[playerid], 294,-1106.7771,-1638.3529,76.3672,359.9608,0,0,0,0,0,0); // //FC
    SpawnPlayer(playerid);
    }



Re: [AJUDA] Algumas coisas - humildadeforever - 07.04.2012

Ei,
Dica: aproveite que seu GM й pequeno e passe seus comandos pra zcmd.
Vou ver se faзo os rбdios pra vocк...