diff --git a/src/Engine/LoginEngine.js b/src/Engine/LoginEngine.js index 9f9ebc0..577c75c 100644 --- a/src/Engine/LoginEngine.js +++ b/src/Engine/LoginEngine.js @@ -188,11 +188,16 @@ define(function( require ) } // Hook packets - Network.hookPacket( PACKET.AC.ACCEPT_LOGIN, onConnectionAccepted ); + if (PACKETVER.value >= 20170315) { + Network.hookPacket( PACKET.AC.ACCEPT_LOGIN3, onConnectionAccepted ); + } else { + Network.hookPacket( PACKET.AC.ACCEPT_LOGIN, onConnectionAccepted ); + } Network.hookPacket( PACKET.AC.REFUSE_LOGIN, onConnectionRefused ); Network.hookPacket( PACKET.AC.REFUSE_LOGIN_R2, onConnectionRefused ); Network.hookPacket( PACKET.SC.NOTIFY_BAN, onServerClosed ); - } + + } /** diff --git a/src/Engine/MapEngine/Item.js b/src/Engine/MapEngine/Item.js index a2b32c1..c261a68 100644 --- a/src/Engine/MapEngine/Item.js +++ b/src/Engine/MapEngine/Item.js @@ -353,6 +353,7 @@ define(function( require ) Network.hookPacket( PACKET.ZC.ITEM_PICKUP_ACK2, onItemPickAnswer ); Network.hookPacket( PACKET.ZC.ITEM_PICKUP_ACK3, onItemPickAnswer ); Network.hookPacket( PACKET.ZC.ITEM_PICKUP_ACK5, onItemPickAnswer ); + Network.hookPacket( PACKET.ZC.ITEM_PICKUP_ACK6, onItemPickAnswer ); Network.hookPacket( PACKET.ZC.ITEM_THROW_ACK, onIventoryRemoveItem ); Network.hookPacket( PACKET.ZC.NORMAL_ITEMLIST, onInventorySetList ); Network.hookPacket( PACKET.ZC.NORMAL_ITEMLIST2, onInventorySetList ); @@ -362,6 +363,7 @@ define(function( require ) Network.hookPacket( PACKET.ZC.EQUIPMENT_ITEMLIST2, onInventorySetList ); Network.hookPacket( PACKET.ZC.EQUIPMENT_ITEMLIST3, onInventorySetList ); Network.hookPacket( PACKET.ZC.EQUIPMENT_ITEMLIST4, onInventorySetList ); + Network.hookPacket( PACKET.ZC.EQUIPMENT_ITEMLIST6, onInventorySetList ); Network.hookPacket( PACKET.ZC.REQ_TAKEOFF_EQUIP_ACK, onEquipementTakeOff ); Network.hookPacket( PACKET.ZC.REQ_TAKEOFF_EQUIP_ACK2, onEquipementTakeOff ); Network.hookPacket( PACKET.ZC.ACK_TAKEOFF_EQUIP_V5, onEquipementTakeOff ); diff --git a/src/Network/PacketCrypt.js b/src/Network/PacketCrypt.js index 1e9fda4..b4c8c1a 100644 --- a/src/Network/PacketCrypt.js +++ b/src/Network/PacketCrypt.js @@ -97,7 +97,9 @@ define(['Core/Configs'], function( Configs ) 20140416: [0x04810281,0x42814281,0x42814281], 20141016: [0x2DFF467C,0x444B37EE,0x2C1B634F], 20141022: [0x290551EA,0x2B952C75,0x2D67669B], - 20150513: [0x62C86D09,0x75944F17,0x112C133D] + 20150513: [0x62C86D09,0x75944F17,0x112C133D], + 20150422: [0x10D22CE2,0x69E279E2,0x79E279E2], + 20170517: [0x2CC4749A,0x1FA954DC,0x72276857] }; diff --git a/src/Network/PacketRegister.js b/src/Network/PacketRegister.js index 6a58289..ccd7b49 100644 --- a/src/Network/PacketRegister.js +++ b/src/Network/PacketRegister.js @@ -566,6 +566,14 @@ define( ['./PacketStructure' ], function( PACKET ) //0x9d5: npcmarketopenType //0x9d7: npcmarketresultackType 0xa00: PACKET.ZC.SHORTCUT_KEY_LIST_V3, // ok + 0xa07: PACKET.ZC.ACK_REMOVE_RODEX_ITEM, + 0xa09: PACKET.ZC.ADD_EXCHANGE_ITEM3, + 0xa0a: PACKET.ZC.ADD_ITEM_TO_STORE3, + 0xa0b: PACKET.ZC.ADD_ITEM_TO_CART3, + 0xa0c: PACKET.ZC.ITEM_PICKUP_ACK6, + 0xa0d: PACKET.ZC.EQUIPMENT_ITEMLIST6, 0xa18: PACKET.ZC.ACCEPT_ENTER3, // ok + + 0xac4: PACKET.AC.ACCEPT_LOGIN3 }; }); \ No newline at end of file diff --git a/src/Network/PacketStructure.js b/src/Network/PacketStructure.js index 554381f..f2c2de6 100644 --- a/src/Network/PacketStructure.js +++ b/src/Network/PacketStructure.js @@ -7459,7 +7459,7 @@ define(['Utils/BinaryWriter', './PacketVerManager'], function(BinaryWriter, PACK for (i = 0; i < count; ++i) { out[i] = {}; out[i].GID = fp.readULong(); - out[i].szExpireDate = fp.readBinaryString(20); + out[i].szExpireDate = fp.readBinaryString(20); } return out; })(); @@ -10723,6 +10723,7 @@ define(['Utils/BinaryWriter', './PacketVerManager'], function(BinaryWriter, PACK out[i].index = fp.readShort(); out[i].ITID = fp.readUShort(); out[i].type = fp.readUChar(); + out[i].count = fp.readShort(); out[i].WearState = fp.readULong(); out[i].slot = {}; @@ -10994,8 +10995,11 @@ define(['Utils/BinaryWriter', './PacketVerManager'], function(BinaryWriter, PACK // 0x9a0 PACKET.HC.CHARLIST_NOTIFY = function PACKET_HC_CHARLIST_NOTIFY(fp, end) { this.TotalCnt = fp.readLong(); + if (PACKETVER.value >= 20151001) { + this.charSlots = fp.readLong(); + } }; - PACKET.HC.CHARLIST_NOTIFY.size = 6; + PACKET.HC.CHARLIST_NOTIFY.size = (PACKETVER.value >= 20151001 ? 10 : 6); // 0x9ca @@ -11274,6 +11278,178 @@ define(['Utils/BinaryWriter', './PacketVerManager'], function(BinaryWriter, PACK PACKET.ZC.SHORTCUT_KEY_LIST_V3.size = 269; + // 0xa07 + PACKET.ZC.ACK_REMOVE_RODEX_ITEM = function PACKET_ZC_ACK_REMOVE_RODEX_ITEM(fp, end) { + this.success = fp.readChar(); + this.index = fp.readUShort(); + this.amount = fp.readUShort(); + this.weight_ = fp.readShort(); + }; + PACKET.ZC.ACK_REMOVE_RODEX_ITEM.size = 9; + + + // 0xa08 + PACKET.CZ.REQ_OPEN_WRITE_RODEX = function PACKET_CA_LOGIN() { + this.receiver = ''; + }; + PACKET.CZ.REQ_OPEN_WRITE_RODEX.prototype.build = function() { + var pkt_len = 2 + 24; + var pkt_buf = new BinaryWriter(pkt_len); + + pkt_buf.writeShort(0x64); + pkt_buf.writeString(this.receiver); + return pkt_buf; + }; + + + // 0xa09 + PACKET.ZC.ADD_EXCHANGE_ITEM3 = function PACKET_ZC_ADD_EXCHANGE_ITEM3(fp, end) { + this.ITID = fp.readUShort(); + this.type = fp.readUChar(); + this.count = fp.readLong(); + this.IsIdentified = fp.readUChar(); + this.IsDamaged = fp.readUChar(); + this.RefiningLevel = fp.readUChar(); + this.slot = {}; + this.slot.card1 = fp.readUShort(); + this.slot.card2 = fp.readUShort(); + this.slot.card3 = fp.readUShort(); + this.slot.card4 = fp.readUShort(); + + this.randomOptions = [] + for (var i = 0; i < 5; i++) { + this.randomOptions[i] = {} + this.randomOptions[i].optIndex = fp.readShort(); + this.randomOptions[i].value = fp.readShort(); + this.randomOptions[i].param = fp.readChar(); + } + }; + PACKET.ZC.ADD_EXCHANGE_ITEM3.size = 45; + + + // 0xa0a + PACKET.ZC.ADD_ITEM_TO_STORE3 = function PACKET_ZC_ADD_ITEM_TO_STORE3(fp, end) { + this.index = fp.readShort(); + this.count = fp.readLong(); + this.ITID = fp.readUShort(); + this.type = fp.readUChar(); + this.IsIdentified = fp.readUChar(); + this.IsDamaged = fp.readUChar(); + this.RefiningLevel = fp.readUChar(); + this.slot = {}; + this.slot.card1 = fp.readUShort(); + this.slot.card2 = fp.readUShort(); + this.slot.card3 = fp.readUShort(); + this.slot.card4 = fp.readUShort(); + + this.randomOptions = [] + for (var i = 0; i < 5; i++) { + this.randomOptions[i] = {} + this.randomOptions[i].optIndex = fp.readShort(); + this.randomOptions[i].value = fp.readShort(); + this.randomOptions[i].param = fp.readChar(); + } + }; + PACKET.ZC.ADD_ITEM_TO_STORE3.size = 47; + + + // 0xa0b + PACKET.ZC.ADD_ITEM_TO_CART3 = function PACKET_ZC_ADD_ITEM_TO_CART3(fp, end) { + this.index = fp.readShort(); + this.count = fp.readLong(); + this.ITID = fp.readUShort(); + this.type = fp.readUChar(); + this.IsIdentified = fp.readUChar(); + this.IsDamaged = fp.readUChar(); + this.RefiningLevel = fp.readUChar(); + this.slot = {}; + this.slot.card1 = fp.readUShort(); + this.slot.card2 = fp.readUShort(); + this.slot.card3 = fp.readUShort(); + this.slot.card4 = fp.readUShort(); + + this.randomOptions = [] + for (var i = 0; i < 5; i++) { + this.randomOptions[i] = {} + this.randomOptions[i].optIndex = fp.readShort(); + this.randomOptions[i].value = fp.readShort(); + this.randomOptions[i].param = fp.readChar(); + } + }; + PACKET.ZC.ADD_ITEM_TO_CART2.size = 47; + + + // 0xa0c + PACKET.ZC.ITEM_PICKUP_ACK6 = function PACKET_ZC_ITEM_PICKUP_ACK6(fp, end) { + this.index = fp.readUShort(); + this.count = fp.readUShort(); + this.ITID = fp.readUShort(); + this.IsIdentified = fp.readUChar(); + this.IsDamaged = fp.readUChar(); + this.RefiningLevel = fp.readUChar(); + this.slot = {}; + this.slot.card1 = fp.readUShort(); + this.slot.card2 = fp.readUShort(); + this.slot.card3 = fp.readUShort(); + this.slot.card4 = fp.readUShort(); + this.location = fp.readLong(); + this.type = fp.readUChar(); + this.result = fp.readUChar(); + this.HireExpireDate = fp.readLong(); + + this.randomOptions = [] + for (var i = 0; i < 5; i++) { + this.randomOptions[i] = {} + this.randomOptions[i].optIndex = fp.readShort(); + this.randomOptions[i].value = fp.readShort(); + this.randomOptions[i].param = fp.readChar(); + } + }; + PACKET.ZC.ITEM_PICKUP_ACK6.size = 56; + + + // 0xa0d + PACKET.ZC.EQUIPMENT_ITEMLIST6 = function PACKET_ZC_EQUIPMENT_ITEMLIST6(fp, end) { + this.ItemInfo = (function() { + var i, count = (end - fp.tell()) / 57 | 0, + out = new Array(count); + var flag; + for (i = 0; i < count; ++i) { + out[i] = {}; + out[i].index = fp.readShort(); + out[i].ITID = fp.readUShort(); + out[i].type = fp.readUChar(); + + out[i].location = fp.readULong(); + out[i].WearState = fp.readULong(); + out[i].RefiningLevel = fp.readUChar(); + out[i].slot = {}; + out[i].slot.card1 = fp.readUShort(); + out[i].slot.card2 = fp.readUShort(); + out[i].slot.card3 = fp.readUShort(); + out[i].slot.card4 = fp.readUShort(); + out[i].HireExpireDate = fp.readLong(); + out[i].bindOnEquipType = fp.readUShort(); + out[i].wItemSpriteNumber = fp.readUShort(); + out[i].nRandomOptionCnt = fp.readChar(); + out[i].option = []; + for (var j = 0; j < 5; j++) { + out[i].option[j] = {}; + out[i].option[j].optIndex = fp.readUShort(); + out[i].option[j].value = fp.readShort(); + out[i].option[j].param = fp.readChar(); + } + flag = fp.readUChar(); + out[i].IsIdentified = flag & 1; + out[i].IsDamaged = flag & 2; + out[i].PlaceETCTab = flag & 4; + } + return out; + })(); + }; + PACKET.ZC.EQUIPMENT_ITEMLIST6.size = -1; + + // 0xa18 PACKET.ZC.ACCEPT_ENTER3 = function PACKET_ZC_ACCEPT_ENTER3(fp, end) { this.startTime = fp.readULong(); @@ -11286,6 +11462,48 @@ define(['Utils/BinaryWriter', './PacketVerManager'], function(BinaryWriter, PACK PACKET.ZC.ACCEPT_ENTER3.size = 14; + // 0xac4 + PACKET.AC.ACCEPT_LOGIN3 = function PACKET_AC_ACCEPT_LOGIN3(fp, end) { + this.AuthCode = fp.readLong(); + this.AID = fp.readULong(); + this.userLevel = fp.readULong(); + this.lastLoginIP = fp.readULong(); + this.lastLoginTime = fp.readBinaryString(26); + this.Sex = fp.readUChar(); + this.unknown = fp.readBinaryString(17); + this.ServerList = (function() { + var i, count=(end-fp.tell())/160|0, out=new Array(count); + for (i = 0; i < count; ++i) { + out[i] = {}; + out[i].ip = fp.readULong(); + out[i].port = fp.readUShort(); + out[i].name = fp.readString(20); + out[i].usercount = fp.readUShort(); + out[i].state = fp.readUShort(); + out[i].property = fp.readUShort(); + out[i].unknown = fp.readBinaryString(128); + } + return out; + })(); + }; + PACKET.AC.ACCEPT_LOGIN3.size = -1; + + + // 0xa3b + PACKET.ZC.HAT_EFFECT = function PACKET_ZC_HAT_EFFECT(fp, end) { + this.GID = fp.readULong(); + this.enabled = fp.readChar(); + this.hatEffectIDs = (function() { + var i, count=(end-fp.tell())/2|0, out=new Array(count); + for (i = 0; i < count; ++i) { + out[i] = fp.readShort(); // #FixMe: Can also be send as single packet, which sends the effectId as Long... + } + return out; + })(); + }; + PACKET.ZC.HAT_EFFECT = -1; + + /** * Export */ diff --git a/src/Network/PacketVerManager.js b/src/Network/PacketVerManager.js index f4ed37b..5431060 100644 --- a/src/Network/PacketVerManager.js +++ b/src/Network/PacketVerManager.js @@ -144,6 +144,8 @@ define(['Core/Configs'], function( Configs ) } for (i = 0, count = length / blockSize; i < count; ++i) { + + console.log(_value); out[i] = {}; out[i].GID = fp.readULong(); out[i].exp = fp.readLong(); @@ -157,13 +159,8 @@ define(['Core/Configs'], function( Configs ) out[i].honor = fp.readLong(); out[i].jobpoint = fp.readShort(); - if (blockSize < 112) { - out[i].hp = fp.readShort(); - out[i].maxhp = fp.readShort(); - } else { - out[i].hp = fp.readLong(); - out[i].maxhp = fp.readLong(); - } + out[i].hp = fp.readLong(); + out[i].maxhp = fp.readLong(); out[i].sp = fp.readShort(); out[i].maxsp = fp.readShort(); @@ -171,7 +168,7 @@ define(['Core/Configs'], function( Configs ) out[i].job = fp.readShort(); out[i].head = fp.readShort(); - if (blockSize >= 147) { + if (_value >= 20141022) { out[i].body = fp.readShort(); } @@ -192,45 +189,32 @@ define(['Core/Configs'], function( Configs ) out[i].Dex = fp.readUChar(); out[i].Luk = fp.readUChar(); - if (blockSize < 108) { - out[i].CharNum = fp.readUShort(); - } - else if (blockSize < 124) { - out[i].CharNum = fp.readUShort(); - out[i].haircolor = fp.readUShort(); - } - else { - out[i].CharNum = fp.readUChar(); - out[i].haircolor = fp.readUChar(); - } - - if (blockSize === 116) { - fp.seek(0x04, SEEK_CUR); // unknown - } - - if (blockSize >= 124) { - out[i].bIsChangedCharName = fp.readShort(); - out[i].lastMap = fp.readBinaryString(blockSize === 124 ? 12 : 16); - } - - if (blockSize >= 132) { - out[i].DeleteDate = fp.readLong(); - } + out[i].CharNum = fp.readUShort(); + out[i].bIsChangedCharName = fp.readShort(); - if (blockSize >= 136) { - out[i].Robe = fp.readLong(); + if (_value >= 20100720 && _value <= 20100727 + || _value >= 20100803) { + out[i].lastMap = fp.readString(16); } - if (blockSize >= 140) { - out[i].SlotAddon = fp.readLong(); + if (_value >= 20100803) { + out[i].deleteDate = fp.readLong(); } - if (blockSize >= 144) { - out[i].RenameAddon = fp.readLong(); + if (_value >= 20110111) { + out[i].robe = fp.readLong(); } - if (blockSize >= 145) { - out[i].sex = fp.readUChar(); + if (_value !== 20111116) { + if (_value >= 20110928) { + out[i].SlotAddon = fp.readLong(); + } + if (_value >= 20111025) { + out[i].RenameAddon = fp.readLong(); + } + if (_value >= 20141016) { + out[i].sex = fp.readUChar(); + } } } diff --git a/src/Network/PacketVersions.js b/src/Network/PacketVersions.js index e935bfc..3dfc020 100644 --- a/src/Network/PacketVersions.js +++ b/src/Network/PacketVersions.js @@ -29,6 +29,7 @@ define( ['./PacketStructure'], function( PACKET ) [PACKET.CZ.ITEM_THROW,0x00a2,6,2,4], [PACKET.CZ.USE_ITEM,0x00a7,8,2,4], [PACKET.CZ.REQ_WEAR_EQUIP,0x00a9,6,2,4], + [PACKET.CZ.REQ_TAKEOFF_EQUIP,0x00ab,4,2], [PACKET.CZ.MOVE_ITEM_FROM_BODY_TO_STORE,0x00f3,8,2,4], [PACKET.CZ.MOVE_ITEM_FROM_STORE_TO_BODY,0x00f5,8,2,4], [PACKET.CZ.CLOSE_STORE,0x00f7,2,0], @@ -1308,6 +1309,7 @@ define( ['./PacketStructure'], function( PACKET ) [PACKET.CZ.ADD_FRIENDS,0x07E4,26,2], [PACKET.CZ.COMMAND_MER,0x0934,5,2,4], [PACKET.CZ.ACK_STORE_PASSWORD,0x095e,36,0], + // [PACKET.CZ.REQ_OPEN_WRITE_RODEX,0x0a08,5,2], ], @@ -1424,6 +1426,36 @@ define( ['./PacketStructure'], function( PACKET ) [PACKET.CZ.ACK_STORE_PASSWORD,0x0438,36,0], ], + // 2015-04-22aRagexeRE + 20150422: [ + [PACKET.CZ.CHANGE_DIRECTION,0x0202,5,2,4], + [PACKET.CZ.ENTER,0x022d,19,2,6,10,14,18], + [PACKET.CZ.ACK_REQ_ADD_FRIENDS,0x023b,26,2], + [PACKET.CZ.ITEMLISTWIN_RES,0x0281,-1,2,4,8], + [PACKET.CZ.REQUEST_TIME,0x035f,6,2], + [PACKET.CZ.REQ_CLICK_TO_BUYING_STORE,0x0360,6,2], + [PACKET.CZ.COMMAND_MER,0x0361,5,2,4], + [PACKET.CZ.ITEM_THROW,0x362,6,2,4], + [PACKET.CZ.MOVE_ITEM_FROM_STORE_TO_BODY,0x0364,8,2,4], + [PACKET.CZ.PARTY_BOOKING_REQ_REGISTER,0x0365,18,2,4], + [PACKET.CZ.USE_SKILL_TOGROUNDMoreInfo,0x366,90,2,4,6,8,10], + [PACKET.CZ.REQNAME_BYGID,0x368,6,2], + [PACKET.CZ.REQUEST_ACT,0x0369,7,2,6], + [PACKET.CZ.REQUEST_MOVE,0x0437,5,2], + [PACKET.CZ.USE_SKILL_TOGROUND,0x0438,10,2,4,6,8], + [PACKET.CZ.ITEM_PICKUP,0x07e4,6,2], + [PACKET.CZ.MOVE_ITEM_FROM_BODY_TO_STORE,0x07ec,8,2,4], + [PACKET.CZ.PARTY_JOIN_REQ,0x0802,26,2], + [PACKET.CZ.REQ_TRADE_BUYING_STORE,0x0811,-1,2,4,8,12], + [PACKET.CZ.REQ_OPEN_BUYING_STORE,0x0815,-1,2,4,8,9,89], + [PACKET.CZ.REQ_CLOSE_BUYING_STORE,0x0817,2,0], + [PACKET.CZ.SEARCH_STORE_INFO,0x0819,-1,2,4,5,9,13,14,15], + [PACKET.CZ.SEARCH_STORE_INFO_NEXT_PAGE,0x0835,2,0], + [PACKET.CZ.SSILIST_ITEM_CLICK,0x0838,12,2,6,10], + [PACKET.CZ.USE_SKILL,0x083c,10,2,4,6], + [PACKET.CZ.ACK_STORE_PASSWORD,0x0995,36,0], + [PACKET.CZ.REQNAME,0x096a,6,2], + ], // 2015-05-13aRagexe 20150513: [ @@ -1448,5 +1480,6 @@ define( ['./PacketStructure'], function( PACKET ) // packet(0x09e8,11); //CZ_OPEN_MAILBOX // packet(0x0a2e,6); //TITLE ], + }; }); diff --git a/src/UI/Components/BasicInfo/BasicInfo.js b/src/UI/Components/BasicInfo/BasicInfo.js index 301e0c3..aa73fe9 100644 --- a/src/UI/Components/BasicInfo/BasicInfo.js +++ b/src/UI/Components/BasicInfo/BasicInfo.js @@ -231,7 +231,7 @@ define(function(require) * @param {number} val1 * @param {number} val2 (optional) */ - BasicInfo.update = function ipdate( type, val1, val2 ) + BasicInfo.update = function update( type, val1, val2 ) { switch (type) { case 'name': diff --git a/src/UI/Components/ItemInfo/ItemInfo.css b/src/UI/Components/ItemInfo/ItemInfo.css index 85fb8a4..4f2ee88 100644 --- a/src/UI/Components/ItemInfo/ItemInfo.css +++ b/src/UI/Components/ItemInfo/ItemInfo.css @@ -1,10 +1,11 @@ .ItemInfo { position:absolute; top:0px; left:0px; width:280px; background-repeat:no-repeat; background-color:transparent; } -.ItemInfo .container { height:120px; position:relative; } +.ItemInfo .container { height:120px; position:relative; box-shadow: white 0px 0px 0px 3px inset, rgb(192, 192, 192) 0px 0px 0px 4px inset; background-repeat: no-repeat; background-color: white; border-radius: 10px; } .ItemInfo .view { position:absolute; width:42px; height:20px; background-repeat:no-repeat; background-color:transparent; border:none; top:6px; left:6px; } .ItemInfo .collection { position:absolute; top:11px; left:10px; width:75px; height:100px; background-repeat:no-repeat; background-color:transparent; } .ItemInfo .title { position:absolute; top:3px; left:86px; width:185px; height:14px; padding-left:4px; padding-top:6px; font-size:12px; text-shadow:1px 1px 0px white; white-space:nowrap; } .ItemInfo .close { position:absolute; top:3px; right:3px; width:11px; height:11px; display:block; background-repeat:no-repeat; background-color:transparent; border:none; } .ItemInfo .description { position:absolute; top:35px; left:100px; line-height:18px; width:170px; height:75px; overflow-y:auto;} +.ItemInfo .description .description-inner { width: 150px } .ItemInfo .extend { position:absolute; right:4px; bottom:3px; width:13px; height:13px; border:none; background-repeat:no-repeat; background-color:transparent; } .ItemInfo .cardlist { border-radius:5px; background:white; padding:2px; margin-top:3px; } diff --git a/src/UI/Components/ItemInfo/ItemInfo.html b/src/UI/Components/ItemInfo/ItemInfo.html index bffd62d..c58c981 100644 --- a/src/UI/Components/ItemInfo/ItemInfo.html +++ b/src/UI/Components/ItemInfo/ItemInfo.html @@ -1,11 +1,15 @@ -