-
Total de itens
510 -
Registro em
-
Última visita
-
Prêmios recebidos
7
Tudo que -= JRGames =- postou
-
Segue em Anexo NPC Shop Low Rate.rar
-
o que você quer então e uma proteção para conta tem 2 aqui no fórum que já vi em vários servidores. este pin code esta para frozen mais vou deixa a versão original dele na Acis pra você aqui. ### Eclipse Workspace Patch 1.0 #P acis Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestBypassToServer.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestBypassToServer.java (revision 38) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestBypassToServer.java (working copy) @@ -2200,6 +2200,124 @@ else activeChar.sendMessage("12 hours have to pass till you are able to vote again."); } + else if (_command.startsWith("submitpin")) + { + try + { + String value = _command.substring(9); + StringTokenizer s = new StringTokenizer(value," "); + int _pin = activeChar.getPin(); + + + try + { + if(activeChar.getPincheck()) + { + _pin = Integer.parseInt(s.nextToken()); + + + + if(Integer.toString(_pin).length() != 4) + { + activeChar.sendMessage("You have to fill the pin box with 4 numbers.Not more, not less."); + return; + } + + Connection con = null; + try + { + con = L2DatabaseFactory.getInstance().getConnection(); + PreparedStatement statement = con.prepareStatement("UPDATE characters SET pin=? WHERE obj_id=?"); + + statement.setInt(1, _pin); + statement.setInt(2, activeChar.getObjectId()); + statement.execute(); + statement.close(); + activeChar.setPincheck(false); + activeChar.updatePincheck(); + activeChar.sendMessage("You successfully submitted your pin code.You will need it in order to login."); + activeChar.sendMessage("Your Pin Code is: " + _pin ); + } + catch(Exception e) + { + e.printStackTrace(); + _log.warning("could not set char first login:" + e); + } + finally + { + L2DatabaseFactory.close(con); + } + } + } + catch(Exception e) + { + activeChar.sendMessage("The Pin Code must be 4 numbers."); + } + } + catch(Exception e) + { + activeChar.sendMessage("The Pin Code must be 4 numbers."); + } + + } + else if(_command.startsWith("enterpin")) + { + try + { + String value = _command.substring(8); + StringTokenizer s = new StringTokenizer(value," "); + int dapin = 0; + int pin = 0; + + dapin = Integer.parseInt(s.nextToken()); + + Connection con = null; + PreparedStatement statement = null; + try + { + con = L2DatabaseFactory.getInstance().getConnection(); + + statement = con.prepareStatement("SELECT pin FROM characters WHERE obj_Id=?"); + statement.setInt(1, activeChar.getObjectId()); + + ResultSet rset = statement.executeQuery(); + + while (rset.next()) + { + pin = rset.getInt("pin"); + } + + if(pin == dapin) + { + activeChar.sendMessage("Pin Code Authenticated Successfully.You are now free to move."); + activeChar.setIsImmobilized(false); + } + else + { + activeChar.sendMessage("Pin Code does not match with the submitted one.You will now get disconnected!"); + waitS(2); + activeChar.logout(); + } + } + catch (Exception e) + { + + activeChar.sendMessage("The Pin Code must be 4 numbers."); + } + finally + { + L2DatabaseFactory.close(con); + } + } + catch (Exception e) + { + //e.printStackTrace(); + activeChar.sendMessage("The Pin Code MUST be 4 numbers."); + } + + + + } else if (_command.startsWith("votereward1")) { activeChar.addItem("reward", Config.VOTE_REWARD_ID1, Config.VOTE_REWARD_AMOUNT1, activeChar, true); Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/EnterWorld.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/EnterWorld.java (revision 28) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/EnterWorld.java (working copy) @@ -429,6 +429,44 @@ + if(!activeChar.getPincheck()) + { + activeChar.setIsImmobilized(true); + TextBuilder tb = new TextBuilder(); + NpcHtmlMessage html = new NpcHtmlMessage(1); + + tb.append("<html><head><title>Character Pin Panel</title></head>"); + tb.append("<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\">Pin Panel</font>"); + tb.append("<br1><font color=\"00FF00\">"+activeChar.getName()+"</font>, use this interface to enable pin secirity.</td></tr></table></center>"); + tb.append("<center>"); + tb.append("<img src=\"l2ui_ch3.herotower_deco\" width=256 height=32 align=center><br>"); + tb.append("</center>"); + tb.append("<table width=\"350\" cellpadding=\"5\" bgcolor=\"000000\">"); + tb.append("<tr>"); + tb.append("<td width=\"45\" valign=\"top\" align=\"center\"><img src=\"Icon.etc_old_key_i02\" width=\"32\" height=\"32\"></td>"); + tb.append("<td valign=\"top\">Please enter your PIN:<edit var=\"dapin\" width=80 height=15>"); + tb.append("<br1>info or something (can delete)</td>"); + tb.append("</tr>"); + tb.append("</table>"); + tb.append("<br>"); + tb.append("<center>"); + tb.append("<button value=\"Submit\" action=\"bypass -h enterpin $dapin\" width=75 height=21 back=\"L2UI_ch3.Btn1_normalOn\" fore=\"L2UI_ch3.Btn1_normal\">"); + 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\">By Elfocrash</font>"); + tb.append("</center>"); + tb.append("</body></html>"); + + html.setHtml(tb.toString()); + activeChar.sendPacket(html); + } + PetitionManager.getInstance().checkPetitionMessages(activeChar); // no broadcast needed since the player will already spawn dead to others Index: aCis_datapack/sql/pinsystemtables.sql =================================================================== --- aCis_datapack/sql/pinsystemtables.sql (revision 0) +++ aCis_datapack/sql/pinsystemtables.sql (revision 0) @@ -0,0 +1,2 @@ +ALTER TABLE `characters` ADD `pin` int(4) DEFAULT NULL; +ALTER TABLE `characters` ADD `pinsubmited` int(4) DEFAULT 1; \ No newline at end of file Index: aCis_gameserver/java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java (revision 38) +++ aCis_gameserver/java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java (working copy) @@ -256,7 +256,7 @@ // Character SQL String Definitions: private static final String INSERT_CHARACTER = "INSERT INTO characters (account_name,obj_Id,char_name,level,maxHp,curHp,maxCp,curCp,maxMp,curMp,face,hairStyle,hairColor,sex,exp,sp,karma,pvpkills,pkkills,clanid,race,classid,deletetime,cancraft,title,accesslevel,online,isin7sdungeon,clan_privs,wantspeace,base_class,nobless,power_grade,last_recom_date) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)"; private static final String UPDATE_CHARACTER = "UPDATE characters SET level=?,maxHp=?,curHp=?,maxCp=?,curCp=?,maxMp=?,curMp=?,face=?,hairStyle=?,hairColor=?,sex=?,heading=?,x=?,y=?,z=?,exp=?,expBeforeDeath=?,sp=?,karma=?,pvpkills=?,pkkills=?,rec_have=?,rec_left=?,clanid=?,race=?,classid=?,deletetime=?,title=?,accesslevel=?,online=?,isin7sdungeon=?,clan_privs=?,wantspeace=?,base_class=?,onlinetime=?,punish_level=?,punish_timer=?,nobless=?,power_grade=?,subpledge=?,last_recom_date=?,lvl_joined_academy=?,apprentice=?,sponsor=?,varka_ketra_ally=?,clan_join_expiry_time=?,clan_create_expiry_time=?,char_name=?,death_penalty_level=? WHERE obj_id=?"; - private static final String RESTORE_CHARACTER = "SELECT account_name, obj_Id, char_name, level, maxHp, curHp, maxCp, curCp, maxMp, curMp, face, hairStyle, hairColor, sex, heading, x, y, z, exp, expBeforeDeath, sp, karma, pvpkills, pkkills, clanid, race, classid, deletetime, cancraft, title, rec_have, rec_left, accesslevel, online, char_slot, lastAccess, clan_privs, wantspeace, base_class, onlinetime, isin7sdungeon, punish_level, punish_timer, nobless, power_grade, subpledge, last_recom_date, lvl_joined_academy, apprentice, sponsor, varka_ketra_ally,clan_join_expiry_time,clan_create_expiry_time,death_penalty_level,first_log,lastVoteHopzone,lastVoteTopzone FROM characters WHERE obj_id=?"; + private static final String RESTORE_CHARACTER = "SELECT account_name, obj_Id, char_name, level, maxHp, curHp, maxCp, curCp, maxMp, curMp, face, hairStyle, hairColor, sex, heading, x, y, z, exp, expBeforeDeath, sp, karma, pvpkills, pkkills, clanid, race, classid, deletetime, cancraft, title, rec_have, rec_left, accesslevel, online, char_slot, lastAccess, clan_privs, wantspeace, base_class, onlinetime, isin7sdungeon, punish_level, punish_timer, nobless, power_grade, subpledge, last_recom_date, lvl_joined_academy, apprentice, sponsor, varka_ketra_ally,clan_join_expiry_time,clan_create_expiry_time,death_penalty_level,first_log,lastVoteHopzone,lastVoteTopzone,pinsubmited,pin FROM characters WHERE obj_id=?"; // Character Subclass SQL String Definitions: private static final String RESTORE_CHAR_SUBCLASSES = "SELECT class_id,exp,sp,level,class_index FROM character_subclasses WHERE char_obj_id=? ORDER BY class_index ASC"; @@ -382,7 +382,8 @@ private int _charId = 0x00030b7a; private boolean _first_log; - + public boolean _pincheck; + public int _pin; private int killcounttillenchant = 0; private long _expBeforeDeath; @@ -6487,6 +6488,35 @@ return _first_log; } + public void setPincheck(boolean pincheck) + { + _pincheck = pincheck; + } + + public void setPincheck(int pincheck) + { + _pincheck = false; + if(pincheck == 1) + { + _pincheck = true; + } + } + + public boolean getPincheck() + { + return _pincheck; + } + + public void setPin(int pin) + { + _pin = pin; + } + + public int getPin() + { + return _pin; + } + /** * Return True if the L2PcInstance is a GM. */ @@ -6717,6 +6749,40 @@ } } + public void updatePincheck() + { + Connection con = null; + try + { + con = L2DatabaseFactory.getInstance().getConnection(); + PreparedStatement statement = con.prepareStatement("UPDATE characters SET pinsubmited=? WHERE obj_id=?"); + + + + int _pin; + if(getPincheck()) + { + _pin = 1; + } + else + { + _pin = 0; + } + statement.setInt(1, _pin); + statement.setInt(2, getObjectId()); + statement.execute(); + statement.close(); + } + catch(Exception e) + { + e.printStackTrace(); + _log.warning("could not set char first login:" + e); + } + finally + { + L2DatabaseFactory.close(con); + } + } /** * Create a new player in the characters table of the database. @@ -6832,6 +6898,8 @@ player.setFirstLog(rset.getInt("first_log")); + player.setPincheck(rset.getInt("pinsubmited")); + player.setPin(rset.getInt("pin")); player.setKarma(rset.getInt("karma")); player.setPvpKills(rset.getInt("pvpkills")); player.setPkKills(rset.getInt("pkkills")); Index: aCis_datapack/tools/database_installer.bat =================================================================== --- aCis_datapack/tools/database_installer.bat (revision 37) +++ aCis_datapack/tools/database_installer.bat (working copy) @@ -110,6 +110,7 @@ %mysqlPath% -h %gshost% -u %gsuser% --password=%gspass% -D %gsdb% < ../sql/seven_signs_status.sql %mysqlPath% -h %gshost% -u %gsuser% --password=%gspass% -D %gsdb% < ../sql/siege_clans.sql %mysqlPath% -h %gshost% -u %gsuser% --password=%gspass% -D %gsdb% < ../sql/topic.sql +%mysqlPath% -h %gshost% -u %gsuser% --password=%gspass% -D %gsdb% < ../sql/pinsystemtables.sql echo Done. echo. Index: aCis_gameserver/java/net/sf/l2j/gameserver/handler/voicedcommandhandlers/Pin.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/handler/voicedcommandhandlers/Pin.java (revision 0) +++ aCis_gameserver/java/net/sf/l2j/gameserver/handler/voicedcommandhandlers/Pin.java (revision 0) @@ -0,0 +1,85 @@ +/* + * 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 3 of the License, 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, see <[Hidden Content];. + */ +package net.sf.l2j.gameserver.handler.voicedcommandhandlers; + +import javolution.text.TextBuilder; + + +import net.sf.l2j.gameserver.network.serverpackets.NpcHtmlMessage; +import net.sf.l2j.gameserver.handler.IVoicedCommandHandler; +import net.sf.l2j.gameserver.model.L2World; +import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance; + +public class Pin implements IVoicedCommandHandler +{ + private static String[] _voicedCommands = + { + "pincode" + }; + + @Override + public boolean useVoicedCommand(String command, L2PcInstance activeChar, String target) + { + if(command.equalsIgnoreCase("pincode")) + { + if(activeChar.getPincheck()) + { + TextBuilder tb = new TextBuilder(); + NpcHtmlMessage html = new NpcHtmlMessage(1); + + tb.append("<html><head><title>Character Pin Panel</title></head>"); + tb.append("<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\">Pin Panel</font>"); + tb.append("<br1><font color=\"00FF00\">"+activeChar.getName()+"</font>, use this interface to enable pin secirity.</td></tr></table></center>"); + tb.append("<center>"); + tb.append("<img src=\"l2ui_ch3.herotower_deco\" width=256 height=32 align=center><br>"); + tb.append("</center>"); + tb.append("<table width=\"350\" cellpadding=\"5\" bgcolor=\"000000\">"); + tb.append("<tr>"); + tb.append("<td width=\"45\" valign=\"top\" align=\"center\"><img src=\"Icon.etc_old_key_i02\" width=\"32\" height=\"32\"></td>"); + tb.append("<td valign=\"top\">Please enter your PIN:<edit var=\"pin\" width=80 height=15>"); + tb.append("<br1>info or something (can delete)</td>"); + tb.append("</tr>"); + tb.append("</table>"); + tb.append("<br>"); + tb.append("<center>"); + tb.append("<button value=\"Submit\" action=\"bypass -h submitpin $pin\" width=75 height=21 back=\"L2UI_ch3.Btn1_normalOn\" fore=\"L2UI_ch3.Btn1_normal\">"); + 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\">By Elfocrash</font>"); + tb.append("</center>"); + tb.append("</body></html>"); + + html.setHtml(tb.toString()); + activeChar.sendPacket(html); + } + else + activeChar.sendMessage("You have already submitted a Pin code"); + + } + return true; + } + + @Override + public String[] getVoicedCommandList() + { + return _voicedCommands; + } +} Index: aCis_gameserver/java/net/sf/l2j/gameserver/handler/VoicedCommandHandler.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/handler/VoicedCommandHandler.java (revision 28) +++ aCis_gameserver/java/net/sf/l2j/gameserver/handler/VoicedCommandHandler.java (working copy) @@ -32,6 +32,7 @@ import net.sf.l2j.gameserver.handler.voicedcommandhandlers.Online; import net.sf.l2j.gameserver.handler.voicedcommandhandlers.StriderRaceCMD; import net.sf.l2j.gameserver.handler.voicedcommandhandlers.PvpRewardPanel; +import net.sf.l2j.gameserver.handler.voicedcommandhandlers.Pin; import net.sf.l2j.gameserver.handler.voicedcommandhandlers.ReportToAdmin; import net.sf.l2j.gameserver.handler.voicedcommandhandlers.VoicedKino; import net.sf.l2j.gameserver.handler.voicedcommandhandlers.VotePanel; @@ -69,6 +70,7 @@ registerVoicedCommandHandler(new ReportToAdmin()); registerVoicedCommandHandler(new StriderRaceCMD()); registerVoicedCommandHandler(new BuffShopHandler()); + registerVoicedCommandHandler(new Pin()); if(Config.PVP_REWARD_SYSTEM_ENABLED) registerVoicedCommandHandler(new PvpRewardPanel()); Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestBypassToServer.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestBypassToServer.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestBypassToServer.java (working copy) @@ -2291,6 +2291,7 @@ { activeChar.sendMessage("Pin Code Authenticated Successfully.You are now free to move."); activeChar.setIsImmobilized(false); + activeChar.setIsSubmitingPin(false); } else { Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/SetPrivateStoreListBuy.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/SetPrivateStoreListBuy.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/SetPrivateStoreListBuy.java (working copy) @@ -75,6 +75,12 @@ return; } + if (player.isSubmitingPin()) + { + player.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + if (AttackStanceTaskManager.getInstance().getAttackStanceTask(player) || (player.isCastingNow() || player.isCastingSimultaneouslyNow()) || player.isInDuel()) { player.sendPacket(SystemMessageId.YOU_ARE_NOT_AUTHORIZED_TO_DO_THAT); Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/TradeRequest.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/TradeRequest.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/TradeRequest.java (working copy) @@ -61,6 +61,12 @@ return; } + if (player.isSubmitingPin() || target.isSubmitingPin()) + { + player.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + // Alt game - Karma punishment if (!Config.KARMA_PLAYER_CAN_TRADE && (player.getKarma() > 0 || target.getKarma() > 0)) { Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/SendWareHouseWithDrawList.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/SendWareHouseWithDrawList.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/SendWareHouseWithDrawList.java (working copy) @@ -82,6 +82,12 @@ player.sendPacket(SystemMessageId.ENCHANT_SCROLL_CANCELLED); } + if (player.isSubmitingPin()) + { + player.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + final ItemContainer warehouse = player.getActiveWarehouse(); if (warehouse == null) return; Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestJoinAlly.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestJoinAlly.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestJoinAlly.java (working copy) @@ -45,6 +45,12 @@ return; } + if (activeChar.isSubmitingPin()) + { + activeChar.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + final L2PcInstance target = L2World.getInstance().getPlayer(_id); if (target == null) { Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/TradeDone.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/TradeDone.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/TradeDone.java (working copy) @@ -73,6 +73,12 @@ return; } + if (player.isSubmitingPin()) + { + player.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + // Sender under enchant process, close it. if (owner.getActiveEnchantItem() != null) { Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestStopPledgeWar.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestStopPledgeWar.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestStopPledgeWar.java (working copy) @@ -51,6 +51,12 @@ return; } + if (player.isSubmitingPin()) + { + player.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + if (!playerClan.isAtWarWith(clan.getClanId())) { player.sendPacket(SystemMessageId.NOT_INVOLVED_IN_WAR); Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestWithDrawalParty.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestWithDrawalParty.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestWithDrawalParty.java (working copy) @@ -40,6 +40,12 @@ if (party == null) return; + if (player.isSubmitingPin()) + { + player.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + if (party.isInDimensionalRift() && !party.getDimensionalRift().getRevivedAtWaitingRoom().contains(player)) player.sendMessage("You can't exit party when you are in Dimensional Rift."); else Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestPetition.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestPetition.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestPetition.java (working copy) @@ -51,6 +51,12 @@ if (activeChar == null) return; + if (activeChar.isSubmitingPin()) + { + activeChar.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + if (!GmListTable.getInstance().isGmOnline(false)) { activeChar.sendPacket(SystemMessageId.NO_GM_PROVIDING_SERVICE_NOW); Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestShowMiniMap.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestShowMiniMap.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestShowMiniMap.java (working copy) @@ -31,6 +31,12 @@ if (activeChar == null) return; + if (activeChar.isSubmitingPin()) + { + activeChar.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + activeChar.sendPacket(ShowMiniMap.REGULAR_MAP); } } \ No newline at end of file Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/SendWareHouseDepositList.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/SendWareHouseDepositList.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/SendWareHouseDepositList.java (working copy) @@ -74,6 +74,12 @@ return; } + if (player.isSubmitingPin()) + { + player.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + if (player.getActiveEnchantItem() != null) { player.setActiveEnchantItem(null); Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestDismissAlly.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestDismissAlly.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestDismissAlly.java (working copy) @@ -31,6 +31,13 @@ if (activeChar == null) return; + if (activeChar.isSubmitingPin()) + { + activeChar.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + + if (!activeChar.isClanLeader()) { activeChar.sendPacket(SystemMessageId.FEATURE_ONLY_FOR_ALLIANCE_LEADER); Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestPrivateStoreBuy.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestPrivateStoreBuy.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestPrivateStoreBuy.java (working copy) @@ -39,6 +39,7 @@ if (count <= 0 || count > Config.MAX_ITEM_IN_PACKET || count * BATCH_LENGTH != _buf.remaining()) return; + _items = new FastSet<ItemRequest>(); for (int i = 0; i < count; i++) @@ -74,6 +75,12 @@ if (player.isCursedWeaponEquipped()) return; + if (player.isSubmitingPin()) + { + player.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + if (!player.isInsideRadius(storePlayer, 150, true, false)) return; Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestSocialAction.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestSocialAction.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestSocialAction.java (working copy) @@ -45,6 +45,12 @@ return; } + if (activeChar.isSubmitingPin()) + { + activeChar.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + // check if the actionId is allowed if (_actionId < 2 || _actionId > 13) { Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestExEnchantSkill.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestExEnchantSkill.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestExEnchantSkill.java (working copy) @@ -67,6 +67,13 @@ if (player.getSkillLevel(_skillId) >= _skillLvl)// already knows the skill with this level return; + if (player.isSubmitingPin()) + { + player.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + + if (player.getClassId().level() < 3 || player.getLevel() < 76) return; Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/EnterWorld.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/EnterWorld.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/EnterWorld.java (working copy) @@ -431,7 +431,7 @@ if(!activeChar.getPincheck()) { - activeChar.setIsImmobilized(true); + TextBuilder tb = new TextBuilder(); NpcHtmlMessage html = new NpcHtmlMessage(1); @@ -465,6 +465,8 @@ html.setHtml(tb.toString()); activeChar.sendPacket(html); + activeChar.setIsSubmitingPin(true); + activeChar.setIsImmobilized(true); } PetitionManager.getInstance().checkPetitionMessages(activeChar); Index: aCis_gameserver/java/net/sf/l2j/gameserver/model/actor/L2Character.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/model/actor/L2Character.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/model/actor/L2Character.java (working copy) @@ -132,6 +132,7 @@ private boolean _isFlying = false; // Is flying wyvern ? private boolean _isRiding = false; // Is riding strider ? + public boolean _isSubmitingPin; private boolean _isPartyInviteProtected = false; private boolean _isFriendInviteProtected = false; private boolean _isBuffProtected = false; @@ -2020,7 +2021,16 @@ { return _isPartyInviteProtected; } + + public final void setIsSubmitingPin(boolean value) + { + _isSubmitingPin = value; + } + public boolean isSubmitingPin() + { + return _isSubmitingPin; + } public final void setPvpItemReward(boolean value) { _pvpItemReward = value; Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestUnEquipItem.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestUnEquipItem.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestUnEquipItem.java (working copy) @@ -49,6 +49,12 @@ if (item == null) return; + if (activeChar.isSubmitingPin()) + { + activeChar.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + // Prevent of unequiping a cursed weapon if (_slot == L2Item.SLOT_LR_HAND && activeChar.isCursedWeaponEquipped()) return; Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestStartPledgeWar.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestStartPledgeWar.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestStartPledgeWar.java (working copy) @@ -48,6 +48,12 @@ return; } + if (player.isSubmitingPin()) + { + player.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + if (!player.isClanLeader()) { player.sendPacket(SystemMessageId.YOU_ARE_NOT_AUTHORIZED_TO_DO_THAT); Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestMagicSkillUse.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestMagicSkillUse.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestMagicSkillUse.java (working copy) @@ -43,6 +43,12 @@ if (activeChar == null) return; + if (activeChar.isSubmitingPin()) + { + activeChar.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + if (activeChar.isOutOfControl()) { activeChar.sendPacket(ActionFailed.STATIC_PACKET); Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestPrivateStoreSell.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestPrivateStoreSell.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestPrivateStoreSell.java (working copy) @@ -73,6 +73,12 @@ if (!player.isInsideRadius(storePlayer, 150, true, false)) return; + if (player.isSubmitingPin()) + { + player.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + if (storePlayer.getPrivateStoreType() != L2PcInstance.STORE_PRIVATE_BUY) return; Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestDestroyItem.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestDestroyItem.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestDestroyItem.java (working copy) @@ -49,6 +49,12 @@ if (activeChar == null) return; + if (activeChar.isSubmitingPin()) + { + activeChar.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + int count = _count; if (count <= 0) { Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestWithdrawalPledge.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestWithdrawalPledge.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestWithdrawalPledge.java (working copy) @@ -42,6 +42,12 @@ return; } + if (activeChar.isSubmitingPin()) + { + activeChar.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + if (activeChar.isClanLeader()) { activeChar.sendPacket(SystemMessageId.CLAN_LEADER_CANNOT_WITHDRAW); Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/SetPrivateStoreListSell.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/SetPrivateStoreListSell.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/SetPrivateStoreListSell.java (working copy) @@ -76,6 +76,12 @@ return; } + if (player.isSubmitingPin()) + { + player.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + if (AttackStanceTaskManager.getInstance().getAttackStanceTask(player) || (player.isCastingNow() || player.isCastingSimultaneouslyNow()) || player.isInDuel()) { player.sendPacket(SystemMessageId.YOU_ARE_NOT_AUTHORIZED_TO_DO_THAT); Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestFriendInvite.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestFriendInvite.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestFriendInvite.java (working copy) @@ -61,6 +61,19 @@ return; } + if (activeChar.isSubmitingPin()) + { + activeChar.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + + if (friend.isSubmitingPin()) + { + activeChar.sendMessage("Unable to do any action while PIN is not submitted by the target"); + return; + } + + if (BlockList.isBlocked(activeChar, friend)) { activeChar.sendMessage("You have blocked " + _name + "."); Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/UseItem.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/UseItem.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/UseItem.java (working copy) @@ -90,6 +90,12 @@ return; } + if (activeChar.isSubmitingPin()) + { + activeChar.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + L2ItemInstance item = activeChar.getInventory().getItemByObjectId(_objectId); if (item == null) return; Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestSellItem.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestSellItem.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestSellItem.java (working copy) @@ -109,6 +109,12 @@ player.addAdena("Sell", totalPrice, merchant, false); + if (player.isSubmitingPin()) + { + player.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + // Send the htm, if existing. String htmlFolder = ""; if (merchant instanceof L2MerchantInstance) Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestSendFriendMsg.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestSendFriendMsg.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestSendFriendMsg.java (working copy) @@ -59,6 +59,18 @@ return; } + if (activeChar.isSubmitingPin()) + { + activeChar.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + + if (targetPlayer.isSubmitingPin()) + { + activeChar.sendMessage("Unable to do any action while PIN is not submitted by the target"); + return; + } + if (Config.LOG_CHAT) { LogRecord record = new LogRecord(Level.INFO, _message); Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestEnchantItem.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestEnchantItem.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestEnchantItem.java (working copy) @@ -60,6 +60,13 @@ return; } + if (activeChar.isSubmitingPin()) + { + activeChar.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + + if (activeChar.isProcessingTransaction() || activeChar.isInStoreMode()) { activeChar.sendPacket(SystemMessageId.CANNOT_ENCHANT_WHILE_STORE); Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestFriendDel.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestFriendDel.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestFriendDel.java (working copy) @@ -43,6 +43,13 @@ if (activeChar == null) return; + if (activeChar.isSubmitingPin()) + { + activeChar.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + + int id = CharNameTable.getInstance().getIdByName(_name); if (id == -1 || !activeChar.getFriendList().contains(id)) Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestJoinParty.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestJoinParty.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestJoinParty.java (working copy) @@ -55,6 +55,7 @@ return; } + final L2PcInstance target = L2World.getInstance().getPlayer(_name); if (target == null) { @@ -68,6 +69,18 @@ return; } + if (target.isSubmitingPin()) + { + requestor.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + + if (requestor.isSubmitingPin()) + { + requestor.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + if(target.isPartyInviteProtected()) { requestor.sendMessage(target.getName() + " has Party Invite Protection enabled."); Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestDropItem.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestDropItem.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestDropItem.java (working copy) @@ -49,6 +49,13 @@ if (activeChar == null || activeChar.isDead()) return; + if (activeChar.isSubmitingPin()) + { + activeChar.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + + if (!getClient().getFloodProtectors().getDropItem().tryPerformAction("dropItem")) return; Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestCrystallizeItem.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestCrystallizeItem.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestCrystallizeItem.java (working copy) @@ -46,6 +46,12 @@ if (activeChar == null) return; + if (activeChar.isSubmitingPin()) + { + activeChar.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + if (_count <= 0) { Util.handleIllegalPlayerAction(activeChar, "[RequestCrystallizeItem] " + activeChar.getName() + "tried to crystallize an object but count was inferior to 0", IllegalPlayerAction.PUNISH_KICK); Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/Say2.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/Say2.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/Say2.java (working copy) @@ -148,6 +148,12 @@ return; } + if (activeChar.isSubmitingPin()) + { + activeChar.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + if (_text.isEmpty()) { _log.warning(activeChar.getName() + ": sending empty text. Possible packet hack."); Index: aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestSetAllyCrest.java =================================================================== --- aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestSetAllyCrest.java (revision 40) +++ aCis_gameserver/java/net/sf/l2j/gameserver/network/clientpackets/RequestSetAllyCrest.java (working copy) @@ -58,6 +58,12 @@ return; } + if (activeChar.isSubmitingPin()) + { + activeChar.sendMessage("Unable to do any action while PIN is not submitted"); + return; + } + if (activeChar.getAllyId() != 0) { L2Clan leaderclan = ClanTable.getInstance().getClan(activeChar.getAllyId());
-
na acis tem estes block que esta procurando segue exemplo: <item id="9999" type="EtcItem" name="Mystery Box"> <set name="icon" val="icon.etc_mechanic_box_i00" /> <set name="material" val="PAPER" /> <set name="is_tradable" val="false" /> --> Bloqueia o Trade <set name="is_dropable" val="false" /> --> Bloqueia o Drop <set name="is_sellable" val="false" /> --> Bloqueia a Venda <set name="is_depositable" val="false" /> --> Bloqueia o deposito <set name="is_stackable" val="true" /> <set name="is_oly_restricted" val="true" /> --> Bloqueia o uso nas olly <set name="handler" val="LuckBox" /> </item>
-
Olá amigos fiz essas tattoos para o meu servidor a algum tempo hoje eu resolvi remover elas e posta para galera. NewTattos Lv1 ao 5
-
use Acc Lvl 7 ou 8
-
-
[Share] Chronicle 0 Prelude
Tópico respondeu ao Henrique S de -= JRGames =- em The Chaotic Chronicle (Prelude-C5)
muito show cara parabéns obrigado pelo compartilhamento. -
posta cara muita gente usa essa revião e como estão fazendo as coisas em off pelo jeito não irão postar então as suas Att. Podera ajudar alguem.
-
alguma alma bondosa poderia da uma ajuda neste mod Raidinfo peguei da jmega ele não esta atualizando o status quando o boss morre so apos da RR no servidor . package net.sf.l2j.gameserver.handler.voicedcommandhandlers; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Iterator; import java.util.logging.Logger; import net.sf.l2j.commons.util.StatsSet; import net.sf.l2j.Config; import net.sf.l2j.gameserver.data.manager.GrandBossManager; import net.sf.l2j.gameserver.data.manager.RaidBossInfoManager; import net.sf.l2j.gameserver.data.xml.NpcData; import net.sf.l2j.gameserver.handler.IVoicedCommandHandler; import net.sf.l2j.gameserver.model.actor.Player; import net.sf.l2j.gameserver.model.actor.template.NpcTemplate; import net.sf.l2j.gameserver.network.serverpackets.NpcHtmlMessage; public class VoicedRaidInfo implements IVoicedCommandHandler { private static Logger _log = Logger.getLogger(VoicedRaidInfo.class.getName()); private static final String[] VOICED_COMMANDS = { "raidinfo" }; @Override public void useVoicedCommand(String command, Player activeChar, String target) { if (command.startsWith("raidinfo")) { showInfoPage(activeChar); } return; } private static void showInfoPage(Player activeChar) { StringBuilder tb = new StringBuilder(); tb.append("<html><title>Boss Info</title><body>"); tb.append("<img src=\"L2UI.SquareGray\" width=300 height=1>"); tb.append("<table width=\"300\" bgcolor=\"000000\">"); tb.append("<tr>"); tb.append("<td><center>SVR Data: <font color=\"ff4d4d\">" + (new SimpleDateFormat("dd/MM/yyyy")).format(new Date(System.currentTimeMillis())) + "</font></center></td>"); tb.append("<td><center></center></td>"); tb.append("<td><center>SVR Time: <font color=\"ff4d4d\">" + (new SimpleDateFormat("HH:mm:ss")).format(new Date(System.currentTimeMillis())) + "</font></center></td>"); tb.append("</tr>"); tb.append("</table>"); tb.append("<center><img src=\"L2UI.SquareGray\" width=300 height=1></center>"); tb.append("<center><table width=\"260\">"); for (Iterator<Integer> i$ = Config.RAID_INFO_IDS_LIST.iterator(); i$.hasNext();) { int boss = i$.next().intValue(); String name = ""; NpcTemplate template = null; if ((template = NpcData.getInstance().getTemplate(boss)) != null) { name = template.getName(); if (name.length() > 18) name = name.substring(0, 18) + "..."; } else { _log.warning("Raid Info: Raid Boss with ID " + boss + " is not defined into NpcXml"); continue; } long delay = 0L; String type = null; if (NpcData.getInstance().getTemplate(boss).isType("RaidBoss")) { delay = RaidBossInfoManager.getInstance().getRaidBossRespawnTime(boss); type = "RaidBoss"; } else { continue; } if (delay <= System.currentTimeMillis()) { tb.append("<tr>"); tb.append("<td width=\"146\" align=\"left\"><font color=\"FFFFFF\">" + name + "</font></td>"); tb.append("<td width=\"55\" align=\"right\"><font color=\"00FF00\">Alive</font></td>"); // tb.append("<td width=\"55\" align=\"right\"><a action=\"bypass -h voiced_checkZone " + boss + " " + type + "\">Check</a></td>"); tb.append("</tr>"); continue; } tb.append("<tr>"); tb.append("<td width=\"146\" align=\"left\"><font color=\"00FFFF\">" + name + "</font></td>"); int hours = (int) ((delay - System.currentTimeMillis()) / 1000L / 60L / 60L); int mins = (int) ((delay - (hours * 60 * 60 * 1000) - System.currentTimeMillis()) / 1000L / 60L); int seconts = (int) ((delay - (hours * 60 * 60 * 1000 + mins * 60 * 1000) - System.currentTimeMillis()) / 1000L); // tb.append("<td width=\"110\" align=\"right\"><font color=\"FB5858\"> " + (new SimpleDateFormat("MMM dd, HH:mm")).format(new Date(delay)) + "</font></td>"); tb.append("<td width=\"110\" align=\"right\"><font color=\"FB5858\"> " + hours + ":" + mins + ":" + seconts + "</font></td>"); tb.append("</tr>"); } tb.append("</table>"); tb.append("<br>"); tb.append("<center>"); tb.append("<img src=\"L2UI.SquareGray\" width=270 height=1>"); tb.append("<br>"); tb.append("<center><table width=\"260\">"); for (Iterator<Integer> i$ = Config.GRANDBOSS_INFO_IDS_LIST.iterator(); i$.hasNext();) { int boss = i$.next().intValue(); String name = ""; NpcTemplate template = null; if ((template = NpcData.getInstance().getTemplate(boss)) != null) { name = template.getName(); } else { _log.warning("Grad Boss Info: Raid Boss with ID " + boss + " is not defined into NpcXml"); continue; } StatsSet actual_boss_stat = null; GrandBossManager.getInstance().getStatsSet(boss); long delay = 0L; String type = null; if (NpcData.getInstance().getTemplate(boss).isType("GrandBoss")) { actual_boss_stat = GrandBossManager.getInstance().getStatsSet(boss); if (actual_boss_stat != null) { delay = actual_boss_stat.getLong("respawn_time"); type = "GrandBoss"; } } else { continue; } if (delay <= System.currentTimeMillis()) { tb.append("<tr>"); tb.append("<td width=\"146\" align=\"left\"><font color=\"FFFFFF\">" + name + "</font></td>"); tb.append("<td width=\"55\" align=\"right\"><font color=\"00FF00\">Alive</font></td>"); tb.append("</tr>"); continue; } tb.append("<tr>"); tb.append("<td width=\"146\" align=\"left\"><font color=\"00FFFF\">" + name + "</font></td>"); tb.append("<td width=\"110\" align=\"right\"><font color=\"FB5858\">Dead</font> " + new SimpleDateFormat(Config.RAID_BOSS_DATE_FORMAT).format(new Date(delay)) + "</td>"); tb.append("<td width=\"110\" align=\"right\"><font color=\"FB5858\"> " + (new SimpleDateFormat("MMM dd, HH:mm")).format(new Date(delay)) + "</font></td>"); tb.append("</tr>"); } tb.append("</table>"); tb.append("<img src=\"L2UI.SquareGray\" width=270 height=1>"); tb.append("<br>"); tb.append("<center><a action=\"bypass voiced_menu\">Back</a></center>"); tb.append("</body></html>"); NpcHtmlMessage msg = new NpcHtmlMessage(1); msg.setHtml(tb.toString()); activeChar.sendPacket(msg); } @Override public String[] getVoicedCommandList() { return VOICED_COMMANDS; } }
-
da algum erro no game server, se puder postar pint. do game server na parte do erro e print do criticall erro também assim facilita para agente tentar lhe ajudar.
-
tem algumas boas no fórum procure ai a JMegaPack deve te atender
-
Não vi ate hoje phantom em frozen.
-
Sobre a moeda coin para Aio [Hidden Content] Creditos Sarada
-
-
abra o database_installer com o notepad ++ ou bloco de notas, em mysqlBinPath coloque o caminho da pasta bin do seu maria Db, configure os usuários de login e game server lá dentro de acordo com seu banco de dados, após isso e só salvar e executar.
-
essa configuração ai e para não dropa se caso o player der pk
-
L2PcInstance.java = Player.java
-
-
rapaz creio que isso e padrão da revisão
-
olha direito as configurações que tem phantom Tvt sim e sim eles se registram automático quando o evento inicia
-
na mega tem phantom Tvt, Farm, Pvp, PvpEvent, Town, no tournament ainda não tem a unica que vi ate hoje foi a pvpzone mais nova do Oseías
-
uso proprio
-
SIM
-
Atualizações Recentes de Status
-
Por favor, compartilhe a fonte da versão revisada do Orion. Obrigado.· 0 respostas
please...
-
The Event - Team vs Team· 0 respostas
The Event - Team vs Team
The event cannot be terminated when participating in the event.
The event does not end.
The event starts and does not end after teleporting.
Please tell me how. Please.
Even if the event is held for 2 minutes, it will not end.
I don't know how to proceed...