Jump to content

[SHARE][V4]Town War event


Vago

Recommended Posts

I added that in last update before you did it lol xD

 

I dint see it ... btw now is more complete .... :) This event will have.... much fun .. in game xD

 

p.s: My method are more simple ;P

Link to comment
Share on other sites

good job Vago! btw about the admin to change the war town its more simple to create a HTML and add it on //admin panel so admin will choose right away what town will be a pvp zone! i am gona do it tomorrow and let you know what i am talking about;)

Link to comment
Share on other sites

Nice..

But on Infinityskils when you win the event you got encheant.. Exe:On erica if you win you got +50 on weapon... Auto.

 

Go to the L2PcInstance and under the townwar pvp reward add something like that:

if (activeChar.consecutiveKillCount > 20)
{
// set enchant value
player.getInventory().unEquipItemInSlotAndRecord(armorType);
itemInstance.setEnchantLevel(ench);
player.getInventory().equipItemAndRecord(itemInstance);

// send packets
InventoryUpdate iu = new InventoryUpdate();
iu.addModifiedItem(itemInstance);
player.sendPacket(iu);
player.broadcastPacket(new CharInfo(player));
player.sendPacket(new UserInfo(player));
}

To make the consecutiveKillCount look at the hero shine on pvp kill by Vago:)

 

The armor type need to be changed only i think.The armor types:

PAPERDOLL_HEAD

PAPERDOLL_CHEST

PAPERDOLL_GLOVES

PAPERDOLL_FEET

PAPERDOLL_LEGS

PAPERDOLL_RHAND

PAPERDOLL_LHAND

PAPERDOLL_LEAR

PAPERDOLL_REAR

PAPERDOLL_LFINGER

PAPERDOLL_RFINGER

PAPERDOLL_NECK

PAPERDOLL_UNDER

PAPERDOLL_BACK

FOR BOW CROSSBOW AND 2HANDED WEAPONS ONLY:

PAPERDOLL_LRHAND

 

Link to comment
Share on other sites

Patch updated:

 

- Not that huge patch anymore

- Now startTW and endTW got their own methods so can be recalled on startup etc...

 

good job Vago! btw about the admin to change the war town its more simple to create a HTML and add it on //admin panel so admin will choose right away what town will be a pvp zone! i am gona do it tomorrow and let you know what i am talking about;)

 

I will later today...At the moment I gotta go

Link to comment
Share on other sites

another idea is , when the event is starting , it would be cool if there were 5-6 announcements saying : 1. LETS , 2. START , 3. THE , 4. EVENT!!!! ,5. EVENT STARTED IN "x" TOWN!! , one after the other after 1 second for example

Link to comment
Share on other sites

I have troubles compiling

compile:
    [javac] Compiling 1371 source files to C:\Documents and Settings\Friso\workspace\L2J_GameServer\build\classes
    [javac] C:\Documents and Settings\Friso\workspace\L2J_GameServer\java\net\sf\l2j\gameserver\model\actor\instance\L2PcInstance.java:5176: cannot find symbol
    [javac] symbol  : method isinTownWar()
    [javac] location: class net.sf.l2j.gameserver.model.actor.instance.L2PcInstance
    [javac]     	    	if (isinTownWar())
    [javac]     	    	    ^
    [javac] C:\Documents and Settings\Friso\workspace\L2J_GameServer\java\net\sf\l2j\gameserver\model\actor\instance\L2PcInstance.java:5234: cannot find symbol
    [javac] symbol  : method isinTownWar()
    [javac] location: class net.sf.l2j.gameserver.model.actor.instance.L2PcInstance
    [javac]        if (!isinTownWar())
    [javac]             ^
    [javac] C:\Documents and Settings\Friso\workspace\L2J_GameServer\java\net\sf\l2j\gameserver\model\actor\instance\L2PcInstance.java:5238: cannot find symbol
    [javac] symbol  : method isinTownWar()
    [javac] location: class net.sf.l2j.gameserver.model.actor.instance.L2PcInstance
    [javac]               	if (isinTownWar())
    [javac]               	    ^
    [javac] C:\Documents and Settings\Friso\workspace\L2J_GameServer\java\net\sf\l2j\gameserver\handler\admincommandhandlers\AdminTownWar.java:96: cannot find symbol
    [javac] symbol  : method setInTownWar(boolean)
    [javac] location: class net.sf.l2j.gameserver.model.actor.instance.L2PcInstance
    [javac] 					onlinePlayer.setInTownWar(true);
    [javac] 					            ^
    [javac] C:\Documents and Settings\Friso\workspace\L2J_GameServer\java\net\sf\l2j\gameserver\handler\admincommandhandlers\AdminTownWar.java:152: cannot find symbol
    [javac] symbol  : method setInTownWar(boolean)
    [javac] location: class net.sf.l2j.gameserver.model.actor.instance.L2PcInstance
    [javac] 					onlinePlayer.setInTownWar(false);
    [javac] 					            ^
    [javac] Note: C:\Documents and Settings\Friso\workspace\L2J_GameServer\java\net\sf\l2j\gameserver\handler\admincommandhandlers\AdminTownWar.java uses or overrides a deprecated API.
    [javac] Note: Recompile with -Xlint:deprecation for details.
    [javac] 5 errors

