Am o problema cu curelele si talismanele, amandoua se echipa in slotul de curele, eu vr sa bag talismanu in slotul de talismane, daca schimb coordinatia in locale, aia nemodificata im baga curelele si talismanele in slotul {"index":item.EQUIPMENT_BELT, "x":114, "y":107, "width":32, "height":32}, ## eu le am modificat coordinatele doar sa pot sa bag curele in slotul lor respectiv, dar curelele si talismanele au acelasi type "34" cum fac sa bag alt type sa mearga sa bag talismanele in slotur lor respectiv..?
aici am poza inventar cu sloturi: https://postimg.cc/YGN3DZ9z
Asa arata item_proto la un talisman
<ItemDef Vnum="9609" Name="Ȓ؎) ܧƁ" LocalizedName="Talisman de Foc" Type="34" SubType="0" Weight="0" Size="1" AntiFlags="0" Flags="0" WearFlags="128" ImmuneFlags="0" Gold="0" ShopBuyPrice="0" LimitType0="7" LimitValue0="555764800" LimitType1="0" LimitValue1="0" ApplyType0="6" ApplyValue0="25" ApplyType1="4" ApplyValue1="25" ApplyType2="5" ApplyValue2="25" Value0="0" Value1="0" Value2="0" Value3="0" Value4="0" Value5="0" Socket0="0" Socket1="0" Socket2="0" RefinedVnum="0" RefineSet="0" AlterToMagicItemPercent="0" Specular="0" GainSocketPercent="0" AddonType="0" />
Type-u e 34 la fel ca curelele, cum fac un nou type si sal bag la slotul ala de talismane? coordinatele de la bonus talismane si curele din locale e:
{"index":item.EQUIPMENT_BELT, "x":114, "y":107, "width":32, "height":32}, ## talismane
acolo sunt coordinatele bonusului cum erau clean, eu lam modificat cu coordinatele astea:
{"index":item.EQUIPMENT_BELT, "x":39, "y":106, "width":32, "height":32}, in asa fel sa se pot baga in slotul de curele... nsh dacai bine asa corectatima daca trb sa schimb.
Vr sa fac sa bag talismanele in slotul lor respectiv de talismane, si curelele in slotul de curele, creca trb sa modific cv acolo in locale la linutele astea si in item_proto la type... dar au acelasi type si nush cum sa creeze alt type ptr talismane, si ce trb sa fac exact in locale... nu stiu. Ma ajuta cineva ?
[PROBLEMOS] Problema sloturi
- Icex
-

- Mesaje: 77
- Membru din: 03 Mai 2021, 15:17
- Server: Ice WaR
- Regat: Shinsoo
- Aprecieri: 56
- Mulţumiri: 2
- Discord: Copiază ID
Ultima oară modificat 16 Mai 2021, 21:21 de către Icex, modificat de 2 ori în total.
- Pentru acest mesaj, Icex for the post:
- Marian [Desmond]
- SkyLine
-

- Mesaje: 2655
- Membru din: 12 Dec 2013, 23:37
- Server: Miraj2-Online
- Regat: Jinno
- Aprecieri: 520
- Mulţumiri: 987
- Discord: Copiază ID
- Contact:
Mutat unde trebuie. Foloseste modelul de postare, te rog. Si modifica titlul subiectului, elimina " [CERERE] ". E postare tip Probleme si Intrebari, nu tip Cereri
- [HF]White
-

- Mesaje: 2684
- Membru din: 03 Iul 2018, 13:40
- Regat: Jinno
- Aprecieri: 338
- Mulţumiri: 5331
- Rezolvări prob.: 13
- Discord: Copiază ID
- Contact:
Verifica in sursa si bagi index-u de la slotu de talismane (Length.h) in inventorywindow.py
Nu avem de unde stii ce index ai tu.
sau bagi pe rand pana gasesti.
Nu avem de unde stii ce index ai tu.
sau bagi pe rand pana gasesti.
- Icex
-

