Portal SAMP
[Include] Verificação de Plataforma - Versão de Impressão

+- Portal SAMP (https://portalsamp.com)
+-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5)
+--- Fórum: Lançamentos (https://portalsamp.com/forumdisplay.php?fid=26)
+---- Fórum: Includes (https://portalsamp.com/forumdisplay.php?fid=27)
+---- Tópico: [Include] Verificação de Plataforma (/showthread.php?tid=4526)



Verificação de Plataforma - Calasans - 10/02/2024

Verificacao-Plataforma tem como objetivo verificar em qual plataforma o jogador está jogando, seja Mobile ou Computador (PC). Isso é feito com a ajuda do Pawn.RakNet. Observem alguns exemplos de como utilizar o include:

Comando com o if:
Código PHP:
CMD:plataforma(playerid)
{
    if(IsPlayerPlataform(playerid))
        SendClientMessage(playerid0xFFFFFFFF"Voce esta conectado pela plataforma Mobile.");
    //
    else if(!IsPlayerPlataform(playerid)) // Pode ser somente else.
        SendClientMessage(playerid0xFFFFFFFF"Voce esta conectado pela plataforma Computador.");
    //
    return true;


Comando sem o if:
Código PHP:
CMD:plataforma(playerid)
{
    new string[128];
    //
    format(stringsizeof(string), "Voce esta conectado pela plataforma %s."IsPlayerPlataform(playerid) ? ("Mobile") : ("Computador"));
    SendClientMessage(playerid0xFFFFFFFFstring);
    //
    return true;


Além disso, o Verificacao-Plataforma também possui uma verificação para saber se o jogador está com a mira automática (LockOn). Observem alguns exemplos de como utilizar:

Comando com o if:
Código PHP:
CMD:mira(playerid)
{
    if(IsPlayerHaveAutoAim(playerid))
        SendClientMessage(playerid0xFFFFFFFF"Sua mira automatica esta Ativada.");
    //
    else if(!IsPlayerHaveAutoAim(playerid)) // Pode ser somente else.
        SendClientMessage(playerid0xFFFFFFFF"Sua mira automatica esta Desativada.");
    //
    return true;


Comando sem o if:
Código PHP:
CMD:mira(playerid)
{
    new string[128];
    //
    format(stringsizeof(string), "Sua mira automatica esta %s."IsPlayerHaveAutoAim(playerid) ? ("Ativada") : ("Desativada"));
    SendClientMessage(playerid0xFFFFFFFFstring);
    //
    return true;


Repositório: Verificacao-Plataforma

Este include foi inicialmente criado por Jekmant, mas ultimamente tem sido difícil encontrá-lo na internet. Então, eu fiz ajustes, aprimorei o código e estou disponibilizando para vocês.


RE: Verificacao Plataforma - Aranha - 10/02/2024

Se eu usar !IsPlayerHaveAutoAim ele bloqueia look on?


RE: Verificacao Plataforma - Calasans - 10/02/2024

(10/02/2024 19:58)Aranha Escreveu: Se eu usar !IsPlayerHaveAutoAim ele  bloqueia look on?

Não Aranha, essa função consiste em verificar se o jogador está ou não com o LockOn, somente isso. Com isso você pode desenvolver outros sistemas utilizando essa função. Quer que seu servidor não tenha nenhum player com mira automática? Use essa função pra verificar, se ele estiver, você poderá fazer um sistema de kick.


RE: Verificacao Plataforma - pabluzw - 10/02/2024

Isto verifica se o player é Android através de um serial?


RE: Verificacao Plataforma - Calasans - 10/02/2024

(10/02/2024 23:03)pabluzw Escreveu: Isto verifica se o player é Android através de um serial?

Sim:
Código PHP:
ED40ED0E8089CC44C08EE9580F4C8C44EE8EE990 



RE: Verificacao Plataforma - Aranha - 11/02/2024

(10/02/2024 22:21)Calasans Escreveu:
(10/02/2024 19:58)Aranha Escreveu: Se eu usar !IsPlayerHaveAutoAim ele  bloqueia look on?

Não Aranha, essa função consiste em verificar se o jogador está ou não com o LockOn, somente isso. Com isso você pode desenvolver outros sistemas utilizando essa função. Quer que seu servidor não tenha nenhum player com mira automática? Use essa função pra verificar, se ele estiver, você poderá fazer um sistema de kick.

Entendo obg +Rep


RE: Verificação de Plataforma - Whaispe - 16/02/2024

Salve mano, tentei coloca na minha gm e deu 9 erros

C:\Users\Administrador\Downloads\CWRP\pawno\include\VerificacaoPlataforma.inc(148) : error 021: symbol already defined: "VPI_sincronizacao_pers"
C:\Users\Administrador\Downloads\CWRP\pawno\include\VerificacaoPlataforma.inc(152) : error 021: symbol already defined: "BS_GetNumberOfBytesUsed"
C:\Users\Administrador\Downloads\CWRP\pawno\include\VerificacaoPlataforma.inc(154) : error 010: invalid function or declaration
C:\Users\Administrador\Downloads\CWRP\pawno\include\VerificacaoPlataforma.inc(155) : error 010: invalid function or declaration
C:\Users\Administrador\Downloads\CWRP\pawno\include\VerificacaoPlataforma.inc(157) : error 021: symbol already defined: "BS_ReadValue"
C:\Users\Administrador\Downloads\CWRP\pawno\include\VerificacaoPlataforma.inc(159) : error 010: invalid function or declaration
C:\Users\Administrador\Downloads\CWRP\pawno\include\VerificacaoPlataforma.inc(163) : error 021: symbol already defined: "BS_ReadValue"
C:\Users\Administrador\Downloads\CWRP\pawno\include\VerificacaoPlataforma.inc(165) : error 010: invalid function or declaration
C:\Users\Administrador\Downloads\CWRP\pawno\include\VerificacaoPlataforma.inc(168) : error 010: invalid function or declaration


RE: Verificação de Plataforma - Calasans - 16/02/2024

(16/02/2024 17:02)Whaispe Escreveu: Salve mano, tentei coloca na minha gm e deu 9 erros

C:\Users\Administrador\Downloads\CWRP\pawno\include\VerificacaoPlataforma.inc(148) : error 021: symbol already defined: "VPI_sincronizacao_pers"
C:\Users\Administrador\Downloads\CWRP\pawno\include\VerificacaoPlataforma.inc(152) : error 021: symbol already defined: "BS_GetNumberOfBytesUsed"
C:\Users\Administrador\Downloads\CWRP\pawno\include\VerificacaoPlataforma.inc(154) : error 010: invalid function or declaration
C:\Users\Administrador\Downloads\CWRP\pawno\include\VerificacaoPlataforma.inc(155) : error 010: invalid function or declaration
C:\Users\Administrador\Downloads\CWRP\pawno\include\VerificacaoPlataforma.inc(157) : error 021: symbol already defined: "BS_ReadValue"
C:\Users\Administrador\Downloads\CWRP\pawno\include\VerificacaoPlataforma.inc(159) : error 010: invalid function or declaration
C:\Users\Administrador\Downloads\CWRP\pawno\include\VerificacaoPlataforma.inc(163) : error 021: symbol already defined: "BS_ReadValue"
C:\Users\Administrador\Downloads\CWRP\pawno\include\VerificacaoPlataforma.inc(165) : error 010: invalid function or declaration
C:\Users\Administrador\Downloads\CWRP\pawno\include\VerificacaoPlataforma.inc(168) : error 010: invalid function or declaration

Não recebo nenhum desses erros, diga-me, qual a versão do seu compilador?

Lembre-se de usar o Pawn.RakNet, como foi mencionado no repositório.


RE: Verificação de Plataforma - Johan_Scarface - 20/04/2024

o compilador que o Whaispe deve estar usando é o do open.mp no meu tava dando o mesmo erro. Fiz umas alterações nos seguintes campos e compilou normal aqui e inclusive ate testei e parece que ta pegando normal também.

Prints (eu uso o  notepad++):
https://imgur.com/a/6GeDOcO


Código PHP:
#if !defined VPI_sincronizacao_pers
const VPI_sincronizacao_pers 221;
#endif

#if !defined VPI_sincronizacao_pers
IRawPacket:VPI_sincronizacao_pers(playeridBitStream:bs)
{
    new bytesvpi_rpcid;
    //
    BS_GetNumberOfBytesUsed(bsbytes);
    //
    if(bytes VPI_tamanho_pacote)
        return false;
    //
    BS_ReadValue(bsPR_IGNORE_BITS8PR_UINT8vpi_rpcid);
    //
    if(vpi_rpcid == VPI_iniciar_android)
    {
        new autoaim;
        //
        BS_ReadValue(bsPR_UINT8autoaim);
        //
        VPI_player_android[playerid][VPI_Android] = true;
        VPI_player_android[playerid][VPI_Mira_Automatica] = bool:autoaim;
    }
    return true;
}
#endif 



RE: Verificação de Plataforma - Calasans - 22/04/2024

Recentemente, pushline fez alterações nos nomes das callbacks.

1. A callback IsPlayerPlataform passou a se chamar IsPlayerAndroid.
2. A callback IsPlayerHaveAutoAim passou a se chamar PlayerHasAutoAim.

Repositório: Verificacao-Plataforma.