weedhead Posted June 27, 2013 Posted June 27, 2013 Nice work but when hero status dissappear ? after server restart or relog ?
MrJack_DeV Posted August 9, 2014 Posted August 9, 2014 (edited) AMAZING man. Can you make it to be hero till character relog ? or only for 24 hours ? ( it will be nice if its posible to set time. ) And can you shere the code for Hero item. Once i played one server that you can get 1 hero coint that's make you hero for 24 hours . :) Edited August 9, 2014 by MrJack_DeV
Thug!! Posted August 10, 2014 Posted August 10, 2014 AMAZING man. Can you make it to be hero till character relog ? or only for 24 hours ? ( it will be nice if its posible to set time. ) And can you shere the code for Hero item. Once i played one server that you can get 1 hero coint that's make you hero for 24 hours . :) about hero item, // Hero Custom Item , Created By Stefoulis15 // Added From Stefoulis15 Into The Core. // Visit www.MaxCheaters.com For Support // Source File Name: HeroCustomItem.java // Modded by programmos, sword dev package com.l2jfrozen.gameserver.handler.itemhandlers; import java.sql.Connection; import java.sql.PreparedStatement; import java.util.logging.Level; import java.util.logging.Logger; import com.l2jfrozen.Config; import com.l2jfrozen.gameserver.handler.IItemHandler; import com.l2jfrozen.gameserver.model.actor.instance.L2ItemInstance; import com.l2jfrozen.gameserver.model.actor.instance.L2PcInstance; import com.l2jfrozen.gameserver.model.actor.instance.L2PlayableInstance; import com.l2jfrozen.gameserver.network.serverpackets.SocialAction; import com.l2jfrozen.util.CloseUtil; import com.l2jfrozen.util.database.L2DatabaseFactory; public class HeroCustomItem implements IItemHandler { public HeroCustomItem() { //null } protected static final Logger _log = Logger.getLogger(HeroCustomItem.class.getName()); String INSERT_DATA = "REPLACE INTO characters_custom_data (obj_Id, char_name, hero, noble, donator, hero_end_date) VALUES (?,?,?,?,?,?)"; @Override public void useItem(L2PlayableInstance playable, L2ItemInstance item) { if(Config.HERO_CUSTOM_ITEMS) { if(!(playable instanceof L2PcInstance)) return; L2PcInstance activeChar = (L2PcInstance) playable; if(activeChar.isInOlympiadMode()) { activeChar.sendMessage("This Item Cannot Be Used On Olympiad Games."); } if(activeChar.isHero()) { activeChar.sendMessage("You Are Already A Hero!."); } else { activeChar.broadcastPacket(new SocialAction(activeChar.getObjectId(), 16)); activeChar.setHero(true); updateDatabase(activeChar, Config.HERO_CUSTOM_DAY * 24L * 60L * 60L * 1000L); activeChar.sendMessage("You Are Now a Hero,You Are Granted With Hero Status , Skills ,Aura."); activeChar.broadcastUserInfo(); playable.destroyItem("Consume", item.getObjectId(), 1, null, false); activeChar.getInventory().addItem("Wings", 6842, 1, activeChar, null); } activeChar = null; } } @Override public int[] getItemIds() { return ITEM_IDS; } private void updateDatabase(L2PcInstance player, long heroTime) { Connection con = null; try { if(player == null) return; con = L2DatabaseFactory.getInstance().getConnection(false); PreparedStatement stmt = con.prepareStatement(INSERT_DATA); stmt.setInt(1, player.getObjectId()); stmt.setString(2, player.getName()); stmt.setInt(3, 1); stmt.setInt(4, player.isNoble() ? 1 : 0); stmt.setInt(5, player.isDonator() ? 1 : 0); stmt.setLong(6, heroTime == 0 ? 0 : System.currentTimeMillis() + heroTime); stmt.execute(); stmt.close(); stmt = null; } catch(Exception e) { if(Config.ENABLE_ALL_EXCEPTIONS) e.printStackTrace(); _log.log(Level.SEVERE, "Error: could not update database: ", e); } finally { CloseUtil.close(con); con = null; } } private static final int ITEM_IDS[] = { Config.HERO_CUSTOM_ITEM_ID }; }
nikosdevil20 Posted August 10, 2014 Posted August 10, 2014 (edited) about hero item, // Hero Custom Item , Created By Stefoulis15 // Added From Stefoulis15 Into The Core. // Visit www.MaxCheaters.com For Support // Source File Name: HeroCustomItem.java // Modded by programmos, sword dev package com.l2jfrozen.gameserver.handler.itemhandlers; import java.sql.Connection; import java.sql.PreparedStatement; import java.util.logging.Level; import java.util.logging.Logger; import com.l2jfrozen.Config; import com.l2jfrozen.gameserver.handler.IItemHandler; import com.l2jfrozen.gameserver.model.actor.instance.L2ItemInstance; import com.l2jfrozen.gameserver.model.actor.instance.L2PcInstance; import com.l2jfrozen.gameserver.model.actor.instance.L2PlayableInstance; import com.l2jfrozen.gameserver.network.serverpackets.SocialAction; import com.l2jfrozen.util.CloseUtil; import com.l2jfrozen.util.database.L2DatabaseFactory; public class HeroCustomItem implements IItemHandler { public HeroCustomItem() { //null } protected static final Logger _log = Logger.getLogger(HeroCustomItem.class.getName()); String INSERT_DATA = "REPLACE INTO characters_custom_data (obj_Id, char_name, hero, noble, donator, hero_end_date) VALUES (?,?,?,?,?,?)"; @Override public void useItem(L2PlayableInstance playable, L2ItemInstance item) { if(Config.HERO_CUSTOM_ITEMS) { if(!(playable instanceof L2PcInstance)) return; L2PcInstance activeChar = (L2PcInstance) playable; if(activeChar.isInOlympiadMode()) { activeChar.sendMessage("This Item Cannot Be Used On Olympiad Games."); } if(activeChar.isHero()) { activeChar.sendMessage("You Are Already A Hero!."); } else { activeChar.broadcastPacket(new SocialAction(activeChar.getObjectId(), 16)); activeChar.setHero(true); updateDatabase(activeChar, Config.HERO_CUSTOM_DAY * 24L * 60L * 60L * 1000L); activeChar.sendMessage("You Are Now a Hero,You Are Granted With Hero Status , Skills ,Aura."); activeChar.broadcastUserInfo(); playable.destroyItem("Consume", item.getObjectId(), 1, null, false); activeChar.getInventory().addItem("Wings", 6842, 1, activeChar, null); } activeChar = null; } } @Override public int[] getItemIds() { return ITEM_IDS; } private void updateDatabase(L2PcInstance player, long heroTime) { Connection con = null; try { if(player == null) return; con = L2DatabaseFactory.getInstance().getConnection(false); PreparedStatement stmt = con.prepareStatement(INSERT_DATA); stmt.setInt(1, player.getObjectId()); stmt.setString(2, player.getName()); stmt.setInt(3, 1); stmt.setInt(4, player.isNoble() ? 1 : 0); stmt.setInt(5, player.isDonator() ? 1 : 0); stmt.setLong(6, heroTime == 0 ? 0 : System.currentTimeMillis() + heroTime); stmt.execute(); stmt.close(); stmt = null; } catch(Exception e) { if(Config.ENABLE_ALL_EXCEPTIONS) e.printStackTrace(); _log.log(Level.SEVERE, "Error: could not update database: ", e); } finally { CloseUtil.close(con); con = null; } } private static final int ITEM_IDS[] = { Config.HERO_CUSTOM_ITEM_ID }; } hmm i have add this code in 1 npc in my server (l2j freya) give the hero correct, config working but when restart hero disapear :( The code: http://pastebin.com/brUdp6sx photo from navicat : http://postimg.org/image/vvpgxwqq1/ Edited August 10, 2014 by nikosdevil20
Thug!! Posted August 10, 2014 Posted August 10, 2014 Now im from mobile when i will be from conputer i will check it
nikosdevil20 Posted August 10, 2014 Posted August 10, 2014 Now im from mobile when i will be from conputer i will check it pm ed
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now