GTAMulti - GTA Türkiye

San Andreas Multiplayer => PAWN Kodlama => Yardım Talepleri => Konuyu başlatan: lower - 26 Nisan 2025, 16:09:16

Başlık: Sunucudan Çıkıyorum ama sunucudayım?
Gönderen: lower - 26 Nisan 2025, 16:09:16
Sunucuya bağlanıyor sıkıntı yok.Çıkış yaptığımda oyundan çıkıyorum ama hala sunucuda gösteriyor oyuncuyu ama oyuncu oyunda yok nedeni nedir?
Başlık: Ynt: Sunucudan Çıkıyorum ama sunucudayım?
Gönderen: Warning - 26 Nisan 2025, 18:18:04
sunucuya dogru sekilde disconnect mesajı gitmiyordur

PAWN Kodu: Seç
OnPlayerDisconnect
eventini atarmısınız
Başlık: Ynt: Sunucudan Çıkıyorum ama sunucudayım?
Gönderen: lower - 27 Nisan 2025, 12:12:53
public OnPlayerDisconnect(playerid, reason)
{
     TextDrawHideForPlayer(playerid, TimeDate[0]);
   TextDrawHideForPlayer(playerid, TimeDate[1]);
   
   if(GetPVarInt(playerid, "pnsID") != -1)
      Tamirhane[GetPVarInt(playerid, "pnsID")][Tamirhane_Kullaniliyor] = 0;
      
   ResetRobbery(playerid, 1);
   KillTimer(MekanikTimer[playerid]);
   for(new i = 0; i < MAX_SIRKET; i++)
   {
      if(sirketData[sirketID] >= 1)
      {
         Sirket_Kaydet(i);
      }
   }
    if (HasTrash[playerid]) Trash_ResetPlayer(playerid);

   if (GetPlayerState(playerid) == PLAYER_STATE_DRIVER && GetVehicleModel(GetPlayerVehicleID(playerid)) == 574)
    {
        SetVehicleToRespawn(GetPlayerVehicleID(playerid));

        SetPlayerPosForAC(playerid,2091.1765,-2026.0604,13.5469);
          SetPlayerInterior(playerid,0);
          SetPlayerVirtualWorld(playerid,0);
    }

   if (IsPlayerInsideTaxi(playerid))
    {
        LeaveTaxi(playerid, GetVehicleDriver(GetPlayerVehicleID(playerid)));
    }
    if (GetPVarInt(playerid, "pnsID") != -1)
    {
        new vid = GetPlayerVehicleID(playerid);
        if (IsValidVehicle(vid))
        {
            SetVehiclePos(vid, PayNSpray[GetPVarInt(playerid, "pnsID")][0], PayNSpray[GetPVarInt(playerid, "pnsID")][1], PayNSpray[GetPVarInt(playerid, "pnsID")][2]);
        }
   }

    foreach (new i : Player)
   {
       if (PlayerData[playerid][pDraggedBy] == i)
       {
           if (IsValidDynamicObject(Sedye))
              DestroyDynamicObject(Sedye);
       }
   }

   for (new i = 0; i < 10; i++)
   PlayerData[playerid][pTSlot] = false;

    SetPVarInt(playerid, "OdunYolu", 0);
    SetPVarInt(playerid, "OdunGotur", 0);
    SetPVarInt(playerid, "MadenYolu", 0);
    SetPVarInt(playerid, "GiseGate", -1);
    SetPVarInt(playerid, "GiseKapali", -1);
    SetPVarInt(playerid, "GiseAcık", -1);

    KillTimer(NT_Timer[playerid]);
    KillTimer(Kayit_Timer[playerid]);

    KillTimer(KelepceTimer[playerid]);

   if (PlayerData[playerid][pStand] == true)
   {
       PlayerData[playerid][pStand] = false;
       DestroyDynamicObject(PlayerData[playerid][pStandObject]);
       DestroyDynamic3DTextLabel(PlayerData[playerid][pStandText]);
   }
   if (PlayerData[playerid][pIyilestiriyor] != -1)
   {
       SetPVarInt(PlayerData[playerid][pIyilestiriyor], "Iyilestiriliyor", 0);
   }
   new odaid = OdasiVarmi(playerid);
   if (odaid != -1)
   {
       Paintball[odaid][odaExists] = false;
       format(Paintball[odaid][odaIsim], 30, "");
       format(Paintball[odaid][odaSifre], 30, "");
       Paintball[odaid][odaSahip] = -1;
       format(Paintball[odaid][odaTakim1Ad], 20, "");
       format(Paintball[odaid][odaTakim2Ad], 20, "");
       Paintball[odaid][odaZirh] = 0;
       Paintball[odaid][odaSure] = 0;
       Paintball[odaid][odaOyunTuru] = 1;
       Paintball[odaid][odaArena] = 1;
       Paintball[odaid][odaPuan][0] = 0;
       Paintball[odaid][odaPuan][1] = 0;
       Paintball[odaid][odaSayac] = 0;
       foreach (new i:Player)
       {
           if (pbOda == odaid && i != playerid)
           {
               BilgiMesajGonder(i, "Oda sahibi oyundan çıktigi için oda silindi.");
               OdadanAt(i, 3);
           }
       }
   }
   if (pbOda[playerid] != -1)
   {
       SetPVarInt(playerid, "inPaintball", 1);
       OdadanAt(playerid, 0);
   }

   Player_ResetCutting(playerid);
   Player_RemoveLog(playerid);
    Player_CleanUp(playerid, 1);
   EditingTreeID[playerid] = -1;
   
    if (RegenTimer[playerid] != -1)
   {
       KillTimer(RegenTimer[playerid]);
       RegenTimer[playerid] = -1;
   }

   foreach (new i : Player)
   {
       if (PlayerDrugData[DrugsOfferedBy] == playerid)
       {
           PlayerDrugData[DrugsOfferedBy] = INVALID_PLAYER_ID;
           ShowPlayerDialog(i, -1, DIALOG_STYLE_MSGBOX, "Title", "Content", "Button1", "Button2");

            BilgiMesajGonder(i, "uy****rucu satmaya calistiginiz kişi oyundan çıktı.");
       }
       if (PlayerData[pTaksiKabul] == playerid)
       {
           MesajGonder(i, "Musteri oyundan çıkış yapti.");
           PlayerData[pTaksiKabul] = -1;
           DisablePlayerCheckpoint(i);
       }
   }
   foreach (new i:Player) if (PlayerData[pAdmin] >= 1 && PlayerData[pSpecID] == playerid)
   {
       IzlemeBitir(i);
       GameTextForPlayer(i, "~r~Oyundan çıktı", 1000, 4);
   }
   RemoveEffects(playerid);
     for (new i; i<MAX_TALEP; i++) if (Talep[tExists] == true && Talep[tGonderen] == playerid)
     {
         Talep[tExists] = false;
         format(Talep[tIcerik], 128, "");
         Talep[tGonderen] = -1;
         Talep[tIlgilenen] = -1;
     }
    KumarReset(playerid, 1);
    KumarReset(GetPVarInt(playerid, "kumar_id"), 1);

   Oyuncu_Kaydet(playerid, 0);
   
   if (BalikTimer[playerid] != -1)
   {
       KillTimer(BalikTimer[playerid]);
       BalikTimer[playerid] = -1;
        RemovePlayerAttachedObject(playerid, GetPVarInt(playerid, "OltaSlot"));
       SetPVarInt(playerid, "OltaSlot", -1);
         ClearAnimations(playerid);
      }
      if (PlayerData[playerid][pDestek] > 0)
      {
          PlayerData[playerid][pDestek] = 0;
          DestekKapat(playerid, 1);
      }
      if (PlayerData[playerid][pBaygin] == 1)
      {
          foreach (new i:Player)
       {
           if (EMSKabul == playerid)
           {
            EMSKabul = INVALID_PLAYER_ID;
            DisablePlayerCheckpoint(i);
            BilgiMesajGonder(playerid, "Kabul ettiginiz yaralı oyundan çıktı.");
           }
       }
      }
      if (PlayerData[playerid][pMangalKuruldu] == true)
      {
          PlayerData[playerid][pMangalKuruldu] = false;
      DestroyDynamicObject(PlayerData[playerid][pMangalObject][0]);
      DestroyDynamicObject(PlayerData[playerid][pMangalObject][1]);
      DestroyDynamic3DTextLabel(PlayerData[playerid][MangalText]);
      PlayerData[playerid][pYemekPisiriliyor] = 0;
      PlayerData[playerid][pPisirilenYemek] = 0;

      }
      if (PlayerData[playerid][pKampAtesi] == true)
      {
          PlayerData[playerid][pKampAtesi] = false;
        DestroyDynamicObject(PlayerData[playerid][pKampAtesiObject]);
        //MesajGonder(playerid, "Kamp Atesi kaldırıldı.");
     }
      foreach (new i:Player)
      {
          if (PlayerData[yayinKonuk] == playerid)
          {
              PlayerData[yayinKonuk] = -1;
              BilgiMesajGonder(i, "Sizi yayina konuk eden kişi oyundan çıktıgi için yayindan otomatik olarak çıkarıldınız.");
          }
      }
      if (PlayerData[playerid][pAramada] != 0)
      {
         if (PlayerData[playerid][pAramada] == ARAMA_ARANIYOR)
         {
            BilgiMesajGonder(PlayerData[playerid][pCallLine], "Gelen çağrı reddedildi ((Oyundan çıktı))");
            DeletePVar(playerid, "Arayan");
            DeletePVar(PlayerData[playerid][pCallLine], "Arayan");
            PlayerData[playerid][pAramada] = 0;
            PlayerData[PlayerData[playerid][pCallLine]][pAramada] = 0;
            PlayerData[PlayerData[playerid][pCallLine]][pCallLine] = 0;
            PlayerData[playerid][pCallLine] = 0;
         }
         else if (PlayerData[playerid][pAramada] == ARAMA_ARIYOR)
         {
             DeletePVar(playerid, "Arayan");
            DeletePVar(PlayerData[playerid][pCallLine], "Arayan");
            PlayerData[playerid][pAramada] = 0;
            PlayerData[PlayerData[playerid][pCallLine]][pAramada] = 0;
            PlayerData[PlayerData[playerid][pCallLine]][pCallLine] = 0;
            PlayerData[playerid][pCallLine] = 0;
         }
         else if (PlayerData[playerid][pAramada] == ARAMA_KONUSUYOR)
         {
            BilgiMesajGonder(PlayerData[playerid][pCallLine], "Konustugunuz kişi telefonu kapatti. (( Oyundan çıktı ))");
            DeletePVar(playerid, "Arayan");
            DeletePVar(PlayerData[playerid][pCallLine], "Arayan");
            PlayerData[playerid][pAramada] = 0;
            PlayerData[PlayerData[playerid][pCallLine]][pAramada] = 0;
            PlayerData[PlayerData[playerid][pCallLine]][pCallLine] = 0;
            PlayerData[playerid][pCallLine] = 0;
         }
      }
      if (!IsPlayerNPC(playerid))
      {
         new sebep[30];
         switch (reason)
         {
         case 0: sebep = "Zaman asimi / Crash";
         case 1: sebep = "Kendi istegiyle";
         case 2: sebep = "Atıldı / Yasaklandi";
         default: sebep = "Bilinmiyor";
         }
         SendNearbyMessage(playerid, 10.0, 0xAFAFAFFF, "%s sunucudan ayrildi. (%s)", ReturnName(playerid, 0), sebep);
      }
      if (BoomboxData[playerid][boomboxPlaced])
      Boombox_Destroy(playerid);
   Fuel_ResetPlayer(playerid);
   UpdateDiscordClientStatus();
   return 1;
}
Başlık: Ynt: Sunucudan Çıkıyorum ama sunucudayım?
Gönderen: Warning - 27 Nisan 2025, 18:51:51
discorddan ulaşırmısınız emo032324