Jump to content

Recommended Posts

Posted

2character.java

/** Zone system */
      +public static final byte ZONE_FLAG_PVP = 0;
public static final byte ZONE_PVP = 0;

 

 

net.sf.l2j.gameserver.model.zone.type.PvpArea.java

package net.sf.l2j.gameserver.model.zone.type;

import net.sf.l2j.gameserver.datatables.MapRegionTable;
import net.sf.l2j.gameserver.model.actor.L2Character;
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.model.zone.L2SpawnZone;
import net.sf.l2j.gameserver.network.SystemMessageId;
import net.sf.l2j.gameserver.network.serverpackets.SystemMessage;

/**
* @author  AbSoLuTePoWeR
*/
public class PvpArea extends L2SpawnZone
{	
private L2PcInstance activeChar;

public PvpArea(int id)
{
	super(11037);
}
        	
protected void onEnter(L2Character character)
{

	if (character instanceof L2PcInstance)
	{
		if (!character.isInsideZone(L2Character.ZONE_FLAG_PVP))
			((L2PcInstance) character).sendPacket(new SystemMessage(SystemMessageId.ENTERED_COMBAT_ZONE));

	}

	character.setInsideZone(L2Character.ZONE_FLAG_PVP, true);
	character.setInsideZone(L2Character.ZONE_NOSUMMONFRIEND, true);
	activeChar.decayMe();
	activeChar.spawnMe();
                activeChar.isNoblesseBlessed();
	activeChar.setPvpFlag(1);
	activeChar.setTitle("Lets Fight");
	activeChar.broadcastUserInfo();
}

protected void onExit(L2Character character)
{
	character.setInsideZone(L2Character.ZONE_FLAG_PVP, false);
	character.setInsideZone(L2Character.ZONE_NOSUMMONFRIEND, false);
	activeChar.decayMe();
	activeChar.spawnMe();
	activeChar.stopNoblesseBlessing(null);
	activeChar.setPvpFlag(0);
	activeChar.setTitle("");
	activeChar.broadcastUserInfo();

	if (character instanceof L2PcInstance)
	{
		if (!character.isInsideZone(L2Character.ZONE_FLAG_PVP))
			((L2PcInstance) character).sendPacket(new SystemMessage(SystemMessageId.LEFT_COMBAT_ZONE));
	}
}

public void onDieInside(L2Character character) {MapRegionTable.getInstance().getTeleToLocation(activeChar, MapRegionTable.TeleportWhereType.Town);}

public void onReviveInside(L2Character character) {}
}

 

	</zone>

<zone id="11037" type="ZONE_FLAG_PVP" shape="NPoly" minZ="-3600" maxZ="-3400">
	<stat name="isPeaceZone" val="false" />
	<spawn X="x" Y="y5" Z="z" />

</zone>

 

where <spawn X="x" Y="y" Z="z" />    "x" "y" "z" you can put yours

 

 

 

its a pvp flag area.

when you  will be inside you will get auto flag, auto noblesse. and a custom title .When you die there you get auto-respawn without need pressing "to village".

Everytime you respawn there,you get autonoblesse at your buffs.

 

(thx fanky for the idea)

well guys if i am wrong correct me thx.! :D

 

credits to me.

 

 

 

Nice share men :D

Keep sharing :)

Posted

what a code lol...-.- and i dont mean it the good way

 

btw  l2 flag zones have been shared allready for example l2jfrozen forum

Posted

l2character.java

/** Zone system */
      +public static final byte ZONE_FLAG_PVP = 0;
public static final byte ZONE_PVP = 0;

find
public final boolean isInsideZone(final byte zone)
{
	return zone == ZONE_PVP ? _zones[ZONE_PVP] > 0 && _zones[ZONE_PEACE] == 0 : _zones[zone] > 0;
}

make it
public final boolean isInsideZone(final byte zone)
{
	return zone == ZONE_PVP ? _zones[ZONE_PVP] > 0 && ZONE_FLAG_PVP ? _zones[ZONE_FLAG_PVP] > 0 && _zones[ZONE_PEACE] == 0 : _zones[zone] > 0;
}

 

 

net.sf.l2j.gameserver.model.zone.type.L2PvpAreaZone.java

package net.sf.l2j.gameserver.model.zone.type;

