Can Öcalan 1
Can Öcalan
mavzermete 1
mavzermete
farkmt2official 1
farkmt2official
Sevdamsın 1
Sevdamsın
Mt2Hizmet 1
Mt2Hizmet
Fethi Polat 1
Fethi Polat
Hikaye Ekle

Cevaplandı Belirli haritada Buff etkilerini temizleme

  • Konuyu başlatan Konuyu başlatan DevKrmt
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 2
  • Görüntüleme Görüntüleme 39

Ayyıldız2 | 2008 TR Yapısı • 1-99 Orta Emek Destan • Oto Avsız • 10 Temmuz 21:00 HEMEN TIKLA!

Herkese kolay gelsin map indexi 112 olan haritaya girince Buff etkileri silinsin istiyorum da bi türlü yapamadım yardımcı olabilecek var mıdır?
 

En Çok Reaksiyon Alan Mesajlar

char_affect.cpp üzerinden hallettim. İhtiyacı olanlar için;
DWORD mapIndex = GetMapIndex();

if (mapIndex > 10000)
mapIndex /= 10000;

if (CArenaManager::instance().IsArenaMap(GetMapIndex()) == true || mapIndex == 28)
{
RemoveGoodAffect();
ComputePoints();
PointsPacket();
}

RemoveGoodAffect içerisinde RemoveSkillAffect de siliniyorç

void CHARACTER::RemoveGoodAffect()
{
RemoveAffect(AFFECT_MOV_SPEED);
RemoveAffect(AFFECT_ATT_SPEED);
RemoveAffect(AFFECT_STR);
RemoveAffect(AFFECT_DEX);
RemoveAffect(AFFECT_INT);
RemoveAffect(AFFECT_CON);
RemoveAffect(AFFECT_CHINA_FIREWORK);
RemoveSkillAffect();

}

void CHARACTER::RemoveSkillAffect()
{
RemoveAffect(SKILL_JEONGWI);
RemoveAffect(SKILL_GEOMKYUNG);
RemoveAffect(SKILL_CHUNKEON);
RemoveAffect(SKILL_EUNHYUNG);
RemoveAffect(SKILL_GYEONGGONG);
RemoveAffect(SKILL_GWIGEOM);
RemoveAffect(SKILL_TERROR);
RemoveAffect(SKILL_JUMAGAP);
RemoveAffect(SKILL_MANASHILED);
RemoveAffect(SKILL_HOSIN);
RemoveAffect(SKILL_HOSIN2);
RemoveAffect(SKILL_REFLECT);
RemoveAffect(SKILL_KWAESOK);
RemoveAffect(SKILL_JEUNGRYEOK);
RemoveAffect(SKILL_GICHEON);
}
Daha Detaylı anlatır mısın ? Direkt silinecek ve bir daha o haritada buff alınamayacak mı ? Eğer sadece ilk girişte istiyorsun şu questi deneyebilirsin.
Kod:
quest buff_clear_zone begin
    state start begin
        when login with pc.get_map_index() == 112 begin
            affect.remove_all()
        end
        
        when warp with pc.get_map_index() == 112 begin
            affect.remove_all()
        end
    end
end
 
char_affect.cpp üzerinden hallettim. İhtiyacı olanlar için;
DWORD mapIndex = GetMapIndex();

if (mapIndex > 10000)
mapIndex /= 10000;

if (CArenaManager::instance().IsArenaMap(GetMapIndex()) == true || mapIndex == 28)
{
RemoveGoodAffect();
ComputePoints();
PointsPacket();
}

RemoveGoodAffect içerisinde RemoveSkillAffect de siliniyorç

void CHARACTER::RemoveGoodAffect()
{
RemoveAffect(AFFECT_MOV_SPEED);
RemoveAffect(AFFECT_ATT_SPEED);
RemoveAffect(AFFECT_STR);
RemoveAffect(AFFECT_DEX);
RemoveAffect(AFFECT_INT);
RemoveAffect(AFFECT_CON);
RemoveAffect(AFFECT_CHINA_FIREWORK);
RemoveSkillAffect();

}

void CHARACTER::RemoveSkillAffect()
{
RemoveAffect(SKILL_JEONGWI);
RemoveAffect(SKILL_GEOMKYUNG);
RemoveAffect(SKILL_CHUNKEON);
RemoveAffect(SKILL_EUNHYUNG);
RemoveAffect(SKILL_GYEONGGONG);
RemoveAffect(SKILL_GWIGEOM);
RemoveAffect(SKILL_TERROR);
RemoveAffect(SKILL_JUMAGAP);
RemoveAffect(SKILL_MANASHILED);
RemoveAffect(SKILL_HOSIN);
RemoveAffect(SKILL_HOSIN2);
RemoveAffect(SKILL_REFLECT);
RemoveAffect(SKILL_KWAESOK);
RemoveAffect(SKILL_JEUNGRYEOK);
RemoveAffect(SKILL_GICHEON);
}
 

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

Geri
Üst