Jump to content

shades121

Members
  • Posts

    2
  • Credits

  • Joined

  • Last visited

  • Feedback

    0%

Everything posted by shades121

  1. hi, replace java code with this (worked with last h5-Freya) remember CHANGE WITH YOUR ID /* * Copyright (C) 2004-2013 L2J DataPack * * This file is part of L2J DataPack. * * L2J DataPack 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. * * L2J DataPack 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 custom.Services; import java.io.BufferedWriter; import java.io.File; import java.io.FileWriter; import java.sql.Connection; import java.sql.PreparedStatement; import java.util.logging.Logger; import com.l2jserver.commons.database.pool.impl.ConnectionFactory; import com.l2jserver.gameserver.data.sql.impl.CharNameTable; import com.l2jserver.gameserver.data.sql.impl.ClanTable; import com.l2jserver.gameserver.model.actor.L2Npc; import com.l2jserver.gameserver.model.actor.instance.L2PcInstance; import com.l2jserver.gameserver.model.olympiad.OlympiadManager; import com.l2jserver.gameserver.model.quest.Quest; import com.l2jserver.gameserver.model.quest.QuestState; import com.l2jserver.gameserver.network.serverpackets.MagicSkillUse; /** * @author Colet */ public class Services extends Quest { public static final Logger _log = Logger.getLogger(Services.class.getName()); // NPC Id int servicesNpc = 50008; // Noble Items int nobleItemId = 57; long nobleItemCount = 1; // PK Reduce Items int pkReduceItemId = 57; long pkReduceItemCount = 1000; // Change Name Items int changeNameItemId = 57; long changeNameItemCount = 1000000; boolean logNameChanges = true; // Change Clan Name Items int changeClanNameItemId = 57; long changeClanNameItemCount = 50000; boolean logClanNameChanges = true; int clanMinLevel = 5; // Clan Level Items int[] clanLevelItemsId = { 57, // Level 5 to 6 57, // Level 6 to 7 57, // Level 7 to 8 57, // Level 8 to 9 57, // Level 9 to 10 57 // Level 10 to 11 }; long[] clanLevelItemsCount = { 6, // Level 5 to 6 7, // Level 6 to 7 8, // Level 7 to 8 9, // Level 8 to 9 10, // Level 9 to 10 11 // Level 10 to 11 }; // Clan Reputation Points Items int clanReputationPointsItemId = 57; long clanReputationPointsItemCount = 5; // Change Gender Items int changeGenderItemId = 57; long changeGenderItemCount = 50; public Services(int questId, String name, String descr) { super(questId, name, descr); addStartNpc(servicesNpc); addFirstTalkId(servicesNpc); addTalkId(servicesNpc); } public static void main(String[] args) { new Services(-1, Services.class.getSimpleName(), "custom"); } public String onFirstTalk(L2Npc npc, L2PcInstance player) { if (player.getQuestState(getName()) == null) { newQuestState(player); } else if (player.isInCombat()) { return "Services-Blocked.htm"; } else if (player.getPvpFlag() == 1) { return "Services-Blocked.htm"; } else if (player.getKarma() != 0) { return "Services-Blocked.htm"; } else if (OlympiadManager.getInstance().isRegistered(player)) { return "Services-Blocked.htm"; } return "Services.htm"; } public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) { String htmlText = event; QuestState st = player.getQuestState(getName()); if (event.equals("setNoble")) { if (!player.isNoble()) { if (st.getQuestItemsCount(nobleItemId) >= nobleItemCount) { st.takeItems(nobleItemId, nobleItemCount); player.setNoble(true); player.setTarget(player); player.broadcastPacket(new MagicSkillUse(player, 5103, 1, 1000, 0)); player.broadcastUserInfo(); return "NoblesseServices-Success.htm"; } else { return "NoblesseServices-NoItems.htm"; } } else { return "NoblesseServices-AlredyNoble.htm"; } } else if (event.equals("levelUpClan")) { if (!player.isClanLeader()) { return "ClanLevelUp-NoLeader.htm"; } else { if (player.getClan().getLevel() == 11) { return "ClanLevelUp-MaxLevel.htm"; } else { if (((player.getClan().getLevel() <= 1) || (player.getClan().getLevel() == 2) || (player.getClan().getLevel() == 3) || (player.getClan().getLevel() == 4))) { player.getClan().setLevel(player.getClan().getLevel() + 1); player.getClan().broadcastClanStatus(); player.sendMessage("Your clan is now level " + player.getClan().getLevel() + "."); player.setTarget(player); player.broadcastPacket(new MagicSkillUse(player, 5103, 1, 1000, 0)); return "ClanLevelUp.htm"; } else if (player.getClan().getLevel() == 5) { if (st.getQuestItemsCount(clanLevelItemsId[0]) >= clanLevelItemsCount[0]) { st.takeItems(clanLevelItemsId[0], clanLevelItemsCount[0]); player.getClan().setLevel(player.getClan().getLevel() + 1); player.getClan().broadcastClanStatus(); player.sendMessage("Your clan is now level " + player.getClan().getLevel() + "."); player.setTarget(player); player.broadcastPacket(new MagicSkillUse(player, 5103, 1, 1000, 0)); return "ClanLevelUp.htm"; } else { return "ClanLevelUp-NoItems.htm"; } } else if (player.getClan().getLevel() == 6) { if (st.getQuestItemsCount(clanLevelItemsId[1]) >= clanLevelItemsCount[1]) { st.takeItems(clanLevelItemsId[1], clanLevelItemsCount[1]); player.getClan().setLevel(player.getClan().getLevel() + 1); player.getClan().broadcastClanStatus(); player.sendMessage("Your clan is now level " + player.getClan().getLevel() + "."); player.setTarget(player); player.broadcastPacket(new MagicSkillUse(player, 5103, 1, 1000, 0)); return "ClanLevelUp.htm"; } else { return "ClanLevelUp-NoItems.htm"; } } else if (player.getClan().getLevel() == 7) { if (st.getQuestItemsCount(clanLevelItemsId[2]) >= clanLevelItemsCount[2]) { st.takeItems(clanLevelItemsId[2], clanLevelItemsCount[2]); player.getClan().setLevel(player.getClan().getLevel() + 1); player.getClan().broadcastClanStatus(); player.sendMessage("Your clan is now level " + player.getClan().getLevel() + "."); player.setTarget(player); player.broadcastPacket(new MagicSkillUse(player, 5103, 1, 1000, 0)); return "ClanLevelUp.htm"; } else { return "ClanLevelUp-NoItems.htm"; } } else if (player.getClan().getLevel() == 8) { if (st.getQuestItemsCount(clanLevelItemsId[3]) >= clanLevelItemsCount[3]) { st.takeItems(clanLevelItemsId[3], clanLevelItemsCount[3]); player.getClan().setLevel(player.getClan().getLevel() + 1); player.getClan().broadcastClanStatus(); player.sendMessage("Your clan is now level " + player.getClan().getLevel() + "."); player.setTarget(player); player.broadcastPacket(new MagicSkillUse(player, 5103, 1, 1000, 0)); return "ClanLevelUp.htm"; } else { return "ClanLevelUp-NoItems.htm"; } } else if (player.getClan().getLevel() == 9) { if (st.getQuestItemsCount(clanLevelItemsId[4]) >= clanLevelItemsCount[4]) { st.takeItems(clanLevelItemsId[4], clanLevelItemsCount[4]); player.getClan().setLevel(player.getClan().getLevel() + 1); player.getClan().broadcastClanStatus(); player.sendMessage("Your clan is now level " + player.getClan().getLevel() + "."); player.setTarget(player); player.broadcastPacket(new MagicSkillUse(player, 5103, 1, 1000, 0)); return "ClanLevelUp.htm"; } else { return "ClanLevelUp-NoItems.htm"; } } else if (player.getClan().getLevel() == 10) { if (st.getQuestItemsCount(clanLevelItemsId[5]) >= clanLevelItemsCount[5]) { st.takeItems(clanLevelItemsId[5], clanLevelItemsCount[5]); player.getClan().setLevel(player.getClan().getLevel() + 1); player.getClan().broadcastClanStatus(); player.sendMessage("Your clan is now level " + player.getClan().getLevel() + "."); player.setTarget(player); player.broadcastPacket(new MagicSkillUse(player, 5103, 1, 1000, 0)); return "ClanLevelUp.htm"; } else { return "ClanLevelUp-NoItems.htm"; } } try (Connection con = ConnectionFactory.getInstance().getConnection(); PreparedStatement statement = con.prepareStatement("UPDATE clan_data SET clan_level=? WHERE clan_id=?")) { statement.setInt(1, player.getClan().getLevel()); statement.setInt(2, player.getClanId()); statement.execute(); statement.close(); } catch (Exception e) { _log.info("Error updating clan level for player " + player.getName() + ". Error: " + e); } player.getClan().broadcastClanStatus(); return "ClanLevelUp.htm"; } } } else if (event.equals("changeGender")) { if (st.getQuestItemsCount(changeGenderItemId) >= changeGenderItemCount) { st.takeItems(changeGenderItemId, changeGenderItemCount); player.getAppearance().setSex(player.getAppearance().getSex() ? false : true); player.setTarget(player); player.broadcastPacket(new MagicSkillUse(player, 5103, 1, 1000, 0)); player.broadcastUserInfo(); return "ChangeGender-Success.htm"; } else { return "ChangeGender-NoItems.htm"; } } else if (event.startsWith("changeName")) { try { String newName = event.substring(11); if (st.getQuestItemsCount(changeNameItemId) >= changeNameItemCount) { if (newName == null) { return "ChangeName.htm"; } else { if (!newName.matches("^[a-zA-Z0-9]+$")) { player.sendMessage("Incorrect name. Please try again."); return "ChangeName.htm"; } else if (newName.equals(player.getName())) { player.sendMessage("Please, choose a different name."); return "ChangeName.htm"; } else if (CharNameTable.getInstance().doesCharNameExist(newName)) { player.sendMessage("The name " + newName + " already exists."); return "ChangeName.htm"; } else { if (logNameChanges) { String fileName = "log/Services/Name Change - " + player.getName() + ".txt"; new File(fileName); FileWriter fileText = new FileWriter(fileName); BufferedWriter fileContent = new BufferedWriter(fileText); fileContent.write("Character name change info:\r\n\r\nCharacter original name: " + player.getName() + "\r\nCharacter new name: " + newName); fileContent.close(); } st.takeItems(changeNameItemId, changeNameItemCount); player.setName(newName); player.store(true); // or false question is if want to store effects too. player.sendMessage("Your new character name is " + newName); player.broadcastUserInfo(); return "ChangeName-Success.htm"; } } } else { return "ChangeName-NoItems.htm"; } } catch (Exception e) { player.sendMessage("Please, insert a correct name."); return "ChangeName.htm"; } } else if (event.startsWith("reducePks")) { try { String pkReduceString = event.substring(10); int pkReduceCount = Integer.parseInt(pkReduceString); if (player.getPkKills() != 0) { if (pkReduceCount == 0) { player.sendMessage("Please, put a higher value."); return "PkServices.htm"; } else { if (st.getQuestItemsCount(pkReduceItemId) >= pkReduceItemCount) { st.takeItems(pkReduceItemId, pkReduceItemCount * pkReduceCount); player.setPkKills(player.getPkKills() - pkReduceCount); player.sendMessage("You have successfuly cleaned " + pkReduceCount + " PKs."); player.broadcastUserInfo(); return "PkServices-Success.htm"; } else { return "PkServices-NoItems.htm"; } } } else { return "PkServices-NoPks.htm"; } } catch (Exception e) { player.sendMessage("Incorrect value. Please try again."); return "PkServices.htm"; } } else if (event.startsWith("changeClanName")) { if (player.getClan() == null) { return "ChangeClanName-NoClan.htm"; } else { try { String newClanName = event.substring(15); if (st.getQuestItemsCount(changeClanNameItemId) >= changeClanNameItemCount) { if (newClanName == null) { return "ChangeClanName.htm"; } else { if (!player.isClanLeader()) { player.sendMessage("Only the clan leader can change the clan name."); return "ChangeClanName.htm"; } else if (player.getClan().getLevel() < clanMinLevel) { player.sendMessage("Your clan must be at least level " + clanMinLevel + " to change the name."); return "ChangeClanName.htm"; } else if (!newClanName.matches("^[a-zA-Z0-9]+$")) { player.sendMessage("Incorrect name. Please try again."); return "ChangeClanName.htm"; } else if (newClanName.equals(player.getClan().getName())) { player.sendMessage("Please, choose a different name."); return "ChangeClanName.htm"; } else if (null != ClanTable.getInstance().getClanByName(newClanName)) { player.sendMessage("The name " + newClanName + " already exists."); return "ChangeClanName.htm"; } else { if (logClanNameChanges) { String fileName = "log/Services/Clan Name Change - " + player.getClan().getName() + ".txt"; new File(fileName); FileWriter fileText = new FileWriter(fileName); BufferedWriter fileContent = new BufferedWriter(fileText); fileContent.write("Clan name change info:\r\n\r\nClan original name: " + player.getClan().getName() + "\r\nClan new name: " + newClanName + "\r\nClan Leader: " + player.getName()); fileContent.close(); } st.takeItems(changeNameItemId, changeNameItemCount); player.getClan().setName(newClanName); try (Connection con = ConnectionFactory.getInstance().getConnection(); PreparedStatement statement = con.prepareStatement("UPDATE clan_data SET clan_name=? WHERE clan_id=?")) { statement.setString(1, newClanName); statement.setInt(2, player.getClanId()); statement.execute(); statement.close(); } catch (Exception e) { _log.info("Error updating clan name for player " + player.getName() + ". Error: " + e); } player.sendMessage("Your new clan name is " + newClanName); player.getClan().broadcastClanStatus(); return "ChangeClanName-Success.htm"; } } } else { return "ChangeClanName-NoItems.htm"; } } catch (Exception e) { player.sendMessage("Please, insert a correct name."); return "ChangeClanName.htm"; } } } else if (event.startsWith("setReputationPoints")) { try { String reputationPointsString = event.substring(20); int reputationPointsCount = Integer.parseInt(reputationPointsString); if (player.getClan() == null) { return "ClanReputationPoints-NoClan.htm"; } else if (!player.isClanLeader()) { return "ClanReputationPoints-NoLeader.htm"; } else { if (reputationPointsCount == 0) { player.sendMessage("Please, put a higher value."); return "ClanReputationPoints.htm"; } else { if (st.getQuestItemsCount(clanReputationPointsItemId) >= clanReputationPointsItemCount) { st.takeItems(clanReputationPointsItemId, clanReputationPointsItemCount * reputationPointsCount); player.getClan().addReputationScore(player.getClan().getReputationScore() + reputationPointsCount, true); player.getClan().broadcastClanStatus(); return "ClanReputationPoints-Success.htm"; } else { return "ClanReputationPoints-NoItems.htm"; } } } } catch (Exception e) { player.sendMessage("Incorrect value. Please try again."); return "ClanReputationPoints.htm"; } } return htmlText; } }
×
×
  • 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