Hikayeler

Reklam vermek için turkmmo@gmail.com

[C++] Src, char_item.cpp fix işlememesi.

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

FKT

Level 4
Telefon Numarası Onaylanmış Üye
TM Üye
Katılım
14 Haz 2014
Konular
16
Mesajlar
424
Online süresi
55244s
Reaksiyon Skoru
115
Altın Konu
0
Başarım Puanı
136
TM Yaşı
11 Yıl 10 Ay 12 Gün
MmoLira
1,044
DevLira
0

Metin2 EP, Valorant VP dahil tüm oyun ürünlerini en uygun fiyatlarla bulabilir, Item ve Karakterlerinizi hızlıca satabilirsiniz. HEMEN TIKLA!

Oyunda ekli olan kadim efsun nesnesini, ruha bağlı itemlere ve oklara sürükleyince efsun penceresi açılıyor. Oklara efsun atmıyor sadece efsun nesnesi kayboluyor ama kilitli iteme efsun atıyor. Aynı fixleri kadim efsun küresine yapınca fixler çalışıyor ve oyunda efsun penceresi açılmadan "Kullanilamaz" şeklinde bir hata alıyorum. Aynı hatayı efsun nesnesinin de vermesini nasıl sağlayabilirim? Game den olmuyor ise Clientten engellemek mümkün mü?

Not: c++ bilgim fazla yok
Kod:
                            case 71051 : // kadim efsun nesnesi
                                {
                                    // 유럽, 싱가폴, 베트남 진재가 사용금지
                                    LPITEM item2;

                                    if (!IsValidItemPosition(DestCell) || !(item2 = GetInventoryItem(wDestCell)))
                                        return false;

                                    if (item2->IsBind()) // kilitli item fix
                                    {
                                    ChatPacket(CHAT_TYPE_INFO, LC_TEXT("This item is already binded."));
                                    return false;
                                    }
                                    if (item2->GetVnum() == 79501 || item2->GetVnum() == 79502 || item2->GetVnum() == 79503 || item2->GetVnum() == 79504) //ok çantası fix
                                    {
                                        ChatPacket(CHAT_TYPE_INFO, "Kullanilamaz");
                                        return false;
                                    }
                                    if (ITEM_COSTUME == item2->GetType()) // @fixme4
                                    {
                                        ChatPacket(CHAT_TYPE_INFO, LC_TEXT("KOSTUMLERDE_KULLANILAMAZ"));
                                        return false;
                                    }

                                    if (item2->IsExchanging() || item2->IsEquipped()) // @fixme114
                                        return false;

                                    if (item2->GetAttributeSetIndex() == -1)
                                    {
                                        ChatPacket(CHAT_TYPE_INFO, LC_TEXT("속성을 변경할 수 없는 아이템입니다."));
                                        return false;
                                    }

                                    if (item2->AddRareAttribute() == true)
                                    {
                                        ChatPacket(CHAT_TYPE_INFO, LC_TEXT("성공적으로 속성이 추가 되었습니다"));

                                        int iAddedIdx = item2->GetRareAttrCount() + 4;
                                        char buf[21];
                                        snprintf(buf, sizeof(buf), "%u", item2->GetID());

                                        LogManager::instance().ItemLog(
                                                GetPlayerID(),
                                                item2->GetAttributeType(iAddedIdx),
                                                item2->GetAttributeValue(iAddedIdx),
                                                item->GetID(),
                                                "ADD_RARE_ATTR",
                                                buf,
                                                GetDesc()->GetHostName(),
                                                item->GetOriginalVnum());

                                        item->SetCount(item->GetCount() - 1);
                                    }
                                    else
                                    {
                                        ChatPacket(CHAT_TYPE_INFO, LC_TEXT("더 이상 이 아이템으로 속성을 추가할 수 없습니다"));
                                    }
                                }
                                break;

                            case 71052: // kadim efsun küresi
                                {
                                    LPITEM item2;

                                    if (!IsValidItemPosition(DestCell) || !(item2 = GetItem(DestCell)))
                                        return false;

                                    if (ITEM_COSTUME == item2->GetType()) // @fixme4
                                    {
                                        ChatPacket(CHAT_TYPE_INFO, LC_TEXT("KOSTUMLERDE_KULLANILAMAZ"));
                                        return false;
                                    }

                                    if (item2->GetVnum() == 79501 || item2->GetVnum() == 79502 || item2->GetVnum() == 79503 || item2->GetVnum() == 79504)
                                    {
                                        ChatPacket(CHAT_TYPE_INFO, "Kullanilamaz");
                                        return false;
                                    }

                                    if (item2->IsExchanging() == true)
                                        return false;
                                
                                    if (item2->IsExchanging() || item2->IsEquipped()) // @fixme3
                                        return false;

                                    if (item2->IsBind())
                                    {
                                    ChatPacket(CHAT_TYPE_INFO, LC_TEXT("This item is already binded."));
                                    return false;
                                    }

                                    if (item2->GetAttributeSetIndex() == -1)
                                    {
                                        ChatPacket(CHAT_TYPE_INFO, LC_TEXT("속성을 변경할 수 없는 아이템입니다."));
                                        return false;
                                    }
                                
                                    if (item2->GetAttributeCount() == 5)
                                    {
                                        item2->RemoveAttributeAt(4);
                                        item2->AddAttribute();
                                        item->SetCount(item->GetCount()-1);
                                        ChatPacket(CHAT_TYPE_INFO, LC_TEXT("NEW_ATTRIBUTE_SUCCESS_MARBLE"));
                                    }
                                    else if (item2->GetAttributeCount() == 4)
                                    {
                                        item2->AddAttribute();
                                        item->SetCount(item->GetCount()-1);
                                        ChatPacket(CHAT_TYPE_INFO, LC_TEXT("NEW_ATTRIBUTE_SUCCESS_MARBLE"));                                   
                                    }
                                    else
                                    {
                                        ChatPacket(CHAT_TYPE_INFO, LC_TEXT("NEW_ATTRIBUTE_MARBLE_ENOUGH_ATTR_COUNT"));
                                    }
                                }
                                break;

Konuyla ilgili gifler
giphy.gif

giphy.gif
 
Son düzenleme:
if (item2->IsBind()) // kilitli item fix
{
ChatPacket(CHAT_TYPE_INFO, LC_TEXT("This item is already binded."));
return false;
}

Bu Kısımı



if (item2->IsBind() || item2->IsUntilBind())
{
ChatPacket(CHAT_TYPE_INFO, LC_TEXT("This item is already binded."));
return false;}

bununla değiştirip deneyebilirmisin
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

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

Geri
Üst