Jump to content
  • 0

Check Class For Item


Question

Posted (edited)
Hello guys Merry Christmas, maybe someone can help me to create one code, to wearing each class his own tattoo ?

For Example: The Archer can wearing tattoo for archer if worn at dagger to get penalty "low stats" or even better to don't allow to wear.

Thanks in advance!!!

 


qIDhTAC.png


Edited by FunKermaN

14 answers to this question

Recommended Posts

  • 0
Posted (edited)

Useitem.java put a check with item id and classes you want to dissable it..

 

i have write that ... this is correct ?

 

 

if (Config.TATTOO_CHECKER)
{
if (player.getClassId().getId() == 92) //archer
{
if(activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_FACE.getId()) == 8530)
{
setPaperdollItem(PAPERDOLL_FACE, 8530);
}
else
{
setPaperdollItem(PAPERDOLL_FACE, null);
activeChar.sendMessage("That tattoo is not allowed to wearing at your class.");
}
}
else if (player.getClassId().getId() == 93) // dagger
{
if(activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_FACE) == 8531)
{
setPaperdollItem(PAPERDOLL_FACE, 8531);
}
else
{
setPaperdollItem(PAPERDOLL_FACE, null);
activeChar.sendMessage("That tattoo is not allowed to wearing at your class.");
}
}
}
Edited by FunKermaN
  • 0
Posted

My friend, there is a code "Daggers/archers can't use heavy". In your frozen pack on UseItem.java

just stole and modify these lines..

  • 0
Posted (edited)

My friend, there is a code "Daggers/archers can't use heavy". In your frozen pack on UseItem.java

just stole and modify these lines..

 

I have write that but does not work :/ "its a test code"

if (activeChar.getClassId().getId() == 92 && item.getItemType() == L2WeaponType.NONE && item.getItemId() == 15036 && item.getItemId() == 15046 && item.getItemId() != 15056 && !activeChar.isGM())
{
activeChar.sendMessage("That tattoo is not allowed to wearing at your class.");
return;
}
Edited by FunKermaN
  • 0
Posted (edited)

i can help you send me pm

or you can make tattoo give stats only in a wep non all weapon

like this
 

 <add order="0x40" stat="pAtk" val="1737">
        <using kind="Bow"/>
      </add>
Edited by tazerman2
  • 0
Posted (edited)

 

i can help you send me pm

or you can make tattoo give stats only in a wep non all weapon

like this

 

 <add order="0x40" stat="pAtk" val="1737">
        <using kind="Bow"/>
      </add>

 

and how i can prevent with this method the healers to don't use the tattoo for mages  ?

 

 

lul

&& item.getItemType() == L2WeaponType.NONE &&

what ?

 

that method does not work at interlude ?

 

<cond msgId="1518"> <!-- mdgId is showing in client to player why he cant use this item-->
<and>
<player level="81" /> <!-- here you put from what lvl you can use this item-->
<player class_id_restriction="93, 101, 108, 117" /> <!-- Here you put all classes you want to use that item -->
</and>
</cond>
Edited by FunKermaN
  • 0
Posted

hmm here is a problem... so only in useitem.java you can disable via class

but again have problem because you need block 3 class number like the human

fisrt is 0 after is like 20 and after 92 you need block all this. or you can do my option

like if player use dagger and is archer the tattoo he

down stats atk.spd,accurasy,evasion,speed and i think i can make it via class 

  • 0
Posted (edited)

My friend, there is a code "Daggers/archers can't use heavy". In your frozen pack on UseItem.java

just stole and modify these lines..

dont have anything about heavy at useitem.java

 

 

hmm here is a problem... so only in useitem.java you can disable via class

but again have problem because you need block 3 class number like the human

fisrt is 0 after is like 20 and after 92 you need block all this. or you can do my option

like if player use dagger and is archer the tattoo he

down stats atk.spd,accurasy,evasion,speed and i think i can make it via class 

 

 

give me one example! 
i use that at the item and does dont do anything 

<add order="0x40" stat="pAtk" val="1737">
        <using kind="Bow"/>
      </add>

Edited by FunKermaN
  • 0
Posted

 

dont have anything about heavy at useitem.java

 

 

 

give me one example! 
i use that at the item and does dont do anything 

<add order="0x40" stat="pAtk" val="1737">
        <using kind="Bow"/>
      </add>

 

i can help you via teamviewer send me pm if you need

  • 0
Posted (edited)

 

I have write that but does not work :/ "its a test code"

