[C++] Official Cube Renewal (ChangeLook ve Refine Element)

  • Konuyu açan Konuyu açan okan4141
  • Açılış Tarihi Açılış Tarihi
  • Yanıt Yanıt 0
  • Gösterim Gösterim 294

okan4141

D E L I
Geliştirici
MT Üye
Mesaj
898
Çözümler
26
Beğeni
2.191
Puan
1.529
Ticaret Puanı
0
CubeRenewal.cpp Açın ve Aratın:

C++:
Genişlet Daralt Kopyala
void Cube_Make(

İçinde Aratın:


Burayı görüntülemek için üye girişi yapmalı veya kayıt olmalısınız.
Burayı görüntülemek için üye girişi yapmalı veya kayıt olmalısınız.
Burayı görüntülemek için üye girişi yapmalı veya kayıt olmalısınız.



Altına Ekleyin:

Burayı görüntülemek için üye girişi yapmalı veya kayıt olmalısınız.


Aratın:

C++:
Genişlet Daralt Kopyala
                if (canCopy)
                {
                    if (objectSlot >= 0)
                    {
                        const LPITEM BonusItem = ch->GetInventoryItem(objectSlot);
                        
                        // Copy Attribute
                        for (int a = 0; a < ITEM_ATTRIBUTE_MAX_NUM; a++)
                        {
                            if (BonusItem->GetAttributeType(a) != 0)
                            {
                                copyAttr[a][0] = BonusItem->GetAttributeType(a);
                                copyAttr[a][1] = BonusItem->GetAttributeValue(a);
                            }
                        }
                        
                        //Copy Sockets
                        if (BonusItem->GetType() == ITEM_WEAPON || BonusItem->GetType() == ITEM_ARMOR || BonusItem->GetType() == ITEM_UNIQUE || BonusItem->GetType() == ITEM_COSTUME)
                        {
                            for (int a = 0; a < BonusItem->GetSocketCount(); a++)
                            {
                                copySockets[a] = BonusItem->GetSocket(a);
                            }
                        }

Altına Ekleyin:


Burayı görüntülemek için üye girişi yapmalı veya kayıt olmalısınız.


Aratın:

C++:
Genişlet Daralt Kopyala
                else {
#ifdef ENABLE_CUBE_ATTR_SOCKET
                    if (materialInfo.allowCopyAttr == true && copyAttr != nullptr)
                    {
                        pItem->ClearAttribute();

                        for (int a = 0; a < ITEM_ATTRIBUTE_MAX_NUM; a++)
                        {
                            if (copyAttr[a][0] > 0)
                                pItem->SetForceAttribute(a, copyAttr[a][0], copyAttr[a][1]);
                        }
                        
                        if (pItem->GetType() == ITEM_WEAPON || pItem->GetType() == ITEM_ARMOR)
                        {
                            for (int a = 0; a < ITEM_SOCKET_MAX_NUM; a++)
                            {
                                if (copySockets[a]) {
                                    pItem->SetSocket(a, copySockets[a]);
                                }
                            }

Altına Ekleyin:

C++:
Genişlet Daralt Kopyala
#if defined(__BL_TRANSMUTATION__)
                            if (bChangeLook) {
                                pItem->SetTransmutationVnum(dwChangeLookVnum);
                            }
#endif

#if defined(ENABLE_REFINE_ELEMENT)
                            if (bElement) {
                                pItem->SetRefineElement(dwRefineElement);
                            }
#endif

Extra Olarak Bir İtem Oluştururken Eğer İtem Create Olmazsa Zaten Bunu Kontrol Edersiniz. Fakat İtem Oluştuktan ve Envanterde Boş Slot Arama Koşuluna Geldikten Sonra Eğer Boş Slot Bulunmazsa Bu Oluşan İtemi Destroy Etmeniz Gerekir. CubeRenewal'de Bu Yok.

Arat:


C++:
Genişlet Daralt Kopyala
                if (iEmptyPos < 0)
                {

Altına Ekle:

C++:
Genişlet Daralt Kopyala
                    ITEM_MANAGER::instance().DestroyItem(pItem);

2.webp


Video

 
Son düzenleme:
Uyarı: Bu konu açıldığından bu yana baya zaman geçmiş.
Muhtemelen daha fazla tartışma gerekli değildir ki bu durumda yeni bir konu başlatmayı öneririz. Eğer yine de cevabınızın gerekli olduğunu düşünüyorsanız buna rağmen cevap verebilirsiniz.
Geri
Üst