- Mesaje: 77
- Membru din: 03 Mai 2021, 15:17
- Server: Ice WaR
- Regat: Shinsoo
- Aprecieri: 56
- Mulţumiri: 2
- Discord: Copiază ID
game.type.h asta?
Cod: Selectaţi tot
#pragma once
#include "../GameLib/ItemData.h"
struct SAffects
{
enum
{
AFFECT_MAX_NUM = 32,
};
SAffects() : dwAffects(0) {}
SAffects(const DWORD & c_rAffects)
{
__SetAffects(c_rAffects);
}
int operator = (const DWORD & c_rAffects)
{
__SetAffects(c_rAffects);
}
BOOL IsAffect(BYTE byIndex)
{
return dwAffects & (1 << byIndex);
}
void __SetAffects(const DWORD & c_rAffects)
{
dwAffects = c_rAffects;
}
DWORD dwAffects;
};
extern std::string g_strGuildSymbolPathName;
const DWORD c_Name_Max_Length = 64;
const DWORD c_FileName_Max_Length = 128;
const DWORD c_Short_Name_Max_Length = 32;
const DWORD c_Inventory_Page_Size = 5*9; // x*y
const DWORD c_Inventory_Page_Count = 4;
const DWORD c_ItemSlot_Count = c_Inventory_Page_Size * c_Inventory_Page_Count;
const DWORD c_Equipment_Count = 12;
const DWORD c_Equipment_Start = c_ItemSlot_Count;
const DWORD c_Equipment_Body = c_Equipment_Start + 0;
const DWORD c_Equipment_Head = c_Equipment_Start + 1;
const DWORD c_Equipment_Shoes = c_Equipment_Start + 2;
const DWORD c_Equipment_Wrist = c_Equipment_Start + 3;
const DWORD c_Equipment_Weapon = c_Equipment_Start + 4;
const DWORD c_Equipment_Neck = c_Equipment_Start + 5;
const DWORD c_Equipment_Ear = c_Equipment_Start + 6;
const DWORD c_Equipment_Unique1 = c_Equipment_Start + 7;
const DWORD c_Equipment_Unique2 = c_Equipment_Start + 8;
const DWORD c_Equipment_Arrow = c_Equipment_Start + 9;
const DWORD c_Equipment_Shield = c_Equipment_Start + 10;
// »õ·Î Ãß°¡µÈ ½Å±Ô ¹ÝÁö & º§Æ®
// ÀåÂøÇü ¾ÆÀÌÅÛ¿¡ ÇÒ´çÇÒ ¼ö ÀÖ´Â À§Ä¡°¡ ±âÁ¸ Àåºñ, ä±â¶ø Äù½ºÆ® º¸»ó, ÄÚ½ºÆ¬ ½Ã½ºÅÛ µîÀ¸·Î ÀÎÇØ¼ °ø°£ÀÌ Àß·ÁÀÖ´Ù.
// ÀÌ°Ô ´Ù ä±â¶ø º¸»ó ¹öÇÁ¸¦ ÀåÂø¾ÆÀÌÅÛó·³ ±¸ÇöÇÑ ¤µ¤¢ ¶§¹®¿¡ ³¸®³µµû... ¤¶¤²
//
// Á¤¸®Çϸé, ±âÁ¸ ÀåºñâµéÀº ¼¹öDB»ó ¾ÆÀÌÅÛ Æ÷Áö¼ÇÀÌ 90 ~ 102 À̰í,
// 2013³â ÃÊ¿¡ »õ·Î Ãß°¡µÇ´Â ½½·ÔµéÀº 111 ~ ºÎÅÍ ½ÃÀÛÇÑ´Ù. Âø¿ë Àåºñ¿¡¼ ÃÖ´ë·Î »ç¿ëÇÒ ¼ö ÀÖ´Â °ªÀº 121 ±îÁöÀ̰í, 122ºÎÅÍ´Â ¿ëÈ¥¼®¿¡¼ »ç¿ëÇÑ´Ù.
#ifdef ENABLE_NEW_EQUIPMENT_SYSTEM
#ifdef ENABLE_SASH_SYSTEM
const DWORD c_New_Equipment_Start = c_Equipment_Start + 24;
#else
const DWORD c_New_Equipment_Start = c_Equipment_Start + 23;
#endif
const DWORD c_New_Equipment_Count = 3;
const DWORD c_Equipment_Ring1 = c_New_Equipment_Start + 0;
const DWORD c_Equipment_Ring2 = c_New_Equipment_Start + 1;
const DWORD c_Equipment_Belt = c_New_Equipment_Start + 2;;
#endif
enum EDragonSoulDeckType
{
DS_DECK_1,
DS_DECK_2,
DS_DECK_MAX_NUM = 2,
};
enum EDragonSoulGradeTypes
{
DRAGON_SOUL_GRADE_NORMAL,
DRAGON_SOUL_GRADE_BRILLIANT,
DRAGON_SOUL_GRADE_RARE,
DRAGON_SOUL_GRADE_ANCIENT,
DRAGON_SOUL_GRADE_LEGENDARY,
DRAGON_SOUL_GRADE_MAX,
};
enum EDragonSoulStepTypes
{
DRAGON_SOUL_STEP_LOWEST,
DRAGON_SOUL_STEP_LOW,
DRAGON_SOUL_STEP_MID,
DRAGON_SOUL_STEP_HIGH,
DRAGON_SOUL_STEP_HIGHEST,
DRAGON_SOUL_STEP_MAX,
};
#ifdef ENABLE_COSTUME_SYSTEM
const DWORD c_Costume_Slot_Start = c_Equipment_Start + 19; // [ÁÖÀÇ] ¼ýÀÚ(19) ÇϵåÄÚµù ÁÖÀÇ. ÇöÀç ¼¹ö¿¡¼ ÄÚ½ºÃõ ½½·ÔÀº 19ºÎÅÍÀÓ. ¼¹ö common/length.h ÆÄÀÏÀÇ EWearPositions ¿°ÅÇü Âü°í.
const DWORD c_Costume_Slot_Body = c_Costume_Slot_Start + 0;
const DWORD c_Costume_Slot_Hair = c_Costume_Slot_Start + 1;
#ifdef ENABLE_SASH_SYSTEM
const DWORD c_Costume_Slot_Sash = c_Costume_Slot_Start + 2;
#endif
#ifdef ENABLE_COSTUME_WEAPON_SYSTEM
const DWORD c_Costume_Slot_Weapon = c_Costume_Slot_Start + 3;
#endif
const DWORD c_Costume_Slot_Mount = c_Costume_Slot_Start + 4;
#ifdef ENABLE_SASH_SYSTEM // kostum silah sistemi icin de?erler 1 artt©¥r©¥ld©¥. +1 bi ust kod.
const DWORD c_Costume_Slot_Count = 5;
#else
const DWORD c_Costume_Slot_Count = 4;
#endif
const DWORD c_Costume_Slot_End = c_Costume_Slot_Start + c_Costume_Slot_Count;
#endif
// [ÁÖÀÇ] ¼ýÀÚ(32) ÇϵåÄÚµù ÁÖÀÇ. ÇöÀç ¼¹ö¿¡¼ ¿ëÈ¥¼® ½½·ÔÀº 32ºÎÅÍÀÓ.
// ¼¹ö common/length.h ÆÄÀÏÀÇ EWearPositions ¿°ÅÇüÀÌ 32±îÁö È®ÀåµÉ °ÍÀ» ¿°µÎÇϰí(32 ÀÌ»óÀº È®Àå Çϱâ Èûµé°Ô µÇ¾îÀÖÀ½.),
// ±× ÀÌÈĺÎÅ͸¦ ¿ëÈ¥¼® ÀåÂø ½½·ÔÀ¸·Î »ç¿ë.
const DWORD c_Wear_Max = 32;
const DWORD c_DragonSoul_Equip_Start = c_ItemSlot_Count + c_Wear_Max;
const DWORD c_DragonSoul_Equip_Slot_Max = 6;
const DWORD c_DragonSoul_Equip_End = c_DragonSoul_Equip_Start + c_DragonSoul_Equip_Slot_Max * DS_DECK_MAX_NUM;
// NOTE: 2013³â 2¿ù 5ÀÏ ÇöÀç... ¿ëÈ¥¼® µ¥Å©´Â 2°³°¡ Á¸ÀçÇϴµ¥, ÇâÈÄ È®Àå °¡´É¼ºÀÌ ÀÖ¾î¼ 3°³ µ¥Å© ¿©À¯ºÐÀ» ÇÒ´ç ÇØ µÒ. ±× µÚ °ø°£Àº º§Æ® Àκ¥Å丮·Î »ç¿ë
const DWORD c_DragonSoul_Equip_Reserved_Count = c_DragonSoul_Equip_Slot_Max * 3;
#ifdef ENABLE_NEW_EQUIPMENT_SYSTEM
// º§Æ® ¾ÆÀÌÅÛÀÌ Á¦°øÇÏ´Â Àκ¥Å丮
const DWORD c_Belt_Inventory_Slot_Start = c_DragonSoul_Equip_End + c_DragonSoul_Equip_Reserved_Count;
const DWORD c_Belt_Inventory_Width = 4;
const DWORD c_Belt_Inventory_Height= 4;
const DWORD c_Belt_Inventory_Slot_Count = c_Belt_Inventory_Width * c_Belt_Inventory_Height;
const DWORD c_Belt_Inventory_Slot_End = c_Belt_Inventory_Slot_Start + c_Belt_Inventory_Slot_Count;
const DWORD c_Inventory_Count = c_Belt_Inventory_Slot_End;
#else
const DWORD c_Inventory_Count = c_DragonSoul_Equip_End;
#endif
// ¿ëÈ¥¼® Àü¿ë Àκ¥Å丮
const DWORD c_DragonSoul_Inventory_Start = 0;
const DWORD c_DragonSoul_Inventory_Box_Size = 32;
const DWORD c_DragonSoul_Inventory_Count = CItemData::DS_SLOT_NUM_TYPES * DRAGON_SOUL_GRADE_MAX * c_DragonSoul_Inventory_Box_Size;
const DWORD c_DragonSoul_Inventory_End = c_DragonSoul_Inventory_Start + c_DragonSoul_Inventory_Count;
enum ESlotType
{
SLOT_TYPE_NONE,
SLOT_TYPE_INVENTORY,
SLOT_TYPE_SKILL,
SLOT_TYPE_EMOTION,
SLOT_TYPE_SHOP,
SLOT_TYPE_EXCHANGE_OWNER,
SLOT_TYPE_EXCHANGE_TARGET,
SLOT_TYPE_QUICK_SLOT,
SLOT_TYPE_SAFEBOX,
SLOT_TYPE_PRIVATE_SHOP,
SLOT_TYPE_MALL,
SLOT_TYPE_DRAGON_SOUL_INVENTORY,
SLOT_TYPE_OFFLINE_SHOP,
SLOT_TYPE_MAX,
};
enum EWindows
{
RESERVED_WINDOW,
INVENTORY, // ±âº» Àκ¥Å丮. (45Ä Â¥¸®°¡ 2ÆäÀÌÁö Á¸Àç = 90Ä)
EQUIPMENT,
SAFEBOX,
MALL,
DRAGON_SOUL_INVENTORY,
GROUND, // NOTE: 2013³â 2¿ù5ÀÏ ÇöÀç±îÁö unused.. ¿Ö Àִ°ÅÁö???
BELT_INVENTORY, // NOTE: W2.1 ¹öÀü¿¡ »õ·Î Ãß°¡µÇ´Â º§Æ® ½½·Ô ¾ÆÀÌÅÛÀÌ Á¦°øÇÏ´Â º§Æ® Àκ¥Å丮
WINDOW_TYPE_MAX,
};
#ifdef WJ_ENABLE_TRADABLE_ICON
enum ETopWindowTypes
{
ON_TOP_WND_NONE,
ON_TOP_WND_SHOP,
ON_TOP_WND_EXCHANGE,
ON_TOP_WND_SAFEBOX,
ON_TOP_WND_PRIVATE_SHOP,
ON_TOP_WND_ITEM_COMB,
ON_TOP_WND_PET_FEED,
ON_TOP_WND_MAX,
};
#endif
enum EDSInventoryMaxNum
{
DS_INVENTORY_MAX_NUM = c_DragonSoul_Inventory_Count,
DS_REFINE_WINDOW_MAX_NUM = 15,
};
#pragma pack (push, 1)
#define WORD_MAX 0xffff
typedef struct SItemPos
{
BYTE window_type;
WORD cell;
SItemPos ()
{
window_type = INVENTORY;
cell = WORD_MAX;
}
SItemPos (BYTE _window_type, WORD _cell)
{
window_type = _window_type;
cell = _cell;
}
// ±âÁ¸¿¡ cellÀÇ ÇüÀ» º¸¸é BYTE°¡ ´ëºÎºÐÀÌÁö¸¸, oi
// ¾î¶² ºÎºÐÀº int, ¾î¶² ºÎºÐÀº WORD·Î µÇ¾îÀÖ¾î,
// °¡Àå Å« ÀÚ·áÇüÀÎ int·Î ¹Þ´Â´Ù.
// int operator=(const int _cell)
// {
//window_type = INVENTORY;
// cell = _cell;
// return cell;
// }
bool IsValidCell()
{
switch (window_type)
{
case INVENTORY:
return cell < c_Inventory_Count;
break;
case EQUIPMENT:
return cell < c_DragonSoul_Equip_End;
break;
case DRAGON_SOUL_INVENTORY:
return cell < (DS_INVENTORY_MAX_NUM);
break;
default:
return false;
}
}
bool IsEquipCell()
{
switch (window_type)
{
case INVENTORY:
case EQUIPMENT:
return (c_Equipment_Start + c_Wear_Max > cell) && (c_Equipment_Start <= cell);
break;
case BELT_INVENTORY:
case DRAGON_SOUL_INVENTORY:
return false;
break;
default:
return false;
}
}
#ifdef ENABLE_NEW_EQUIPMENT_SYSTEM
bool IsBeltInventoryCell()
{
bool bResult = c_Belt_Inventory_Slot_Start <= cell && c_Belt_Inventory_Slot_End > cell;
return bResult;
}
#endif
bool operator==(const struct SItemPos& rhs) const
{
return (window_type == rhs.window_type) && (cell == rhs.cell);
}
bool operator<(const struct SItemPos& rhs) const
{
return (window_type < rhs.window_type) || ((window_type == rhs.window_type) && (cell < rhs.cell));
}
} TItemPos;
#pragma pack(pop)
const DWORD c_QuickBar_Line_Count = 3;
const DWORD c_QuickBar_Slot_Count = 12;
const float c_Idle_WaitTime = 5.0f;
const int c_Monster_Race_Start_Number = 6;
const int c_Monster_Model_Start_Number = 20001;
const float c_fAttack_Delay_Time = 0.2f;
const float c_fHit_Delay_Time = 0.1f;
const float c_fCrash_Wave_Time = 0.2f;
const float c_fCrash_Wave_Distance = 3.0f;
const float c_fHeight_Step_Distance = 50.0f;
enum
{
DISTANCE_TYPE_FOUR_WAY,
DISTANCE_TYPE_EIGHT_WAY,
DISTANCE_TYPE_ONE_WAY,
DISTANCE_TYPE_MAX_NUM,
};
const float c_fMagic_Script_Version = 1.0f;
const float c_fSkill_Script_Version = 1.0f;
const float c_fMagicSoundInformation_Version = 1.0f;
const float c_fBattleCommand_Script_Version = 1.0f;
const float c_fEmotionCommand_Script_Version = 1.0f;
const float c_fActive_Script_Version = 1.0f;
const float c_fPassive_Script_Version = 1.0f;
// Used by PushMove
const float c_fWalkDistance = 175.0f;
const float c_fRunDistance = 310.0f;
#define FILE_MAX_LEN 128
enum
{
ITEM_SOCKET_SLOT_MAX_NUM = 3,
ITEM_ATTRIBUTE_SLOT_MAX_NUM = 7,
};
#pragma pack(push)
#pragma pack(1)
typedef struct SQuickSlot
{
BYTE Type;
BYTE Position;
} TQuickSlot;
typedef struct TPlayerItemAttribute
{
BYTE bType;
short sValue;
} TPlayerItemAttribute;
typedef struct packet_item
{
DWORD vnum;
BYTE count;
long bind;
#ifdef ENABLE_CHANGELOOK_SYSTEM
DWORD transmutation;
#endif
DWORD flags;
DWORD anti_flags;
long alSockets[ITEM_SOCKET_SLOT_MAX_NUM];
TPlayerItemAttribute aAttr[ITEM_ATTRIBUTE_SLOT_MAX_NUM];
} TItemData;
typedef struct packet_shop_item
{
DWORD vnum;
long long price;
#ifdef ENABLE_CHEQUE_SYSTEM
DWORD price_cheque;
#endif
BYTE count;
BYTE display_pos;
long alSockets[ITEM_SOCKET_SLOT_MAX_NUM];
TPlayerItemAttribute aAttr[ITEM_ATTRIBUTE_SLOT_MAX_NUM];
#ifdef ENABLE_CHANGELOOK_SYSTEM
DWORD transmutation;
#endif
} TShopItemData;
#pragma pack(pop)
inline float GetSqrtDistance(int ix1, int iy1, int ix2, int iy2) // By sqrt
{
float dx, dy;
dx = float(ix1 - ix2);
dy = float(iy1 - iy2);
return sqrtf(dx*dx + dy*dy);
}
// DEFAULT_FONT
void DefaultFont_Startup();
void DefaultFont_Cleanup();
void DefaultFont_SetName(const char * c_szFontName);
CResource* DefaultFont_GetResource();
CResource* DefaultItalicFont_GetResource();
// END_OF_DEFAULT_FONT
void SetGuildSymbolPath(const char * c_szPathName);
const char * GetGuildSymbolFileName(DWORD dwGuildID);
BYTE SlotTypeToInvenType(BYTE bSlotType);
Ultima oară modificat 16 Mai 2021, 22:05 de către [HF]White, modificat 1 dată în total.
Motiv: adaugat bbcode
Motiv: adaugat bbcode
- [HF]White
-

