Как сделать чтобы при выходе игрока из игры, его личный транспорт пропадал, а при заходе появлялся?
D:\Games\Íîâàÿ ïàïêà\Serv\United\gamemodes\united.pwn(3822) : warning 219: local variable "sendername" shadows a variable at a preceding level
D:\Games\Íîâàÿ ïàïêà\Serv\United\gamemodes\united.pwn(3824) : error 017: undefined symbol "CarInfo"
D:\Games\Íîâàÿ ïàïêà\Serv\United\gamemodes\united.pwn(3824) : warning 215: expression has no effect
D:\Games\Íîâàÿ ïàïêà\Serv\United\gamemodes\united.pwn(3824) : error 001: expected token: ";", but found "]"
D:\Games\Íîâàÿ ïàïêà\Serv\United\gamemodes\united.pwn(3824) : error 029: invalid expression, assumed zero
D:\Games\Íîâàÿ ïàïêà\Serv\United\gamemodes\united.pwn(3824) : fatal error 107: too many error messages on one line
D:\Games\Новая папка\Serv\United\gamemodes\united.pwn(3822) : warning 219: local variable "sendername" shadows a variable at a preceding level
D:\Games\Новая папка\Serv\United\gamemodes\united.pwn(3824) : error 017: undefined symbol "CarInfo"
D:\Games\Новая папка\Serv\United\gamemodes\united.pwn(3824) : warning 215: expression has no effect
D:\Games\Новая папка\Serv\United\gamemodes\united.pwn(3824) : error 001: expected token: ";", but found "]"
D:\Games\Новая папка\Serv\United\gamemodes\united.pwn(3824) : error 029: invalid expression, assumed zero
D:\Games\Новая папка\Serv\United\gamemodes\united.pwn(3824) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
4 Errors.
И new sendername удалите.CarInfo[...][cOwner] - переменная владельца транспорта. При необходимости на свою меняйте.
GetPlayerName(playerid, sendername, sizeof(sendername));
for(new i = 0; i < MAX_VEHICLES; i++) if(strcmp(ocInfo[i][ocOwner], sendername, false)) DestroyVehicle(i);
enum ocInfo
{
ocId,
Float:ocSTCar_x,
Float:ocSTCar_y,
Float:ocSTCar_z,
Float:ocSTCar_a,
Float:ocPARKCar_x,
Float:ocPARKCar_y,
Float:ocPARKCar_z,
Float:ocPARKCar_a,
ocColor1,
ocColor2,
ocOwner[64],
ocLock,
ocCost,
//×àñòè òþíèíãà
ocSpoiler,
ocHood,
ocSideskirt,
ocNitro,
ocLamps,
ocExhaust,
ocWheels,
ocRoof,
ocNumber[64],
ocHydraulics,
ocBullbar,
ocRearBullbars,
ocFrontSign,
ocFrontBullbars,
ocFrontBumper,
ocRearBumper,
ocVents,
ocPaintJob,
ocKey
};
new OwnableCar[100][ocInfo];
GetPlayerName(playerid, sendername, sizeof(sendername));
for(new i = 0; i < 100; i++) if(strcmp(OwnableCar[i][ocOwner], sendername, false)) DestroyVehicle(i);
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, sizeof(name));
for(new i = 0; i < 100; i++) if(strcmp(OwnableCar[i][ocOwner], name, false)) DestroyVehicle(i);
if(PlayerInfo[playerid][pCarKey] != 0)
{
new vehicleids = PlayerInfo[playerid][pVehKey];
Delete3DTextLabel(nomer[vehicleids]);
DestroyVehicle(PlayerInfo[playerid][pVehKey]);
}
Етот код нужно разместить в OnPlayerDisconnect и подстроить под себя?Че за велик с циклами изобрели? зачем использовать их когда человек отключается.
Так и будут удалятся машины от 0 до 100, тут не нужен цикл.
Покажу пример кода, стройте его под себя.
Код:if(PlayerInfo[playerid][pCarKey] != 0) { new vehicleids = PlayerInfo[playerid][pVehKey]; Delete3DTextLabel(nomer[vehicleids]); DestroyVehicle(PlayerInfo[playerid][pVehKey]); }
да, даже вот так тебе подойдет более, под себя делай.Delete3DTextLabel
DestroyVehicle(PlayerInfo[playerid][pVehKey]);