Portal SAMP
[Ajuda] Alguns problemas com OnPlayerKeyStateChange - Versão de Impressão

+- Portal SAMP (https://portalsamp.com)
+-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5)
+--- Fórum: Área de suporte (https://portalsamp.com/forumdisplay.php?fid=6)
+--- Tópico: [Ajuda] Alguns problemas com OnPlayerKeyStateChange (/showthread.php?tid=4104)



Alguns problemas com OnPlayerKeyStateChange - Alfarr Heimrik - 20/10/2023

Olá a todos, estou enfrentando alguns warning's que não tenho ideia de como resolver. Se alguém sentir misericórdia e tiver tempo para me ajudar... 

Código:
C:\Users\alfar\Desktop\Servidor\gamemodes\Kuatros.pwn(47) : warning 213: tag mismatch
C:\Users\alfar\Desktop\Servidor\gamemodes\Kuatros.pwn(47) : warning 202: number of arguments does not match definition
C:\Users\alfar\Desktop\Servidor\gamemodes\Kuatros.pwn(48) : warning 213: tag mismatch
C:\Users\alfar\Desktop\Servidor\gamemodes\Kuatros.pwn(211) : warning 202: number of arguments does not match definition
C:\Users\alfar\Desktop\Servidor\gamemodes\Kuatros.pwn(219) : warning 202: number of arguments does not match definition
Pawn compiler 3.2.3664              Copyright (c) 1997-2006, ITB CompuPhase


5 Warnings.

Código:
Linha 47 e 48: Já tentei tirar os simbolos da mensagem, mas nada aconteceu.
        CreatePickup(1349, 23, 1833.7816, -1842.6348, 13.5781, 283.3687, 0);
    Create3DTextLabel("69¢ Only\n24-7 El Corona _ Unity Station", -1, 1833.7816,-1842.6348,13.5781,283.3687, 15.0, 0);

Código:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
    if(newkeys == KEY_SECONDARY_ATTACK)
    {
     Linha 211 abaixo
                if(IsPlayerInRangeOfPoint(playerid, 2.0, 1833.7816, -1842.6348, 13.5781, 283.3687)) // Entrada 24-7 El Corona _ Unity Station
        {
            SetPlayerInterior(playerid, 10);
            SetPlayerPos(playerid, 6.091179,-29.271898,1003.549438);
        }
        if(IsPlayerInRangeOfPoint(playerid, 2.0, 6.091179,-29.271898,1003.549438)) // Saída da 24-7 El Corona _ Unity Station
        {
            SetPlayerInterior(playerid, 0);
                    SetPlayerPos(playerid, 1833.7816, -1842.6348, 13.5781, 283.3687);
                    Linha 219 acima
        }
    }
    return 1;
}



RE: Alguns problemas com OnPlayerKeyStateChange - pushline - 20/10/2023

SetPlayerPos só usa 4 parametros, playerid e xyz, não 5, vc n coloca a rotação de ângulo.

Estás usando samp-stdlib? Por que no a_players.inc o modo que você fez o IsPlayerInRangeOfPoint está de acordo com a função nativa:
Código PHP:
native IsPlayerInRangeOfPoint(playeridFloat:rangeFloat:xFloat:yFloat:z);
if(
IsPlayerInRangeOfPoint(playerid2.01833.7816, -1842.634813.5781)) // Entrada 24-7 El Corona _ Unity Station (Retirei o 282.3687)
IsPlayerInRangeOfPoint(playerid2.06.091179, -29.2718981003.549438)) // Saída da 24-7 El Corona _ Unity Station 


CreatePickup é a mesma coisa do GetPlayerPos, um parâmetro a mais. Apenas removi o 282.3687.
E no Create3DTextLabel, arrumei de "15.0" pra 15, por que é inteiro, não float/decimal.
Código PHP:
CreatePickup(1349231833.7816, -1842.634813.57810);

// Virtual world estava com 15.0, e é 15. Você repetiu o XYZ + o DrawDistance em outras funções, tenha mais atenção na hora de copiar e colar.
Create3DTextLabel(const text[], colorFloat:XFloat:YFloat:ZFloat:DrawDistancevirtualworldtestLOS=0);
Create3DTextLabel("69¢ Only\n24-7 El Corona _ Unity Station", -11833.7816, -1842.634813.5781283.3687150); 



RE: Alguns problemas com OnPlayerKeyStateChange - Alfarr Heimrik - 20/10/2023

Muito obrigado !!! Me sinto envergonhado por criar um tópico para um assunto tão simples... Vou deixar, porque acredito que alguma outra pessoa que não saiba usar estes parâmetros vira para sanar suas dúvidas.  MUITO OBRIGADO.


RE: Alguns problemas com OnPlayerKeyStateChange - xbruno1000x - 20/10/2023

(20/10/2023 13:32)Alfarr Heimrik Escreveu: Muito obrigado !!! Me sinto envergonhado por criar um tópico para um assunto tão simples... Vou deixar, porque acredito que alguma outra pessoa que não saiba usar estes parâmetros vira para sanar suas dúvidas.  MUITO OBRIGADO.

Não tem vergonha nenhuma nisso, todos nós tivemos que aprender isso um dia. Eu mesmo já errei muito essa coisa das coordenada quando comecei, porque no /save parecem ter 4 coordenadas e o código sempre compila normalmente com elas.

Quanto mais dúvidas você sanar, melhor programador se torna. Não pense duas vezes antes de criar um tópico!