Jump to content

Recommended Posts

Posted

Hello MxC Community, i decided to share something that Eminence was using for the Jail System.

 

More info:.

When somebody goes to the Jail Zone, he gains one Skill ( of your choice ), is really really simple.

 

So Lets Start:

 

Open the L2JailZone.java file wich is located right here: [glow=red,2,300]java/net/sf/l2j/gameserver/model/zone/type/L2JailZone.java[/glow]

And add the lines ( when somebody ENTER'S the Jail Zone )

+			character.startAbnormalEffect(0x2000);
+			if (character.getKnownSkill(Your Skill ID) == null)
+			{
+							character.addSkill(SkillTable.getInstance().getInfo(Your Skill ID, 1));
+			}

 

And add the lines after ( remove this skill when he LEFTS the Jail zone )

+			character.stopAbnormalEffect((short) 0x2000);
+			if (character.getKnownSkill(Your Skill ID) != null)
+			{
+							character.removeSkill(SkillTable.getInstance().getInfo(Your Skill ID, 1));
+			}

 

And do not forget to add the imports: ( In the same file )

 

+import net.sf.l2j.gameserver.datatables.SkillTable;

 

 

And here is the diff file to add it easier :P:

Index: /trunk/Eclipse-Game/java/net/sf/l2j/gameserver/model/zone/type/L2JailZone.java
===================================================================
--- /trunk/Eclipse-Game/java/net/sf/l2j/gameserver/model/zone/type/L2JailZone.java (revision 28)
+++ /trunk/Eclipse-Game/java/net/sf/l2j/gameserver/model/zone/type/L2JailZone.java (revision 183)
@@ -18,5 +18,4 @@
package net.sf.l2j.gameserver.model.zone.type;

+import net.sf.l2j.gameserver.datatables.SkillTable;
import net.sf.l2j.gameserver.model.L2Character;
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
@@ -44,9 +43,4 @@
			character.setInsideZone(L2Character.ZONE_JAIL, true);
			character.setInsideZone(L2Character.ZONE_PVP, true);
+			character.startAbnormalEffect(0x2000);
+			if (character.getKnownSkill(Your skill id) == null)
+			{
+							character.addSkill(SkillTable.getInstance().getInfo(Your skill id, 1));
+			}
			((L2PcInstance)character).sendPacket(new SystemMessage(SystemMessageId.ENTERED_COMBAT_ZONE));
		}
@@ -60,9 +54,4 @@
			character.setInsideZone(L2Character.ZONE_JAIL, false);
			character.setInsideZone(L2Character.ZONE_PVP, false);
+			character.stopAbnormalEffect((short) 0x2000);
+			if (character.getKnownSkill(Your skill id) != null)
+			{
+							character.removeSkill(SkillTable.getInstance().getInfo(Your skill id, 1));
+			}
			((L2PcInstance)character).sendPacket(new SystemMessage(SystemMessageId.LEFT_COMBAT_ZONE));
		}

 

This code is not only for Jail Zone, you can add it on any zone you would like is just an example. Hope you like it.

 

  • 3 weeks later...
  • 1 year later...

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.

×
×
  • Create New...