-
Posts
284 -
Credits
0 -
Joined
-
Last visited
-
Feedback
0%
Content Type
Articles
Profiles
Forums
Store
Everything posted by Gam3Master
-
Help Save Name Color
Gam3Master replied to Gam3Master's question in Request Server Development Help [L2J]
Is there any already done codes to share? That will not work... every vip player will have different name color. -
Hello. I use aCis last free source. I created new instance for name color change. It changes name color but when character relogins, it becomes white again. How can I manage to save it?
-
Hello. I now there is many buffers for aCis pack i want to share mine. Preview: Create new instance called L2BuffInstance. /* * 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 net.sf.l2j.gameserver.model.actor.instance; import java.util.StringTokenizer; import net.sf.l2j.gameserver.ai.CtrlIntention; import net.sf.l2j.gameserver.datatables.SkillTable; import net.sf.l2j.gameserver.network.serverpackets.ActionFailed; import net.sf.l2j.gameserver.network.serverpackets.MagicSkillUse; import net.sf.l2j.gameserver.network.serverpackets.MyTargetSelected; import net.sf.l2j.gameserver.network.serverpackets.NpcHtmlMessage; import net.sf.l2j.gameserver.network.serverpackets.SocialAction; import net.sf.l2j.gameserver.network.serverpackets.ValidateLocation; import net.sf.l2j.gameserver.model.actor.template.NpcTemplate; import net.sf.l2j.util.Rnd; import net.sf.l2j.util.StringUtil; /** * @author Leki */ public final class L2BuffInstance extends L2NpcInstance { public L2BuffInstance(int objectId, NpcTemplate template) { super(objectId, template); } @Override public void onBypassFeedback(L2PcInstance player, String command) { StringTokenizer st = new StringTokenizer(command); String actualCommand = st.nextToken(); int buffid = 0; int bufflevel = 1; switch (st.countTokens()) { case 1: buffid = Integer.valueOf(st.nextToken()); break; case 2: buffid = Integer.valueOf(st.nextToken()); bufflevel = Integer.valueOf(st.nextToken()); break; } if (actualCommand.equalsIgnoreCase("getbuff")) { SkillTable.getInstance().getInfo(buffid, bufflevel).getEffects(this, player); showBuffsWindow(player); } else if (actualCommand.equalsIgnoreCase("getproph")) { SkillTable.getInstance().getInfo(buffid, bufflevel).getEffects(this, player); showProphWindow(player); } else if (actualCommand.equalsIgnoreCase("getdance")) { SkillTable.getInstance().getInfo(buffid, bufflevel).getEffects(this, player); showDanceWindow(player); } else if (actualCommand.equalsIgnoreCase("getsong")) { SkillTable.getInstance().getInfo(buffid, bufflevel).getEffects(this, player); showSongWindow(player); } else if (actualCommand.equalsIgnoreCase("getpet")) { SkillTable.getInstance().getInfo(buffid, bufflevel).getEffects(this, player); showPetWindow(player); } else if (actualCommand.equalsIgnoreCase("getvip")) { if(!player.isVip() || player.getInventory().getInventoryItemCount(4037, 0) < 50) { player.sendMessage("You must be VIP member to get this buffs, each costs needs 50 Imperial Coin."); } else{ MagicSkillUse mgc = new MagicSkillUse(this, player, buffid, bufflevel, 5, 0); SkillTable.getInstance().getInfo(buffid, bufflevel).getEffects(this, player); player.destroyItemByItemId("RandomFight", 4037,50, player, true); showVIPWindow(player); player.broadcastPacket(mgc); } } else if (actualCommand.equalsIgnoreCase("restore")) { player.setCurrentHpMp(player.getMaxHp(), player.getMaxMp()); player.setCurrentCp(player.getMaxCp()); showMainWindow(player); } else if (actualCommand.equalsIgnoreCase("cancel")) { player.stopAllEffects(); showMainWindow(player); } else if (actualCommand.equalsIgnoreCase("dance")) { showDanceWindow(player); } else if (actualCommand.equalsIgnoreCase("song")) { showSongWindow(player); } else if (actualCommand.equalsIgnoreCase("Main")) { showMainWindow(player); } else if (actualCommand.equalsIgnoreCase("pet")) { showPetWindow(player); } else if (actualCommand.equalsIgnoreCase("proph")) { showProphWindow(player); } else if (actualCommand.equalsIgnoreCase("buffs")) { showBuffsWindow(player); } else if (actualCommand.equalsIgnoreCase("vip")) { showVIPWindow(player); } if (actualCommand.equalsIgnoreCase("heavy")) { player.stopAllEffects(); SkillTable.getInstance().getInfo(1204, 2).getEffects(this, player); SkillTable.getInstance().getInfo(1035, 4).getEffects(this, player); SkillTable.getInstance().getInfo(1040, 3).getEffects(this, player); SkillTable.getInstance().getInfo(1036, 2).getEffects(this, player); SkillTable.getInstance().getInfo(1389, 3).getEffects(this, player); SkillTable.getInstance().getInfo(1243, 6).getEffects(this, player); SkillTable.getInstance().getInfo(1045, 6).getEffects(this, player); SkillTable.getInstance().getInfo(1048, 6).getEffects(this, player); SkillTable.getInstance().getInfo(1068, 3).getEffects(this, player); SkillTable.getInstance().getInfo(1086, 2).getEffects(this, player); SkillTable.getInstance().getInfo(1077, 3).getEffects(this, player); SkillTable.getInstance().getInfo(1242, 3).getEffects(this, player); SkillTable.getInstance().getInfo(1240, 3).getEffects(this, player); SkillTable.getInstance().getInfo(1268, 4).getEffects(this, player); SkillTable.getInstance().getInfo(271, 1).getEffects(this, player); SkillTable.getInstance().getInfo(275, 1).getEffects(this, player); SkillTable.getInstance().getInfo(274, 1).getEffects(this, player); SkillTable.getInstance().getInfo(272, 1).getEffects(this, player); SkillTable.getInstance().getInfo(310, 1).getEffects(this, player); SkillTable.getInstance().getInfo(264, 1).getEffects(this, player); SkillTable.getInstance().getInfo(267, 1).getEffects(this, player); SkillTable.getInstance().getInfo(269, 1).getEffects(this, player); SkillTable.getInstance().getInfo(268, 1).getEffects(this, player); SkillTable.getInstance().getInfo(304, 1).getEffects(this, player); SkillTable.getInstance().getInfo(349, 1).getEffects(this, player); SkillTable.getInstance().getInfo(364, 1).getEffects(this, player); SkillTable.getInstance().getInfo(4699, 3).getEffects(this, player); SkillTable.getInstance().getInfo(4703, 3).getEffects(this, player); SkillTable.getInstance().getInfo(1363, 1).getEffects(this, player); showMainWindow(player); } if (actualCommand.equalsIgnoreCase("light")) { player.stopAllEffects(); SkillTable.getInstance().getInfo(1204, 2).getEffects(this, player); SkillTable.getInstance().getInfo(1035, 4).getEffects(this, player); SkillTable.getInstance().getInfo(1040, 3).getEffects(this, player); SkillTable.getInstance().getInfo(1036, 2).getEffects(this, player); SkillTable.getInstance().getInfo(1243, 6).getEffects(this, player); SkillTable.getInstance().getInfo(1045, 6).getEffects(this, player); SkillTable.getInstance().getInfo(1048, 6).getEffects(this, player); SkillTable.getInstance().getInfo(1068, 3).getEffects(this, player); SkillTable.getInstance().getInfo(1388, 3).getEffects(this, player); SkillTable.getInstance().getInfo(1062, 2).getEffects(this, player); SkillTable.getInstance().getInfo(1086, 2).getEffects(this, player); SkillTable.getInstance().getInfo(1077, 3).getEffects(this, player); SkillTable.getInstance().getInfo(1242, 3).getEffects(this, player); SkillTable.getInstance().getInfo(1240, 3).getEffects(this, player); SkillTable.getInstance().getInfo(1268, 4).getEffects(this, player); SkillTable.getInstance().getInfo(1087, 3).getEffects(this, player); SkillTable.getInstance().getInfo(1363, 1).getEffects(this, player); SkillTable.getInstance().getInfo(271, 1).getEffects(this, player); SkillTable.getInstance().getInfo(275, 1).getEffects(this, player); SkillTable.getInstance().getInfo(274, 1).getEffects(this, player); SkillTable.getInstance().getInfo(272, 1).getEffects(this, player); SkillTable.getInstance().getInfo(310, 1).getEffects(this, player); SkillTable.getInstance().getInfo(267, 1).getEffects(this, player); SkillTable.getInstance().getInfo(266, 1).getEffects(this, player); SkillTable.getInstance().getInfo(269, 1).getEffects(this, player); SkillTable.getInstance().getInfo(268, 1).getEffects(this, player); SkillTable.getInstance().getInfo(304, 1).getEffects(this, player); SkillTable.getInstance().getInfo(349, 1).getEffects(this, player); SkillTable.getInstance().getInfo(364, 1).getEffects(this, player); SkillTable.getInstance().getInfo(4699, 3).getEffects(this, player); SkillTable.getInstance().getInfo(4703, 3).getEffects(this, player); showMainWindow(player); } if (actualCommand.equalsIgnoreCase("mage")) { player.stopAllEffects(); SkillTable.getInstance().getInfo(1204, 2).getEffects(this, player); SkillTable.getInstance().getInfo(1035, 4).getEffects(this, player); SkillTable.getInstance().getInfo(1040, 3).getEffects(this, player); SkillTable.getInstance().getInfo(1036, 2).getEffects(this, player); SkillTable.getInstance().getInfo(1389, 3).getEffects(this, player); SkillTable.getInstance().getInfo(1243, 6).getEffects(this, player); SkillTable.getInstance().getInfo(1045, 6).getEffects(this, player); SkillTable.getInstance().getInfo(1048, 6).getEffects(this, player); SkillTable.getInstance().getInfo(1085, 3).getEffects(this, player); SkillTable.getInstance().getInfo(1059, 3).getEffects(this, player); SkillTable.getInstance().getInfo(1062, 2).getEffects(this, player); SkillTable.getInstance().getInfo(1303, 1).getEffects(this, player); SkillTable.getInstance().getInfo(1078, 6).getEffects(this, player); SkillTable.getInstance().getInfo(1087, 3).getEffects(this, player); SkillTable.getInstance().getInfo(276, 1).getEffects(this, player); SkillTable.getInstance().getInfo(273, 1).getEffects(this, player); SkillTable.getInstance().getInfo(365, 1).getEffects(this, player); SkillTable.getInstance().getInfo(264, 1).getEffects(this, player); SkillTable.getInstance().getInfo(267, 1).getEffects(this, player); SkillTable.getInstance().getInfo(268, 1).getEffects(this, player); SkillTable.getInstance().getInfo(304, 1).getEffects(this, player); SkillTable.getInstance().getInfo(363, 1).getEffects(this, player); SkillTable.getInstance().getInfo(349, 1).getEffects(this, player); SkillTable.getInstance().getInfo(4703, 3).getEffects(this, player); SkillTable.getInstance().getInfo(1413, 1).getEffects(this, player); showMainWindow(player); } else super.onBypassFeedback(player, command); } @Override public void onAction(L2PcInstance player) { if (this != player.getTarget()) { player.setTarget(this); player.sendPacket(new MyTargetSelected(getObjectId(), player.getLevel() - getLevel())); player.sendPacket(new ValidateLocation(this)); } else if (isInsideRadius(player, INTERACTION_DISTANCE, false, false)) { SocialAction sa = new SocialAction(this, Rnd.get(8)); broadcastPacket(sa); player.setCurrentFolkNPC(this); showMainWindow(player); player.sendPacket(ActionFailed.STATIC_PACKET); } else { player.getAI().setIntention(CtrlIntention.INTERACT, this); player.sendPacket(ActionFailed.STATIC_PACKET); } } private void showBuffsWindow(L2PcInstance player) { NpcHtmlMessage html = new NpcHtmlMessage(1); final StringBuilder strBuffer = StringUtil.startAppend(3500, "<html><title>Buffer By Leki</title><body><center><br>"); if (player.isSitting()) { player.sendMessage("You can't use buffer while you're sitting."); strBuffer.append("Stand up, <font color=\"LEVEL\">%charname%</font>!<br>"); strBuffer.append("How dare you to talk with me while you're sitting?!<br>"); } else if (player.isAlikeDead()) { player.sendMessage("You can't use buffer while you're dead or using fake death."); strBuffer.append("Sadly, <font color=\"LEVEL\">%charname%</font>, you're dead.<br>"); strBuffer.append("I can't offer any support effect for dead people.<br>"); } else if (player.isInCombat()) { player.sendMessage("You can't use buffer while you're in combat."); strBuffer.append("Sadly, <font color=\"LEVEL\">%charname%</font>, I can't serve you.<br>"); strBuffer.append("Came back when you will not be in a combat.<br>"); } else { { strBuffer .append("<tr><td><button value=\"Go Back\" action=\"bypass -h npc_%objectId%_Main\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td></tr>"); strBuffer .append("<font color=\"B8B8B8\" align=\"center\">___________________________________________</font>"); strBuffer.append("<table align=center>"); strBuffer .append("<tr><td><button value=\"Wind Walk\" action=\"bypass -h npc_%objectId%_getbuff 1204 2\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> <td><button value=\"Mental Shield\" action=\"bypass -h npc_%objectId%_getbuff 1035 4\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> </tr>"); strBuffer .append("<tr><td><button value=\"Shield\" action=\"bypass -h npc_%objectId%_getbuff 1040 3\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> <td><button value=\"Greater Shield\" action=\"bypass -h npc_%objectId%_getbuff 1389 3\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td></tr>"); strBuffer .append("<tr><td><button value=\"Might\" action=\"bypass -h npc_%objectId%_getbuff 1068 3\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> <td><button value=\"Greater Might\" action=\"bypass -h npc_%objectId%_getbuff 1388 3\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td></tr>"); strBuffer .append("<tr><td><button value=\"Blessed Body\" action=\"bypass -h npc_%objectId%_getbuff 1045 6\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> <td><button value=\"Blessed Soul\" action=\"bypass -h npc_%objectId%_getbuff 1048 6\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> </tr>"); strBuffer .append("<tr><td><button value=\"Bless Shield\" action=\"bypass -h npc_%objectId%_getbuff 1243 6\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> <td><button value=\"Advanced Block\" action=\"bypass -h npc_%objectId%_getbuff 1304 3\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> </tr>"); strBuffer .append("<tr><td><button value=\"Concentration\" action=\"bypass -h npc_%objectId%_getbuff 1078 6\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> <td><button value=\"Acumen\" action=\"bypass -h npc_%objectId%_getbuff 1085 3\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> </tr>"); strBuffer .append("<tr><td><button value=\"Wild Magic\" action=\"bypass -h npc_%objectId%_getbuff 1303 2\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> <td><button value=\"Greater Empower\" action=\"bypass -h npc_%objectId%_getbuff 1059 3\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> </tr>"); strBuffer .append("<tr><td><button value=\"Berserker Spirit\" action=\"bypass -h npc_%objectId%_getbuff 1062 2\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> <td><button value=\"Clarity\" action=\"bypass -h npc_%objectId%_getbuff 1397 3\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> </tr>"); strBuffer .append("<tr><td><button value=\"Focus\" action=\"bypass -h npc_%objectId%_getbuff 1077 3\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> <td><button value=\"Death Whisper\" action=\"bypass -h npc_%objectId%_getbuff 1242 3\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> </tr>"); strBuffer .append("<tr><td><button value=\"Vampiric Rage\" action=\"bypass -h npc_%objectId%_getbuff 1268 4\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> <td><button value=\"Haste\" action=\"bypass -h npc_%objectId%_getbuff 1086 2\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> </tr>"); strBuffer .append("<tr><td><button value=\"Guidance\" action=\"bypass -h npc_%objectId%_getbuff 1240 3\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> <td><button value=\"Agility\" action=\"bypass -h npc_%objectId%_getbuff 1087 3\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> </tr></table>"); strBuffer.append("<table align=center>"); strBuffer .append("<tr><td><button value=\"Holy Weapon\" action=\"bypass -h npc_%objectId%_getbuff 1043 1\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> </tr></table>"); } } strBuffer.append("</center></body></html>"); html.setHtml(strBuffer.toString()); html.replace("%objectId%", String.valueOf(getObjectId())); html.replace("%charname%", player.getName()); player.sendPacket(html); } private void showDanceWindow(L2PcInstance player) { NpcHtmlMessage html = new NpcHtmlMessage(1); final StringBuilder strBuffer = StringUtil .startAppend(3500, "<html><title>Buffer By Leki</title><body><centre><img src=l2font-e.mini_logo-e width=180 height=80></centre><center><br>"); if (player.isSitting()) { player.sendMessage("You can't use buffer while you're sitting."); strBuffer.append("Stand up, <font color=\"LEVEL\">%charname%</font>!<br>"); strBuffer.append("How dare you to talk with me while you're sitting?!<br>"); } else if (player.isAlikeDead()) { player.sendMessage("You can't use buffer while you're dead or using fake death."); strBuffer.append("Sadly, <font color=\"LEVEL\">%charname%</font>, you're dead.<br>"); strBuffer.append("I can't offer any support effect for dead people.<br>"); } else if (player.isInCombat()) { player.sendMessage("You can't use buffer while you're in combat."); strBuffer.append("Sadly, <font color=\"LEVEL\">%charname%</font>, I can't serve you.<br>"); strBuffer.append("Came back when you will not be in a combat.<br>"); } else { { strBuffer.append("Welcome, <font color=\"LEVEL\">%charname%</font>!<br>"); strBuffer.append("<img src=\"L2UI_CH3.onscrmsg_pattern01_2\" width=300 height=32 align=center>"); strBuffer.append("<table align=center>"); strBuffer .append("<tr><td><button value=\"Dance of Warrior\" action=\"bypass -h npc_%objectId%_getdance 271 1\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> <td><button value=\"Dance of Fury\" action=\"bypass -h npc_%objectId%_getdance 275 1\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> </tr></table>"); strBuffer.append("<table align=center>"); strBuffer .append("<tr><td><button value=\"Dance of Fire\" action=\"bypass -h npc_%objectId%_getdance 274 1\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> <td><button value=\"Dance of Light\" action=\"bypass -h npc_%objectId%_getdance 277 1\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td></tr></table>"); strBuffer.append("<table align=center>"); strBuffer .append("<tr><td><button value=\"Dance of Insparation\" action=\"bypass -h npc_%objectId%_getdance 272 1\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> <td><button value=\"Dance of Vampire\" action=\"bypass -h npc_%objectId%_getdance 310 1\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> </tr></table>"); strBuffer.append("<table align=center>"); strBuffer .append("<tr><td><button value=\"Dance of Mystic\" action=\"bypass -h npc_%objectId%_getdance 273 1\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> <td><button value=\"Dance of Concentration\" action=\"bypass -h npc_%objectId%_getdance 276 1\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td></tr></table>"); strBuffer.append("<table align=center>"); strBuffer .append("<tr><td><button value=\"Siren's Dance\" action=\"bypass -h npc_%objectId%_getdance 365 1\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> </table>"); strBuffer.append("<img src=\"L2UI_CH3.onscrmsg_pattern01_2\" width=300 height=32 align=center>"); strBuffer .append("<tr><td><button value=\"Go Back\" action=\"bypass -h npc_%objectId%_Main\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td></tr>"); } } strBuffer.append("</center></body></html>"); html.setHtml(strBuffer.toString()); html.replace("%objectId%", String.valueOf(getObjectId())); html.replace("%charname%", player.getName()); player.sendPacket(html); } private void showSongWindow(L2PcInstance player) { NpcHtmlMessage html = new NpcHtmlMessage(1); final StringBuilder strBuffer = StringUtil .startAppend(3500, "<html><title>Buffer By Leki</title><body><center><img src=l2font-e.mini_logo-e width=180 height=80></centre><center><br>"); if (player.isSitting()) { player.sendMessage("You can't use buffer while you're sitting."); strBuffer.append("Stand up, <font color=\"LEVEL\">%charname%</font>!<br>"); strBuffer.append("How dare you to talk with me while you're sitting?!<br>"); } else if (player.isAlikeDead()) { player.sendMessage("You can't use buffer while you're dead or using fake death."); strBuffer.append("Sadly, <font color=\"LEVEL\">%charname%</font>, you're dead.<br>"); strBuffer.append("I can't offer any support effect for dead people.<br>"); } else if (player.isInCombat()) { player.sendMessage("You can't use buffer while you're in combat."); strBuffer.append("Sadly, <font color=\"LEVEL\">%charname%</font>, I can't serve you.<br>"); strBuffer.append("Came back when you will not be in a combat.<br>"); } else { { strBuffer.append("Welcome, <font color=\"LEVEL\">%charname%</font>!<br>"); strBuffer.append("<img src=\"L2UI_CH3.onscrmsg_pattern01_2\" width=300 height=32 align=center>"); strBuffer.append("<table align=center>"); strBuffer .append("<tr><td><button value=\"Song of Earth\" action=\"bypass -h npc_%objectId%_getsong 264 1\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> <td><button value=\"Song of Warding\" action=\"bypass -h npc_%objectId%_getsong 267 1\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> </tr></table>"); strBuffer.append("<table align=center>"); strBuffer .append("<tr><td><button value=\"Song of Vitality\" action=\"bypass -h npc_%objectId%_getsong 304 1\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> <td><button value=\"Song of Hunter\" action=\"bypass -h npc_%objectId%_getsong 269 1\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td></tr></table>"); strBuffer.append("<table align=center>"); strBuffer .append("<tr><td><button value=\"Song of Vengeance\" action=\"bypass -h npc_%objectId%_getsong 305 1\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> <td><button value=\"Song of Meditation\" action=\"bypass -h npc_%objectId%_getsong 363 1\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td></tr></table>"); strBuffer.append("<table align=center>"); strBuffer .append("<tr><td><button value=\"Song of Renewal\" action=\"bypass -h npc_%objectId%_getsong 349 1\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> <td><button value=\"Song of Champion\" action=\"bypass -h npc_%objectId%_getsong 364 1\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> </tr></table>"); strBuffer.append("<table align=center>"); strBuffer .append("<tr><td><button value=\"Song of Wind\" action=\"bypass -h npc_%objectId%_getsong 268 1\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> </tr></table>"); strBuffer.append("<img src=\"L2UI_CH3.onscrmsg_pattern01_2\" width=300 height=32 align=center>"); strBuffer .append("<tr><td><button value=\"Go Back\" action=\"bypass -h npc_%objectId%_Main\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td></tr>"); } } strBuffer.append("</center></body></html>"); html.setHtml(strBuffer.toString()); html.replace("%objectId%", String.valueOf(getObjectId())); html.replace("%charname%", player.getName()); player.sendPacket(html); } private void showPetWindow(L2PcInstance player) { NpcHtmlMessage html = new NpcHtmlMessage(1); final StringBuilder strBuffer = StringUtil .startAppend(3500, "<html><title>Buffer By Leki</title><body><center><img src=l2font-e.mini_logo-e width=180 height=80></centre><center><br>"); if (player.isSitting()) { player.sendMessage("You can't use buffer while you're sitting."); strBuffer.append("Stand up, <font color=\"LEVEL\">%charname%</font>!<br>"); strBuffer.append("How dare you to talk with me while you're sitting?!<br>"); } else if (player.isAlikeDead()) { player.sendMessage("You can't use buffer while you're dead or using fake death."); strBuffer.append("Sadly, <font color=\"LEVEL\">%charname%</font>, you're dead.<br>"); strBuffer.append("I can't offer any support effect for dead people.<br>"); } else if (player.isInCombat()) { player.sendMessage("You can't use buffer while you're in combat."); strBuffer.append("Sadly, <font color=\"LEVEL\">%charname%</font>, I can't serve you.<br>"); strBuffer.append("Came back when you will not be in a combat.<br>"); } else { { strBuffer.append("Welcome, <font color=\"LEVEL\">%charname%</font>!<br>"); strBuffer.append("<img src=\"L2UI_CH3.onscrmsg_pattern01_2\" width=300 height=32 align=left>"); strBuffer.append("<table width=300>"); strBuffer .append("<tr><td><button value=\"Blessing of Queen\" action=\"bypass -h npc_%objectId%_getpet 4699 3\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> <td><button value=\"Gift of Seraphim\" action=\"bypass -h npc_%objectId%_getpet 4703 3\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> </tr>"); strBuffer .append("<tr><td><button value=\"Blessing of Seraphim\" action=\"bypass -h npc_%objectId%_getpet 4702 3\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> <td><button value=\"Gift of Queen\" action=\"bypass -h npc_%objectId%_getpet 4700 3\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td></tr>"); strBuffer.append("</table><img src=\"L2UI_CH3.onscrmsg_pattern01_2\" width=300 height=32 align=left>"); strBuffer .append("<tr><td><button value=\"Go Back\" action=\"bypass -h npc_%objectId%_Main\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td></tr>"); } } strBuffer.append("</center></body></html>"); html.setHtml(strBuffer.toString()); html.replace("%objectId%", String.valueOf(getObjectId())); html.replace("%charname%", player.getName()); player.sendPacket(html); } private void showVIPWindow(L2PcInstance player) { NpcHtmlMessage html = new NpcHtmlMessage(1); final StringBuilder strBuffer = StringUtil.startAppend(3500, "<html><title>Buffer By Leki</title><body><center>"); if (player.isSitting()) { player.sendMessage("You can't use buffer while you're sitting."); strBuffer.append("Stand up, <font color=\"LEVEL\">%charname%</font>!<br>"); strBuffer.append("How dare you to talk with me while you're sitting?!<br>"); } else if (player.isAlikeDead()) { player.sendMessage("You can't use buffer while you're dead or using fake death."); strBuffer.append("Sadly, <font color=\"LEVEL\">%charname%</font>, you're dead.<br>"); strBuffer.append("I can't offer any support effect for dead people.<br>"); } else if (player.isInCombat()) { player.sendMessage("You can't use buffer while you're in combat."); strBuffer.append("Sadly, <font color=\"LEVEL\">%charname%</font>, I can't serve you.<br>"); strBuffer.append("Came back when you will not be in a combat.<br>"); } else { { strBuffer.append("You must have<font color=\"LEVEL\">VIP</font> status to get this buffs!<br>"); strBuffer.append("<img src=\"L2UI_CH3.onscrmsg_pattern01_2\" width=300 height=32 align=center>"); strBuffer.append("<table align=center>"); strBuffer .append("<tr><td><button value=\"Divine Protection\" action=\"bypass -h npc_%objectId%_getvip 1353 1\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> <td><button value=\"Elemental Protection\" action=\"bypass -h npc_%objectId%_getvip 1352 1\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> </tr></table>"); strBuffer.append("<table align=center>"); strBuffer .append("<tr><td><button value=\"Holy Resistance\" action=\"bypass -h npc_%objectId%_getvip 1392 3\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> <td><button value=\"Unholy Resistance\" action=\"bypass -h npc_%objectId%_getvip 1393 3\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td></tr></table>"); strBuffer.append("<table align=center>"); strBuffer .append("<tr><td><button value=\"Arcane Protection\" action=\"bypass -h npc_%objectId%_getvip 1354 1\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> <td><button value=\"Chant of Spirit\" action=\"bypass -h npc_%objectId%_getvip 1362 1\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td></tr></table>"); strBuffer.append("<table align=center>"); strBuffer .append("<tr><td><button value=\"Resist Fire\" action=\"bypass -h npc_%objectId%_getvip 1191 3\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> <td><button value=\"Resist Aqua\" action=\"bypass -h npc_%objectId%_getvip 1182 3\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td></tr></table>"); strBuffer.append("<table align=center>"); strBuffer .append("<tr><td><button value=\"Resist Wind\" action=\"bypass -h npc_%objectId%_getvip 1189 3\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> <td><button value=\"Resist Shock\" action=\"bypass -h npc_%objectId%_getvip 1259 4\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td></tr></table>"); strBuffer.append("<table align=center>"); strBuffer .append("<tr><td><button value=\"Malaria\" action=\"bypass -h npc_%objectId%_getvip 4554 4\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> <td><button value=\"Flu\" action=\"bypass -h npc_%objectId%_getvip 4553 4\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td></tr></table>"); strBuffer.append("<table align=center>"); strBuffer .append("<tr><td><button value=\"Cholera\" action=\"bypass -h npc_%objectId%_getvip 4552 4\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> <td><button value=\"Rheumatism\" action=\"bypass -h npc_%objectId%_getvip 4551 4\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td></tr></table>"); strBuffer.append("<table align=center>"); strBuffer .append("<tr><td><button value=\"Salvation\" action=\"bypass -h npc_%objectId%_getvip 1410 1\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> </tr></table>"); strBuffer.append("<img src=\"L2UI_CH3.onscrmsg_pattern01_2\" width=300 height=32 align=left>"); strBuffer .append("<tr><td><button value=\"Go Back\" action=\"bypass -h npc_%objectId%_Main\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td></tr>"); } } strBuffer.append("</center></body></html>"); html.setHtml(strBuffer.toString()); html.replace("%objectId%", String.valueOf(getObjectId())); html.replace("%charname%", player.getName()); player.sendPacket(html); } private void showProphWindow(L2PcInstance player) { NpcHtmlMessage html = new NpcHtmlMessage(1); final StringBuilder strBuffer = StringUtil .startAppend(3500, "<html><title>Buffer By Leki</title><body><center><img src=l2font-e.mini_logo-e width=180 height=80></centre><center><br>"); if (player.isSitting()) { player.sendMessage("You can't use buffer while you're sitting."); strBuffer.append("Stand up, <font color=\"LEVEL\">%charname%</font>!<br>"); strBuffer.append("How dare you to talk with me while you're sitting?!<br>"); } else if (player.isAlikeDead()) { player.sendMessage("You can't use buffer while you're dead or using fake death."); strBuffer.append("Sadly, <font color=\"LEVEL\">%charname%</font>, you're dead.<br>"); strBuffer.append("I can't offer any support effect for dead people.<br>"); } else if (player.isInCombat()) { player.sendMessage("You can't use buffer while you're in combat."); strBuffer.append("Sadly, <font color=\"LEVEL\">%charname%</font>, I can't serve you.<br>"); strBuffer.append("Came back when you will not be in a combat.<br>"); } else { { strBuffer.append("Welcome, <font color=\"LEVEL\">%charname%</font>!<br>"); strBuffer.append("<img src=\"L2UI_CH3.onscrmsg_pattern01_2\" width=300 height=32 align=center>"); strBuffer.append("<table align=center>"); strBuffer .append("<tr><td><button value=\"Prophecy of Water\" action=\"bypass -h npc_%objectId%_getproph 1355 1\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> <td><button value=\"Magnu's Chant\" action=\"bypass -h npc_%objectId%_getproph 1413 1\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> </tr></table>"); strBuffer.append("<table align=center>"); strBuffer .append("<tr><td><button value=\"Prophecy of Fire\" action=\"bypass -h npc_%objectId%_getproph 1356 1\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> <td><button value=\"Prophecy of Wind\" action=\"bypass -h npc_%objectId%_getproph 1357 1\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td></tr></table>"); strBuffer.append("<table align=center>"); strBuffer .append("<tr><td><button value=\"Chant of Victory\" action=\"bypass -h npc_%objectId%_getproph 1363 1\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> </tr></table>"); strBuffer.append("<img src=\"L2UI_CH3.onscrmsg_pattern01_2\" width=300 height=32 align=left>"); strBuffer .append("<tr><td><button value=\"Go Back\" action=\"bypass -h npc_%objectId%_Main\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td></tr>"); } } strBuffer.append("</center></body></html>"); html.setHtml(strBuffer.toString()); html.replace("%objectId%", String.valueOf(getObjectId())); html.replace("%charname%", player.getName()); player.sendPacket(html); } private void showMainWindow(L2PcInstance player) { NpcHtmlMessage html = new NpcHtmlMessage(1); final StringBuilder strBuffer = StringUtil .startAppend(3500, "<html><title>Buffer By Leki</title><body><center><img src=l2font-e.mini_logo-e width=180 height=80></centre><center><br>"); if (player.isSitting()) { player.sendMessage("You can't use buffer while you're sitting."); strBuffer.append("Stand up, <font color=\"LEVEL\">%charname%</font>!<br>"); strBuffer.append("How dare you to talk with me while you're sitting?!<br>"); } else if (player.isAlikeDead()) { player.sendMessage("You can't use buffer while you're dead or using fake death."); strBuffer.append("Sadly, <font color=\"LEVEL\">%charname%</font>, you're dead.<br>"); strBuffer.append("I can't offer any support effect for dead people.<br>"); } else if (player.isInCombat()) { player.sendMessage("You can't use buffer while you're in combat."); strBuffer.append("Sadly, <font color=\"LEVEL\">%charname%</font>, I can't serve you.<br>"); strBuffer.append("Came back when you will not be in a combat.<br>"); } else { { strBuffer.append("Welcome, <font color=\"LEVEL\">%charname%</font>!<br>"); strBuffer.append("Here is the list of all available effects:<br>"); strBuffer.append("<img src=\"L2UI_CH3.onscrmsg_pattern01_2\" width=300 height=32 align=center>"); strBuffer.append("<table align=center>"); strBuffer .append("<tr><td><button value=\"Buffs\" action=\"bypass -h npc_%objectId%_buffs\" width=\"75\" height=\"21\" back=\"L2UI_ch3.Btn1_normalOn\" fore=\"L2UI_ch3.Btn1_normal\"></td> <td><button value=\"Prophecies\" action=\"bypass -h npc_%objectId%_proph\" width=\"75\" height=\"21\" back=\"L2UI_ch3.Btn1_normalOn\" fore=\"L2UI_ch3.Btn1_normal\"></td><td><button value=\"Pet Buff\" action=\"bypass -h npc_%objectId%_pet\" width=\"75\" height=\"21\" back=\"L2UI_ch3.Btn1_normalOn\" fore=\"L2UI_ch3.Btn1_normal\"></td> </tr></table>"); strBuffer.append("<table align=center>"); strBuffer .append("<font color=\"B8B8B8\" align=\"center\">___________________________________________</font>"); strBuffer .append("<tr><td><button value=\"Dance\" action=\"bypass -h npc_%objectId%_dance\" width=\"75\" height=\"21\" back=\"L2UI_ch3.Btn1_normalOn\" fore=\"L2UI_ch3.Btn1_normal\"></td><td><button value=\"Song\" action=\"bypass -h npc_%objectId%_song\" width=\"75\" height=\"21\" back=\"L2UI_ch3.Btn1_normalOn\" fore=\"L2UI_ch3.Btn1_normal\"></td> </tr></table>"); strBuffer.append("<table align=center>"); strBuffer .append("<font color=\"B8B8B8\" align=\"center\">___________________________________________</font>"); strBuffer .append("<tr><td><button value=\"Heavy\" action=\"bypass -h npc_%objectId%_heavy\" width=\"75\" height=\"21\" back=\"L2UI_ch3.Btn1_normalOn\" fore=\"L2UI_ch3.Btn1_normal\"></td> <td><button value=\"Light\" action=\"bypass -h npc_%objectId%_light\" width=\"75\" height=\"21\" back=\"L2UI_ch3.Btn1_normalOn\" fore=\"L2UI_ch3.Btn1_normal\"></td><td><button value=\"Mage\" action=\"bypass -h npc_%objectId%_mage\" width=\"75\" height=\"21\" back=\"L2UI_ch3.Btn1_normalOn\" fore=\"L2UI_ch3.Btn1_normal\"></td> </tr></table>"); strBuffer.append("<img src=\"L2UI_CH3.onscrmsg_pattern01_2\" width=300 height=32 align=center>"); strBuffer.append("<table align=center>"); strBuffer .append("<tr><td><button value=\"HP/MP/CP\" action=\"bypass -h npc_%objectId%_restore\" width=\"75\" height=\"21\" back=\"L2UI_ch3.Btn1_normalOn\" fore=\"L2UI_ch3.Btn1_normal\"></td><td><button value=\"Cancel\" action=\"bypass -h npc_%objectId%_cancel\" width=\"75\" height=\"21\" back=\"L2UI_ch3.Btn1_normalOn\" fore=\"L2UI_ch3.Btn1_normal\"></td> </tr></table>"); strBuffer.append("<table align=center>"); strBuffer .append("<font color=\"B8B8B8\" align=\"center\">___________________________________________</font>"); strBuffer .append("<tr><td><button value=\"VIP Buff\" action=\"bypass -h npc_%objectId%_vip\" width=\"134\" height=\"21\" back=\"L2UI_ch3.BigButton3_over\" fore=\"L2UI_ch3.BigButton3\"></td> </tr></table>"); } } strBuffer.append("</center></body></html>"); html.setHtml(strBuffer.toString()); ; html.replace("%objectId%", String.valueOf(getObjectId())); html.replace("%charname%", player.getName()); player.sendPacket(html); } } Here is the xml for npc if you want <npc id="50100" idTemplate="29062" name="Buffer" title="By Leki"> <set name="level" val="70"/> <set name="radius" val="9"/> <set name="height" val="21.3"/> <set name="rHand" val="8151"/> <set name="lHand" val="0"/> <set name="type" val="L2Buff"/> <set name="exp" val="0"/> <set name="sp" val="0"/> <set name="hp" val="2444.46819"/> <set name="mp" val="1345.8"/> <set name="hpRegen" val="7.5"/> <set name="mpRegen" val="2.7"/> <set name="pAtk" val="688.86373"/> <set name="pDef" val="295.91597"/> <set name="mAtk" val="470.40463"/> <set name="mDef" val="216.53847"/> <set name="crit" val="4"/> <set name="atkSpd" val="253"/> <set name="str" val="40"/> <set name="int" val="21"/> <set name="dex" val="30"/> <set name="wit" val="20"/> <set name="con" val="43"/> <set name="men" val="20"/> <set name="corpseTime" val="7"/> <set name="walkSpd" val="50"/> <set name="runSpd" val="120"/> <set name="dropHerbGroup" val="0"/> <set name="attackRange" val="40"/> </npc> Caution: Buffer includes buffs for VIP members,each buff costs 50 Coin If you don't have VIP system just remove that button.
-
yes i know i tried several times, copied examples from olympiad and changed but i failed :(
-
Thank you. and one more pleasure. I want to make seconds count after game is finished to count from 10 to 1 and then teleport players. not instantly. Is it possible?
-
Help Create Summon
Gam3Master replied to Gam3Master's question in Request Server Development Help [L2J]
First I went and created new npc <npc id="50108" idTemplate="20965" name="White Tiger" title=""> <set name="level" val="80"/> <set name="radius" val="13"/> <set name="height" val="22"/> <set name="rHand" val="0"/> <set name="lHand" val="0"/> <set name="type" val="L2Pet"/> <set name="exp" val="0"/> <set name="sp" val="0"/> <set name="hp" val="2802.89989"/> <set name="mp" val="1607.4"/> <set name="hpRegen" val="8.5"/> <set name="mpRegen" val="3"/> <set name="pAtk" val="297.05"/> <set name="pDef" val="332.70061"/> <set name="mAtk" val="584.40994"/> <set name="mDef" val="243.45587"/> <set name="crit" val="4"/> <set name="atkSpd" val="253"/> <set name="str" val="40"/> <set name="int" val="21"/> <set name="dex" val="30"/> <set name="wit" val="20"/> <set name="con" val="43"/> <set name="men" val="25"/> <set name="corpseTime" val="7"/> <set name="walkSpd" val="26"/> <set name="runSpd" val="170"/> <set name="dropHerbGroup" val="0"/> <set name="attackRange" val="40"/> <ai type="default" ssCount="3" ssRate="0" spsCount="2" spsRate="0" aggro="0" canMove="true" seedable="false"/> <skills> <skill id="7098" level="1"/> </skills> </npc> New skills <skill id="7098" levels="1" name="White Tiger's Heal"> <table name="#aggro"> 33 34 35 36 37 38 39 40 41 42 43 44 </table> <set name="mpConsume" val="50" /> <set name="power" val="500" /> <set name="magicLvl" val="100" /> <set name="target" val="TARGET_OWNER_PET" /> <set name="skillType" val="HEAL" /> <set name="hitTime" val="3000" /> <set name="coolTime" val="1000" /> <set name="reuseDelay" val="6000" /> <set name="operateType" val="OP_ACTIVE" /> <set name="isMagic" val="true" /> <set name="aggroPoints" val="#aggro" /> </skill> <skill id="7099" levels="1" name="Summon White Tiger" enchantLevels1="30"> <table name="#mpInitialConsume"> 14 16 18 19 21 22 22 23 24 25 26 26 27 28 </table> <table name="#mpConsume"> 56 62 69 75 82 85 88 92 95 98 101 104 106 109 </table> <table name="#itemConsumeCount"> 1 1 1 2 2 2 2 2 3 3 3 3 4 4 </table> <table name="#itemConsumeCountOT"> 1 1 1 1 1 1 2 2 2 2 3 3 3 3 </table> <set name="mpInitialConsume" val="#mpInitialConsume"/> <set name="mpConsume" val="#mpConsume"/> <set name="itemConsumeId" val="4037"/> <set name="itemConsumeCount" val="#itemConsumeCount" /> <set name="itemConsumeIdOT" val="4037"/> <set name="itemConsumeCountOT" val="#itemConsumeCountOT"/> <set name="itemConsumeSteps" val="14"/> <set name="summonTotalLifeTime" val="1200000"/> <set name="summonTimeLostIdle" val="500"/> <set name="summonTimeLostActive" val="1000"/> <set name="target" val="TARGET_SELF"/> <set name="reuseDelay" val="20000"/> <set name="hitTime" val="10000"/> <set name="skillType" val="SUMMON"/> <set name="isMagic" val="true"/> <set name="operateType" val="OP_ACTIVE"/> <!-- Summon-specific --> <set name="npcId" val="50108" /> <set name="expPenalty" val="0.1" /> </skill> To source in RequestActionUse.java case 1041: // White Tiger by leki useSkill(7098, target); break; and in client side actionname-e and skill dat files but i can't see skill -
Help Create Summon
Gam3Master replied to Gam3Master's question in Request Server Development Help [L2J]
Interlude/aCis -
Hello. Today I thought if it is possible to create summon skill and tried. I created skill with type SUMMON, wrote id of npc which I want to summon, created new npc with skills and logged to game. I summoned npc no problem, but it has no skills, I tried everything but it doesn't have skills. Can you help me?
-
Help Enable All Skills
Gam3Master replied to Gam3Master's question in Request Server Development Help [L2J]
thank you it worked. You can close topic -
Help Enable All Skills
Gam3Master replied to Gam3Master's question in Request Server Development Help [L2J]
I use interlude aCis. it doesn't have methods like that -
hello. I want to make skill reuse 0 when you finish olympiad game and teleport to town. I mean, if you used for example COV and it has big reuse delay, when you finish game skill must be enablad. Is it possible?
-
Is it possible to make them in couples?
-
Is it possible to make Two handed weapons into One handed? I mean for example Dragon Slayer to make into one handed sword?
-
Help Exolympiaduserinfo
Gam3Master replied to Gam3Master's question in Request Server Development Help [L2J]
I used l2jpes but nevermind... too many mistakes in codes... close the topic please -
Hello. I use interlude project based on aCis and when i tested Olympiad i had some problems. 1.There was no countdown before game started. fixed 2.You have to push ctrl+attack to attack player. fixed 3.Windows which shows your opponents cp/hp don't work I can't fix third one and can anyone help me with that? I think it is problem of ExOlympiadUserInfo. public class ExOlympiadUserInfo extends L2GameServerPacket { private final L2PlayerInstance _player; private Participant _par = null; private int _curHp; private int _maxHp; private int _curCp; private int _maxCp; public ExOlympiadUserInfo(L2PlayerInstance player) { _player = player; if (_player != null) { _curHp = (int)_player.getCurrentHp(); _maxHp = _player.getMaxHp(); _curCp = (int)_player.getCurrentCp(); _maxCp = _player.getMaxCp(); } else { _curHp = 0; _maxHp = 100; _curCp = 0; _maxCp = 100; } } public ExOlympiadUserInfo(Participant par) { _par = par; _player = par.player; if (_player != null) { _curHp = (int)_player.getCurrentHp(); _maxHp = _player.getMaxHp(); _curCp = (int)_player.getCurrentCp(); _maxCp = _player.getMaxCp(); } else { _curHp = 0; _maxHp = 100; _curCp = 0; _maxCp = 100; } } @Override protected final void writeImpl() { writeC(0xfe); writeH(0x29); if (_player != null) { writeC(_player.getOlympiadSide()); writeD(_player.getObjectId()); writeS(_player.getName()); writeD(_player.getClassId().getId()); } else { writeC(_par.side); writeD(_par.objectId); writeS(_par.name); writeD(_par.baseClass); } writeD(_curHp); writeD(_maxHp); writeD(_curCp); writeD(_maxCp); } }
-
Help Respawn Raidboss
Gam3Master replied to Gam3Master's question in Request Server Development Help [L2J]
I just changed method in php. thanks fro help. close -
Help Respawn Raidboss
Gam3Master replied to Gam3Master's question in Request Server Development Help [L2J]
So you mean I just have to make condition if real time > respawn time RB is alive else show respawn? -
Hello. So i have this problem: I applied patch for raid boss respawn info npc. It work's perfectly, shows when is respawn and in time RB spawns, it updates information on npc html. BUT in mysql, raidboss_spawnlist column respawn_time is not setting 0. It remains the time it should respawned and when i kill next time it just is updated. Problem is that I use web script which has statistic page and as respawn_time is not updating it shows fake respawn time. what is your advice? I use source of modificated aCis version.
-
Share Lineage 2 Website
Gam3Master replied to Katherine's topic in Website Templates & Themes (Free)
When I am on statistics and Raid boss, grand boss respawn time is shown as 01/01/1970 00:00:00 and how can i fix it? -
Continious Skills
Gam3Master replied to Gam3Master's question in Request Server Development Help [L2J]
Please close already fixed it. If someone will need it: ### Eclipse Workspace Patch 1.0 #P L2jFrozen_GameServer Index: head-src/com/l2jfrozen/gameserver/model/L2Character.java =================================================================== --- head-src/com/l2jfrozen/gameserver/model/L2Character.java (revision 1118) +++ head-src/com/l2jfrozen/gameserver/model/L2Character.java (working copy) @@ -1975,7 +1975,7 @@ */ // Like L2OFF after a skill the player must stop the movement, also with toggle - if (!skill.isPotion() && this instanceof L2PcInstance) + if (!skill.isPotion() && this instanceof L2PcInstance && !skill.isToggle()) ((L2PcInstance) this).stopMove(null); -
thanks for help i did it! close the topic
-
yes but i can't make it background transperent. I think i must make some alpha channels but i am noob. When i make simple transperent background and import in utx it is not transperent in game.
-
you misunderstood me. I want to draw new one which must have transperent background
-
Hello. I use l2jfrozen last source and i am having problem with continious skills. Such as Vicious stance. When you walking or attacking and you turn it on, character stops to act. i mean when it walks it stops to walk and when you are in combat and attacking you stop. can you tell me how to fix or how to start?
-
Hello Maxcheaters. I have read how to change loading screen and succeed to make my loading screen but can you tell me how, or show me tutorial how to change mini.logo-e file? i mean this logo on the left top side.