Çözüldü ortalama zarar gelirmi sorgusu nasıl yapılır?

  • Konuyu açan Konuyu açan TheAdmin33
  • Açılış Tarihi Açılış Tarihi
  • Yanıt Yanıt 7
  • Gösterim Gösterim 699
Bu konu çözüme ulaştırılmıştır. Çözüm için konuya yazılan tüm yorumları okumayı unutmayın. Eğer konudaki yorumlar sorununuzu çözmediyse yeni bir konu açabilirsiniz.
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.

TheAdmin33

Ah, bu şarkıların gözü kör olsun
Geliştirici
Yardımsever Üye
Usta Üye
Editör
Mesaj
1.041
Çözümler
58
Beğeni
2.625
Puan
1.849
Ticaret Puanı
0
ben itemin ortalama zarar gelebilen bir itemmi olduğunun kontrolünü nasıl yaptırırım?

şey istemiyorum itemde zaten ortalama efsun varken ortalama zarar varmı yokmu kontrolu değil bu değil;
gamesrc:
Genişlet Daralt Kopyala
item2->GetAttributeType(0) == 72 //ortalama
item2->GetAttributeType(1) == 71 //beceri
 
Çözüm
C++:
Genişlet Daralt Kopyala
#include "item_manager.h"

const TItemTable * tablo = ITEM_MANAGER::instance().GetTable(ITEM_KODU veya ilgili vnum işaretcisi);
int kontrol = tablo->sAddonType;

if (kontrol < 0)
{
    // item ortalama hasar ve beceri bonusu alan bir itemdir.
}
C++:
Genişlet Daralt Kopyala
#include "item_manager.h"

const TItemTable * tablo = ITEM_MANAGER::instance().GetTable(ITEM_KODU veya ilgili vnum işaretcisi);
int kontrol = tablo->sAddonType;

if (kontrol < 0)
{
    // item ortalama hasar ve beceri bonusu alan bir itemdir.
}
 
Çözüm
C++:
Genişlet Daralt Kopyala
#include "item_manager.h"

const TItemTable * tablo = ITEM_MANAGER::instance().GetTable(ITEM_KODU veya ilgili vnum işaretcisi);
int kontrol = tablo->sAddonType;

if (kontrol < 0)
{
    // item ortalama hasar ve beceri bonusu alabilir
}
Çok teşekkürler . Bir şey sorucam iteme ort yada beceri gelme yada gelmeme bilgisi item_protoda mı tutuluyor yoksa src kısmında bir yerdeki kodmu bu işi yapıyor. item_addon dan ort ve beceri hasaplamaları yapılıyor ordan yola çıkarak kurcaladım ama tam anlamadım.
 
Çok teşekkürler . Bir şey sorucam iteme ort yada beceri gelme yada gelmeme bilgisi item_protoda mı tutuluyor yoksa src kısmında bir yerdeki kodmu bu işi yapıyor. item_addon dan ort ve beceri hasaplamaları yapılıyor ordan yola çıkarak kurcaladım ama tam anlamadım.
item_protoda addon_type sütunu -1 olan itemler ortalama hasar ve beceri hasarı alan itemlerdir.
Bunların dışında bütün itemlerin addon_type değeri 0'dır.
 
item_protoda addon_type sütunu -1 olan itemler ortalama hasar ve beceri hasarı alan itemlerdir.
Bunların dışında bütün itemlerin addon_type değeri 0'dır.
peki ort ve bec veren bir efsun yapacak olsak USE_SPECIAL bir item oluşturup bu sorguyu kullanarak ort gelen silahlara efsun attırmakmı mantıklı yoksa USE_CHANGE_ATTRIBUTE içinde şöyle bir kod yazmak dahamı mantıklı olur;

char_item.cpp:
Genişlet Daralt Kopyala
                                    else if (item->GetVnum() == item_kodu)
                                    {

                                        item2->ChangeAttribute();

                                        item2->SetForceAttribute(0,72,ort_sayı);
                                        item2->SetForceAttribute(1,71,bec_sayı);

                                    }
 
peki ort ve bec veren bir efsun yapacak olsak USE_SPECIAL bir item oluşturup bu sorguyu kullanarak ort gelen silahlara efsun attırmakmı mantıklı yoksa USE_CHANGE_ATTRIBUTE içinde şöyle bir kod yazmak dahamı mantıklı olur;

char_item.cpp:
Genişlet Daralt Kopyala
                                    else if (item->GetVnum() == item_kodu)
                                    {

                                        item2->ChangeAttribute();

                                        item2->SetForceAttribute(0,72,ort_sayı);
                                        item2->SetForceAttribute(1,71,bec_sayı);

                                    }
gerçi USE_CHANGE_ATTRIBUTE in içine böyle bir şey yazarsak olmaz :ROFLMAO: .
 
peki ort ve bec veren bir efsun yapacak olsak USE_SPECIAL bir item oluşturup bu sorguyu kullanarak ort gelen silahlara efsun attırmakmı mantıklı yoksa USE_CHANGE_ATTRIBUTE içinde şöyle bir kod yazmak dahamı mantıklı olur;

char_item.cpp:
Genişlet Daralt Kopyala
                                    else if (item->GetVnum() == item_kodu)
                                    {

                                        item2->ChangeAttribute();

                                        item2->SetForceAttribute(0,72,ort_sayı);
                                        item2->SetForceAttribute(1,71,bec_sayı);

                                    }
Zaten ort ve beceri alabilen itemlere herhangi bir işlem yapılması mantıksız bence.
Eğer böyle bir şey yapılacaksa, normalde ort ve beceri olmayan itemler için yapılması daha uygun olur.
 
Zaten ort ve beceri alabilen itemlere herhangi bir işlem yapılması mantıksız bence.
Eğer böyle bir şey yapılacaksa, normalde ort ve beceri olmayan itemler için yapılması daha uygun olur.
itemlerin temel efsunları ort gelip gelmemesine göre ayarlanmış ya dediğin sıkıntı çıkartmazmı?

bu arada kodu şöyle düzenlesem çalışırmı , çalışırsa kastırmaya vs. sebep olurmu ki? :unsure:

char_item.cpp:
Genişlet Daralt Kopyala
                                    else if (item->GetVnum() == item_kodu)
                                    {
                                        TItemTable const * ort_bec_kontrol = GetProto();

                                        if (ort_bec_kontrol->sAddonType == -1)
                                        {
                                            item2->ChangeAttribute();

                                            item2->SetForceAttribute(0,72,ort_sayı);
                                            item2->SetForceAttribute(1,71,bec_sayı);

                                        }
                                        else
                                        {
                                            ChatPacket(CHAT_TYPE_INFO, "Bu nesneyi sadece ortalama ve/veya beceri hasarı gelebilen esyalarda kullanabilirsin !");
                                            return false;
                                        }

                                    }
 
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.
Üst