Advertisement
alwinto

bug

Sep 9th, 2024
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.52 KB | None | 0 0
  1. public OnPlayerDisconnect(playerid, reason)
  2. {
  3. /*
  4. if (lstream[playerid])
  5. {
  6. SvDeleteStream(lstream[playerid]);
  7. lstream[playerid] = SV_NULL;
  8. }
  9. */
  10. //VOIP
  11. VoipOn[playerid] = 0;
  12. VoipOff[playerid] = 0;
  13.  
  14. TirarGPS(playerid);
  15. //sv_stream_delete(player_stream[playerid]);
  16. PlayerVehicle_Unload(playerid);
  17.  
  18. if(pTemp[playerid][pTrucker] > -1 && PlayerInfo[playerid][pJob] == 6 && pTemp[playerid][pTrucker_Unit] != 0)
  19. {
  20. GivePlayerMoneyEx(playerid, pTemp[playerid][pTrucker_Unit] * UNIT_PRICE, "menghemat uang untuk kargo");
  21.  
  22. AddPlayerNotify(playerid, "Anda telah mengembalikan uang untuk kehilangan muatan.");
  23. }
  24. isStranged[playerid] = 0;
  25.  
  26. new old_pay = PlayerInfo[playerid][pPayCheck];
  27.  
  28. PlayerInfo[playerid][pPayCheck] += pTemp[playerid][pWorkSalary];
  29. PlayerInfo[playerid][pPayCheck] += GetPVarInt(playerid, "JobMoney");
  30. PlayerInfo[playerid][pPayCheck] += AmmountWood[playerid]*3000;
  31.  
  32. if(PlayerInfo[playerid][pPayCheck] != old_pay) OnPlayerUpdateAccountsPer(playerid, "pPayCheck", PlayerInfo[playerid][pPayCheck]);
  33.  
  34. //
  35.  
  36. if(pData[playerid][pJob] == 1)
  37. {
  38. jobpemotongayam--;
  39. }
  40. else if(pData[playerid][pJob] == 2)
  41. {
  42. jobastronot--;
  43. }
  44. else if(pData[playerid][pJob] == 3)
  45. {
  46. jobhunter--;
  47. }
  48. else if(pData[playerid][pJob] == 4)
  49. {
  50. jobnelayan--;
  51. }
  52. else if(pData[playerid][pJob] == 5)
  53. {
  54. jobhauling--;
  55. }
  56.  
  57.  
  58. if(family_player_3d[playerid] != Text3D:-1) DestroyDynamic3DTextLabel(family_player_3d[playerid]);
  59.  
  60. //
  61.  
  62. for (new id = 0; id != MAX_ACC; id++) if(AccData[playerid][id][accExists])
  63. {
  64. MySQL_SavePlayerToys(playerid, id);
  65. }
  66.  
  67.  
  68. if(GetPVarType(playerid, "PlacedBB"))
  69. {
  70. DestroyDynamicObject(GetPVarInt(playerid, "PlacedBB"));
  71. DestroyDynamic3DTextLabel(Text3D:GetPVarInt(playerid, "BBLabel"));
  72. if(GetPVarType(playerid, "BBArea"))
  73. {
  74. foreach(Player,i)
  75. {
  76. if(IsPlayerInDynamicArea(i, GetPVarInt(playerid, "BBArea")))
  77. {
  78. StopAudioStreamForPlayer(i);
  79. SendClientMessage(i, COLOR_LIGHTBLUE, " The boombox creator has disconnected from the server.");
  80. }
  81. }
  82. }
  83. }
  84.  
  85. CancelPlayerEditDynObject( playerid );
  86. for( new e_info: i; i < e_info; i++) Edit_Android[ playerid ][ i ] = 0;
  87. //
  88.  
  89. for(new i; i < MAX_BARRAGE_OBJ; i++)
  90. {
  91. if(!player_barrage[playerid][i]) continue;
  92.  
  93. DestroyDynamicObject(player_barrage[playerid][i]);
  94. player_barrage[playerid][i] = 0;
  95.  
  96. DestroyDynamic3DTextLabel(player_barrage_3d[playerid][i]);
  97. }
  98.  
  99. for(new i; i < MAX_ADVERTS; i++) if(AdvertInfo[i][aEditor] == playerid) AdvertInfo[i][aEditor] = INVALID_PLAYER_ID;
  100.  
  101. if(pTemp[playerid][uborka_text] != Text3D:INVALID_3DTEXT_ID)
  102. {
  103. DestroyDynamic3DTextLabel(pTemp[playerid][uborka_text]);
  104. pTemp[playerid][uborka_text] = Text3D:INVALID_3DTEXT_ID;
  105. }
  106.  
  107. if(pTemp[playerid][bus_text] != Text3D:INVALID_3DTEXT_ID)
  108. {
  109. DestroyDynamic3DTextLabel(pTemp[playerid][bus_text]);
  110. pTemp[playerid][bus_text] = Text3D:INVALID_3DTEXT_ID;
  111. }
  112.  
  113. PlayerStopRobbery(playerid);
  114.  
  115. for(new i; i < MAX_REPORTS; i++) if(report_info[i][r_id] == playerid) report_info[i][r_id] = INVALID_PLAYER_ID;
  116.  
  117. if(rob_offer[playerid] != INVALID_PLAYER_ID)
  118. {
  119. new r_offer = rob_offer[playerid];
  120. rob_offer[r_offer] = INVALID_PLAYER_ID;
  121. }
  122.  
  123. DeletePlayerQuestData(playerid);
  124.  
  125. DeletePlayerDrugMark(playerid);
  126.  
  127. PlayerLoseDuel(playerid);
  128.  
  129. RemovePlayerFromContainer(playerid);
  130.  
  131. DestroyDeliveryObject(playerid);
  132.  
  133. if(player_race_reg{playerid}) PlayerLeaveRace(playerid);
  134.  
  135. if(Iter_Contains(admin_list, playerid)) Iter_Remove(admin_list, playerid);
  136. if(Iter_Contains(support_list, playerid)) Iter_Remove(support_list, playerid);
  137.  
  138. for(new i, z = MAX_BONE_TABLES; i < z; i++)
  139. for(new x; x < 4; x++)
  140. if(bones_table_players[i][x] == playerid)
  141. bones_table_players[i][x] = INVALID_PLAYER_ID;
  142.  
  143. foreach(new i : Player)
  144. {
  145. if(player_taxi_passanger[i] != INVALID_PLAYER_ID)
  146. {
  147. player_taxi_passanger[i] = INVALID_PLAYER_ID;
  148.  
  149. SendClientMessage(i, COLOR_GREY, "Penumpang meninggalkan permainan.");
  150.  
  151. SearchNextClientForTaxi(GetPlayerVehicleID(i), playerid);
  152.  
  153. break;
  154. }
  155.  
  156. if(player_search_player[i] == playerid)
  157. {
  158. DisablePlayerCheckpoint(i);
  159. SCMF(i, COLOR_GREY, "Komunikasi terputus, pelacakan pemain %s[%d] dihentikan. (disconnect)", Name(player_search_player[i]), player_search_player[i]);
  160. player_search_player[i] = -1;
  161.  
  162. break;
  163. }
  164.  
  165. if(gSpectateID[i] == playerid) // jika off pemain sedang diawasi
  166. {
  167. StopSpectate(i);
  168. GameTextForPlayer(i, "~w~RECON ~r~ OFF~n~ ~r~PLAYER DISCONNECT", 5000, 3);
  169.  
  170. break;
  171. }
  172. }
  173. if(PlantObject[playerid] != -1)// Hapus objek dari pemain
  174. {
  175. DestroyObject(PlantObject[playerid]);
  176. PlantObject[playerid] = -1;
  177. }
  178. if(PlayerInfo[playerid][pWanted] > 0 && PlayerCuffed[playerid] > 0)
  179. {
  180. ResetWeapons(playerid);
  181.  
  182. SetPlayerPrison(playerid, 1, PlayerInfo[playerid][pWanted] * 600);
  183. }
  184. if(pTemp[playerid][pWork] >= 1)
  185. {
  186. pTemp[playerid][pWork] = 0;
  187. if(pTemp[playerid][pWork] == 2)
  188. {
  189. if(IsPlayerAttachedObjectSlotUsed(playerid, 3)) RemovePlayerAttachedObject(playerid, 3);
  190. if(IsPlayerAttachedObjectSlotUsed(playerid, 4)) RemovePlayerAttachedObject(playerid, 4);
  191. }
  192. }
  193. if(player_gun_obj[playerid])
  194. {
  195. new objectid = player_gun_obj[playerid];
  196. if(IsValidDynamicObject(objectid)) DestroyDynamicObject(objectid);
  197. }
  198.  
  199. PlayerLeaveHospitalBed(playerid);
  200.  
  201.  
  202. if(PlayerInfo[playerid][pObject] > 0)
  203. {
  204. DestroyDynamic3DTextLabel(PlayerInfo[playerid][pDText]);
  205. DestroyDynamicObject(PlayerInfo[playerid][pObject]);
  206. }
  207. if(PlayerInfo[playerid][pJob] == 2 && pTemp[playerid][pBusID] != 0)
  208. {
  209. spawned_bus(playerid);
  210. }
  211. if(PlayerInfo[playerid][pJob] == 3 && pTemp[playerid][puborkacar] != 0)
  212. {
  213. pTemp[playerid][puborkacar] = 0;
  214. player_route_id[playerid] = 0;
  215. uborkaPos{playerid} = 0;
  216. SetVehicleToRespawnEx(rent_job_vehicle[playerid]);
  217. }//membersihkan
  218. /*if(admin_level[playerid] > 0)
  219. {
  220. PlayerInfo[playerid][pMember] = 0;
  221. PlayerInfo[playerid][pLeader] = 0;
  222. PlayerInfo[playerid][pRank] = 0;
  223. PlayerInfo[playerid][pfWarn] = 0;
  224. }*/
  225.  
  226. if(form_fraction[playerid] == FRACTION_LSPD)
  227. {
  228. policeduty -= 1;
  229. }
  230. else if(form_fraction[playerid] == FRACTION_LSMEDICS)
  231. {
  232. emsduty -= 1;
  233. }
  234. else if(form_fraction[playerid] == FRACTION_NEWS)
  235. {
  236. newsduty -= 1;
  237. }
  238. else if(form_fraction[playerid] == FRACTION_PEDAGANG)
  239. {
  240. pedagangduty -= 1;
  241. }
  242. else if(form_fraction[playerid] == FRACTION_ARMY_LS)
  243. {
  244. armyduty -= 1;
  245. }
  246. else if(form_fraction[playerid] == FRACTION_FBI)
  247. {
  248. fbiduty -= 1;
  249. }
  250. else if(form_fraction[playerid] == FRACTION_MAYOR)
  251. {
  252. pemerintahduty -= 1;
  253. }
  254.  
  255. if(GetPVarInt(playerid, "GPS") != 0) DisablePlayerCheckpoint(playerid);
  256. // SAVED
  257. OnPlayerUpdateAccounts(playerid);
  258. LastExitSpawn(playerid);
  259. PlayerInfo[playerid][pLogin] = 0;
  260.  
  261. mysql_format(mMysql, MySQLStr, 96, "UPDATE `accounts` SET `pLogin` = 0 WHERE `pID` = %d", PlayerInfo[playerid][pID]);
  262. mysql_tquery(mMysql, MySQLStr);
  263.  
  264. if(GetPVarInt(playerid, "FillSost") > 0) KillTimer(KillTimer(FillTimer[playerid])); // jika off saat pengisian bahan bakar
  265.  
  266. return 1;
  267. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement