[Ajuda] Comando estб funcionando sу com os carros
#1

Pq esse comando nгo estб funcionando com os carros prуprios? (carros de player)
Carro proprio:
Onplayerconnect
Код:
carro[playerid] = CreateVehicle(carid[playerid], carpos[playerid][0], carpos[playerid][1], carpos[playerid][2], carpos[playerid][3], 0, 1, 0);
Esse comando sу ta funcionando com os carros que sгo criados ongamemodeinit
Код:
// DP LS
	CreateVehicle(523,1586.3691,-1671.4324,5.6137,272.5536,0,1,300); // moto 1 [41]
Comando:
Код:
	CMD:rcar(playerid) {
		if(admin[playerid] < 6) return 0;
		new string[128];
		new counter = 0;
		new result;
		new plyName[MAX_PLAYER_NAME];
		GetPlayerName(playerid, plyName, MAX_PLAYER_NAME);
		for(new i; i != MAX_VEHICLES; i++)
		{
			new dist = Checarveiculoportamala(5, playerid, i);
			if(dist)
			{
				result = i;
				counter++;
			}
		}
		switch(counter)
		{
			case 0:
			{
				SendClientMessage(playerid, COLOR_GREY, "   Nгo hб nenhum carro nesse raio!");
			}
			case 1:
			{
				new name[MAX_PLAYER_NAME];
				GetPlayerName(playerid, name, sizeof(name));
				format(string, sizeof(string), "Vocк reparou o carro ID:[%d]", result);
				SendClientMessage(playerid, COLOR_GREY, string);
				format(string, sizeof(string), "AdmAviso: Carro ID:[%d] foi reparado Por: %s", result, name);
				ABroadCast(COLOR_YELLOW,string,1);
				RepairVehicle(result);
			}
			default:
			{
				SendClientMessage(playerid, COLOR_GREY, "   Foram encontrados mais de um carro nesse raio");
			}
		}

		return 1;
	}
Reply
#2

entгo esse comando sу estб funcionando com os carros que sгo criados ao iniciar o server....
os que criam dps que inicia nгo estб funcionando!?
Reply
#3

Quote:
Originally Posted by pedrotvr
Посмотреть сообщение
entгo esse comando sу estб funcionando com os carros que sгo criados ao iniciar o server....
os que criam dps que inicia nгo estб funcionando!?
Exatamente isso!!!
Reply
#4

Alguйm poderia me ajudar?
Reply
#5

Quote:
Originally Posted by gmstrikker
Посмотреть сообщение
Alguйm poderia me ajudar?
Qual o objetivo deste comando? Reparar veнculos prуximos ou um determinado veнculo?
Reply
#6

Quote:
Originally Posted by cicinho
Посмотреть сообщение
Qual o objetivo deste comando? Reparar veнculos prуximos ou um determinado veнculo?
Consertar os carros por perto, mas eu vou usar essa funзгo de pegar os carros por perto pra varias paradas como porta malas, taze vehicle e nгo ta funcionando com os carros dos players pq sгo criados qnd eles logam, sу ta funcionando com os carros que tem qnd abre o sv
Reply
#7

Caso esse cуdigo nгo resolver seu problema, poste sua funзгo "Checarveiculoportamala" pois o erro pode estar nela.

pawn Код:
CMD:rcar(playerid) {
    if(admin[playerid] < 6) return 0;
    new string[68], counter, result, plyName[MAX_PLAYER_NAME];
    GetPlayerName(playerid, plyName, MAX_PLAYER_NAME);
       
    for(new i; i != MAX_VEHICLES; i++) {
        if(Checarveiculoportamala(5, playerid, i)) result = i, counter++;
        //DEBUG - printf("%i", Checarveiculoportamala(5, playerid, i));
    }
    switch(counter)
    {
        case 0: SendClientMessage(playerid, COLOR_GREY, "   Nгo hб nenhum carro nesse raio!");
        case 1:
        {
            format(string, 68, "Vocк reparou o carro ID:[%d]", result);
            SendClientMessage(playerid, COLOR_GREY, string);
            format(string, 68, "AdmAviso: Carro ID:[%d] foi reparado Por: %s", result, plyName);
            ABroadCast(COLOR_YELLOW,string,1);
            RepairVehicle(result);
        }
        default: SendClientMessage(playerid, COLOR_GREY, "   Foram encontrados mais de um carro nesse raio");
    }
    return 1;
}
Reply
#8

editpawn... nгo funcionou

Код:
stock Checarveiculoportamala(Float:radi, playerid, vehicleid)
{
	if(IsPlayerConnected(playerid))
	{
	    new Float:PX,Float:PY,Float:PZ,Float:X,Float:Y,Float:Z;
	    GetPlayerPos(playerid,PX,PY,PZ);
	    GetVehiclePos(vehicleid, X,Y,Z);
	    new Float:Distance = (X-PX)*(X-PX)+(Y-PY)*(Y-PY)+(Z-PZ)*(Z-PZ);
	    if(Distance <= radi*radi)
	    {
	        return 1;
	    }
	}
	return 0;
}
Reply
#9

Tenta dessa forma:

PHP код:
stock Checarveiculoportamala(Float:radiplayeridvehicleid)
{
    if(
IsPlayerConnected(playerid)) {
        new 
FloatXFloatYFloatZ;
        
GetVehiclePos(vehicleidXYZ);
        if(
IsPlayerInRangeOfPoint(playeridradiXYZ)) return 1;
    }
    return 
0;

@EDIT
Testei aqui e funcionou perfeitamente.
Reply
#10

Quote:
Originally Posted by EditPawn
Посмотреть сообщение
Tenta dessa forma:

PHP код:
stock Checarveiculoportamala(Float:radiplayeridvehicleid)
{
    if(
IsPlayerConnected(playerid)) {
        new 
FloatXFloatYFloatZ;
        
GetVehiclePos(vehicleidXYZ);
        if(
IsPlayerInRangeOfPoint(playeridradiXYZ)) return 1;
    }
    return 
0;

@EDIT
Testei aqui e funcionou perfeitamente.
Ta funcionando nгo, sу com os carros que sгo criados qnd inicia o sv
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)