- Mesaje: 2684
- Membru din: 03 Iul 2018, 13:40
- Regat: Jinno
- Aprecieri: 338
- Mulţumiri: 5331
- Rezolvări prob.: 13
- Discord: Copiază ID
- Contact:
Din cate vad nici macar nu ai index type pt talismane.
astea sunt de la echipament
aici ai cele 2 sloturi de ring de langa belt + slot belt
Dupa ai body + hair costume
+ Esarfa
+ Costume weapon
+ Costume mount
Si cam atat. Niciun slot de talisman. Cine le-a bagat nu le-a bagat cum trebuie si din cauza asta le-a pus type 34(belt)
Cod: Selectaţi tot
const DWORD c_Equipment_Body = c_Equipment_Start + 0;
const DWORD c_Equipment_Head = c_Equipment_Start + 1;
const DWORD c_Equipment_Shoes = c_Equipment_Start + 2;
const DWORD c_Equipment_Wrist = c_Equipment_Start + 3;
const DWORD c_Equipment_Weapon = c_Equipment_Start + 4;
const DWORD c_Equipment_Neck = c_Equipment_Start + 5;
const DWORD c_Equipment_Ear = c_Equipment_Start + 6;
const DWORD c_Equipment_Unique1 = c_Equipment_Start + 7;
const DWORD c_Equipment_Unique2 = c_Equipment_Start + 8;
const DWORD c_Equipment_Arrow = c_Equipment_Start + 9;
const DWORD c_Equipment_Shield = c_Equipment_Start + 10;Cod: Selectaţi tot
const DWORD c_Equipment_Ring1 = c_New_Equipment_Start + 0;
const DWORD c_Equipment_Ring2 = c_New_Equipment_Start + 1;
const DWORD c_Equipment_Belt = c_New_Equipment_Start + 2;;aici ai cele 2 sloturi de ring de langa belt + slot belt
Dupa ai body + hair costume
Cod: Selectaţi tot
const DWORD c_Costume_Slot_Body = c_Costume_Slot_Start + 0;
const DWORD c_Costume_Slot_Hair = c_Costume_Slot_Start + 1;Cod: Selectaţi tot
const DWORD c_Costume_Slot_Sash = c_Costume_Slot_Start + 2;
Cod: Selectaţi tot
const DWORD c_Costume_Slot_Weapon = c_Costume_Slot_Start + 3;Cod: Selectaţi tot
const DWORD c_Costume_Slot_Mount = c_Costume_Slot_Start + 4;Si cam atat. Niciun slot de talisman. Cine le-a bagat nu le-a bagat cum trebuie si din cauza asta le-a pus type 34(belt)
- [HF]White
-

- Mesaje: 2684
- Membru din: 03 Iul 2018, 13:40
- Regat: Jinno
- Aprecieri: 338
- Mulţumiri: 5331
- Rezolvări prob.: 13
- Discord: Copiază ID
- Contact:
Ala e pus doar pe imaginea inventarului. Uita-te in inventorywindow.py (din locale) si vezi ce locatie ai la imagine
la mine e de exemplu.
Cod: Selectaţi tot
## Equipment Slot
{
"name" : "Equipment_Base",
"type" : "image",
"x" : 10,
"y" : 33,
"image" : "d:/ymir work/ui/equipment_bg_with5_rings.tga",dupa care te duci in locatia respectiva si inlocuiesti poza cu alta care nu are.
- Fubuki.Atsuya
-

- Mesaje: 1968
- Membru din: 22 Iun 2015, 21:13
- Server: OldLegion2
- Regat: Shinsoo
- Aprecieri: 455
- Mulţumiri: 815
- Rezolvări prob.: 2
- Discord: Copiază ID
Niciun răspuns din partea autorului.
Arhivat
Arhivat
-
- Informaţie
-
Cine este conectat
Utilizatori ce ce navighează pe acest forum: Bing [Bot], sanducatalin1 și 10 vizitatori

