bauwbas Posted August 30, 2010 Posted August 30, 2010 For example I have this line: addItem("Loot", 8184, 1, this, true); But this line add item to player inventory, what need to change, that this item equip automatically on player? I searched using Cursed Weapons but didin't find anything. Quote
0 B1ggBoss Posted August 30, 2010 Posted August 30, 2010 To find existent pieces of code (like this) you should follow a logic way instead try to search in a place whero you think they are. So lets follow that way: 1) When players wanna equip an item, they use the item , so the server must recive information about what item wanna player equip: Lets look in UseItem from clientpackets 2) Looking at the runImpl method of that packet, and after all restrictions checked, we will find activeChar.useEquippableItem(item, true) where item = the l2iteminstance to equip true = representing a boolean variable, true = stop attacking on equip So, now lets go to L2PcInstance class -> useEquippableItem method 3) If we read what that method does, it equip the item if isnt equiped and unequip it if is equiped. What we want is to always equip it so, lets jump to the conditions checks where the item is equiped and we will find this getInventory().equipItemAndRecord(item); getInventory() will return the PcInventory from the L2PcInstance object using the L2ItemInstance as argument, with equipItemAndRecord we will equip the item in the player Quote
0 ServeSATAN Posted August 30, 2010 Posted August 30, 2010 To find existent pieces of code (like this) you should follow a logic way instead try to search in a place whero you think they are. So lets follow that way: 1) When players wanna equip an item, they use the item , so the server must recive information about what item wanna player equip: Lets look in UseItem from clientpackets 2) Looking at the runImpl method of that packet, and after all restrictions checked, we will find activeChar.useEquippableItem(item, true) where item = the l2iteminstance to equip true = representing a boolean variable, true = stop attacking on equip So, now lets go to L2PcInstance class -> useEquippableItem method 3) If we read what that method does, it equip the item if isnt equiped and unequip it if is equiped. What we want is to always equip it so, lets jump to the conditions checks where the item is equiped and we will find this getInventory().equipItemAndRecord(item); getInventory() will return the PcInventory from the L2PcInstance object using the L2ItemInstance as argument, with equipItemAndRecord we will equip the item in the player wau thanks for this i looking this too Quote
Question
bauwbas
For example I have this line:
addItem("Loot", 8184, 1, this, true);
But this line add item to player inventory, what need to change, that this item equip automatically on player?
I searched using Cursed Weapons but didin't find anything.
2 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.