kralhakan2009 1
kralhakan2009
Vahsi Uzman 1
Vahsi Uzman
farkmt2official 1
farkmt2official
Bvural41 1
Bvural41
noisiv 1
noisiv
Manwe Work 1
Manwe Work
Hikaye Ekle

Tetra Otomatik Patron Spawn (Saate göre)

  • Konuyu başlatan Konuyu başlatan Darqhues
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 25
  • Görüntüleme Görüntüleme 1K
5.00 yıldız(lar) 1 Değerlendirme Değerlendirenler
Paylaşım için teşekkürler eline sağlık.
Düzeltme: Boss hala yaşıyorsa aynı anda iki boss spawn olmaması için




[CODE lang="cpp" title="char_manager.cpp"]//ara

m_iMobExpRate = 100;

//altina ekle

#ifdef TETRA_#ifdefDI
m_iLastSurgunSpawnTime = -1;
m_dwLastSurgunBossVID = 0;
#endif



#endiflta ekle

#ifdef TETRA_#ifdefDI
void CHARACTER_MANAGER::AutoSurgunSpawn()
{

time_t now = time(0);
struct tm* vKey = localtime(&now);

// 2. Saat Kontrolü(Sadece saat tam 12:00 veya 00:00 iken spawnla)
if (((vKey->tm_hour == 12 && vKey->tm_min == 0) || (vKey->tm_hour == 0 && vKey->tm_min == 0)))
{
if (m_iLastSurgunSpawnTime != vKey->tm_hour)
{
/* Boss kesilmeden tekrar spawn atilmasin: onceki boss hala yasiyorsa atlama */
if (m_dwLastSurgunBossVID != 0)
{
LPCHARACTER pExisting = Find(m_dwLastSurgunBossVID);
if (pExisting && !pExisting->IsDead())
{
sys_log(0, "OTOMATIK_SPAWN: Onceki boss (VID %u) hala yaşıyor, spawn atlanıyor.", m_dwLastSurgunBossVID);
return;
}
m_dwLastSurgunBossVID = 0;
}

// Ayarlar
DWORD mobVnum = 1192; //Mob kodu
long mapIndex = 72; // Sürgün 1. Kat Indexi
long x = 136426; // oyundayken /state yazarak x y bilgisi alinir
long y = 1343407;

// Mobu olustur
LPCHARACTER ch = SpawnMob(mobVnum, mapIndex, x, y, 0, false, -1);

if (ch) {
m_dwLastSurgunBossVID = ch->GetVID();
SendNotice("Sürgün Mağarasının derinliklerinde Güçlü Buz Cadısı belirdi!");
sys_log(0, "OTOMATIK_SPAWN: %d vnumlu mob sürgün sonuna atıldı. Saat: %d", mobVnum, vKey->tm_hour);

m_iLastSurgunSpawnTime = vKey->tm_hour;
}
}
}
}
#endif[/CODE]#endif
 
Son düzenleme:

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst