[Fix] Metinlerin Geç Patlaması Fixi

  • Konuyu açan Konuyu açan bckntr
  • Açılış Tarihi Açılış Tarihi
  • Yanıt Yanıt 16
  • Gösterim Gösterim 427

bckntr

Z I M B A
Geliştirici
Yardımsever Üye
MT Üye
Mesaj
1.122
Çözümler
65
Beğeni
1.532
Puan
1.319
Ticaret Puanı
0
Son düzenleme:
Kullandıktan sonra metine vurduğunuz damage görünmüyormuş iyiyce bi kontrol edin şuan konuyu güncelleyemeyeceğim ekleyeceklerin ve ekleyen kişilerin dikkatine.
 
Damage gözükmüyor ne yapmamız gerekiyor yanlış yeremi ekledik
 
char_battle.cpp:
Genişlet Daralt Kopyala
//Arat;

    if (GetHP() <= 0)
    {
        Stun();

        if (pAttacker && !pAttacker->IsNPC())
        {
            m_dwKillerPID = pAttacker->GetPlayerID();
        }
        else
        {
            m_dwKillerPID = 0;
        }
    }


//Değiştir;

    if (GetHP() <= 0)
    {
        if (pAttacker && !pAttacker->IsNPC())
            m_dwKillerPID = pAttacker->GetPlayerID();
        else
            m_dwKillerPID = 0;

        Dead(pAttacker);
    }
 
char_battle.cpp:
Genişlet Daralt Kopyala
//Arat;

    if (GetHP() <= 0)
    {
        Stun();

        if (pAttacker && !pAttacker->IsNPC())
        {
            m_dwKillerPID = pAttacker->GetPlayerID();
        }
        else
        {
            m_dwKillerPID = 0;
        }
    }


//Değiştir;

    if (GetHP() <= 0)
    {
        if (pAttacker && !pAttacker->IsNPC())
            m_dwKillerPID = pAttacker->GetPlayerID();
        else
            m_dwKillerPID = 0;

        Dead(pAttacker);
    }
Denemeye fırsatım olmadı müsait olamadım kontrol etmek için de. Eğer attığın gibi oluyorsa konuyu düzeltirim deneyen olursa dönüş bekliyorum. Yorumun için teşekkürler. NOT : Paylaştığım fix bana ait değildir X forumdan alıntıdır.
 
Denemeye fırsatım olmadı müsait olamadım kontrol etmek için de. Eğer attığın gibi oluyorsa konuyu düzeltirim deneyen olursa dönüş bekliyorum. Yorumun için teşekkürler. NOT : Paylaştığım fix bana ait değildir X forumdan alıntıdır.
ben kendim kullanıyorum bir sorun görmedim.
 