BUILD FAILED

Your help would be appreciated ^^

Link to comment
Share on other sites

try to insert it manually first because the diff files are not correct for all packs and all revisions

 

Ps.:Reported on l2j forum

 

What i found:

1. Event starts and ends normally

2. you can set use of GK or not.

3. announces events as described.

 

Bugs:

 

Does not set peace zone to PvP or arena zone, on the console it states that it reloaded zones, and on exit states reloaded zone, but in game there is no change, and when you select ALL TOWNS it gives bad request error on console and does nothing at all ingame. havene't been able to test Reward since event wont start.

Link to comment
Share on other sites

Sry for double post but i need that i try to fix this event to make it work but i cant test it right now:S

So if somebody can test that for me post the results here plz.

 

in the admintownwar.java added boolean to handle the true false of peace zone:

   /**
* @return
*/
private final boolean isPeaceZone()
{
boolean _isPeaceZone = true;
return _isPeaceZone;
}

 

I change that:

TownManager.getTown(Config.TW_TOWN_ID).setParameter("isPeaceZone", "false");

to that that means if the town is peace zone the peace zone set to false:

    	  TownManager.getTown(9);
   	  if(isPeaceZone())
   	  {
   		  boolean _isPeaceZone = false;
   	  }

 

And i changed that:

TownManager.getTown(Config.TW_TOWN_ID).setParameter("isPeaceZone", "true");

to that that means the town is peace zone again:

TownManager.getTown(9);
   	  if(!isPeaceZone())
   	  {
   		  boolean _isPeaceZone = true;
   	  }

 

Its compiled for me just need some test.

Link to comment
Share on other sites

wont work simply because your boolean isPeaceZone is used only inside AdminTownWar and has nothing to do with players location, position, L2TownZone or ZoneManager...

Link to comment
Share on other sites

The problem is when you change the zone of peace in general, there is no need to recharge areas with ZoneManager.load ();.

 

First remove static. Then try the following:

 

TownManager.getInstance().getTown(CodTown).setParameter("isPeaceZone", "false");

   

    Collection<L2PcInstance> pls = L2World.getInstance().getAllPlayers().values();

   

    int xx,yy,zz;

    L2TownZone Town;

    byte zonaPaz = 1;

   

    for (L2PcInstance onlinePlayer : pls)

    if (onlinePlayer.isOnline() == 1 )

    {

    onlinePlayer.setInTownWar(true);

    xx = onlinePlayer.getX();

    yy = onlinePlayer.getY();

    zz = onlinePlayer.getZ();

   

    Town = TownManager.getInstance().getTown(xx,yy,zz);

   

    if(Town.getTownId() == CodTown)

    {

   

    onlinePlayer.setInsideZone(zonaPaz, false);

   

    }

   

    onlinePlayer.revalidateZone(true);

    }

 

 

 

when the event ends, it is the same, only changes

 

onlinePlayer.setInsideZone(zonaPaz, true);

;)

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.



×
×
  • Create New...