Jump to content

Recommended Posts

Posted
/* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2, or (at your option)
* any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
* 02111-1307, USA.
*
* http://www.gnu.org/copyleft/gpl.html
*/
package com.l2jfrozen.gameserver.model.actor.instance;

import com.l2jfrozen.gameserver.ai.CtrlIntention;
import com.l2jfrozen.gameserver.managers.TownManager;
import com.l2jfrozen.gameserver.model.L2Character;
import com.l2jfrozen.gameserver.model.zone.L2ZoneType;
import com.l2jfrozen.gameserver.network.serverpackets.ActionFailed;
import com.l2jfrozen.gameserver.network.serverpackets.MyTargetSelected;
import com.l2jfrozen.gameserver.network.serverpackets.NpcHtmlMessage;
import com.l2jfrozen.gameserver.network.serverpackets.ValidateLocation;
import com.l2jfrozen.gameserver.templates.L2NpcTemplate;

import javolution.text.TextBuilder;

public class L2SpecialGatekeeperInstance extends L2FolkInstance
{
 public L2SpecialGatekeeperInstance(int objectId, L2NpcTemplate template)
 {
   super(objectId, template);
 }

 @Override
public void onBypassFeedback(L2PcInstance player, String command)
 {
    if(player == null)
    {
       return;
    }

    if(command.startsWith("giran"))
    {
     player.teleToLocation(82698, 148638, -3473);
    }

    if(command.startsWith("aden"))
    {
     player.teleToLocation(147456, 26886, -2207);
    }

    if(command.startsWith("goddard"))
    {
     player.teleToLocation(147725, -56517, -2780);
    }

    if(command.startsWith("ti"))
    {
     player.teleToLocation(-83838, 242732, -3732);
    }

    if(command.startsWith("elv"))
    {
     player.teleToLocation(45873, 49288, -3059);
    }

    if(command.startsWith("delv"))
    {
     player.teleToLocation(12428, 16551, -4588);
    }

    if(command.startsWith("dwarf"))
    {
     player.teleToLocation(116551, -182493, -1525);
    }

    if(command.startsWith("orc"))
    {
     player.teleToLocation(-44133, -113911, -244);
    }

    if(command.startsWith("oren"))
    {
     player.teleToLocation(82321, 55139, -1529);
    }

    if(command.startsWith("dion"))
    {
     player.teleToLocation(18748, 145437, -3132);
    }

    if(command.startsWith("heine"))
    {
     player.teleToLocation(111383, 219107, -3546);
    }

    if(command.startsWith("gludio"))
    {
     player.teleToLocation(-14225, 123540, -3121);
    }

    if(command.startsWith("stut"))
    {
     player.teleToLocation(87358, -141982, -1336);
    }

    if(command.startsWith("gludin"))
    {
     player.teleToLocation(-83063, 150791, -3128);
    }

    if(command.startsWith("floran"))
    {
     player.teleToLocation(17144, 170156, -3502);
    }

    if(command.startsWith("rune"))
    {
     player.teleToLocation(44070, -50243, -796);
    }

 }

 @Override
public void onAction(L2PcInstance player)
 {
   if (!canTarget(player)) {
     return;
   }

   if (this != player.getTarget())
   {
     player.setTarget(this);

     player.sendPacket(new MyTargetSelected(getObjectId(), 0));

     player.sendPacket(new ValidateLocation(this));
   }
   else if (!canInteract(player))
   {
     player.getAI().setIntention(CtrlIntention.AI_INTENTION_INTERACT, this);
   }
   else
   {
     showHtmlWindow(player);
   }

   player.sendPacket(new ActionFailed());
 }