Selamun Aleyküm, metinlerin canı 0`a düşüp geç patlamasını fixliyeceğiz, hemen anlatıma geçiyorum.

Önce :
Linkleri görebilmek için giriş yap veya kayıt ol.


Sonra :
Linkleri görebilmek için giriş yap veya kayıt ol.


Alıntılarda özel içerikler gözükmez.

Paylaşım için teşekkürler lakin Stun'un sebep olduğu gecikmeyi önlemek için çok daha kolay bir yol mevcut, farklı kodları değiştirmeye hiç gerek yok hem bu şekilde düzenlerseniz metin, oyuncu, mob vs. ayrımı olmadan hepsi anında ölecektir. (Tabii sadece dead öncesi stun çağırılan durumlarda -ki bu da büyük bir çoğunluğu kapsar-)

char_battle.cpp:
Genişlet Daralt Kopyala
//Fonksiyon bulunur;

void CHARACTER::Stun()
    

//En son satır değiştirilir;
    
    m_pkStunEvent = event_create (StunEvent, info, PASSES_PER_SEC (0)); // DevFix 70
 
Paylaşım için teşekkürler lakin Stun'un sebep olduğu gecikmeyi önlemek için çok daha kolay bir yol mevcut, farklı kodları değiştirmeye hiç gerek yok hem bu şekilde düzenlerseniz metin, oyuncu, mob vs. ayrımı olmadan hepsi anında ölecektir. (Tabii sadece dead öncesi stun çağırılan durumlarda -ki bu da büyük bir çoğunluğu kapsar-)

char_battle.cpp:
Genişlet Daralt Kopyala
//Fonksiyon bulunur;

void CHARACTER::Stun()
    

//En son satır değiştirilir;
    
    m_pkStunEvent = event_create (StunEvent, info, PASSES_PER_SEC (0)); // DevFix 70
Hey MaşAllah fixler yağıyor konuya :D
 
Paylaşım için teşekkürler lakin Stun'un sebep olduğu gecikmeyi önlemek için çok daha kolay bir yol mevcut, farklı kodları değiştirmeye hiç gerek yok hem bu şekilde düzenlerseniz metin, oyuncu, mob vs. ayrımı olmadan hepsi anında ölecektir. (Tabii sadece dead öncesi stun çağırılan durumlarda -ki bu da büyük bir çoğunluğu kapsar-)

char_battle.cpp:
Genişlet Daralt Kopyala
//Fonksiyon bulunur;

void CHARACTER::Stun()
    

//En son satır değiştirilir;
    
    m_pkStunEvent = event_create (StunEvent, info, PASSES_PER_SEC (0)); // DevFix 70
sersemlemeyi kaldırmışsın oyundan :alala:
 
sersemlemeyi kaldırmışsın oyundan :alala:
Pvp piyasasında sebebini yıllardır anlamadığım bir şekilde oyuncu kitlesi eğer sunucuda sersem yerse bunun bir hata olduğunu ve "fix"lenmesi gerektiğini düşünüyorlar, bu sebeple maalesef bu özelliği oyunda zaten çoğunlukla aktif edemiyoruz o sebeple böyle kullanıyorum, oldschool yapanların belki eklerken düşünmesi gerekebilir.
 
O zaman bir fix de benden gelsin. Pratik yönetim (bence) her zaman daha iyidir. En azından bu yöntemle belirli moblar için istisnai fikirler üretilip kullanılabilir. Ya da bende böyle bir takıntı var, bilmiyorum :D

char.h:
C++:
Genişlet Daralt Kopyala
void    Stun();

Değiştir:
C++:
Genişlet Daralt Kopyala
void    Stun(bool checkMob = false);

char_battle.cpp:
C++:
Genişlet Daralt Kopyala
void CHARACTER::Stun()

Değiştir:
C++:
Genişlet Daralt Kopyala
void CHARACTER::Stun(bool checkMob)

Fonksiyonun en altında:
C++:
Genişlet Daralt Kopyala
m_pkStunEvent = event_create(StunEvent, info, PASSES_PER_SEC(3));

Değiştir:
C++:
Genişlet Daralt Kopyala
m_pkStunEvent = event_create(StunEvent, info, PASSES_PER_SEC(checkMob ? 0 : 3));

Son olarak bul:
C++:
Genişlet Daralt Kopyala
    if (GetHP() <= 0)
    {
        Stun();
   
        if (pAttacker && !pAttacker->IsNPC())
            m_dwKillerPID = pAttacker->GetPlayerID();
        else
            m_dwKillerPID = 0;
    }

Değiştir:
C++:
Genişlet Daralt Kopyala
    if (GetHP() <= 0)
    {
        if(IsStone())
            Stun(true);
        else
            Stun();

        if (pAttacker && !pAttacker->IsNPC())
            m_dwKillerPID = pAttacker->GetPlayerID();
        else
            m_dwKillerPID = 0;
    }






sersemlemeyi kaldırmışsın oyundan :alala:
Pvp piyasasında sebebini yıllardır anlamadığım bir şekilde oyuncu kitlesi eğer sunucuda sersem yerse bunun bir hata olduğunu ve "fix"lenmesi gerektiğini düşünüyorlar, bu sebeple maalesef bu özelliği oyunda zaten çoğunlukla aktif edemiyoruz o sebeple böyle kullanıyorum, oldschool yapanların belki eklerken düşünmesi gerekebilir.
İki tarafın da gönlü görülsün :D
 
char_battle.cpp:
Genişlet Daralt Kopyala
    if (GetHP() <= 0)
    {
        if(IsStone())
            Dead(pAttacker);
        else
            Stun();

        if (pAttacker && !pAttacker->IsNPC())
            m_dwKillerPID = pAttacker->GetPlayerID();
        else
            m_dwKillerPID = 0;
    }
 
char_battle.cpp:
Genişlet Daralt Kopyala
    if (GetHP() <= 0)
    {
        if(IsStone())
            Dead(pAttacker);
        else
            Stun();

        if (pAttacker && !pAttacker->IsNPC())
            m_dwKillerPID = pAttacker->GetPlayerID();
        else
            m_dwKillerPID = 0;
    }
Bu da aklıma geldi ama doğrudan Dead çekmek cazip gelmedi açıkçası. Özellikle bu yöntemi metinler haricinde de kullanmaya niyetlenenler oyun içinde farklı alanlarda tutarsızlıklarla karşılaşabilirler. Kısacası bu muhabbetin üretilen fikre göre bir çok fixi oluşabiliyor :D
 
Geri
Üst