[Ajuda] Existe algum comando para sair da бgua?
#1

Boa tarde.
Existe alguma forma de criar um comando para sair da бgua e teleportб-lo para a pista mais prуxima, ou qualquer local mais prуximo de onde caiu?
Reply
#2

Й sу pegar a posiзгo em que ele estб e depois verificar se ele estб perto do local desejado e vocк manda ele ir pra lб.
Reply
#3

No samp tudo tem como, basta saber fazer. Eu faria uma funзгo bem elaborada, utilizando nodes pra pegar o ponto vбlido mais prуximo e utilizaria anims + ColAndreas pra detectar quando o player estivesse na бgua, tem formas mais fбceis mas essa й ao meu ver a mais bem elaborada.
Reply
#4

Entendi. Vou tentar trabalhar nisso, pois imagina um Adm nadando no prуprio servidor que nгo tem teleport.. kkkk
Reply
#5

Quote:
Originally Posted by Psicotico
Посмотреть сообщение
Entendi. Vou tentar trabalhar nisso, pois imagina um Adm nadando no prуprio servidor que nгo tem teleport.. kkkk
Para o que vc quer fazer isto pode ser ъtil, sу o admin apertar "esc" e marcar no mapa o local para teleportar.
PHP код:
public OnPlayerClickMap(playeridFloat:fXFloat:fYFloat:fZ)
{
    if(
IsPlayerAdmin(playerid)) { //Troque pela variбvel de admin do seu gamemode.
        
SetPlayerPos(playeridfXfYfZ);
    }
    return 
1;

Reply
#6

Hб outro modo mais simples:
Код:
#include <a_samp>
#include <zcmd>

new Float:PosAntesAgua[MAX_PLAYERS][4];

public OnGameModeInit()
{
	SetTimer("CheckAgua", 10000, true);
	return 1;
}

forward CheckAgua();
public CheckAgua()
{
	for(new i = 0; i < MAX_PLAYERS; i++)
	{
	    if(IsPlayerConnected(i))
	    {
	        if(!IsPlayerInWater(i))
	        {
	            GetPlayerPos(i, PosAntesAgua[i][0], PosAntesAgua[i][1], PosAntesAgua[i][2]);
	            GetPlayerFacingAngle(i, PosAntesAgua[i][3]);
	        }
	    }
	}
	return 1;
}

CMD:sairagua(playerid)
{
	if(IsPlayerInWater(playerid))
	{
	    SetPlayerPos(playerid, PosAntesAgua[playerid][0], PosAntesAgua[playerid][1], PosAntesAgua[playerid][2]);
	    SetPlayerFacingAngle(playerid, PosAntesAgua[playerid][3]);
	    SendClientMessage(playerid, 0x00FF00FF, "Vocк saiu da бgua com sucesso");
	}
	else SendClientMessage(playerid, 0xFF0000FF, "Vocк nгo estб na бgua!");
	return 1;
}

stock IsPlayerInWater(playerid)
{
	new anim = GetPlayerAnimationIndex(playerid);
 	if(((anim >=  1538) && (anim <= 1542)) || (anim == 1544) || (anim == 1250) || (anim == 1062)) return 1;
  	return 0;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)