Originally Posted by ДitisOnHuora
Quote:
Originally Posted by dice7
show your onplayerdisconnect
|
There should not be any problems i think.. but here:
Quote:
public OnPlayerDisconnect(playerid, reason)
{
new i2;
new sendername[MAX_PLAYER_NAME];
new string[128];
for(i2=0;i2<MAX_VEHICLES;i2++)
{
if (locked[playerid][i2] == 1)
{
new i;
for(i=0;i<MAX_PLAYERS;i++)
{
SetVehicleParamsForPlayer(i2,i, 0, 0);
}
}
locked[playerid][i2] = 0;
}
new playername[MAX_PLAYER_NAME];
GetPlayerName(playerid, playername, sizeof(playername));
switch(reason)
{
case 0: format(string, sizeof(string), "*** %s has left the server. (Timeout) ***", playername);
case 1: format(string, sizeof(string), "*** %s has left the server. (Leaving) ***", playername);
case 2: format(string, sizeof(string), "*** %s has left the server. (Kicked) ***", playername);
}
ProxDetector(40.0, playerid, string, ADMIN_RED, ADMIN_RED, ADMIN_RED, ADMIN_RED, ADMIN_RED);
playerbackup(playerid);
new weap0, ammo0, weap1, ammo1, weap2, ammo2, weap3, ammo3, weap4, ammo4, weap5, ammo5, weap6, ammo6, weap7, ammo7;
GetPlayerWeaponData(playerid,0,weap0,ammo0);
GetPlayerWeaponData(playerid,1,weap1,ammo1);
GetPlayerWeaponData(playerid,2,weap2,ammo2);
GetPlayerWeaponData(playerid,3,weap3,ammo3);
GetPlayerWeaponData(playerid,4,weap4,ammo4);
GetPlayerWeaponData(playerid,5,weap5,ammo5);
GetPlayerWeaponData(playerid,6,weap6,ammo6);
GetPlayerWeaponData(playerid,7,weap7,ammo7);
GetPlayerWeaponData(playerid,0,PlayerInfo[playerid][pGun0],PlayerInfo[playerid][pAmmo0]);
GetPlayerWeaponData(playerid,1,PlayerInfo[playerid][pGun1],PlayerInfo[playerid][pAmmo1]);
GetPlayerWeaponData(playerid,2,PlayerInfo[playerid][pGun2],PlayerInfo[playerid][pAmmo2]);
GetPlayerWeaponData(playerid,3,PlayerInfo[playerid][pGun3],PlayerInfo[playerid][pAmmo3]);
GetPlayerWeaponData(playerid,4,PlayerInfo[playerid][pGun4],PlayerInfo[playerid][pAmmo4]);
GetPlayerWeaponData(playerid,5,PlayerInfo[playerid][pGun5],PlayerInfo[playerid][pAmmo5]);
GetPlayerWeaponData(playerid,6,PlayerInfo[playerid][pGun6],PlayerInfo[playerid][pAmmo6]);
GetPlayerWeaponData(playerid,7,PlayerInfo[playerid][pGun7],PlayerInfo[playerid][pAmmo7]);
GetPlayerWeaponData(playerid,8,PlayerInfo[playerid][pGun8],PlayerInfo[playerid][pAmmo8]);
drivingtest[playerid] = 0;
drivingtestcheck[playerid] = 0;
drivingtesttime[playerid] = 0;
smokepottime[playerid] = 0;
smokecracktime[playerid] = 0;
hospitalbill[playerid] = 0;
gActivePlayers[playerid]--;
numplayers--;
PlayerInfo[playerid][pAdjustable] = 1;
TextDrawHideForPlayer ( playerid , RocketWarning );
DOO_OnPlayerDisconnect(playerid);
ResetMapIconVariables(playerid);
OnUpdatePlayer(playerid);
PingWarn[playerid] = 0;
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(TaxiAccepted[i] < 999)
{
if(TaxiAccepted[i] == playerid)
{
TaxiAccepted[i] = 999;
GameTextForPlayer(i, "~w~Taxi Caller~n~~r~Left the game", 5000, 1);
TaxiCallTime[i] = 0;
DisablePlayerCheckpoint(i);
}
}
else if(BusAccepted[i] < 999)
{
if(BusAccepted[i] == playerid)
{
BusAccepted[i] = 999;
GameTextForPlayer(i, "~w~Bus Caller~n~~r~Left the game", 5000, 1);
BusCallTime[i] = 0;
DisablePlayerCheckpoint(i);
}
}
}
}
if(TransportCost[playerid] > 0 && TransportDriver[playerid] < 999)
{
if(IsPlayerConnected(TransportDriver[playerid]))
{
TransportMoney[TransportDriver[playerid]] += TransportCost[playerid];
TransportTime[TransportDriver[playerid]] = 0;
TransportCost[TransportDriver[playerid]] = 0;
format(string, sizeof(string), "~w~Passenger left~n~~g~Earned $%d",TransportCost[playerid]);
GameTextForPlayer(TransportDriver[playerid], string, 5000, 1);
}
}
if(GotHit[playerid] > 0)
{
if(GetChased[playerid] < 999)
{
if(IsPlayerConnected(GetChased[playerid]))
{
SendClientMessage(GetChased[playerid], COLOR_YELLOW, "Your Hit has left the server.");
GoChase[GetChased[playerid]] = 999;
}
}
}
if (gLastCar[playerid] > 0)
{
gLastDriver[gLastCar[playerid]] = 300;
if(PlayerInfo[playerid][pPhousekey] != gLastCar[playerid]-1)
{
gCarLock[gLastCar[playerid]] = 0;
UnLockCar(gLastCar[playerid]);
}
}
if(PlayerBoxing[playerid] > 0)
{
if(Boxer1 == playerid)
{
if(IsPlayerConnected(Boxer2))
{
PlayerBoxing[Boxer2] = 0;
SetPlayerPos(Boxer2, 765.8433,3.2924,1000.7186);
SetPlayerInterior(Boxer2, 5);
PlayerInfo[Boxer2][pInt] = 5;
GameTextForPlayer(Boxer2, "~r~Match interupted", 5000, 1);
}
}
else if(Boxer2 == playerid)
{
if(IsPlayerConnected(Boxer1))
{
PlayerBoxing[Boxer1] = 0;
SetPlayerPos(Boxer1, 765.8433,3.2924,1000.7186);
SetPlayerInterior(Boxer1, 5);
PlayerInfo[Boxer2][pInt] = 5;
GameTextForPlayer(Boxer1, "~r~Match interupted", 5000, 1);
}
}
InRing = 0;
RoundStarted = 0;
Boxer1 = 255;
Boxer2 = 255;
TBoxer = 255;
}
if(TransportDuty[playerid] == 1)
{
TaxiDrivers -= 1;
}
else if(TransportDuty[playerid] == 2)
{
BusDrivers -= 1;
}
if(PlayerCuffed[playerid] > 0)
{
PlayerInfo[playerid][pCuffed] = 1;
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "5[SERVER]: %s was autojailed for 5 minutes, Reason: Disconnected while arresting.", sendername);
ircSay(EchoConnection,EchoChan,string);
format(string, sizeof(string), "[SERVER]: %s was autojailed for 5 minutes, Reason: Disconnected while arresting.", sendername);
SendClientMessageToAll(COLOR_RED, string);
}
if(PlayerInfo[playerid][pJob] == 11)
{
if(JobDuty[playerid] == 1)
{
Medics -= 1;
}
}
else if(PlayerInfo[playerid][pJob] == 7)
{
if(JobDuty[playerid] == 1)
{
Mechanics -= 1;
}
}
if (PlayerInfo[playerid][pRoadblock] != 0)
{
RemoveRoadblock(playerid);
}
return 1;
}
|
|