Como se quita el comando /llaves del GM De Zenon City
#7

Quote:
Originally Posted by Ebaristo
Посмотреть сообщение
La estarбs agregando mal, como dije debes agregarlo luego de la primera llave { de OnPlayerSpawn (SIN QUITAR NADA DE ESE CALLBACK), la funciуn esa es CARSPAWN la que spawnea los coches, solo que imitamos el uso del dialogo, con un loop es lo mismo que spawnear los coches manualmente solo que lo hace.

Asi quedarнa el callback completo en OnPlayerSpawn (el GM ZC que yo tengo sin editar)
Код:
public OnPlayerSpawn(playerid)
{
for(new listitem = 0; listitem < 3; listitem++)
{
if(PlayerVehicleInfo[playerid][listitem][pvImpounded] == 1) return SendClientMessageEx(playerid,COLOR_WHITE,"El auto que intenta spawnear estб embargado.");
if(PlayerVehicleInfo[playerid][listitem][pvImpounded] >= 2) PlayerVehicleInfo[playerid][listitem][pvImpounded] = 0;
if(PlayerVehicleInfo[playerid][listitem][pvModelId] != 0 && PlayerVehicleInfo[playerid][listitem][pvImpounded] == 0 && PlayerVehicleInfo[playerid][listitem][pvSpawned]== 0)
{
if(carsforplayer[playerid] == 2) return SendClientMessageEx(playerid,COLOR_WHITE,"* Sуlo puedes tener 2 coches spawneados y 6 guardados.");
PlayerCars++;
carsforplayer[playerid]++;
new carcreated = CreateVehicle(PlayerVehicleInfo[playerid][listitem][pvModelId], PlayerVehicleInfo[playerid][listitem][pvPosX], PlayerVehicleInfo[playerid][listitem][pvPosY], PlayerVehicleInfo[playerid][listitem][pvPosZ], PlayerVehicleInfo[playerid][listitem][pvPosAngle],PlayerVehicleInfo[playerid][listitem][pvColor1], PlayerVehicleInfo[playerid][listitem][pvColor2], -1);
PlayerVehicleInfo[playerid][listitem][pvId] = carcreated;
VehicleFuel[carcreated] = PlayerVehicleInfo[playerid][listitem][pvFuel];
SetVehicleHealth(carcreated, PlayerVehicleInfo[playerid][listitem][pvHealth]);
SetVehicleVirtualWorld(carcreated, PlayerVehicleInfo[playerid][listitem][pvVW]);
PlayerVehicleInfo[playerid][listitem][pvSpawned] = 1;
SendClientMessageEx(playerid,COLOR_WHITE,"Vehiculo spawneado correctamente, en la ъltima posiciуn que lo estacionaste. (/gps)");
if(PlayerVehicleInfo[playerid][listitem][pvLocked] == 1)
LockPlayerVehicle(playerid, PlayerVehicleInfo[playerid][listitem][pvId], PlayerVehicleInfo[playerid][listitem][pvLock]);
LoadPlayerVehicleMods(playerid, listitem);
return 1;

}
else if(PlayerVehicleInfo[playerid][listitem][pvSpawned] == 1)
{
new playername[MAX_PLAYER_NAME];
GetPlayerName(playerid, playername, sizeof(playername));
//printf(" Unloading %s's vehicles.", playername);
new Float:health;
GetVehicleHealth(PlayerVehicleInfo[playerid][listitem][pvId], health);
if(health < 500) return SendClientMessageEx(playerid, COLOR_GREY, " El vehiculo estб muy daсado para ser guardado.");
if(IsVehicleBusy(PlayerVehicleInfo[playerid][listitem][pvId])) return SendClientMessageEx(playerid, COLOR_GREY, " El vehiculo estб ocupado por otra persona y no puede ser guardado.");
if(PlayerVehicleInfo[playerid][listitem][pvImpounded] >= 2) PlayerVehicleInfo[playerid][listitem][pvImpounded] = 0;
if(PlayerVehicleInfo[playerid][listitem][pvId] != INVALID_PLAYER_VEHICLE_ID && PlayerVehicleInfo[playerid][listitem][pvImpounded] == 0 && PlayerVehicleInfo[playerid][listitem][pvSpawned]== 1)
{
PlayerCars--;
carsforplayer[playerid]--;
if(LockStatus[PlayerVehicleInfo[playerid][listitem][pvId]] != 0) LockStatus[PlayerVehicleInfo[playerid][listitem][pvId]] = 0;
UpdatePlayerVehicleMods(playerid, listitem);
DestroyVehicle(PlayerVehicleInfo[playerid][listitem][pvId]);
VehicleFuel[PlayerVehicleInfo[playerid][listitem][pvId]] = 1000;
PlayerVehicleInfo[playerid][listitem][pvId] = INVALID_PLAYER_VEHICLE_ID;
PlayerVehicleInfo[playerid][listitem][pvSpawned] = 0;
SendClientMessageEx(playerid,COLOR_WHITE,"Vehiculo fue guardado correctamente.");
if(PlayerVehicleInfo[playerid][listitem][pvAllowedPlayerId] != INVALID_PLAYER_ID)
{
Info[PlayerVehicleInfo[playerid][listitem][pvAllowedPlayerId]][pVehicleKeys] = INVALID_PLAYER_VEHICLE_ID;
Info[PlayerVehicleInfo[playerid][listitem][pvAllowedPlayerId]][pVehicleKeysFrom] = INVALID_PLAYER_ID;
PlayerVehicleInfo[playerid][listitem][pvAllowedPlayerId] = INVALID_PLAYER_ID;
}
}
}
}
	if(!gPlayerLogged{playerid})
	{
	    SendClientMessageEx(playerid, COLOR_WHITE, "ERROR: No has ingresado correctamente al servidor!");
        Kick(playerid);
        return 1;
 	}
	if(IsPlayerNPC(playerid)) return 1;
	if(!gPlayerAnimLibsPreloaded[playerid])
	{
        LoadAnimLibs(playerid);
		gPlayerAnimLibsPreloaded[playerid] = 1;
	}
	SetPlayerWantedLevel(playerid, Info[playerid][pWantedLevel]);
	gTeam[playerid] = Info[playerid][pTeam]; //Set the Team
	SetPlayerSpawn(playerid);
	SetPlayerWeapons(playerid);
	OnDuty[playerid] = 0;
	SetPlayerToTeamColor(playerid);
	SetPlayerSkillLevel(playerid, WEAPONSKILL_PISTOL, 1);
	SetPlayerSkillLevel(playerid, WEAPONSKILL_MICRO_UZI, 1);
	SyncPlayerTime(playerid);
	return 1;
}
Si quieres una imagen de como funciona correctamente no tengo problemas en acercartela, hay que tener un poco de fй.
No consigo meterlo, me tira o 26 errores o dejу de funcionar, si puedes pasarme una imagen de como lo tienes tъ :S

Aunque primero compila para ver si te funciona :P

En onplayerspawn ya hay mбs cosas - PD: No podrнa ser en onplayerlogin o algo?
Reply


Messages In This Thread

Forum Jump:


Users browsing this thread: 1 Guest(s)