 private void showHtmlWindow(L2PcInstance activeChar)
 {
   NpcHtmlMessage nhm = new NpcHtmlMessage(5);
   TextBuilder tb = new TextBuilder("");

   tb.append("<html><head><title>Global Gatekeeper</title></head><body>");
   tb.append("<center>");
   tb.append("<table width=\"250\" cellpadding=\"5\" bgcolor=\"000000\">");
   tb.append("<tr>");
   tb.append("<td width=\"45\" valign=\"top\" align=\"center\"><img src=\"L2ui_ch3.menubutton4\" width=\"38\" height=\"38\"></td>");
   tb.append("<td valign=\"top\"><font color=\"FF6600\">Advanced Gatekeeper</font>");  
   tb.append("<br1><font color=\"00FF00\">"+activeChar.getName()+"</font>, here you can spy who's where.</td>");
   tb.append("</tr>");
   tb.append("</table>");
   tb.append("</center>");
   tb.append("<center>");
   tb.append("<td valign=\"top\"><font color=\"FF6600\">Where you gonna teleport " + activeChar.getName()+".</font><br>");  
   tb.append("<td valign=\"top\"><font color=\"FF6600\">Players Inside Talking I. : " + pewpew(2)+".</font>"); 
   tb.append("<button value=\"Talking I.\" action=\"bypass -h npc_" + getObjectId() + "_ti\" width=70 height=21 back=\"L2UI.DefaultButton_click\" fore=\"L2UI.DefaultButton\"><br>");
   tb.append("<td valign=\"top\"><font color=\"FF6600\">Players Inside Elven V. : " + pewpew(3)+".</font>"); 
   tb.append("<button value=\"Elven V.\" action=\"bypass -h npc_" + getObjectId() + "_elv\" width=70 height=21 back=\"L2UI.DefaultButton_click\" fore=\"L2UI.DefaultButton\"><br>");
   tb.append("<td valign=\"top\"><font color=\"FF6600\">Players Inside D.Elven V. : " + pewpew(1)+".</font>"); 
   tb.append("<button value=\"D.Elven V.\" action=\"bypass -h npc_" + getObjectId() + "_delv\" width=70 height=21 back=\"L2UI.DefaultButton_click\" fore=\"L2UI.DefaultButton\"><br>");
   tb.append("<td valign=\"top\"><font color=\"FF6600\">Players Inside Orc V. : " + pewpew(4)+".</font>"); 
   tb.append("<button value=\"Orc V.\" action=\"bypass -h npc_" + getObjectId() + "_orc\" width=70 height=21 back=\"L2UI.DefaultButton_click\" fore=\"L2UI.DefaultButton\"><br>");
   tb.append("<td valign=\"top\"><font color=\"FF6600\">Players Inside Dwarven V. : " + pewpew(6)+".</font>"); 
   tb.append("<button value=\"Dwarven V.\" action=\"bypass -h npc_" + getObjectId() + "_dwarf\" width=70 height=21 back=\"L2UI.DefaultButton_click\" fore=\"L2UI.DefaultButton\"><br>");
   tb.append("<td valign=\"top\"><font color=\"FF6600\">Players Inside Giran : " + pewpew(9)+".</font>"); 
   tb.append("<button value=\"Giran\" action=\"bypass -h npc_" + getObjectId() + "_giran\" width=70 height=21 back=\"L2UI.DefaultButton_click\" fore=\"L2UI.DefaultButton\"><br>");
   tb.append("<td valign=\"top\"><font color=\"FF6600\">Players Inside Aden : " + pewpew(12)+".</font>"); 
   tb.append("<button value=\"Aden\" action=\"bypass -h npc_" + getObjectId() + "_aden\" width=70 height=21 back=\"L2UI.DefaultButton_click\" fore=\"L2UI.DefaultButton\"><br>");
   tb.append("<td valign=\"top\"><font color=\"FF6600\">Players Inside Gludio : " + pewpew(7)+".</font>");  
   tb.append("<button value=\"Gludio\" action=\"bypass -h npc_" + getObjectId() + "_gludio\" width=70 height=21 back=\"L2UI.DefaultButton_click\" fore=\"L2UI.DefaultButton\"><br>");
   tb.append("<td valign=\"top\"><font color=\"FF6600\">Players Inside Gludin : " + pewpew(5)+".</font>");  
   tb.append("<button value=\"Gludin\" action=\"bypass -h npc_" + getObjectId() + "_gludin\" width=70 height=21 back=\"L2UI.DefaultButton_click\" fore=\"L2UI.DefaultButton\"><br>");
   tb.append("<td valign=\"top\"><font color=\"FF6600\">Players Inside Dion : " + pewpew(8)+".</font>");  
   tb.append("<button value=\"Dion\" action=\"bypass -h npc_" + getObjectId() + "_dion\" width=70 height=21 back=\"L2UI.DefaultButton_click\" fore=\"L2UI.DefaultButton\"><br>");
   tb.append("<td valign=\"top\"><font color=\"FF6600\">Players Inside Oren : " + pewpew(10)+".</font>");  
   tb.append("<button value=\"Oren\" action=\"bypass -h npc_" + getObjectId() + "_oren\" width=70 height=21 back=\"L2UI.DefaultButton_click\" fore=\"L2UI.DefaultButton\"><br>");
   tb.append("<td valign=\"top\"><font color=\"FF6600\">Players Inside Heine : " + pewpew(15)+".</font>");  
   tb.append("<button value=\"Heine\" action=\"bypass -h npc_" + getObjectId() + "_heine\" width=70 height=21 back=\"L2UI.DefaultButton_click\" fore=\"L2UI.DefaultButton\"><br>");
   tb.append("<td valign=\"top\"><font color=\"FF6600\">Players Inside Rune : " + pewpew(14)+".</font>");  
   tb.append("<button value=\"Rune\" action=\"bypass -h npc_" + getObjectId() + "_rune\" width=70 height=21 back=\"L2UI.DefaultButton_click\" fore=\"L2UI.DefaultButton\"><br>");
   tb.append("<td valign=\"top\"><font color=\"FF6600\">Players Inside Goddard : " + pewpew(13)+".</font>");  
   tb.append("<button value=\"Goddard\" action=\"bypass -h npc_" + getObjectId() + "_goddard\" width=70 height=21 back=\"L2UI.DefaultButton_click\" fore=\"L2UI.DefaultButton\"><br>");
   tb.append("<td valign=\"top\"><font color=\"FF6600\">Players Inside Schuttgart : " + pewpew(17)+".</font>");  
   tb.append("<button value=\"Schuttgart\" action=\"bypass -h npc_" + getObjectId() + "_stut\" width=70 height=21 back=\"L2UI.DefaultButton_click\" fore=\"L2UI.DefaultButton\"><br>");
   tb.append("<td valign=\"top\"><font color=\"FF6600\">Players Inside Floran : " + pewpew(16)+".</font>");  
   tb.append("<button value=\"Floran\" action=\"bypass -h npc_" + getObjectId() + "_floran\" width=70 height=21 back=\"L2UI.DefaultButton_click\" fore=\"L2UI.DefaultButton\"><br>");
   tb.append("</center>");
   tb.append("<center>");
   tb.append("<img src=\"l2ui_ch3.herotower_deco\" width=256 height=32 align=center>");
   tb.append("<font color=\"FF6600\">www.private.com</font>");  
   tb.append("</center>");
   tb.append("</body></html>");

   nhm.setHtml(tb.toString());
   activeChar.sendPacket(nhm);

   activeChar.sendPacket(new ActionFailed());
 }

 public static int pewpew(int bitch)
 {
  L2ZoneType zone = TownManager.getInstance().getTown(bitch);
int i = 0;
if(zone != null)
{
for (L2Character character : zone.getCharactersInside().values())
                 if (character instanceof L2PcInstance)
                     i++;
                 return i;
}
return -1;
 }



}

is there any Developer , that can make  this gatekeeper instance to be editable in html npc.!!


Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


×
×
  • 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