- Mesaj
- 580
- Çözümler
- 18
- Beğeni
- 577
- Puan
- 829
- Ticaret Puanı
- 0
Bonusları incelerken Bow Distance diye bir bonus gördüm ve bu bonus normalde yay ile vurma menzilini yükseltiyor. Yani örneğin bu bonus olmadan 20 metre uzaktan vuruyorsanız bu bonus 25, 30 (isteğe bağlı değerler) metre uzaktan vurabiliyorsunuz.
Öncelikle bu efsunu aktif etmemiz gerekiyor, navicat ile mysql'in içinde ki player->item_attr tablosunun içine aşağıda ki gibi Bow Distance bonusunu ekleyin;
Daha sonra bu bonusun her silaha gelmemesi (kılıç, mızrak, hançer vs vs), sadece yaylara gelmesi için serversource/game/src/item_attribute.cpp dosyasını açıp bunu aratalım;
bu fonksiyonun içinde bunu bulalım;
ve hemen altına bunu ekleyelim;
tekrardan bunu aratalım;
ve hemen üstüne bunu ekleyelim;
kod bloğunun son hali böyle gözükmeli;
ve gameyi derleyin.
Bonus artık eklendi, videolu merak eden olursa bonus şöyle;
UYARILAR;
1-) Siz mysql'e efsun oranlarını girerken 1 sıfır fazla ekleyin: mesela 50 metre istiyorsanız 50 değil 500 yazın.
2-) Bu bonusu çok önceden aktif etmiştim, unuttuğum kısımlar olabilir. Eğer hata alırsanız yazın buraya yardımcı olurum.
Öncelikle bu efsunu aktif etmemiz gerekiyor, navicat ile mysql'in içinde ki player->item_attr tablosunun içine aşağıda ki gibi Bow Distance bonusunu ekleyin;
Daha sonra bu bonusun her silaha gelmemesi (kılıç, mızrak, hançer vs vs), sadece yaylara gelmesi için serversource/game/src/item_attribute.cpp dosyasını açıp bunu aratalım;
C++:
void CItem::PutAttributeWithLevel
bu fonksiyonun içinde bunu bulalım;
C++:
std::vector<int> avail;
ve hemen altına bunu ekleyelim;
C++:
const bool isbow = (GetType() == ITEM_WEAPON && GetSubType() == WEAPON_BOW);
tekrardan bunu aratalım;
C++:
const TItemAttrTable & r = g_map_itemAttr[i];
ve hemen üstüne bunu ekleyelim;
C++:
if (!isbow && i == APPLY_BOW_DISTANCE)
{
continue;
}
kod bloğunun son hali böyle gözükmeli;
ve gameyi derleyin.
Bonus artık eklendi, videolu merak eden olursa bonus şöyle;
UYARILAR;
1-) Siz mysql'e efsun oranlarını girerken 1 sıfır fazla ekleyin: mesela 50 metre istiyorsanız 50 değil 500 yazın.
2-) Bu bonusu çok önceden aktif etmiştim, unuttuğum kısımlar olabilir. Eğer hata alırsanız yazın buraya yardımcı olurum.