import net.sf.l2j.gameserver.datatables.MapRegionTable;
import net.sf.l2j.gameserver.model.actor.L2Character;
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.model.zone.L2SpawnZone;
import net.sf.l2j.gameserver.network.SystemMessageId;
import net.sf.l2j.gameserver.network.serverpackets.SystemMessage;

/**
* @author  AbSoLuTePoWeR
*/
public class L2PvpAreaZone extends L2SpawnZone
{	
private L2PcInstance activeChar;

public PvpArea(int id)
{
	super(11037);
}
        	
protected void onEnter(L2Character character)
{

	if (character instanceof L2PcInstance)
	{
		if (!character.isInsideZone(L2Character.ZONE_FLAG_PVP))
			((L2PcInstance) character).sendPacket(new SystemMessage(SystemMessageId.ENTERED_COMBAT_ZONE));

	}

	character.setInsideZone(L2Character.ZONE_FLAG_PVP, true);
	character.setInsideZone(L2Character.ZONE_NOSUMMONFRIEND, true);
	activeChar.decayMe();
	activeChar.spawnMe();
                activeChar.isNoblesseBlessed();
	activeChar.setPvpFlag(1);
	activeChar.setTitle("Lets Fight");
	activeChar.broadcastUserInfo();
}

protected void onExit(L2Character character)
{
	character.setInsideZone(L2Character.ZONE_FLAG_PVP, false);
	character.setInsideZone(L2Character.ZONE_NOSUMMONFRIEND, false);
	activeChar.decayMe();
	activeChar.spawnMe();
	activeChar.stopNoblesseBlessing(null);
	activeChar.setPvpFlag(0);
	activeChar.setTitle("");
	activeChar.broadcastUserInfo();

	if (character instanceof L2PcInstance)
	{
		if (!character.isInsideZone(L2Character.ZONE_FLAG_PVP))
			((L2PcInstance) character).sendPacket(new SystemMessage(SystemMessageId.LEFT_COMBAT_ZONE));
	}
}

public void onDieInside(L2Character character) {MapRegionTable.getInstance().getTeleToLocation(activeChar, MapRegionTable.TeleportWhereType.Town);}

public void onReviveInside(L2Character character) {}
}

 

	</zone>

<zone id="11037" type="ZONE_FLAG_PVP" shape="NPoly" minZ="-3600" maxZ="-3400">
	<stat name="isPeaceZone" val="false" />
	<spawn X="x" Y="y5" Z="z" />

</zone>

 

where <spawn X="x" Y="y" Z="z" />    "x" "y" "z" you can put your zone. :P

 

net.sf.l2j.gameserver.model.zone.L2Zonetype.java

 

+import net.sf.l2j.gameserver.model.zone.type.L2PvpAreaZone;
import net.sf.l2j.gameserver.model.zone.type.L2SkillZone;
import net.sf.l2j.gameserver.model.zone.type.L2SwampZone;
import net.sf.l2j.gameserver.model.zone.type.L2TownZone;
								{
									temp = new L2SwampZone(zoneId);
								}
+								else if(zoneType.equals("PvpFlagZone"))
+								{
+									temp = new PvpAreaZone(11037);
+								}

zone_vertices.sql

-- Schuttgart Castle
INSERT INTO `zone_vertices` VALUES
(112080,0,80995,-153334),
(112080,1,80808,-150137),
(112080,2,79228,-148694),
(112080,3,76451,-148399),
(112080,4,74703,-149543),
(112080,5,73718,-153342),
(112080,6,75632,-156376),
(112080,7,77635,-155680),
(112080,8,79985,-155849),
(112080,9,80995,-153334);

+INSERT INTO `zone_vertices` VALUES
+(11037,0,x,-x),
+(11037,1,x,-x),
+(110370,1,x,-x),
+(11037,2,,-x),

 

where x you must add your coor.

 

 

 

 

its a pvp flag area.

when you  will be inside you will get auto flag, auto noblesse. and a custom title .When you die there you get auto-respawn without need pressing "to village".

Everytime you respawn there,you get autonoblesse at your buffs.

 

(thx fanky for the idea)

well guys if i am wrong correct me thx.! :D

 

credits to me.

 

 

Credits you?
  • 4 weeks 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...

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock