Yardım 6 7 efsun sorun

  • Konuyu açan Konuyu açan hancı21
  • Açılış Tarihi Açılış Tarihi
  • Yanıt Yanıt 0
  • Gösterim Gösterim 19
Konu sahibi bu konuda soru soruyor. Sorusu ile ilgili bilgisi olanların yanıtlamasını bekliyor.

hancı21

Üye
Üye
Mesaj
245
Çözümler
2
Beğeni
27
Puan
84
Ticaret Puanı
0
6 7 efsun nesnesinde sorun vardı onları düzelttim ama yeşil efsunda sıkıntı cıktı 3 günden beri kafam maf oldu durdu bilen desteklersin sevinirim
char_item_cpp
Kod:
Genişlet Daralt Kopyala
                                    else
                                    {

                                        if (item->GetVnum() == 71151 || item->GetVnum() == 76023)
                                        {
                                            if ((item2->GetType() == ITEM_WEAPON)
                                                || (item2->GetType() == ITEM_ARMOR && item2->GetSubType() == ARMOR_BODY))
                                            {
                                                bool bCanUse = true;
                                                for (int i = 0; i < ITEM_LIMIT_MAX_NUM; ++i)
                                                {
                                                    if (item2->GetLimitType(i) == LIMIT_LEVEL && item2->GetLimitValue(i) > 40)
                                                    {
                                                        bCanUse = false;
                                                        break;
                                                    }
                                                }
                                                if (false == bCanUse)
                                                {
                                                    ChatPacket(CHAT_TYPE_INFO, LC_TEXT("SADECE_40_LEVEL"));
                                                    break;
                                                }
                                            }
                                            else
                                            {
                                                ChatPacket(CHAT_TYPE_INFO, LC_TEXT("SADECE_40_LEVEL"));
                                                break;
                                            }
                                        }
                                        item2->ChangeAttribute();
                                    }

Kod:
Genişlet Daralt Kopyala
                        case USE_CHANGE_ATTRIBUTE2:
                                    if (item2->GetAttributeSetIndex() == -1)
                                    {
                                        ChatPacket(CHAT_TYPE_INFO, LC_TEXT("oldu"));
                                        return false;
                                    }

                                    if (item2->GetAttributeCount() == 0)
                                    {
                                        ChatPacket(CHAT_TYPE_INFO, LC_TEXT("olmadı"));
                                        return false;
                                    }

                                case USE_CHANGE_ATTRIBUTE :
        {
#ifdef ENABLE_CHANGE_6TH_7TH_SYSTEM
    sys_log(0, "DEBUG: USE_CHANGE_ATTRIBUTE case calisti. Item vnum: %u, Target vnum: %u", item->GetVnum(), item2->GetVnum());

    // 72351: %10 ?ans ile 6-7 efsun de?i?tirir
    if (item->GetVnum() == 72351)
    {
        sys_log(0, "DEBUG: 72351 item tespit edildi. Sans kontrolu yapiliyor...");
        if (number(1, 100) <= 10) // test icin 100 yapabilirsin
        {
            sys_log(0, "DEBUG: Sans tuttu, Change6th7thRareAttribute() cagrilacak.");
            char buf[21];
            snprintf(buf, sizeof(buf), "%u", item2->GetID());

            if (item2->Change6th7thRareAttribute())
            {
                sys_log(0, "DEBUG: 6-7 efsun basariyla degisti.");
                ChatPacket(CHAT_TYPE_INFO, LC_TEXT("6 ve 7. efsun ba?arıyla de?i?tirildi."));
                LogManager::instance().ItemLog(this, item, "CHANGE_6TH_7TH_RARE", buf);
            }
            else
            {
                sys_log(0, "DEBUG: 6-7 efsun yok, islem yapilmadi.");
                ChatPacket(CHAT_TYPE_INFO, LC_TEXT("Bu itemda 6?7 efsun bulunamadı."));
                LogManager::instance().ItemLog(this, item, "CHANGE_6TH_7TH_FAIL", buf);
            }
        }
        else
        {
            sys_log(0, "DEBUG: Sans tutmadi, islem yapilmiyor.");
            ChatPacket(CHAT_TYPE_INFO, LC_TEXT("?ans tutmadı?ı icin efsun de?i?tirilemedi."));
        }

        item->SetCount(item->GetCount() - 1);
        return true;
    }

    // 72346: %100 garantili 6-7 efsun de?i?tirir
    if (item->GetVnum() == 72346)
    {
        sys_log(0, "DEBUG: 72346 item tespit edildi. Garantili 6-7 efsun degisimi yapiliyor.");
        char buf[21];
        snprintf(buf, sizeof(buf), "%u", item2->GetID());

        if (item2->Change6th7thRareAttribute())
        {
            sys_log(0, "DEBUG: 6-7 efsun basariyla degisti.");
            ChatPacket(CHAT_TYPE_INFO, LC_TEXT("6 ve 7. efsun ba?arıyla de?i?tirildi."));
            LogManager::instance().ItemLog(this, item, "CHANGE_6TH_7TH_RARE", buf);
        }
        else
        {
            sys_log(0, "DEBUG: 6-7 efsun yok, islem yapilmadi.");
            ChatPacket(CHAT_TYPE_INFO, LC_TEXT("Bu itemda 6?7 efsun bulunamadı."));
            LogManager::instance().ItemLog(this, item, "CHANGE_6TH_7TH_FAIL", buf);
        }

        item->SetCount(item->GetCount() - 1);
        return true;
    }
#endif // ENABLE_CHANGE_6TH_7TH_SYSTEM
        }
    // Normal 1-5 efsun de?i?imi (orijinal kod)
    if (item2->GetAttributeSetIndex() == -1)
        return false;

    if (item2->IsEquipped())
        return false;

    sys_log(0, "DEBUG: Normal ChangeAttribute() cagriliyor (1-5 efsun).");
    item2->ChangeAttribute();
    item->SetCount(item->GetCount() - 1);
    break;
 
Geri
Üst