SA-MP Forums Archive
[AJUDA]Choque entre dois Players - 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]Choque entre dois Players (/showthread.php?tid=254845)



[AJUDA]Choque entre dois Players - guivaldevieso - 13.05.2011

Existe alguma rotina que detecte qual player bateu no carro do jogador?

Por exemplo, estou dirigindo normal, e algum jogador encosta no meu carro, e eu lanзo um aviso no console.

" O Jogador [playerid] bateu no seu carro. "

Fico no aguardo, obrigado.


Re: [AJUDA]Choque entre dois Players - zbt_Daimyo - 13.05.2011

KODSAKOPDASOKDS nao faзo a minima ideia eu fiz isso tenta.

pawn Код:
public OnVehicleDamageStatusUpdate(vehicleid,playerid)
{
static giveid,string[128],relou[MAX_PLAYER_NAME];
if(!IsPlayerInAnyVehicle(giveid))
{
GetPlayerName(giveid,relou,sizeof(relou));
format(string,sizeof(string),"%s relou em seu carro , bati nele :[",relou);
SendClientMessage(playerid,0xFFFFFFF,string);
}
return 1;
}



Re: [AJUDA]Choque entre dois Players - Ricop522 - 13.05.2011

Creio que seria mais ou menos isso.

PHP код:

public OnVehicleDamageStatusUpdate(vehicleid,playerid)
{
    new 
string[55], nome[MAX_PLAYER_NAME], Float:pos[3]; //Nгo use static, gasta memуria desnecessaria
    
GetPlayerPos(playeridpos[0], pos[1], pos[2]);
    for(new 
0MAX_PLAYERS; ++i)
    {
        if(
IsPlayerInRangeOfPoint(i5pos[0], pos[1], pos[2]))
        {
            if(!
IsPlayerInAnyVehicle(i))
            {
                
GetPlayerName(inomesizeofnome ) );
                
formatstringsizeof( string ),"%s encostou no seu veнculo."nome );
                
SendClientMessageplayerid0xFFFFFFFstring );
            }
        }
    }
    return 
1;

Espero ter ajudado .


Re: [AJUDA]Choque entre dois Players - guivaldevieso - 13.05.2011

Obrigado por ambas as respostas, vou testar os dois e dou um parecer.

Parece que o cуdigo do Ricop522 й mais funcional, mas como disse, testarei ambos.

Abraзo e obrigado pela atenзгo.


Re: [AJUDA]Choque entre dois Players - [KO]KillerThriller - 14.05.2011

Quote:
Originally Posted by zbt_Daimyo
Посмотреть сообщение
KODSAKOPDASOKDS nao faзo a minima ideia eu fiz isso tenta.

pawn Код:
public OnVehicleDamageStatusUpdate(vehicleid,playerid)
{
static giveid,string[128],relou[MAX_PLAYER_NAME];
if(!IsPlayerInAnyVehicle(giveid))
{
GetPlayerName(giveid,relou,sizeof(relou));
format(string,sizeof(string),"%s relou em seu carro , bati nele :[",relou);
SendClientMessage(playerid,0xFFFFFFF,string);
}
return 1;
}
Esse 'tб completamente mal....


Re: [AJUDA]Choque entre dois Players - guivaldevieso - 14.05.2011

Engraзado, parece que essa funзгo nгo й nativa do pawno, estranho.
Preciso fazer um forward? Uso o compilador da versгo 0.3a mas creio que isso nгo interfira....


Re: [AJUDA]Choque entre dois Players - Macintosh - 14.05.2011

Se nгo compilar ligeiramente e com erros/warnings,adicione a forward

pawn Код:
forward OnVehicleDamageStatusUpdate(vehicleid,playerid);



Re: [AJUDA]Choque entre dois Players - guivaldevieso - 14.05.2011

Quote:
Originally Posted by Shickcard
Посмотреть сообщение
Se nгo compilar ligeiramente e com erros/warnings,adicione a forward

pawn Код:
forward OnVehicleDamageStatusUpdate(vehicleid,playerid);
Entгo, eu adicionei o forward no topo do GM, mas quando dois veнculos se chocam, nгo acontece nada..

EDIT : Quando eu retiro o forward ele retorna a seguinte mensagem
Код:
C:\Documents and Settings\Administrador\Desktop\sa server\SAMP 0.3 Server\gamemodes\pegapegagm.pwn(252) : warning 235: public function lacks forward declaration (symbol "OnVehicleDamageStatusUpdate")
Parece que ele entende como se fosse uma funзгo que eu criei, e nгo uma funзгo que jб vem definida como OnPlayerUpdate,OnPlayerConnect..... HELP PLEASE :]

OBS : Estou testando com um amigo.


Re: [AJUDA]Choque entre dois Players - Shadoww5 - 14.05.2011

Quais as linhas que estгo dando erro ?

Isto pode ser porque uma chave estб no lugar errado.


Re: [AJUDA]Choque entre dois Players - Macintosh - 14.05.2011

As looses identation й sу um aviso sobre linhas e cуdigos desorganizados, para que isso diminua e venha ocorrer demoradamente adiciona no topo de seu gamemode

pawn Код:
#pragma tabsize 0