SA-MP Forums Archive
[Ajuda] Sу funciona 1 checkpoint no servidor, por que? - 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] Sу funciona 1 checkpoint no servidor, por que? (/showthread.php?tid=474796)



Sу funciona 1 checkpoint no servidor, por que? - rolex - 09.11.2013

Boa tarde pessoal, mais uma dъvida aн!

O Meu servidor tem um sistema de checkpoints feitos para auto-escola(DMV). Ele funciona tranquilo, porйm se eu coloco outro sistema de checkpoint no servidor, como por exemplo um job entregador de pizzas, os checkpoints da auto-escola bugam, e do emprego tambйm buga por exemplo:
Digamos que eu entro no carro da auto-escola quando eu entro em um checkpoint, ele jб seta o prуximo checkpoint. Caso eu coloque algum outro tipo de checkpoint no servidor, sу aparece o primeiro CP, e os prуximos nгo aparecem mais e buga. Й como se fosse obrigatуrio apenas ter o sistema de CP da auto escola no servidor. Como eu arrumo isso? oque pode ser?

#defines
Код:
new LicenseTest[MAX_PLAYERS];
new CP[MAX_PLAYERS];
no OnPlayerCommandText
Код:
LicenseTest[playerid] =1;
CP[playerid] = 1;
no OnPlayerEnterVehicle
Код:
if(IsDMVCar(vehicleid))
{
if(!LicenseTest[playerid])
no OnPlayerExitVehicle
Код:
if(LicenseTest[playerid])
{
DisablePlayerCheckpoint(playerid);
LicenseTest[playerid] = 0;
CP[playerid] = 0;
no OnPlayerEnterCheckpoint
Код:
DisablePlayerCheckpoint(playerid);
PlayerInfo[playerid][pCarLic] = 1;
LicenseTest[playerid] = 0;
CP[playerid] = 0;



Re: Sу funciona 1 checkpoint no servidor, por que? - rolex - 10.11.2013

alguem pode me da uma forзa? to no sanhasso aqui, nгo da pra por emprego nenhum no servidor por causa disso. :/


Re: Sу funciona 1 checkpoint no servidor, por que? - Coe1 - 10.11.2013

pawn Код:
new CP1, CP2;

CP1 = CreateCheckpoint(...)



Re: Sу funciona 1 checkpoint no servidor, por que? - bruxo00 - 10.11.2013

Utiliza o streamer? Se nгo usar, use-o.


Re: Sу funciona 1 checkpoint no servidor, por que? - rolex - 10.11.2013

@Coe1
Nгo tem nenhum CreateCheckpoint, o sistema do CP estб todo assim:
Код:
	else DisablePlayerCheckpoint(playerid);
    if(CP[playerid] == 1) // Drivers License Test
	{
		if(IsPlayerInRangeOfPoint(playerid,5,2040.7101,-1930.1340,13.4667)) // Checkpoint 1
		{
		    SetPlayerCheckpoint(playerid,1948.1033,-1930.6860,13.4751,5);
		}
		else if(IsPlayerInRangeOfPoint(playerid,5,1948.1033,-1930.6860,13.4751)) // Checkpoint 2
		{
		    SetPlayerCheckpoint(playerid,1830.9167,-1930.0353,13.4754,5);
		}
		else if(IsPlayerInRangeOfPoint(playerid,5,1830.9167,-1930.0353,13.4754)) // Checkpoint 3
		{
			SetPlayerCheckpoint(playerid,1823.9110,-1791.2739,13.4752,5);
		}
		else if(IsPlayerInRangeOfPoint(playerid,5,1823.9110,-1791.2739,13.4752)) // Checkpoint 4
		{
			SetPlayerCheckpoint(playerid,1824.1433,-1629.3223,13.4751,5);
		}
		else if(IsPlayerInRangeOfPoint(playerid,5,1824.1433,-1629.3223,13.4751)) // Checkpoint 5
		{
			SetPlayerCheckpoint(playerid,1929.6962,-1614.7090,13.4751,5);
		}
		else if(IsPlayerInRangeOfPoint(playerid,5,1929.6962,-1614.7090,13.4751)) // Checkpoint 6
		{
			SetPlayerCheckpoint(playerid,1938.9127,-1738.9067,13.4751,5);
		}
		else if(IsPlayerInRangeOfPoint(playerid,5,1938.9127,-1738.9067,13.4751)) // Checkpoint 7
		{
			SetPlayerCheckpoint(playerid,1959.0842,-1765.3502,13.4750,5);
		}
		else if(IsPlayerInRangeOfPoint(playerid,5,1959.0842,-1765.3502,13.4750)) // Checkpoint 8
		{
			SetPlayerCheckpoint(playerid,1975.3130,-1814.8724,13.4751,5);
		}
		else if(IsPlayerInRangeOfPoint(playerid,5,1975.3130,-1814.8724,13.4751)) // Checkpoint 9
		{
			SetPlayerCheckpoint(playerid,2066.9341,-1814.9067,13.4751,5);
		}
		else if(IsPlayerInRangeOfPoint(playerid,5,2066.9341,-1814.9067,13.4751 )) // Checkpoint 10
		{
			SetPlayerCheckpoint(playerid,2078.9148,-1897.3009,13.4473,5);
		}
		else if(IsPlayerInRangeOfPoint(playerid,5,2078.9148,-1897.3009,13.4473)) // Checkpoint 11
		{
			SetPlayerCheckpoint(playerid,2074.2095,-1907.4380,13.6393,5);
		}
		else if(IsPlayerInRangeOfPoint(playerid,5,2074.2095,-1907.4380,13.6393)) // Checkpoint 12
		{
		    new Float:Health;
		    GetVehicleHealth(GetPlayerVehicleID(playerid), Health);
		    if(Health > 900)
			{
				DisablePlayerCheckpoint(playerid);
				PlayerInfo[playerid][pCarLic] = 1;
				LicenseTest[playerid] = 0;
				CP[playerid] = 0;
				SetVehicleToRespawn(GetPlayerVehicleID(playerid));
				SendClientMessage(playerid, COLOR_LIGHTBLUE, "* Auto-Escola: Parabйns, Vocк passou no teste de direзгo! aquн estб sua habilitaзгo.");
			}
			else
			{
				DisablePlayerCheckpoint(playerid);
				LicenseTest[playerid] = 0;
				CP[playerid] = 0;
				SetVehicleToRespawn(GetPlayerVehicleID(playerid));
				SendClientMessage(playerid, COLOR_LIGHTBLUE, "* Auto-Escola: Vocк danificou demais o veнculo da auto-escola. Vocк falhou no teste!");
			}
		}
	}
	else DisablePlayerCheckpoint(playerid);

@bruxo00
Sim, o streamer estб nos includes!
Код:
#include <streamer>



Re: Sу funciona 1 checkpoint no servidor, por que? - bruxo00 - 10.11.2013

LOL, o servidor tem streamer mas nгo o utiliza para criar as rotas? Utilize-o para criar as suas rotas, muito mais fбcil e rбpido.


Re: Sу funciona 1 checkpoint no servidor, por que? - rolex - 10.11.2013

bruxo00, tem como me indicar algum tutorial onde eu possa ver como aplica-lo ?


Re: Sу funciona 1 checkpoint no servidor, por que? - bruxo00 - 10.11.2013

Tem aqui um exemplo bбsico:

PHP код:
forward CarregarRotas(playerid);
new 
rota1rota2rota3;
public 
OnGameModeInit()
{
    
CarregarRotas(playerid);
    return 
1;
}
public 
OnPlayerEnterDynamicCP(playeridcheckpointid)
{
    if(
checkpointid == rota1)
    {
        
TogglePlayerDynamicCP(playeridrota10); // desliga a rota 1
        
TogglePlayerDynamicCP(playeridrota21); // liga a rota 2
        
return 0;
    }
    if(
checkpointid == rota2)
    {
         
TogglePlayerDynamicCP(playeridrota20); // desliga a rota 2
        
TogglePlayerDynamicCP(playeridrota31); // liga a rota 3
        
return 0;
    }
    return 
1;
}
public 
CarregarRotas(playerid)
{
    
rota1 CreateDynamicCP(xyz4, -1, -1playerid3000.0);
    
rota2 CreateDynamicCP(xyz4, -1, -1playerid3000.0);
    
rota3 CreateDynamicCP(xyz4, -1, -1playerid3000.0);
    
    
TogglePlayerAllDynamicCPs(playerid0);
    return 
1;




Re: Sу funciona 1 checkpoint no servidor, por que? - rolex - 10.11.2013

excelente! vou testar e ver se o Gamemode aceita! Muito obrigado novamente aн bruxo00! oque precisar relacionado a imagem aн, pode contar comigo!