GTAMulti - GTA Türkiye

San Andreas Multiplayer => Yardım Talepleri => PAWN Kodlama => Kilitli Konular => Konuyu başlatan: eNter - 18 Ağustos 2021, 18:20:22

Başlık: Oyundan çıktığı yerde spawn olmak
Gönderen: eNter - 18 Ağustos 2021, 18:20:22
MySQL tablolarına pos olarak X,Y,Z ve oyuncunun bakış açısını ekledim ancak bunu oyun moduna nasıl entegre edeceğim bilmiyorum. Oyun modunda AddPlayerClass yerine mysql'den veriyi nasıl çekeceğim ve kişiyi oyundan çıktığı noktaya spawn edebilirim yardımcı olacak var mı?
https://cdn.discordapp.com/attachments/838696170082533378/877572217377017906/Ekran_Goruntusu_158.png (MySQL tablosu hatam varsa söyleyin)
(Ek olarak mysql oyun moduna bağlı ve bir karakter yaratıp girilebiliyor ve yaratılan karaktere giriş yapılabiliyor.)
Başlık: Ynt: Oyundan çıktığı yerde spawn olmak
Gönderen: cha - 23 Ağustos 2021, 16:41:00
posX, posY, posZ, posAngle bölümleri mysql tablosunda float olmalıdır.

PAWN Kodu: Seç
public OnPlayerDisconnect(playerid, reason)
{
static
Pos[4];

GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
GetPlayerFacingAngle(playerid, Pos[3]);

new query[258];

format(query, sizeof(query), "UPDATE `hesaplar` SET `posX` = '%.4f', `posY` = '%.4f', `posZ` = '%.4f', `posAngle` = '%.4f'",
Pos[0],
Pos[1],
Pos[2],
Pos[3]
);
format(query, sizeof(query), "%sWHERE `ID` = '%d'", query, PlayerData[playerid][ID]);
mysql_tquery(gtamulti, query);
return 1;
}

Başlık: Ynt: Oyundan çıktığı yerde spawn olmak
Gönderen: eNter - 28 Ağustos 2021, 21:21:59
Dediklerinizi yaptım ve şu anda son çıkılan POS MySQL tablosuna kaydediliyor. Ancak oyuna girerken MySQL tablosundaki Pos'u nasıl çekeceğim?
Başlık: Ynt: Oyundan çıktığı yerde spawn olmak
Gönderen: squarepants - 31 Ağustos 2021, 16:04:08
Verileri tekrar cekmek zorundasin, muhtemelen HesapYukle, LoadAccounts vb. seklinde bir gericagri olmali, o cagriyi buldugunda asagidaki sekilde verileri cekip kontrol edebilirsin:

forward HesapYukle(playerid);
public HesapYukle(playerid)
{
    new Float:pPos[4];
    //onceki kod yiginlari
    cache_get_value_name_float(0, "posX", pPos[0]);
    cache_get_value_name_float(0, "posY", pPos[1]);
    cache_get_value_name_float(0, "posZ", pPos[2]);
    cache_get_value_name_float(0, "posAngle", pPos[3]);
    SetPlayerPos(playerid, pPos[0], pPos[1], pPos[2]);
    SetPlayerFacingAngle(playerid, pPos[3]);
    //sonraki kod yigini
    return 1;
}
SetPlayerPos veya SpawnPlayer fonksiyonları yerine SetSpawnInfo (https://sampwiki.blast.hk/wiki/SetSpawnInfo) fonksiyonunu da kullanabilirsin.
Başlık: Ynt: Oyundan çıktığı yerde spawn olmak
Gönderen: eNter - 01 Eylül 2021, 00:29:15
Yardımlarınız için teşekkür ederim konu çözüldü kilitlenip arşive atılabilir.