if (activeChar.getClassId().getId() == 92 && item.getItemType() == L2WeaponType.NONE && item.getItemId() == 15036 && item.getItemId() == 15046 && item.getItemId() != 15056 && !activeChar.isGM())
{
activeChar.sendMessage("That tattoo is not allowed to wearing at your class.");
return;
}
item.getItemType() == L2WeaponType.NONE

 got strictly no use (at least use the item type related to dyes - but anyway the limitation will be solved by item id just after) and 

item.getItemId() == 15036 && item.getItemId() == 15046

 is impossible to reach too ; an id can't be one AND another in same time. You lack of basic logic, I invite you to read more about OR/AND.

 

http://stackoverflow.com/questions/1795808/and-and-or-in-if-statements

 

If you got numerous items to edit, the simpliest is to add it directly to L2Item / ItemTable to avoid a fatass check which would include all classes type. If it's based on class type you can also introduce it on classes. On aCis you can check teachTo, which do exactly what you ask (NPC restraining player ids to be able to learn skills, and also numerous classes to be linked to that NPC). The whole logic exists, you only have to copy, edit it for your own stuff and put it on the good classes.

 

If one class == one tatoo, it's even simplier.

 

Or you can make a very long check with all your class ids / item ids integrated inside it.

Edited by Tryskell
Guest
This topic is now closed to further replies.


  • Posts

    • ⭐⭐⭐⭐⭐L2Lusty 50x [Essence - High Five] Start 08 February⭐⭐⭐⭐⭐  L2Lusty Essence - High Five 50x Website: https://l2lusty.online/ Starts on 08/02/2025 16:00 London Time Rates: XP 50X, Adena 20X, Spoil 20X, Drop 20X, Max enchant +16 with 50% normal and 60% blessed, Chaos Event whit 3x Lcoins Drop 24h Website:  https://l2lusty.online/
    • Hi, I inviting you to join L2Einhovant server, lets give them chanse. It's x1 Classic with some bonus futures, no duals box, no wipes, buffs stores and etc. Grow up by litle steps together with the server population.   🔥 Why L2Einhovant? ✅ Authentic Classic Gameplay – No dual box, all classes inportant, no auto farm. ✅ Hardcore x1 Rates – A true test of your gameplay skill, level up stages. ✅ Active Community & Fair Administration – A server built for passionate players. ✅ Long-Term Stability – Grow your character in a world that lasts.   Gather your allies, sharpen your weapons, and prepare for an unforgettable journey. Join to our comunity now and prepare for start.   Open beta: 1th February. Grand opening: 7th February, 20:00 UTC+2.   🔗 Discord: https://discord.gg/zfKd4tU9N2
    • ElmoreLab Harbor - Eternal C1 x1: ✅ https://harbor.elmorelab.com ElmoreLab Harbor - Eternal C1 x1 - is an exclusive server of the Eternal C1 chronicles from the top project ElmoreLab Harbor.   A unique server of its kind, on which everyone will have maximum pleasure, such as oldschool players who dream of nostalgia and to feel the warmest and classic C1 chronicles, as well as experienced players who are tired of thousands unbalanced servers of late chronicles. Due to the professional corrections of the balance system and the HONEST gameplay system - on this server, EVERY player will feel like in their own, warm and cozy Harbor C1. Let's return to the origins of L2 - back to 2004 in C1! ❤️   ⭐ Server characteristics:   STRICTLY 1 window, NO BOXES Bans for RMT and bots/cheats No donations with benefits Unique and high-quality PTS-build from Master Toma Professional corrections and full class-balance Reworked economy and closed all abuses Improved animations and all aspects of the game Exclusive HD-client with high-quality textures Experienced administration and management Fixed all bugs, geodata, exploits and holes Maximum sociality due to the 1-box system Discovering, exploring and researching Big online International server Nostalgia and oldschool-feelings   Rates: x1 Server start: 14.02.2025   The server is at the final stages of development and preparation for release. Information on the server will be updated, soon the patchnotes and changes/edits will be posted. Don't miss the legendary and epic experience on the best server in the last 20 years! ❤️ Join our C1-forum with a lot of information about server and active discussions.   ⭐ Website: https://harbor.elmorelab.com   ✅ Forum: https://forum-harbor.elmorelab.com   💥 Telegram: https://t.me/l2harbor https://t.me/l2harbor_chat   ⚡ Discord: https://discord.gg/harborelmorelab
    • yeah ok, if you say what is fuctional 100% i can't say something different 😛  but if someone find hard to compile it or get vs and all that things i have here one more simple way here to put overlay in your own server or to change your window name with few money.
  • Topics

×
×
  • Create New...