Cannn6161 1
Cannn6161
onur akbaş 1
onur akbaş
PrimeAC 1
PrimeAC
Mt2Hizmet 1
Mt2Hizmet
romegames 1
romegames
Fethi Polat 1
Fethi Polat
xranzei 1
xranzei
Bvural41 1
Bvural41
kralhakan2009 1
kralhakan2009
noisiv 1
noisiv
Manwe Work 1
Manwe Work
Vahsi Uzman 1
Vahsi Uzman
Hikaye Ekle
Reklam vermek için turkmmo@gmail.com
Kaynak ikonu

[C++ - Python] Yeşil ve Mor Pot Rubinum Tarzı 2023-03-07

indirmek için izniniz yok
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
baktım ekli değil
Sorunu farklı bi yol ile çözdüm
constinfo.py kısmındaki
def IS_AUTO_POTION(itemVnum):
return IS_AUTO_POTION_HP(itemVnum) or IS_AUTO_POTION_SP(itemVnum)
kısmına perma item kodlarını ekledim sorunu hallettim. Tooltip kısmında pottaki gibi kalan%100 kısmı içinde
uitooltip.py kısmında
Kod:
elif constInfo.IS_AUTO_POTION(itemVnum):
                if 0 != metinSlot:
                    ## 0: 활성화, 1: 사용량, 2: 총량
                    isActivated = int(metinSlot[0])
                    usedAmount = float(metinSlot[1])
                    totalAmount = float(metinSlot[2])
                    
                    if 0 == totalAmount:
                        totalAmount = 1
                    
                    self.AppendSpace(5)

                    if 0 != isActivated:
                    ############        Kendi perma item kısmımı ekledim sıkıntısız çalışıyor
                        if not constInfo.PERMA_ITEMS(itemVnum):
                            self.AppendTextLine("(%s)" % (localeInfo.TOOLTIP_AUTO_POTION_USING), self.SPECIAL_POSITIVE_COLOR)
                            self.AppendSpace(5)
                            
                            self.AppendTextLine(localeInfo.TOOLTIP_AUTO_POTION_REST % (100.0 - ((usedAmount / totalAmount) * 100.0)), self.POSITIVE_COLOR)
 
Bunu yapıp server açıp bunla övünenler olduğunu gördüm.
Yeşil ve mor potu rubinum gibi yapma. Örnek olarak yaptım istediğiniz itemi böyle yapabilirsiniz.

Kanıt:
giphy.gif





Şebnemler için aynı yolu denedim ama bi etki göremedim sebebi nedir ?
 
Şuanki kod ile aynı type sahip itemler birbirini blokluyor. Örneğin kritik ve delici isabetleri ve ejderha tanrıları type = AFFECT_MALL oyun içinde kritiğe bastığın zaman açılıyor deliciyi açmak istersen kritiği kapatıyor.
Ejderha tanrıları içinde aynısı geçerli. Kritik açıkken ejderha tanrısına basarsan kritiği kapatıyor
Bunun çözümü şu;

CAffect * pAffect = FindAffect(type);
if(NULL == pAffect)

kısmını bonusların üstüne değilde altına ekleyip affect'i bonus ile birlikte bulmak

CAffect * pAffect = FindAffect(type,bonus);

Kod :
Kod:
case PERMA_KRITIK:
case PERMA_DELICI:
case PERMA_TANRI_YASAM:
case PERMA_TANRI_SALDIRI:
case PERMA_TANRI_ZEKA:
case PERMA_TANRI_SAVUNMA:
{
    EAffectTypes type = AFFECT_NONE;

    if (item->GetVnum() == PERMA_KRITIK)
        type = AFFECT_MALL;

    if (item-> GetVnum () == PERMA_DELICI)
        type = AFFECT_MALL;

    if (item-> GetVnum () == PERMA_TANRI_YASAM)
        type = AFFECT_MALL;

    if (item-> GetVnum () == PERMA_TANRI_SALDIRI)
        type = AFFECT_MALL;

    if (item-> GetVnum () == PERMA_TANRI_ZEKA)
        type = AFFECT_MALL;

    if (item-> GetVnum () == PERMA_TANRI_SAVUNMA)
        type = AFFECT_MALL;

    if (AFFECT_NONE == type)
        break;


    EPointTypes bonus = POINT_NONE;
    EAffectBits flag = AFF_NONE;

    if (item-> GetVnum () == PERMA_KRITIK)
    {
        bonus = POINT_CRITICAL_PCT;
        // flag = 0;
    }

    if (item-> GetVnum () == PERMA_DELICI)
    {
        bonus = POINT_PENETRATE_PCT;
        // flag = 0;
    }

    if (item-> GetVnum () == PERMA_TANRI_YASAM)
    {
        bonus = POINT_MAX_HP_PCT;
        // flag = 0;
    }

    if (item-> GetVnum () == PERMA_TANRI_SALDIRI)
    {
        bonus = POINT_ATT_BONUS;
        // flag = 0;
    }

    if (item-> GetVnum () == PERMA_TANRI_ZEKA)
    {
        bonus = POINT_MAX_SP_PCT;
        // flag = 0;
    }

    if (item-> GetVnum () == PERMA_TANRI_SAVUNMA)
    {
        bonus = POINT_MALL_DEFBONUS;
        // flag = 0;
    }


    CAffect * pAffect = FindAffect (type, bonus);
    if (NULL == pAffect)
    {
        AddAffect (type, bonus, item-> GetValue (2), flag, INFINITE_AFFECT_DURATION, 0, true, true);

        Item-> Lock (true);
        item -> SetSocket (0, true);
    }
    else
    {
        removeaffect (paffect);
        Item-> Lock (false);
        item-> SetSocket (0, false);
    }
}
break; [/ CODE]
[/ QUOTE]
me too....
 
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