Jump to content

'Baggos'

Legendary Member
  • Posts

    3,875
  • Joined

  • Last visited

  • Days Won

    28
  • Feedback

    100%

Everything posted by 'Baggos'

  1. Hello! Όταν ένας player πατάει .daggeritems, τότε παίρνει Dagger weapon,armor,jewls. Commands: .daggeritems / .bowitems / .tankitems / .mageitems config: # Specified reward item rnd qty ChampionRewardItemQty = 1 + +#------------------------------------------------------------------ +# Class Items. +# .daggeritems / .bowitems / .tankitems / .mageitems +#------------------------------------------------------------------ +ClassItemsCmd = false +# +FighterItemsPirce = 50000000 +# +MageItemsPirce = 50000000 + ===== Index: sf/l2j/config.java public static int L2JMOD_CHAMPION_REWARD_QTY; + public static boolean CLASS_ITEMS_ENABLE; + public static int FIGHTER_ITEMS_PRICE; + public static int MAGE_ITEMS_PRICE; L2JMOD_CHAMPION_REWARD_QTY = Integer.parseInt(L2JModSettings.getProperty("ChampionRewardItemQty", "1")); + CLASS_ITEMS_ENABLE = Boolean.parseBoolean(L2JModSettings.getProperty("ClassItemsCmd", "false")); + FIGHTER_ITEMS_PRICE = Integer.parseInt(L2JModSettings.getProperty("FighterItemsPirce", "50000000")); + MAGE_ITEMS_PRICE = Integer.parseInt(L2JModSettings.getProperty("MageItemsPirce", "50000000")); ===== Index: net.sf.l2j.gameserver.handler.VoicedCommandHandler.java import java.util.logging.Logger; +import net.sf.l2j.gameserver.handler.voicedcommandhandlers.LevelZones; import javolution.util.FastMap; private VoicedCommandHandler() { _datatable = new FastMap<String, IVoicedCommandHandler>(); + + if(Config.CLASS_ITEMS_ENABLE) + { + registerVoicedCommandHandler(new ClassItems()); + } } public void registerVoicedCommandHandler(IVoicedCommandHandler handler) Εδώ δημιουργούμε ένα νέο Class με όνομα ClassItems.java ===== Index: net.sf.l2j.gameserver.handler.voicedcommandhandlers.ClassItems.java /* * 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 <http://www.gnu.org/licenses/>. */ package net.sf.l2j.gameserver.handler.voicedcommandhandlers; import net.sf.l2j.Config; import net.sf.l2j.gameserver.handler.IVoicedCommandHandler; import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance; import net.sf.l2j.gameserver.serverpackets.ItemList; public class ClassItems implements IVoicedCommandHandler { private static String[] _voicedCommands = { "daggeritems", "bowitems", "tankitems", "mageitems" }; /** * @see net.sf.l2j.gameserver.handler.IVoicedCommandHandler#useVoicedCommand(java.lang.String, * net.sf.l2j.gameserver.model.actor.instance.L2PcInstance, java.lang.String) */ @Override public boolean useVoicedCommand(String command, L2PcInstance activeChar, String target) { if(command.equalsIgnoreCase("daggeritems")) { if(activeChar.getInventory().getInventoryItemCount(57, 0) >= Config.FIGHTER_ITEMS_PRICE) { activeChar.getInventory().reduceAdena("Adena", Config.FIGHTER_ITEMS_PRICE, activeChar, null); activeChar.getInventory().addItem("Angel Slayer", 6367, 1, activeChar, activeChar); activeChar.getInventory().addItem("Dragonic Light", 6379, 1, activeChar, activeChar ); activeChar.getInventory().addItem("Dragonic Boots", 6380, 1, activeChar, activeChar); activeChar.getInventory().addItem("Dragonic Gloves", 6381, 1, activeChar, activeChar ); activeChar.getInventory().addItem("Dragonic Helmet", 6382, 1, activeChar, activeChar); activeChar.getInventory().addItem("TEO Necklace", 920, 1, activeChar, activeChar ); activeChar.getInventory().addItem("TEO Earring", 858, 2, activeChar, activeChar); activeChar.getInventory().addItem("TEO Ring", 889, 2, activeChar, activeChar ); activeChar.getInventory().updateDatabase(); activeChar.sendPacket(new ItemList(activeChar, true)); activeChar.sendMessage("Now You Have Dagger Items On Your Invetory. Take a Look!."); } else { activeChar.sendMessage("You do not have enough Adena"); } if(activeChar.isInOlympiadMode()) { activeChar.sendMessage("Sorry,you are in the Olympiad now."); return false; } else if(activeChar.isInDuel()) { activeChar.sendMessage("Sorry,you are in a duel!"); return false; } else if(activeChar.atEvent) { activeChar.sendMessage("Sorry,you are on event now."); return false; } else if(!Config.ALT_GAME_KARMA_PLAYER_CAN_USE_GK && activeChar.getKarma() > 0) { activeChar.sendMessage("Sorry,PK player can't use this."); return false; } else if(activeChar.isDead()) { activeChar.sendMessage("Sorry,Dead player can't take items."); return false; } else if(activeChar.isFakeDeath()) { activeChar.sendMessage("Sorry,on fake death mode can't use this."); return false; } } if(command.equalsIgnoreCase("bowitems")) { if(activeChar.getInventory().getInventoryItemCount(57, 0) >= Config.FIGHTER_ITEMS_PRICE) { activeChar.getInventory().reduceAdena("Adena", Config.FIGHTER_ITEMS_PRICE, activeChar, null); activeChar.getInventory().addItem("Draconic Bow", 7577, 1, activeChar, activeChar); activeChar.getInventory().addItem("Draconic Light", 6379, 1, activeChar, activeChar ); activeChar.getInventory().addItem("Draconic Boots", 6380, 1, activeChar, activeChar); activeChar.getInventory().addItem("Draconic Gloves", 6381, 1, activeChar, activeChar ); activeChar.getInventory().addItem("Draconic Helmet", 6382, 1, activeChar, activeChar); activeChar.getInventory().addItem("TEO Necklace", 920, 1, activeChar, activeChar ); activeChar.getInventory().addItem("TEO Earring", 858, 2, activeChar, activeChar); activeChar.getInventory().addItem("TEO Ring", 889, 2, activeChar, activeChar ); activeChar.getInventory().updateDatabase(); activeChar.sendPacket(new ItemList(activeChar, true)); activeChar.sendMessage("Now You Have Bow Items On Your Invetory. Take a Look!."); } else { activeChar.sendMessage("You do not have enough Adena"); } if(activeChar.isInOlympiadMode()) { activeChar.sendMessage("Sorry,you are in the Olympiad now."); return false; } else if(activeChar.isInDuel()) { activeChar.sendMessage("Sorry,you are in a duel!"); return false; } else if(activeChar.atEvent) { activeChar.sendMessage("Sorry,you are on event now."); return false; } else if(!Config.ALT_GAME_KARMA_PLAYER_CAN_USE_GK && activeChar.getKarma() > 0) { activeChar.sendMessage("Sorry,PK player can't use this."); return false; } else if(activeChar.isDead()) { activeChar.sendMessage("Sorry,Dead player can't take items."); return false; } else if(activeChar.isFakeDeath()) { activeChar.sendMessage("Sorry,on fake death mode can't use this."); return false; } } if(command.equalsIgnoreCase("tankitems")) { if(activeChar.getInventory().getInventoryItemCount(57, 0) >= Config.FIGHTER_ITEMS_PRICE) { activeChar.getInventory().reduceAdena("Adena", Config.FIGHTER_ITEMS_PRICE, activeChar, null); activeChar.getInventory().addItem("Forgotten Blade", 6582, 1, activeChar, activeChar); activeChar.getInventory().addItem("Imperial Armor", 6373, 1, activeChar, activeChar ); activeChar.getInventory().addItem("Imperial ArmorP2", 6374, 1, activeChar, activeChar); activeChar.getInventory().addItem("Imperial Gloves", 6375, 1, activeChar, activeChar ); activeChar.getInventory().addItem("Imperial Boots", 6376, 1, activeChar, activeChar); activeChar.getInventory().addItem("Imperial Helmet", 6378, 1, activeChar, activeChar ); activeChar.getInventory().addItem("TEO Necklace", 920, 1, activeChar, activeChar); activeChar.getInventory().addItem("TEO Earring", 858, 2, activeChar, activeChar); activeChar.getInventory().addItem("TEO Ring", 889, 2, activeChar, activeChar ); activeChar.getInventory().updateDatabase(); activeChar.sendPacket(new ItemList(activeChar, true)); activeChar.sendMessage("Now You Have Tank Items On Your Invetory. Take a Look!."); } else { activeChar.sendMessage("You do not have enough Adena"); } if(activeChar.isInOlympiadMode()) { activeChar.sendMessage("Sorry,you are in the Olympiad now."); return false; } else if(activeChar.isInDuel()) { activeChar.sendMessage("Sorry,you are in a duel!"); return false; } else if(activeChar.atEvent) { activeChar.sendMessage("Sorry,you are on event now."); return false; } else if(!Config.ALT_GAME_KARMA_PLAYER_CAN_USE_GK && activeChar.getKarma() > 0) { activeChar.sendMessage("Sorry,PK player can't use this."); return false; } else if(activeChar.isDead()) { activeChar.sendMessage("Sorry,Dead player can't take items."); return false; } else if(activeChar.isFakeDeath()) { activeChar.sendMessage("Sorry,on fake death mode can't use this."); return false; } } else if(command.equalsIgnoreCase("mageitems")) { if(activeChar.getInventory().getInventoryItemCount(57, 0) >= Config.MAGE_ITEMS_PRICE) { activeChar.getInventory().destroyItemByItemId("Adena", 57, Config.MAGE_ITEMS_PRICE, activeChar, null); activeChar.getInventory().addItem("Arcana Mace Acumen", 6608, 1, activeChar, activeChar); activeChar.getInventory().addItem("DC Robe", 2407, 1, activeChar, activeChar ); activeChar.getInventory().addItem("DC Gloves", 5767, 1, activeChar, activeChar); activeChar.getInventory().addItem("DC Boots", 5779, 1, activeChar, activeChar ); activeChar.getInventory().addItem("DC Helmet", 512, 1, activeChar, activeChar); activeChar.getInventory().addItem("TEO Necklace", 920, 1, activeChar, activeChar ); activeChar.getInventory().addItem("TEO Earring", 858, 2, activeChar, activeChar); activeChar.getInventory().addItem("TEO Ring", 889, 2, activeChar, activeChar ); activeChar.getInventory().updateDatabase(); activeChar.sendPacket(new ItemList(activeChar, true)); activeChar.sendMessage("Now You Have Mage Items On Your Invetory. Take a Look!"); } else { activeChar.sendMessage("You do not have enough Adena"); } if(activeChar.isInOlympiadMode()) { activeChar.sendMessage("Sorry,you are in the Olympiad now."); return false; } else if(activeChar.isInDuel()) { activeChar.sendMessage("Sorry,you are in a duel!"); return false; } else if(activeChar.atEvent) { activeChar.sendMessage("Sorry,you are on event now."); return false; } else if(!Config.ALT_GAME_KARMA_PLAYER_CAN_USE_GK && activeChar.getKarma() > 0) { activeChar.sendMessage("Sorry,PK player can't use this."); return false; } else if(activeChar.isDead()) { activeChar.sendMessage("Sorry,Dead player can't take items."); return false; } else if(activeChar.isFakeDeath()) { activeChar.sendMessage("Sorry,on fake death mode can't use this."); return false; } } return true; } /** * @see net.sf.l2j.gameserver.handler.IVoicedCommandHandler#getVoicedCommandList() */ @Override public String[] getVoicedCommandList() { return _voicedCommands; } }
  2. Hello! When a player put .daggeritems, then take Dagger weapon,armor,jewls. Commands: .daggeritems / .bowitems / .tankitems / .mageitems config: # Specified reward item rnd qty ChampionRewardItemQty = 1 + +#------------------------------------------------------------------ +# Class Items. +# .daggeritems / .bowitems / .tankitems / .mageitems +#------------------------------------------------------------------ +ClassItemsCmd = false +# +FighterItemsPirce = 50000000 +# +MageItemsPirce = 50000000 + ===== Index: sf/l2j/config.java public static int L2JMOD_CHAMPION_REWARD_QTY; + public static boolean CLASS_ITEMS_ENABLE; + public static int FIGHTER_ITEMS_PRICE; + public static int MAGE_ITEMS_PRICE; L2JMOD_CHAMPION_REWARD_QTY = Integer.parseInt(L2JModSettings.getProperty("ChampionRewardItemQty", "1")); + CLASS_ITEMS_ENABLE = Boolean.parseBoolean(L2JModSettings.getProperty("ClassItemsCmd", "false")); + FIGHTER_ITEMS_PRICE = Integer.parseInt(L2JModSettings.getProperty("FighterItemsPirce", "50000000")); + MAGE_ITEMS_PRICE = Integer.parseInt(L2JModSettings.getProperty("MageItemsPirce", "50000000")); ===== Index: net.sf.l2j.gameserver.handler.VoicedCommandHandler.java import java.util.logging.Logger; +import net.sf.l2j.gameserver.handler.voicedcommandhandlers.LevelZones; import javolution.util.FastMap; private VoicedCommandHandler() { _datatable = new FastMap<String, IVoicedCommandHandler>(); + + if(Config.CLASS_ITEMS_ENABLE) + { + registerVoicedCommandHandler(new ClassItems()); + } } public void registerVoicedCommandHandler(IVoicedCommandHandler handler) Here you have to create a New Class with name ClassItems.java ===== Index: net.sf.l2j.gameserver.handler.voicedcommandhandlers.ClassItems.java /* * 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 <http://www.gnu.org/licenses/>. */ package net.sf.l2j.gameserver.handler.voicedcommandhandlers; import net.sf.l2j.Config; import net.sf.l2j.gameserver.handler.IVoicedCommandHandler; import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance; import net.sf.l2j.gameserver.serverpackets.ItemList; public class ClassItems implements IVoicedCommandHandler { private static String[] _voicedCommands = { "daggeritems", "bowitems", "tankitems", "mageitems" }; /** * @see net.sf.l2j.gameserver.handler.IVoicedCommandHandler#useVoicedCommand(java.lang.String, * net.sf.l2j.gameserver.model.actor.instance.L2PcInstance, java.lang.String) */ @Override public boolean useVoicedCommand(String command, L2PcInstance activeChar, String target) { if(command.equalsIgnoreCase("daggeritems")) { if(activeChar.getInventory().getInventoryItemCount(57, 0) >= Config.FIGHTER_ITEMS_PRICE) { activeChar.getInventory().reduceAdena("Adena", Config.FIGHTER_ITEMS_PRICE, activeChar, null); activeChar.getInventory().addItem("Angel Slayer", 6367, 1, activeChar, activeChar); activeChar.getInventory().addItem("Dragonic Light", 6379, 1, activeChar, activeChar ); activeChar.getInventory().addItem("Dragonic Boots", 6380, 1, activeChar, activeChar); activeChar.getInventory().addItem("Dragonic Gloves", 6381, 1, activeChar, activeChar ); activeChar.getInventory().addItem("Dragonic Helmet", 6382, 1, activeChar, activeChar); activeChar.getInventory().addItem("TEO Necklace", 920, 1, activeChar, activeChar ); activeChar.getInventory().addItem("TEO Earring", 858, 2, activeChar, activeChar); activeChar.getInventory().addItem("TEO Ring", 889, 2, activeChar, activeChar ); activeChar.getInventory().updateDatabase(); activeChar.sendPacket(new ItemList(activeChar, true)); activeChar.sendMessage("Now You Have Dagger Items On Your Invetory. Take a Look!."); } else { activeChar.sendMessage("You do not have enough Adena"); } if(activeChar.isInOlympiadMode()) { activeChar.sendMessage("Sorry,you are in the Olympiad now."); return false; } else if(activeChar.isInDuel()) { activeChar.sendMessage("Sorry,you are in a duel!"); return false; } else if(activeChar.atEvent) { activeChar.sendMessage("Sorry,you are on event now."); return false; } else if(!Config.ALT_GAME_KARMA_PLAYER_CAN_USE_GK && activeChar.getKarma() > 0) { activeChar.sendMessage("Sorry,PK player can't use this."); return false; } else if(activeChar.isDead()) { activeChar.sendMessage("Sorry,Dead player can't take items."); return false; } else if(activeChar.isFakeDeath()) { activeChar.sendMessage("Sorry,on fake death mode can't use this."); return false; } } if(command.equalsIgnoreCase("bowitems")) { if(activeChar.getInventory().getInventoryItemCount(57, 0) >= Config.FIGHTER_ITEMS_PRICE) { activeChar.getInventory().reduceAdena("Adena", Config.FIGHTER_ITEMS_PRICE, activeChar, null); activeChar.getInventory().addItem("Draconic Bow", 7577, 1, activeChar, activeChar); activeChar.getInventory().addItem("Draconic Light", 6379, 1, activeChar, activeChar ); activeChar.getInventory().addItem("Draconic Boots", 6380, 1, activeChar, activeChar); activeChar.getInventory().addItem("Draconic Gloves", 6381, 1, activeChar, activeChar ); activeChar.getInventory().addItem("Draconic Helmet", 6382, 1, activeChar, activeChar); activeChar.getInventory().addItem("TEO Necklace", 920, 1, activeChar, activeChar ); activeChar.getInventory().addItem("TEO Earring", 858, 2, activeChar, activeChar); activeChar.getInventory().addItem("TEO Ring", 889, 2, activeChar, activeChar ); activeChar.getInventory().updateDatabase(); activeChar.sendPacket(new ItemList(activeChar, true)); activeChar.sendMessage("Now You Have Bow Items On Your Invetory. Take a Look!."); } else { activeChar.sendMessage("You do not have enough Adena"); } if(activeChar.isInOlympiadMode()) { activeChar.sendMessage("Sorry,you are in the Olympiad now."); return false; } else if(activeChar.isInDuel()) { activeChar.sendMessage("Sorry,you are in a duel!"); return false; } else if(activeChar.atEvent) { activeChar.sendMessage("Sorry,you are on event now."); return false; } else if(!Config.ALT_GAME_KARMA_PLAYER_CAN_USE_GK && activeChar.getKarma() > 0) { activeChar.sendMessage("Sorry,PK player can't use this."); return false; } else if(activeChar.isDead()) { activeChar.sendMessage("Sorry,Dead player can't take items."); return false; } else if(activeChar.isFakeDeath()) { activeChar.sendMessage("Sorry,on fake death mode can't use this."); return false; } } if(command.equalsIgnoreCase("tankitems")) { if(activeChar.getInventory().getInventoryItemCount(57, 0) >= Config.FIGHTER_ITEMS_PRICE) { activeChar.getInventory().reduceAdena("Adena", Config.FIGHTER_ITEMS_PRICE, activeChar, null); activeChar.getInventory().addItem("Forgotten Blade", 6582, 1, activeChar, activeChar); activeChar.getInventory().addItem("Imperial Armor", 6373, 1, activeChar, activeChar ); activeChar.getInventory().addItem("Imperial ArmorP2", 6374, 1, activeChar, activeChar); activeChar.getInventory().addItem("Imperial Gloves", 6375, 1, activeChar, activeChar ); activeChar.getInventory().addItem("Imperial Boots", 6376, 1, activeChar, activeChar); activeChar.getInventory().addItem("Imperial Helmet", 6378, 1, activeChar, activeChar ); activeChar.getInventory().addItem("TEO Necklace", 920, 1, activeChar, activeChar); activeChar.getInventory().addItem("TEO Earring", 858, 2, activeChar, activeChar); activeChar.getInventory().addItem("TEO Ring", 889, 2, activeChar, activeChar ); activeChar.getInventory().updateDatabase(); activeChar.sendPacket(new ItemList(activeChar, true)); activeChar.sendMessage("Now You Have Tank Items On Your Invetory. Take a Look!."); } else { activeChar.sendMessage("You do not have enough Adena"); } if(activeChar.isInOlympiadMode()) { activeChar.sendMessage("Sorry,you are in the Olympiad now."); return false; } else if(activeChar.isInDuel()) { activeChar.sendMessage("Sorry,you are in a duel!"); return false; } else if(activeChar.atEvent) { activeChar.sendMessage("Sorry,you are on event now."); return false; } else if(!Config.ALT_GAME_KARMA_PLAYER_CAN_USE_GK && activeChar.getKarma() > 0) { activeChar.sendMessage("Sorry,PK player can't use this."); return false; } else if(activeChar.isDead()) { activeChar.sendMessage("Sorry,Dead player can't take items."); return false; } else if(activeChar.isFakeDeath()) { activeChar.sendMessage("Sorry,on fake death mode can't use this."); return false; } } else if(command.equalsIgnoreCase("mageitems")) { if(activeChar.getInventory().getInventoryItemCount(57, 0) >= Config.MAGE_ITEMS_PRICE) { activeChar.getInventory().destroyItemByItemId("Adena", 57, Config.MAGE_ITEMS_PRICE, activeChar, null); activeChar.getInventory().addItem("Arcana Mace Acumen", 6608, 1, activeChar, activeChar); activeChar.getInventory().addItem("DC Robe", 2407, 1, activeChar, activeChar ); activeChar.getInventory().addItem("DC Gloves", 5767, 1, activeChar, activeChar); activeChar.getInventory().addItem("DC Boots", 5779, 1, activeChar, activeChar ); activeChar.getInventory().addItem("DC Helmet", 512, 1, activeChar, activeChar); activeChar.getInventory().addItem("TEO Necklace", 920, 1, activeChar, activeChar ); activeChar.getInventory().addItem("TEO Earring", 858, 2, activeChar, activeChar); activeChar.getInventory().addItem("TEO Ring", 889, 2, activeChar, activeChar ); activeChar.getInventory().updateDatabase(); activeChar.sendPacket(new ItemList(activeChar, true)); activeChar.sendMessage("Now You Have Mage Items On Your Invetory. Take a Look!"); } else { activeChar.sendMessage("You do not have enough Adena"); } if(activeChar.isInOlympiadMode()) { activeChar.sendMessage("Sorry,you are in the Olympiad now."); return false; } else if(activeChar.isInDuel()) { activeChar.sendMessage("Sorry,you are in a duel!"); return false; } else if(activeChar.atEvent) { activeChar.sendMessage("Sorry,you are on event now."); return false; } else if(!Config.ALT_GAME_KARMA_PLAYER_CAN_USE_GK && activeChar.getKarma() > 0) { activeChar.sendMessage("Sorry,PK player can't use this."); return false; } else if(activeChar.isDead()) { activeChar.sendMessage("Sorry,Dead player can't take items."); return false; } else if(activeChar.isFakeDeath()) { activeChar.sendMessage("Sorry,on fake death mode can't use this."); return false; } } return true; } /** * @see net.sf.l2j.gameserver.handler.IVoicedCommandHandler#getVoicedCommandList() */ @Override public String[] getVoicedCommandList() { return _voicedCommands; } }
  3. Ναι, θα προσπαθήσω μέχρι αύριο να είναι κάπως έτσι. Όμως, στο κώδικα πες βάζω levelcheck, η area όμως πως θα γίνει με levelcheck?
  4. Πες μου έναν low rate server, που έχει Protection στο θέμα των level up areas. :P Σπάνιο πιστεύω.... όμως αν το θέμα είναι το levelcheck, ας γίνει.
  5. Δουλεύει κανονικά ναι. Δοκιμασμένο, δοκίμασε το και εσύ. Όμως όσο για τα άλλα που είπες, δεν κατάλαβα γιατί να μπει levelcheck? Αυτό που έκανα απλά, από όπου και να είσαι, σε πάει στο χ location. Ακόμη και να μπει level check, σίγουρα στην Gatekeeper θα υπάρχουν αυτά τα Areas, θα τα βάλει ο Admin 100%. Δεν είναι κάτι, απλά είσαι στο χ μέρος και θέλεις να πας να exp στα 40lvl π.χ, απλά αντί για Gatekeeper, πας με το .lvl40
  6. Yes there is, but the problem? not stopping nor with esc. When player is on this mode, can't stop the teleport. And Thank you dude.
  7. Σαφώς και θα ήτανε καλύτερο, όμως αν χρησιμοποιήσει κάποιος τον κώδικα, θα έχει και τα ίδια areas στην Gatekeeper, οπότε τσάμπα το μπλοκάρουμε από εδώ.
  8. Καλησπέρα. Μοιράζομαι το εξής!!! Commands: .lvl20 / .lvl40 / .lvl60 / .lvl75 For Interlude. config: # Specified reward item rnd qty ChampionRewardItemQty = 1 + +# ---------------------------------------------- +# Level Up Areas +# ---------------------------------------------- +# Custom Level Zones. (.lvl20) +Lvl20CommandAllow = True +# Enter your spawn Location. +lvl20_X = x +lvl20_Y = y +lvl20_Z = z +Level20Messenge = You are in 20 Level Area. + +# Custom Level Zones. (.lvl40) +Lvl40CommandAllow = True # Enter your spawn Location. +lvl40_X = x +lvl40_Y = y +lvl40_Z = z +Level20Messenge = You are in 40 Level Area. + +# Custom Level Zones. (.lvl60) +Lvl60CommandAllow = True # Enter your spawn Location. +lvl60_X = x +lvl60_Y = y +lvl60_Z = z ++Level20Messenge = You are in 60 Level Area. + +# Custom Level Zones. (.lvl75) +Lvl75CommandAllow = True # Enter your spawn Location. +lvl75_X = x +lvl75_Y = y +lvl75_Z = z +Level20Messenge = You are in 75 Level Area. + ===== Index: sf/l2j/config.java public static int L2JMOD_CHAMPION_REWARD_QTY; + public static String LVL20_MESSAGE; + public static String LVL40_MESSAGE; + public static String LVL60_MESSAGE; + public static String LVL75_MESSAGE; + public static boolean LVL20_COMMAND_ALLOW; + public static boolean LVL40_COMMAND_ALLOW; + public static boolean LVL60_COMMAND_ALLOW; + public static boolean LVL75_COMMAND_ALLOW; + public static int LVL20_X; + public static int LVL20_Y; + public static int LVL20_Z; + public static int LVL40_X; + public static int LVL40_Y; + public static int LVL40_Z; + public static int LVL60_X; + public static int LVL60_Y; + public static int LVL60_Z; + public static int LVL75_X; + public static int LVL75_Y; + public static int LVL75_Z; L2JMOD_CHAMPION_REWARD_QTY = Integer.parseInt(L2JModSettings.getProperty("ChampionRewardItemQty", "1")); + LVL20_COMMAND_ALLOW = Boolean.parseBoolean(L2JModSettings.getProperty("Lvl20CommandAllow", "false")); + LVL40_COMMAND_ALLOW = Boolean.parseBoolean(L2JModSettings.getProperty("Lvl40CommandAllow", "false")); + LVL60_COMMAND_ALLOW = Boolean.parseBoolean(L2JModSettings.getProperty("Lvl60CommandAllow", "false")); + LVL75_COMMAND_ALLOW = Boolean.parseBoolean(L2JModSettings.getProperty("Lvl75CommandAllow", "false")); + LVL20_X = Integer.parseInt(L2JModSettings.getProperty("lvl20_X", "x)); + LVL20_Y = Integer.parseInt(L2JModSettings.getProperty("lvl20_Y", "y")); + LVL20_Z = Integer.parseInt(L2JModSettings.getProperty("lvl20_Z", "z")); + LVL40_X = Integer.parseInt(L2JModSettings.getProperty("lvl40_X", "x)); + LVL40_Y = Integer.parseInt(L2JModSettings.getProperty("lvl40_Y", "y")); + LVL40_Z = Integer.parseInt(L2JModSettings.getProperty("lvl40_Z", "z")); + LVL60_X = Integer.parseInt(L2JModSettings.getProperty("lvl60_X", "x")); + LVL60_Y = Integer.parseInt(L2JModSettings.getProperty("lvl60_Y", "y")); + LVL60_Z = Integer.parseInt(L2JModSettings.getProperty("lvl60_Z", "z")); + LVL75_X = Integer.parseInt(L2JModSettings.getProperty("lvl75_X", "x")); + LVL75_Y = Integer.parseInt(L2JModSettings.getProperty("lvl75_Y", "y")); + LVL75_Z = Integer.parseInt(L2JModSettings.getProperty("lvl75_Z", "z")); + LVL20_MESSAGE = L2JModSettings.getProperty("Level20Messenge", "You have been teleported to Farm Zone 1!"); + LVL40_MESSAGE = L2JModSettings.getProperty("Level40Messenge", "You have been teleported to Farm Zone 2!"); + LVL60_MESSAGE = L2JModSettings.getProperty("Level60Messenge", "You have been teleported to PvP Zone 1!"); + LVL75_MESSAGE = L2JModSettings.getProperty("Level75Messenge", "You have been teleported to PvP Zone 2!"); ===== Index: net.sf.l2j.gameserver.handler.VoicedCommandHandler.java import java.util.logging.Logger; +import net.sf.l2j.gameserver.handler.voicedcommandhandlers.LevelZones; import javolution.util.FastMap; private VoicedCommandHandler() { _datatable = new FastMap<String, IVoicedCommandHandler>(); + if(Config.LVL20_COMMAND_ALLOW || Config.LVL40_COMMAND_ALLOW || Config.LVL60_COMMAND_ALLOW || Config.LVL75_COMMAND_ALLOW) + { + registerVoicedCommandHandler(new LevelZones()); + } } public void registerVoicedCommandHandler(IVoicedCommandHandler handler) Εδώ δημιουργούμε ένα καινούριο Class με όνομα LevelZone.java ===== Index: net.sf.l2j.gameserver.handler.voicedcommandhandlers.LevelZones.java /* * 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 <http://www.gnu.org/licenses/>. */ package net.sf.l2j.gameserver.handler.voicedcommandhandlers; import net.sf.l2j.Config; import net.sf.l2j.gameserver.handler.IVoicedCommandHandler; import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance; import net.sf.l2j.gameserver.serverpackets.SetupGauge; import net.sf.l2j.gameserver.ThreadPoolManager; @SuppressWarnings("unused") public class LevelZones implements net.sf.l2j.gameserver.handler.IVoicedCommandHandler { private static final String[] VOICED_COMMANDS = { "lvl20", "lvl40", "lvl60", "lvl75" }; @Override public boolean useVoicedCommand(String command, L2PcInstance activeChar, String target) { int placex; int placey; int placez; String message; if(command.equalsIgnoreCase("lvl20") && Config.LVL20_COMMAND_ALLOW) { placex = Config.LVL20_X; placey = Config.LVL20_Y; placez = Config.LVL20_Z; message = Config.LVL20_MESSAGE; } else if(command.equalsIgnoreCase("lvl40") && Config.LVL40_COMMAND_ALLOW) { placex = Config.LVL40_X; placey = Config.LVL40_Y; placez = Config.LVL40_Z; message = Config.LVL40_MESSAGE; } else if(command.equalsIgnoreCase("lvl60") && Config.LVL60_COMMAND_ALLOW) { placex = Config.LVL60_X; placey = Config.LVL60_Y; placez = Config.LVL60_Z; message = Config.LVL60_MESSAGE; } else if(command.equalsIgnoreCase("lvl75") && Config.LVL75_COMMAND_ALLOW) { placex = Config.LVL75_X; placey = Config.LVL75_Y; placez = Config.LVL75_Z; message = Config.LVL75_MESSAGE; } else return false; if(activeChar.isInJail()) { activeChar.sendMessage("Sorry,you are in Jail!"); return false; } else if(activeChar.isInOlympiadMode()) { activeChar.sendMessage("Sorry,you are in the Olympiad now."); return false; } else if(activeChar.isInDuel()) { activeChar.sendMessage("Sorry,you are in a duel!"); return false; } else if(activeChar.inObserverMode()) { activeChar.sendMessage("Sorry,you are in the observation mode."); return false; } else if(activeChar.isFestivalParticipant()) { activeChar.sendMessage("Sorry,you are in a festival."); return false; } else if(!Config.ALT_GAME_KARMA_PLAYER_CAN_USE_GK && activeChar.getKarma() > 0) { activeChar.sendMessage("Sorry,PK player can't use this."); return false; } else if(activeChar.isDead()) { activeChar.sendMessage("Sorry,Dead player can't teleport."); return false; } else if(activeChar.isFakeDeath()) { activeChar.sendMessage("Sorry,on fake death mode can't use this."); return false; } else if(activeChar.atEvent) { activeChar.sendMessage("Sorry,you are on event now."); return false; } SetupGauge sg = new SetupGauge(SetupGauge.BLUE, 15000); activeChar.sendPacket(sg); sg = null; activeChar.setIsImobilised(true); ThreadPoolManager.getInstance().scheduleGeneral(new teleportTask(activeChar, placex, placey, placez, message), 15000); return true; } @Override public String[] getVoicedCommandList() { return VOICED_COMMANDS; } class teleportTask implements Runnable { private final L2PcInstance _activeChar; private final int _x; private final int _y; private final int _z; private final String _message; teleportTask(L2PcInstance activeChar, int x, int y, int z, String message) { _activeChar = activeChar; _x = x; _y = y; _z = z; _message = message; } @Override public void run() { if(_activeChar == null) return; _activeChar.teleToLocation(_x, _y, _z); _activeChar.sendMessage(_message); _activeChar.setIsImobilised(false); } } }
  9. And of course takes time.
  10. Commands: .lvl20 / .lvl40 / .lvl60 / .lvl75 config: # Specified reward item rnd qty ChampionRewardItemQty = 1 + +# ---------------------------------------------- +# Level Up Areas +# ---------------------------------------------- +# Custom Level Zones. (.lvl20) +Lvl20CommandAllow = True +# Enter your spawn Location. +lvl20_X = x +lvl20_Y = y +lvl20_Z = z +Level20Messenge = You are in 20 Level Area. + +# Custom Level Zones. (.lvl40) +Lvl40CommandAllow = True # Enter your spawn Location. +lvl40_X = x +lvl40_Y = y +lvl40_Z = z +Level20Messenge = You are in 40 Level Area. + +# Custom Level Zones. (.lvl60) +Lvl60CommandAllow = True # Enter your spawn Location. +lvl60_X = x +lvl60_Y = y +lvl60_Z = z ++Level20Messenge = You are in 60 Level Area. + +# Custom Level Zones. (.lvl75) +Lvl75CommandAllow = True # Enter your spawn Location. +lvl75_X = x +lvl75_Y = y +lvl75_Z = z +Level20Messenge = You are in 75 Level Area. + ===== Index: sf/l2j/config.java public static int L2JMOD_CHAMPION_REWARD_QTY; + public static String LVL20_MESSAGE; + public static String LVL40_MESSAGE; + public static String LVL60_MESSAGE; + public static String LVL75_MESSAGE; + public static boolean LVL20_COMMAND_ALLOW; + public static boolean LVL40_COMMAND_ALLOW; + public static boolean LVL60_COMMAND_ALLOW; + public static boolean LVL75_COMMAND_ALLOW; + public static int LVL20_X; + public static int LVL20_Y; + public static int LVL20_Z; + public static int LVL40_X; + public static int LVL40_Y; + public static int LVL40_Z; + public static int LVL60_X; + public static int LVL60_Y; + public static int LVL60_Z; + public static int LVL75_X; + public static int LVL75_Y; + public static int LVL75_Z; L2JMOD_CHAMPION_REWARD_QTY = Integer.parseInt(L2JModSettings.getProperty("ChampionRewardItemQty", "1")); + LVL20_COMMAND_ALLOW = Boolean.parseBoolean(L2JModSettings.getProperty("Lvl20CommandAllow", "false")); + LVL40_COMMAND_ALLOW = Boolean.parseBoolean(L2JModSettings.getProperty("Lvl40CommandAllow", "false")); + LVL60_COMMAND_ALLOW = Boolean.parseBoolean(L2JModSettings.getProperty("Lvl60CommandAllow", "false")); + LVL75_COMMAND_ALLOW = Boolean.parseBoolean(L2JModSettings.getProperty("Lvl75CommandAllow", "false")); + LVL20_X = Integer.parseInt(L2JModSettings.getProperty("lvl20_X", "x)); + LVL20_Y = Integer.parseInt(L2JModSettings.getProperty("lvl20_Y", "y")); + LVL20_Z = Integer.parseInt(L2JModSettings.getProperty("lvl20_Z", "z")); + LVL40_X = Integer.parseInt(L2JModSettings.getProperty("lvl40_X", "x)); + LVL40_Y = Integer.parseInt(L2JModSettings.getProperty("lvl40_Y", "y")); + LVL40_Z = Integer.parseInt(L2JModSettings.getProperty("lvl40_Z", "z")); + LVL60_X = Integer.parseInt(L2JModSettings.getProperty("lvl60_X", "x")); + LVL60_Y = Integer.parseInt(L2JModSettings.getProperty("lvl60_Y", "y")); + LVL60_Z = Integer.parseInt(L2JModSettings.getProperty("lvl60_Z", "z")); + LVL75_X = Integer.parseInt(L2JModSettings.getProperty("lvl75_X", "x")); + LVL75_Y = Integer.parseInt(L2JModSettings.getProperty("lvl75_Y", "y")); + LVL75_Z = Integer.parseInt(L2JModSettings.getProperty("lvl75_Z", "z")); + LVL20_MESSAGE = L2JModSettings.getProperty("Level20Messenge", "You have been teleported to Farm Zone 1!"); + LVL40_MESSAGE = L2JModSettings.getProperty("Level40Messenge", "You have been teleported to Farm Zone 2!"); + LVL60_MESSAGE = L2JModSettings.getProperty("Level60Messenge", "You have been teleported to PvP Zone 1!"); + LVL75_MESSAGE = L2JModSettings.getProperty("Level75Messenge", "You have been teleported to PvP Zone 2!"); ===== Index: net.sf.l2j.gameserver.handler.VoicedCommandHandler.java import java.util.logging.Logger; +import net.sf.l2j.gameserver.handler.voicedcommandhandlers.LevelZones; import javolution.util.FastMap; private VoicedCommandHandler() { _datatable = new FastMap<String, IVoicedCommandHandler>(); + if(Config.LVL20_COMMAND_ALLOW || Config.LVL40_COMMAND_ALLOW || Config.LVL60_COMMAND_ALLOW || Config.LVL75_COMMAND_ALLOW) + { + registerVoicedCommandHandler(new LevelZones()); + } } public void registerVoicedCommandHandler(IVoicedCommandHandler handler) Create a New Class LevelZone.java ===== Index: net.sf.l2j.gameserver.handler.voicedcommandhandlers.LevelZones.java /* * 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 <http://www.gnu.org/licenses/>. */ package net.sf.l2j.gameserver.handler.voicedcommandhandlers; import net.sf.l2j.Config; import net.sf.l2j.gameserver.handler.IVoicedCommandHandler; import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance; import net.sf.l2j.gameserver.serverpackets.SetupGauge; import net.sf.l2j.gameserver.ThreadPoolManager; @SuppressWarnings("unused") public class LevelZones implements net.sf.l2j.gameserver.handler.IVoicedCommandHandler { private static final String[] VOICED_COMMANDS = { "lvl20", "lvl40", "lvl60", "lvl75" }; @Override public boolean useVoicedCommand(String command, L2PcInstance activeChar, String target) { int placex; int placey; int placez; String message; if(command.equalsIgnoreCase("lvl20") && Config.LVL20_COMMAND_ALLOW) { placex = Config.LVL20_X; placey = Config.LVL20_Y; placez = Config.LVL20_Z; message = Config.LVL20_MESSAGE; } else if(command.equalsIgnoreCase("lvl40") && Config.LVL40_COMMAND_ALLOW) { placex = Config.LVL40_X; placey = Config.LVL40_Y; placez = Config.LVL40_Z; message = Config.LVL40_MESSAGE; } else if(command.equalsIgnoreCase("lvl60") && Config.LVL60_COMMAND_ALLOW) { placex = Config.LVL60_X; placey = Config.LVL60_Y; placez = Config.LVL60_Z; message = Config.LVL60_MESSAGE; } else if(command.equalsIgnoreCase("lvl75") && Config.LVL75_COMMAND_ALLOW) { placex = Config.LVL75_X; placey = Config.LVL75_Y; placez = Config.LVL75_Z; message = Config.LVL75_MESSAGE; } else return false; if(activeChar.isInJail()) { activeChar.sendMessage("Sorry,you are in Jail!"); return false; } else if(activeChar.isInOlympiadMode()) { activeChar.sendMessage("Sorry,you are in the Olympiad now."); return false; } else if(activeChar.isInDuel()) { activeChar.sendMessage("Sorry,you are in a duel!"); return false; } else if(activeChar.inObserverMode()) { activeChar.sendMessage("Sorry,you are in the observation mode."); return false; } else if(activeChar.isFestivalParticipant()) { activeChar.sendMessage("Sorry,you are in a festival."); return false; } else if(!Config.ALT_GAME_KARMA_PLAYER_CAN_USE_GK && activeChar.getKarma() > 0) { activeChar.sendMessage("Sorry,PK player can't use this."); return false; } else if(activeChar.isDead()) { activeChar.sendMessage("Sorry,Dead player can't teleport."); return false; } else if(activeChar.isFakeDeath()) { activeChar.sendMessage("Sorry,on fake death mode can't use this."); return false; } else if(activeChar.atEvent) { activeChar.sendMessage("Sorry,you are on event now."); return false; } SetupGauge sg = new SetupGauge(SetupGauge.BLUE, 15000); activeChar.sendPacket(sg); sg = null; activeChar.setIsImobilised(true); ThreadPoolManager.getInstance().scheduleGeneral(new teleportTask(activeChar, placex, placey, placez, message), 15000); return true; } @Override public String[] getVoicedCommandList() { return VOICED_COMMANDS; } class teleportTask implements Runnable { private final L2PcInstance _activeChar; private final int _x; private final int _y; private final int _z; private final String _message; teleportTask(L2PcInstance activeChar, int x, int y, int z, String message) { _activeChar = activeChar; _x = x; _y = y; _z = z; _message = message; } @Override public void run() { if(_activeChar == null) return; _activeChar.teleToLocation(_x, _y, _z); _activeChar.sendMessage(_message); _activeChar.setIsImobilised(false); } } }
  11. I give 9euro paypal for 10euro paysafecard! Fast a Trade!
  12. Θέλω ένα Trade στα γρήγορα. Ευχαριστώ!!!
  13. Κάθε μέρα και με έναν τόσο βοηθητικό οδηγό. Πίστεψέ με, μου έλυσε μερικές περιέργειες, σε λάθη που είδα ότι έκανα. Σίγουρα πολλοί θα βγουν ευχαριστημένοι από εδώ. Και επειδή αυτό δεν είναι κάτι που θα το δεις μία η δύο φόρες και άντε τελείωσα, θα πρότεινα να γίνει ένα Collection με τους οδηγούς σου, και να πάει Sticky. Καιρός να αφαιρεθούν μερικοί παλαιοί και μισοεξηγημένοι οδηγοί. +1 για την δουλειά σου. (Δεν ξέρω αν επιτρέπεται να σου ξαναδώσω από χθες, όμως αν είναι το διορθώνουν) Καλή συνέχεια και ευχαριστούμε!!!
  14. I know. haha. many thanks for the help. Lock it.
  15. Is it work? public void increaseLevel() { // Set the current HP and MP of the L2Character, Launch/Stop a HP/MP/CP Regeneration Task and send StatusUpdate packet to all other L2PcInstance to inform (exclusive broadcast) setCurrentHpMp(getMaxHp(), getMaxMp()); setCurrentCp(getMaxCp()); + if(Config.LEVEL_TELEPORT_ALLOWED) + + if (getLevel() == Config.LEVEL_COUNT) + teleToLocation(-84318,244579,-3730); + sendMessage("You will be teleporting on bla bla"); }
  16. Yeah... i have error on public void increaseLevel() but with public void increaseLevel1() is ok... what i can to do with this?
  17. It's ok like that? L2PcInstance + public void increaseLevel() + { + if (getLevel() == 20) + teleToLocation(-84318,244579,-3730); + }
  18. I want a code where when a player gets 20 level ie make him automatically teleport to a another area. I have create this, but nothing. if (activeChar.getLevel() == 20) _activeChar.teleToLocation(-84318,244579,-3730, true); Then what you need to work?
  19. [share] Custom Enchant System
  20. Thank you Fanky.... I understand my mistake!
  21. Δεν θα γράψω ούτε ότι είναι τέλειος οδηγός, ούτε κάτι που είναι απλές λέξεις. Έκανες κάτι που όχι μόνο θα βοηθήσει, αλλά θα χρησιμοποιηθεί πολλοστές φορές. Ευχαριστώ γι'αυτόν τον οδηγό. +1 λοιπόν.
  22. When the player is on Olympiad Match get Name Color. config: Index: net/sf/l2j/config/l2jmods.properties # Specified reward item rnd qty ChampionRewardItemQty = 1 + +#--------------------------------------------------------------- +# Olympiad Custom Name Color +#--------------------------------------------------------------- OlympiadColorSystem = false OlympiadNameColor = FFF000 + ===== Index: net/sf/l2j/config.java public static int L2JMOD_CHAMPION_REWARD_ID; public static int L2JMOD_CHAMPION_REWARD_QTY; + public static boolean OLYMPIAD_COLOR_SYSTEM; + public static int OLYMPIAD_NAME_COLOR; L2JMOD_CHAMPION_REWARD_ID = Integer.parseInt(L2JModSettings.getProperty("ChampionRewardItemID", "6393")); L2JMOD_CHAMPION_REWARD_QTY = Integer.parseInt(L2JModSettings.getProperty("ChampionRewardItemQty", "1")); + OLYMPIAD_COLOR_SYSTEM = Boolean.parseBoolean(L2JModSettings.getProperty("OlympiadColorSystem", "false")); + OLYMPIAD_NAME_COLOR = Integer.decode("0x" + L2JModSettings.getProperty("OlympiadNameColor", "FFF000")); ===== Index: sf/l2j/gameserver/Olympiad.java //Remove Clan Skills if (player.getClan() != null) { for(L2Skill skill: player.getClan().getAllSkills()) player.removeSkill(skill,false); } + + //Olympiad Color Title + if (Config.OLYMPIAD_COLOR_SYSTEM) + { + if (player.isOlympiadStart()) + player.getAppearance().setNameColor(Config.OLYMPIAD_NAME_COLOR); + broadcastUserInfo(); + } + //Abort casting if player casting if (player.isCastingNow()) Well a second Code. When the player is on Olympiad Match get Title "Go Fight". config: Index: net/sf/l2j/config/l2jmods.properties # Specified reward item rnd qty ChampionRewardItemQty = 1 + #--------------------------------------------------------------- # Olympiad Custom Title #--------------------------------------------------------------- OlympiadTitleSystem = false OlympiadTitle = "Go Fight" + ===== Index: net/sf/l2j/config.java public static int L2JMOD_CHAMPION_REWARD_ID; public static int L2JMOD_CHAMPION_REWARD_QTY; + public static boolean OLYMPIAD_TITLE_SYSTEM; + public static int OLYMPIAD_TITLE; L2JMOD_CHAMPION_REWARD_ID = Integer.parseInt(L2JModSettings.getProperty("ChampionRewardItemID", "6393")); L2JMOD_CHAMPION_REWARD_QTY = Integer.parseInt(L2JModSettings.getProperty("ChampionRewardItemQty", "1")); + OLYMPIAD_TITLE_SYSTEM = Boolean.parseBoolean(L2JModSettings.getProperty("OlympiadTitleSystem", "false")); + OLYMPIAD_TITLE = Integer.parseInt(L2JModSettings.getProperty("OlympiadTitle", "Go Fight")); ===== Index: sf/l2j/gameserver/Olympiad.java //Remove Clan Skills if (player.getClan() != null) { for(L2Skill skill: player.getClan().getAllSkills()) player.removeSkill(skill,false); } + + //Olympiad Title + if (Config.OLYMPIAD_TITLE_SYSTEM) + { + if (player.isOlympiadStart()) + player.getAppearance().setTitle(Config.OLYMPIAD_TITLE); + broadcastUserInfo(); + } //Abort casting if player casting if (player.isCastingNow()) Credit's:Me Thanks to Fanky for the correction
  23. Σίγουρα υπάρχουν, αλλά είχα server με αυτό το project, οπότε κάποια είναι ήδη fixed. Επίσης, εάν εσύ ο ίδιος θα ήθελες να ανοίξεις έναν Freya server θα διάλεγες το L2J Server, θα το έκανες Compile και θα περνούσες μέσα κώδικες, αυτό έκανα και εγώ. Είναι Based L2J Server. Απλά σε παροτρύνω από το να περάσεις μερικά από αυτά που ήδη έχει. Δεν είπα πως έχω κάνει ΔΙΚΟ ΜΟΥ project, απλά πως πέρασα μέσα στο L2J μερικά πράγματα. Από αύριο θα γίνει Update σε Java Side.
  24. Κάνεις μεγάλο λάθος. Ούτε prencofigured Pack, έχει τα source του. Μπορείς να δουλέψεις πάνω σε αυτό. Αν για σένα έτοιμο Project είναι το Frozen, τότε καλά μυαλά!
  25. Εγώ φίλε απ'όσο θυμάμαι, όταν είχα server με αυτό, δεν είχα πρόβλημα με το flag στην ολυμπιάδα. Όμως με το ctrl ναι.... θα τα κοιτάξω.
×
×
  • Create New...

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock