Jump to content

Recommended Posts

Posted

 

As I said before, there is no need for equip part, since it's already there, few lines below :P

            if (item.isEquipable())
            {
                if (newChar.getActiveWeaponItem() == null || !(item.getItem().getType2() != Item.TYPE2_WEAPON))
                    newChar.getInventory().equipItemAndRecord(item);
            }

 

its not same at all 

(item,getItem().getType2() != Item,TYPE2_weapon)

 

 

(helm,getItem().getType2() != Item,TYPE2_HEAD)...

(chest,getItem().getType2() != Item,TYPE2_EHEST)...

etc....

Posted

its not same at all 

(item,getItem().getType2() != Item,TYPE2_weapon)

 

 

(helm,getItem().getType2() != Item,TYPE2_HEAD)...

(chest,getItem().getType2() != Item,TYPE2_EHEST)...

etc....

This is an example, and sweets tell you that there is already there.

Does not need to put lines for equip items.

If I understood correctly because English is not my forte. :P

Posted

Well...from what i remember there is already a table in database to config this things by classId/itemid, its similar, but don't automatic equip the items on creation

 

Just a question, this one, equip the items when the char enter in the world or already equip in the lobby room?

Too much configs is a bit complex, maybe you can do 2 versions of this

A basic one
+By Fighter/Mage Class

And a complex one with a lot of configs
+For All
+By Fighter/Mage Class

+By Race

+By Specific Class Id

And a tip, try to use arrays/maps like the others said,
If you don't know what this means, just do a little search and make some tutorials

You can simplify this code with a for loop and switch/cases based on a built array

My english is not my "forte" too so i hope you understand, i'm just trying to be nice :)

 

Posted (edited)

Well...from what i remember there is already a table in database to config this things by classId/itemid, its similar, but don't automatic equip the items on creation

 

Yes, there is actually and it's auto equipping - at least on aCis.. So, basically this share is kinda useless :)

 

But still a good practice for the author.

Edited by SweeTs
  • 2 weeks later...
Posted
<?xml version="1.0" encoding="UTF-8"?>
<list>
    <template race="-1" classId="-1">
        <equipment slot="rhand" item="12345"/>
        <equipment slot="lhand" item="12345"/>
        <inventory>
            <item id="1234" count="12313" />
            <item id="567" count="2222" />
        </inventory>
        <shortCut slot="1" page="1" type="1" id="5555" level="-1" charType="1">
    </template>
</list>

Is possible to change code to: When player success his 3rd class get his class items? Soultaker for example am,dc .. ?

Posted

 

<?xml version="1.0" encoding="UTF-8"?>
<list>
    <template race="-1" classId="-1">
        <equipment slot="rhand" item="12345"/>
        <equipment slot="lhand" item="12345"/>
        <inventory>
            <item id="1234" count="12313" />
            <item id="567" count="2222" />
        </inventory>
        <shortCut slot="1" page="1" type="1" id="5555" level="-1" charType="1">
    </template>
</list>

Is possible to change code to: When player success his 3rd class get his class items? Soultaker for example am,dc .. ?

 

This XML was an example and it's related to the character creation. You should edit the quest (Saga of the Soultaker in your case) or add them as a reward if you use the custom class master.

  • 1 month later...
Posted

I separated the class put even when one activates the two are receiving the items

 

# Human Fighter
EnableHumanFighterReward = True
HumanFighterHelmID = 43
HumanFighterChestID = 23
HumanFighterLegsID = 2386
HumanFighterBootsID = 39
HumanFighterGlovesID = 49
HumanFighterWeaponID = 2
# Human Mage
EnableHumanMageReward = False
HumanMageHelmID = 43
HumanMageChestID = 1101
HumanMageLegsID = 1104
HumanMageBootsID = 39
HumanMageGlovesID = 49
HumanMageWeaponID = 6

 

 

public static boolean ENABLE_HUMAN_FIGHTER_REWARD;
public static boolean ENABLE_HUMAN_MAGE_REWARD;

 

 

public static int HUMAN_M_HELM_ID;
public static int HUMAN_M_CHEST_ID;
 public static int HUMAN_M_LEGS_ID;
 public static int HUMAN_M_BOOTS_ID;
 public static int HUMAN_M_GLOVES_ID;
 public static int HUMAN_M_WEAPON_ID;
 public static int HUMAN_F_HELM_ID;
 public static int HUMAN_F_CHEST_ID;
 public static int HUMAN_F_LEGS_ID;
 public static int HUMAN_F_BOOTS_ID;
 public static int HUMAN_F_GLOVES_ID;
 public static int HUMAN_F_WEAPON_ID;

 

 

if (Config.ENABLE_HUMAN_MAGE_REWARD)
               {
                       if (newChar.getRace() == Race.Human || newChar.isMageClass())
                       {
                               final L2ItemInstance Helm = newChar.getInventory().addItem("Init", Config.HUMAN_M_HELM_ID, 1, newChar, null);
                               if (Helm.isEquipable())
                                       if (newChar.getActiveWeaponItem() == null || !(Helm.getItem().getType2() != L2Item.SLOT_HEAD))
                                               newChar.getInventory().equipItemAndRecord(Helm);
                               final L2ItemInstance Chest = newChar.getInventory().addItem("Init", Config.HUMAN_M_CHEST_ID, 1, newChar, null);
                               if (Chest.isEquipable())
                                       if (newChar.getActiveWeaponItem() == null || !(Chest.getItem().getType2() != L2Item.SLOT_CHEST))
                                               newChar.getInventory().equipItemAndRecord(Chest);
                               final L2ItemInstance Legs = newChar.getInventory().addItem("Init", Config.HUMAN_M_LEGS_ID, 1, newChar, null);
                               if (Legs.isEquipable())
                                       if (newChar.getActiveWeaponItem() == null || !(Legs.getItem().getType2() != L2Item.SLOT_LEGS))
                                               newChar.getInventory().equipItemAndRecord(Legs);
                               final L2ItemInstance Boots = newChar.getInventory().addItem("Init", Config.HUMAN_M_BOOTS_ID, 1, newChar, null);
                               if (Boots.isEquipable())
                                       if (newChar.getActiveWeaponItem() == null || !(Boots.getItem().getType2() != L2Item.SLOT_FEET))
                                               newChar.getInventory().equipItemAndRecord(Boots);
                               final L2ItemInstance Gloves = newChar.getInventory().addItem("Init", Config.HUMAN_M_GLOVES_ID, 1, newChar, null);
                              if (Gloves.isEquipable())
                                       if (newChar.getActiveWeaponItem() == null || !(Gloves.getItem().getType2() != L2Item.SLOT_GLOVES))
                                               newChar.getInventory().equipItemAndRecord(Gloves);
                               final L2ItemInstance Weap = newChar.getInventory().addItem("Init", Config.HUMAN_M_WEAPON_ID, 1, newChar, null);
                               if (Weap.isEquipable())
                                       if (newChar.getActiveWeaponItem() == null || !(Weap.getItem().getType2() != L2Item.TYPE2_WEAPON))
                                               newChar.getInventory().equipItemAndRecord(Weap);
                       }
                }       
                
        if (Config.ENABLE_HUMAN_FIGHTER_REWARD)
            {
                       if (newChar.getRace() == Race.Human)
                       {
                               final L2ItemInstance Helm = newChar.getInventory().addItem("Init", Config.HUMAN_F_HELM_ID, 1, newChar, null);
                               if (Helm.isEquipable())
                                       if (newChar.getActiveWeaponItem() == null || !(Helm.getItem().getType2() != L2Item.SLOT_HEAD))
                                               newChar.getInventory().equipItemAndRecord(Helm);
                               final L2ItemInstance Chest = newChar.getInventory().addItem("Init", Config.HUMAN_F_CHEST_ID, 1, newChar, null);
                               if (Chest.isEquipable())
                                       if (newChar.getActiveWeaponItem() == null || !(Chest.getItem().getType2() != L2Item.SLOT_CHEST))
                                               newChar.getInventory().equipItemAndRecord(Chest);
                               final L2ItemInstance Legs = newChar.getInventory().addItem("Init", Config.HUMAN_F_LEGS_ID, 1, newChar, null);
                               if (Legs.isEquipable())
                                       if (newChar.getActiveWeaponItem() == null || !(Legs.getItem().getType2() != L2Item.SLOT_LEGS))
                                               newChar.getInventory().equipItemAndRecord(Legs);
                               final L2ItemInstance Boots = newChar.getInventory().addItem("Init", Config.HUMAN_F_BOOTS_ID, 1, newChar, null);
                               if (Boots.isEquipable())
                                       if (newChar.getActiveWeaponItem() == null || !(Boots.getItem().getType2() != L2Item.SLOT_FEET))
                                               newChar.getInventory().equipItemAndRecord(Boots);
                               final L2ItemInstance Gloves = newChar.getInventory().addItem("Init", Config.HUMAN_F_GLOVES_ID, 1, newChar, null);
                               if (Gloves.isEquipable())
                                       if (newChar.getActiveWeaponItem() == null || !(Gloves.getItem().getType2() != L2Item.SLOT_GLOVES))
                                               newChar.getInventory().equipItemAndRecord(Gloves);
                               final L2ItemInstance Weap = newChar.getInventory().addItem("Init", Config.HUMAN_F_WEAPON_ID, 1, newChar, null);
                               if (Weap.isEquipable())
                                       if (newChar.getActiveWeaponItem() == null || !(Weap.getItem().getType2() != L2Item.TYPE2_WEAPON))
                                               newChar.getInventory().equipItemAndRecord(Weap);
                       }
            }

 

activated the fight but the magician is receiving also because it will be?

Posted (edited)
if (newChar.getRace() == Race.Human || newChar.isMageClass())

==>

if (newChar.getRace() == Race.Human && newChar.isMageClass())

It's kinda racist, free items only for humans :troll:

Edited by SweeTs
Posted
if (newChar.getRace() == Race.Human || newChar.isMageClass())

==>

if (newChar.getRace() == Race.Human && newChar.isMageClass())

It's kinda racist, free items only for humans :troll:

 

 

put so but the wizard still getting the items fighter

 

if (newChar.getRace() == Race.Human && newChar.isMageClass())
Posted (edited)

Bcs the fighter check is ONLY about race.. You can add && !newChar.isMageClass()

Edited by SweeTs
Posted (edited)

Bcs the fighter check is ONLY about race.. You can add && !newChar.isMageClass()

 

forgot to say that I'm adapting to H5

 

got worse I see thus enabling

# Human Fighter
# Default: False
EnableHumanFighterReward = False
HumanFighterHelmID = 43
HumanFighterChestID = 23
HumanFighterLegsID = 2386
HumanFighterBootsID = 39
HumanFighterGlovesID = 49
HumanFighterWeaponID = 2
# Human Mage
# Default: False
EnableHumanMageReward = True
HumanMageHelmID = 43
HumanMageChestID = 1101
HumanMageLegsID = 1104
HumanMageBootsID = 39
HumanMageGlovesID = 49
HumanMageWeaponID = 6

put to the wizard and get the fight not only in the fight game received the items of the two and the magician not received anything

if (newChar.getRace() == Race.Human && !newChar.isMageClass())
Edited by nery
Posted (edited)

Maybe you do not understand where you have to put " && !newChar.isMageClass() "

 

For mage:

if (Config.ENABLE_HUMAN_MAGE_REWARD)
               {
                       if (newChar.getRace() == Race.Human && newChar.isMageClass())
                       {

For fighter

        if (Config.ENABLE_HUMAN_FIGHTER_REWARD)
            {
                       if (newChar.getRace() == Race.Human && !newChar.isMageClass())
Edited by 'Baggos'

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.




  • Posts

    • hello everyone! I am wanting to save the files (Ini. - Data - ) of the EP5 Client: Salvation... But they generate the error "corrupt files"... I tried several versions of L2FileEditor without good results. I need help! Thank you!
    • Opening December 6th at 19:00 (GMT +3)! Open Beta Test from November 30th!   https://l2soe.com/   🌟 Introducing L2 Saga of Eternia: A Revolution in Lineage 2 High Five! 🌟   Dear Lineage 2 enthusiasts, Prepare to witness the future of private servers! L2 Saga of Eternia is not just another High Five project—it’s a game-changing experience designed to compete with the giants of the Lineage 2 private server scene. Built for the community, by the community, we’re here to raise the bar in quality, innovation, and longevity. What Sets Us Apart? 💎 No Wipes, Ever Say goodbye to the fear of losing your progress. Our server is built to last and will never close. Stability and consistency are our promises to you. ⚔️ Weekly New Content Our dedicated development team ensures fresh challenges, events, and updates every week. From custom quests to exclusive features, there will always be something exciting to explore. 💰 No Pay-to-Win Skill and strategy matter most here. Enjoy a balanced gameplay environment where your achievements come from effort, not your wallet. 🌍 A Massive Community With 2000+ players expected, join a vibrant and active community of like-minded adventurers ready to conquer the world of Aden. 🏆 Fair and Competitive Gameplay Our systems are designed to promote healthy competition while avoiding abusive mechanics and exploits. 🔧 Professional Development From advanced bug fixes to carefully curated content, we pride ourselves on smooth performance, no lag, and unparalleled server quality. Key Features Chronicle: High Five with unique interface Rate: Dynamic x10 rates Class Balance: Carefully fine-tuned for a fair experience PvP Focused: PvP Ranking & aura display effect for 3 Top PvPers every week Custom Events: Seasonal and permanent events to keep you engaged Additional Features:   Custom Endgame Content: Introduce unique dungeons, raids, or zones unavailable in other servers. Player-Driven Economy: Implement a strong market system and avoid overinflated drops or rewards. Epic Siege Battles: Announce special large-scale sieges and PvP events. Incentives for Streamers and Clans: Attract influencers and big clans to boost server publicity. Roadmap Transparency: Share a public roadmap of planned updates to build trust and excitemen   Here you can read all the features: https://l2soe.com/features   Video preview: Join the Revolution! This is your chance to be part of something legendary. L2 Saga of Eternia is not just a server; it’s a movement to redefine what Lineage 2 can be. Whether you’re a seasoned veteran or a newcomer to the world of Aden, we invite you to experience Lineage 2 at its finest.   Official Launch Date: December 6th 2024 Website: https://l2soe.com/ Facebook: https://www.facebook.com/l2soe Discord: https://discord.com/invite/l2eternia   Let’s build the ultimate Lineage 2 experience together. See you in-game! 🎮
    • That's like a tutorial on how to run l2 on MacOS Xd but good job for the investigation. 
    • small update: dc robe set sold   wts adena 1kk = 1.5$ 
    • DISCORD : utchiha_market telegram : https://t.me/utchiha_market SELLIX STORE : https://utchihamkt.mysellix.io/ Join our server for more products : https://discord.gg/hood-services https://campsite.bio/utchihaamkt
  • Topics

×
×
  • Create New...