TuZaKK 1
TuZaKK
sermin 1
sermin
berkmenoo 1
berkmenoo
mannaxxx 1
mannaxxx
Agora Metin2 1
Agora Metin2
[DEV]AB 1
[DEV]AB
kaptanmikro1 1
kaptanmikro1
Hikaye Ekle

SRC build Kemer bug FİX

  • Konuyu başlatan Konuyu başlatan AzadBaraN
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 6
  • Görüntüleme Görüntüleme 1K

Türkiye'de ilk Mobil & PC Aynı Anda Metin2 Oyna. Triarchonline kalıcı ve uzun ömürlü yapısı ile 24 Temmuz'da açılıyor. | 1-99 Mobil Metin2 Triarch HEMEN TIKLA!

merhaba arkadaşlar. src de kemer sisteminin bir çok bu mevcut ben bütün bugları fixledim lakın son kalan bug da paylaşılan fix in kodlarında ki fonksiyonlar galiba çalışmıyor size ekran görüntüsü atayım
Bug3: Kemer Takılı ve Envaterde İtem Var iken Başka Kemere Sağ tıklayarak Değiştirme
Fix3:
game/src char_item.cpp açılır
Aratılır :
const int ITEM_BROKEN_METIN_VNUM = 28960;
Altına Bir Boşluk Bırakılarak Eklenir
#define ERROR_MSG(exp, msg) \ if (true == (exp)) { \
ChatPacket(CHAT_TYPE_INFO, msg); \
return false; \
}
Aratılır
bool CHARACTER::UseItem(TItemPos Cell, TItemPos DestCell)
{
Alttındaki Kod Bloğu Bu şekilde İse
WORD wCell = Cell.cell; BYTE window_type = Cell.window_type;
WORD wDestCell = DestCell.cell;
BYTE bDestInven = DestCell.window_type;
LPITEM item;

Bu Kod Bloğu Bu Şekilde Değiştirilir
WORD wCell = Cell.cell; BYTE window_type = Cell.window_type;
//WORD wDestCell = DestCell.cell;
//BYTE bDestInven = DestCell.window_type;
LPITEM item;


Kodumuz Bu Şekilde Olmuştur

bool CHARACTER::UseItem(TItemPos Cell, TItemPos DestCell){
WORD wCell = Cell.cell;
BYTE window_type = Cell.window_type;
//WORD wDestCell = DestCell.cell;
//BYTE bDestInven = DestCell.window_type;
LPITEM item;


if (!CanHandleItem())
return false;


if (!IsValidItemPosition(Cell) || !(item = GetItem(Cell)))
return false;Hemen Bu kodun Altına Bunuda Ekleyin
if (ITEM_BELT == item->GetType())
ERROR_MSG(CBeltInventoryHelper::IsExistItemInBeltInventory(this), "Kemer deposunu bosalt!");
Kod Bloğumuz Tamami ile Bu Şekilde Olmuştur
















İşlemleri birebir yapmama rağmen aldığım hata görüntüsü bu ,
 
Kod:
#define ERROR_MSG(exp, msg)  \
       if(true==(exp)){ \
               ChatPacket(CHAT_TYPE_INFO, msg); \
               return false; \     
    }

Kod:
bool CHARACTER::UseItem(TItemPos Cell, TItemPos DestCell)
{
    WORD wCell = Cell.cell;    
    BYTE window_type = Cell.window_type;
    //WORD wDestCell = DestCell.cell;
    //BYTE bDestInven = DestCell.window_type;
    LPITEM item;

    if (!CanHandleItem())
        return false;

    if (!IsValidItemPosition(Cell) || !(item = GetItem(Cell)))
            return false;
        
    if (ITEM_BELT == item->GetType())
        ERROR_MSG(CBeltInventoryHelper::IsExistItemInBeltInventory(this), "Kemer deposunu bosalt!");
Doğrru işlem bu

if (item->GetType() == ITEM_BELT && CBeltInventoryHelper::IsExistItemInBeltInventory(this))
{
ChatPacket(CHAT_TYPE_INFO, "Kemer envanterini bosaltin!");
 

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

Geri
Üst