[Pedido] Ajuda com checkpoint - 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: [Pedido] Ajuda com checkpoint (/showthread.php?tid=2971) Páginas:
1
2
|
Ajuda com checkpoint - Zoiao - 07/11/2022 Estou fazendo a profissão de Entregador de jornal, quero que ele vai até o checkpoint nas casas, mas quando ele chaga no checkpoint não mostra a mensagem. Alguem por favor pode me dizer, como faz o player entrar no checkpoint sem usar nenhum comando, é para entrar no checkpoint e entregar os jornais e ir para outro checkpoint RE: Ajuda com checkpoint - Carlos Victor - 07/11/2022 Tenta esse código ai, vou testar agora, mas eu acho que funciona. Código: new const Float:g_arrCheckpoints[][] = { Dei uma modificada no código, e funciona, testei aqui. RE: Ajuda com checkpoint - Zoiao - 07/11/2022 (07/11/2022 09:37)Carlos Victor Escreveu: Tenta esse código ai, vou testar agora, mas eu acho que funciona. deu 5 avisos de tag mismatch - e um erro de error 017: undefined symbol "rand". RE: Ajuda com checkpoint - Carlos Victor - 07/11/2022 Eu atualizei o código, presta atenção. RE: Ajuda com checkpoint - Zoiao - 07/11/2022 (07/11/2022 09:57)Carlos Victor Escreveu: Eu atualizei o código, presta atenção. deu dois erro error 017: undefined symbol "GetPlayerCheckpoint" 5 avisos de loose indentation 1 erro de error 001: expected token: ";", but found "return" warning 225: unreachable code fiz tudo que voce mandou e deu os mesmos erros o GetPlayerCheckpoint fica em qual quer lugar ou tem que ficar num lugar. RE: Ajuda com checkpoint - Carlos Victor - 07/11/2022 Bom, o código está correto. Provavelmente você está integrando de forma incorreta na sua gamemode. Você precisa por tudo certinho no devido lugar, dar espaçamentos(tab) e compilar. Acabei de compilar o código que enviei e não tem erro nenhum. E sim, a função GetPlayerCheckpoint fica fora das funções, é basicamente uma stock, como dizem... RE: Ajuda com checkpoint - Zoiao - 07/11/2022 (07/11/2022 10:29)Carlos Victor Escreveu: Bom, o código está correto. Provavelmente você está integrando de forma incorreta na sua gamemode.Agora deu certo, mas deu um aviso de loose indentation, eu acho que o getplayercheckpoint. Eu coloquei ele embaixo do OnPlayerEnterCheckpoint Vou te mostrar o que eu fiz new const Float:g_arrCheckpoints[][] = { {1496.9918,-689.0601,95.1433}, {1410.9694,-921.5505,38.4219} }; new playerCheckpoint[MAX_PLAYERS] = {-1, ...}; -------------------------------------------------------------------------------- public OnPlayerEnterCheckpoint(playerid) { if(GetPlayerCheckpoint(playerid) != 0) { DisablePlayerCheckpoint(playerid); GivePlayerMoney(playerid, 20); SendClientMessage(playerid, -1, "* Você entregou um jornal e ganhou $20."); return 1; } return 1; } GetPlayerCheckpoint(playerid) { for(new i = 0; i < sizeof(g_arrCheckpoints); i++) { if(playerCheckpoint[playerid] == i && IsPlayerInRangeOfPoint(playerid, 2.0, g_arrCheckpoints[i][0], g_arrCheckpoints[i][1], g_arrCheckpoints[i][2])) return 1; } return 0; } if(!strcmp(cmd, "/entregarjornal", true)) { new rand = random(sizeof(g_arrCheckpoints)); SetPlayerCheckpoint(playerid, g_arrCheckpoints[rand][0], g_arrCheckpoints[rand][1], g_arrCheckpoints[rand][2], 1.0); playerCheckpoint[playerid] = rand; SendClientMessage(playerid, -1, "* Entregue até o local marcado em seu mapa."); return 1; } RE: Ajuda com checkpoint - Carlos Victor - 07/11/2022 O aviso de loose indentation está na criação da variável rand você precisa indentar ela ali, da um espaço ou dois até remover o aviso. RE: Ajuda com checkpoint - Zoiao - 07/11/2022 (07/11/2022 10:46)Carlos Victor Escreveu: O aviso de loose indentation está na criação da variável rand você precisa indentar ela ali, da um espaço ou dois até remover o aviso. qual do rand voce está falando e como indentar ela? RE: Ajuda com checkpoint - xbruno1000x - 07/11/2022 (07/11/2022 10:53)Zoiao Escreveu:(07/11/2022 10:46)Carlos Victor Escreveu: O aviso de loose indentation está na criação da variável rand você precisa indentar ela ali, da um espaço ou dois até remover o aviso. Ele literalmente falou o que você precisa fazer. É só dar um espaço para alinhar essa variável com o resto do código. Esse rand: Código: new rand = random(sizeof(g_arrCheckpoints)); |