Cevaplanmadı Yeni Affect Ekleme Sorunu

  • Konuyu başlatan Konuyu başlatan kadobaba1
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 1
  • Görüntüleme Görüntüleme 43

kadobaba1

Level 3
Katılım
12 Ocak 2011
Konular
22
Mesajlar
124
Çözüm
4
Online süresi
1mo 7h
Reaksiyon Skoru
57
Altın Konu
0
TM Yaşı
15 Yıl 4 Ay 26 Gün
Başarım Puanı
123
MmoLira
3,102
DevLira
18
Ticaret - 0%
0   0   0

ROHAN2 WORLD 1-120 TR TİPİ OFFICIAL YOHARA, BALATHOR VE AMON! 80. GÜNÜNDE! +10.000 ONLİNE! HİLE VE BOT %100 ENGELLİ HEMEN TIKLA!

AFFECT.H KOD BLOĞU
C++:
#ifdef CARBON_PREMIUM_OTO
    AFFECT_CARBON_PREMIUM = 545,
#endif
CHAR_İTEM KOD BLOĞU
C++:
#ifdef CARBON_PREMIUM_OTO
            // --- CARBON PREMIUM EŞYASI KULLANIMI BAŞLANGIÇ ---
            case 99917: // 1 Saatlik Premium Eşyası
            case 99918: // 12 Saatlik Premium Eşyası
            case 99919: // 24 Saatlik Premium Eşyası (GÜNCELLENDİ)
            case 99920: // 1 Aylık Premium Eşyası
            {
                // Zaten aktifse tekrar üst üste basılmasını engelliyoruz
                if (ch->FindAffect(AFFECT_CARBON_PREMIUM))
                {
                    ch->ChatPacket(CHAT_TYPE_INFO, "Carbon Premium zaten aktif!");
                    return false;
                }

                long lDuration = 0;

                // Oyuncunun tıkladığı eşyanın koduna göre (VNUM) saniye hesabı yapıyoruz
                switch (item->GetVnum())
                {
                    case 99917:
                        lDuration = 60 * 60 * 1;        // 1 Saat (3.600 saniye)
                        break;
                    case 99918:
                        lDuration = 60 * 60 * 12;       // 12 Saat (43.200 saniye)
                        break;
                    case 99919:
                        lDuration = 60 * 60 * 24;       // 24 Saat [1 Gün] (86.400 saniye) - (GÜNCELLENDİ)
                        break;
                    case 99920:
                        lDuration = 60 * 60 * 24 * 30;  // 1 Ay [30 Gün] (2.592.000 saniye)
                        break;
                    default:
                        lDuration = 60 * 60 * 24;       // Güvenlik önlemi
                        break;
                }

                // AFFECT TABLOSUNA (DB) VE KARAKTERE SÜREYİ İŞLİYORUZ
                ch->AddAffect(AFFECT_CARBON_PREMIUM, POINT_NONE, 0, AFF_NONE, lDuration, 0, false);
                
                // Eşyayı envanterden 1 adet siliyoruz
                item->SetCount(item->GetCount() - 1);

                // Client'e (Python tarafına) aktif etme komutunu gönderiyoruz
                ch->ChatPacket(CHAT_TYPE_COMMAND, "CarbonPremiumStatus 1");
                ch->ChatPacket(CHAT_TYPE_INFO, "Carbon Premium basariyla aktif edildi! Iyi avlar.");
                break;
            }
            // --- CARBON PREMIUM EŞYASI KULLANIMI BİTİŞ ---
#endif

PYTHONCHARACTERMODULE.CPP
C++:
#ifdef CARBON_PREMIUM_OTO
    PyModule_AddIntConstant(poModule, "AFFECT_CARBON_PREMIUM", CInstanceBase::AFFECT_CARBON_PREMIUM);
#endif

INSTANCEBASE.H
Kod:
#ifdef CARBON_PREMIUM_OTO
            AFFECT_CARBON_PREMIUM = 545,
#endif

PYTHONAPPLİCATİONMODULE.CPP

Kod:
#ifdef CARBON_PREMIUM_OTO
    PyModule_AddIntConstant(poModule, "CARBON_PREMIUM_OTO", 1);
#else
    PyModule_AddIntConstant(poModule, "CARBON_PREMIUM_OTO", 0);
#endif

UİAFFECTSHOWER.PY
Python:
    if app.CARBON_PREMIUM_OTO:
        AFFECT_DATA_DICT[chr.AFFECT_CARBON_PREMIUM] = (localeInfo.TOOLTIP_CARBON_PREMIUM, "d:/ymir work/ui/skill/common/affect/att_bonus.sub"),

Kodları bu şekilde düzenledim ancak, Eşyaya sağ tıkladığım zaman karekterime bonuslar işleniyor, Affect ID'si player.affect tablosuna düşmüyor. Sol üstte beliren ikonlar arasında yer almıyor yardım edermisiniz?
 

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