Jump to content

bjorkker02

Members
  • Posts

    21
  • Credits

  • Joined

  • Last visited

  • Feedback

    0%

Everything posted by bjorkker02

  1. Thx man! But I have this error on version 0.4 "Erreur : could not find driver" ty
  2. Tyvm Prince* Based on this code, I also managed to lock my AIOs going out of towns !
  3. Hi guys! I have a custom Instance Event Party and original solo event by Bloodshed, perhaps I have a noob problem :lol: How to change another instance, like this coords ? { final teleCoord tele = new teleCoord(); tele.x = -213472; tele.y = 244894; tele.z = 2019; enterInstance(player, "Bloodshedparty.xml", tele); return ""; } Bacause always, the players go to Tower of Naia but I dont see Naia instance id [/noob] private static final int INSTANCEID = 555555; ???
  4. Hello folks then .. :-[ I need help with my AIOs since restrict them from leaving towns is hard so I would know how to use a punishment for such In L2TownZone.java this protected void onExit(L2Character character) { // TODO: there should be no exit if there was possibly no enter if (_isPeaceZone) character.setInsideZone(L2Character.ZONE_PEACE, false); character.setInsideZone(L2Character.ZONE_TOWN, false); if (character instanceof L2PcInstance) { if (((L2PcInstance)character).isDonator() && getTownId() == 7) { ((L2PcInstance)character).sendMessage("AIOs can't leave town. You are now back."); ((L2PcInstance)character).teleToLocation(MapRegionTable.TeleportWhereType.Town); } else if (((L2PcInstance)character).isDonator() && getTownId() == 8) { ((L2PcInstance)character).sendMessage("AIOs can't leave town. You are now back."); ((L2PcInstance)character).teleToLocation(MapRegionTable.TeleportWhereType.Town); } else ((L2PcInstance)character).sendMessage("You have entered a non-restricted area."); } } It works, but the restriction also applies when it goes to Town to Town .. here's how to limit access only to towns with ID 1-13!? thx
  5. Nice share thx ! but.. How to block a character out of a city instead of entering type: protected void onExit(L2Character character)
  6. Hi guys I have trying again.. But this dont work, whats a wrong for this Donator Char back to town if exit? protected void onExit(L2Character character) { // TODO: there should be no exit if there was possibly no enter if (_isPeaceZone) character.setInsideZone(L2Character.ZONE_PEACE, false); character.setInsideZone(L2Character.ZONE_TOWN, false); if (character instanceof L2PcInstance) { if (((L2PcInstance)character).isDonator() && character.isInsideZone(L2Character.ZONE_TOWN)) { character.teleToLocation(MapRegionTable.TeleportWhereType.Town); return; } } } thx
  7. And in my case :-\ I need that donations don't go out of towns.. I found this patch and how it works ? sry 4 noob questions if (activeChar.donate() && --> Exit town < -- { activeChar.sendMessage("Donates can't leave towns."); activeChar. -- > back to town < -- } else if (activeChar.donate() { -- > if (activeChar.donate()) { activeChar.getAppearance().setNameColor(660099); < -- } thx 4all
  8. I know ! I wanted to say that: If the SQL query = AIO,(1) Core demand if onExit AIO,(1) immediately AIO teleports to town ! But I try thx 4all
  9. Excuse me for newbie question.. And I am very grateful for the help ..but to add this in L2TownZone using sql query? protected void onExit(L2Character character) { ......... :-[
  10. Hi guys :) How to blocking a specific character when it comes out of a town ? I have the table characters indicating that the char is AIO. How to use in core to make the character return to town, if character exit town ? Thx 4 all L2JServer rev. 4059
  11. lol my workspace is 4059. for Ichigo ^^ last rev is 4176 !
  12. :) Hello guys! I heard on a private server.. AIO characters are petrified when they leave the city! How can I add this diff in the L2JServer Epilogue last rev ? thx !
  13. Thx for share but.. dont work in L2JServer Gracia Epilogue.. last rev
  14. Hello masters :) How to modify some songs Lineage? I add Ogg patcher and have a program to convert mp3 to ogg but when I replace for example being, NT_Giran does not work and the original music remains the same. But when I use any folder patched gracia final works, would be some dll file? How to change it in Gracia Epilogue? thx for all!
  15. I using L2jServer 3696 and no have errors during compilation or in start GS...
  16. Sorry Matim So.. when I tested the system on the old server Red Line there could use buffs, and special items starting at points accrued when mobs ditched... On this code, I found a source in See: Index: java/net/sf/l2j/gameserver/network/clientpackets/MultiSellChoose.java =================================================================== --- java/net/sf/l2j/gameserver/network/clientpackets/MultiSellChoose.java (revision 3695) +++ java/net/sf/l2j/gameserver/network/clientpackets/MultiSellChoose.java (working copy) @@ -32,6 +32,7 @@ import net.sf.l2j.gameserver.model.itemcontainer.PcInventory; import net.sf.l2j.gameserver.network.SystemMessageId; import net.sf.l2j.gameserver.network.serverpackets.ExBrExtraUserInfo; +import net.sf.l2j.gameserver.network.serverpackets.ExPCCafePointInfo; // add - PCCafePoint import net.sf.l2j.gameserver.network.serverpackets.ItemList; import net.sf.l2j.gameserver.network.serverpackets.StatusUpdate; import net.sf.l2j.gameserver.network.serverpackets.SystemMessage; @@ -241,6 +242,17 @@ } break; } + // add start - PCCafePoint + case 14559: + { + if (player.getPCCafePoint() < e.getItemCount() * _amount) + { + player.sendPacket(new SystemMessage(SystemMessageId.SHORT_OF_ACCUMULATED_POINTS)); + return; + } + break; + } + // add end default: { // if this is not a list that maintains enchantment, check the count of all items that have the given id. @@ -284,6 +296,18 @@ player.sendPacket(new ExBrExtraUserInfo(player)); break; } + // add start - PCCafePoint + case 14559: + { + int costPoint = (int)(e.getItemCount() * _amount); + int leftPoint = player.getPCCafePoint() - costPoint; + player.setPCCafePoint(leftPoint); + player.sendPacket(new SystemMessage(SystemMessageId.USING_S1_PCPOINT).addItemNumber(costPoint)); + costPoint *= -1; + player.sendPacket(new ExPCCafePointInfo(player.getPCCafePoint(), costPoint, 2, 10000, 4)); + break; + } + // add end default: { Index: java/net/sf/l2j/gameserver/network/clientpackets/EnterWorld.java =================================================================== --- java/net/sf/l2j/gameserver/network/clientpackets/EnterWorld.java (revision 3695) +++ java/net/sf/l2j/gameserver/network/clientpackets/EnterWorld.java (working copy) @@ -439,6 +439,8 @@ TvTEvent.onLogin(activeChar); L2ClassMasterInstance.showQuestionMark(activeChar); + + activeChar.startPCCafePointTask(); // add - PCCafePoint } /** Index: java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java =================================================================== --- java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java (revision 3695) +++ java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java (working copy) @@ -163,6 +163,7 @@ import net.sf.l2j.gameserver.network.serverpackets.ExGetOnAirShip; import net.sf.l2j.gameserver.network.serverpackets.ExOlympiadMode; import net.sf.l2j.gameserver.network.serverpackets.ExOlympiadUserInfo; +import net.sf.l2j.gameserver.network.serverpackets.ExPCCafePointInfo; // add - PCCafePoint import net.sf.l2j.gameserver.network.serverpackets.ExPrivateStoreSetWholeMsg; import net.sf.l2j.gameserver.network.serverpackets.ExSetCompassZoneCode; import net.sf.l2j.gameserver.network.serverpackets.ExSpawnEmitter; @@ -253,9 +254,9 @@ private static final String DELETE_SKILL_SAVE = "DELETE FROM character_skills_save WHERE charId=? AND class_index=?"; // Character Character SQL String Definitions: - private static final String INSERT_CHARACTER = "INSERT INTO characters (account_name,charId,char_name,level,maxHp,curHp,maxCp,curCp,maxMp,curMp,face,hairStyle,hairColor,sex,exp,sp,karma, fame,pvpkills,pkkills,clanid,race,classid,deletetime,cancraft,title,accesslevel,online,isin7sdungeon,clan_privs,wantspeace, base_class,newbie,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=?,fame=?,pvpkills=?,pkkills=?,rec_have=?,rec_left=?,clanid=?,race=?,classid=?, deletetime=?,title=?,accesslevel=?,online=?,isin7sdungeon=?,clan_privs=?,wantspeace=?,base_class=?,onlinetime=?, punish_level=?,punish_timer=?,newbie=?,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=?,bookmarkslot=?,vitality_points=? WHERE charId=?"; - private static final String RESTORE_CHARACTER = "SELECT account_name, charId, char_name, level, maxHp, curHp, maxCp, curCp, maxMp, curMp, face, hairStyle, hairColor, sex, heading, x, y, z, exp, expBeforeDeath, sp, karma, fame, 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, newbie, 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,bookmarkslot,vitality_points FROM characters WHERE charId=?"; + private static final String INSERT_CHARACTER = "INSERT INTO characters (account_name,charId,char_name,level,maxHp,curHp,maxCp,curCp,maxMp,curMp,face,hairStyle,hairColor,sex,exp,sp,karma, fame,pvpkills,pkkills,clanid,race,classid,deletetime,cancraft,title,accesslevel,online,isin7sdungeon,clan_privs,wantspeace, base_class,newbie,nobless,power_grade,last_recom_date,pc_point) values (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)"; // edit - PCCafePoint + 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=?,fame=?,pvpkills=?,pkkills=?,rec_have=?,rec_left=?,clanid=?,race=?,classid=?, deletetime=?,title=?,accesslevel=?,online=?,isin7sdungeon=?,clan_privs=?,wantspeace=?,base_class=?,onlinetime=?, punish_level=?,punish_timer=?,newbie=?,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=?,bookmarkslot=?,vitality_points=?,pc_point=? WHERE charId=?"; // edit - PCCafePoint + private static final String RESTORE_CHARACTER = "SELECT account_name, charId, char_name, level, maxHp, curHp, maxCp, curCp, maxMp, curMp, face, hairStyle, hairColor, sex, heading, x, y, z, exp, expBeforeDeath, sp, karma, fame, 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, newbie, 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,bookmarkslot,vitality_points,pc_point FROM characters WHERE charId=?"; // edit - PCCafePoint // Character Teleport Bookmark: private static final String INSERT_TP_BOOKMARK = "INSERT INTO character_tpbookmark (charId,Id,x,y,z,icon,tag,name) values (?,?,?,?,?,?,?,?)"; @@ -6004,6 +6005,7 @@ stopChargeTask(); stopFameTask(); stopVitalityTask(); + stopPCCafePointTask(); // add - PCCafePoint } /** @@ -7065,6 +7067,7 @@ statement.setInt(34, isNoble() ? 1 :0); statement.setLong(35, 0); statement.setLong(36,System.currentTimeMillis()); + statement.setInt(37, getPCCafePoint()); // add - PCCafePoint statement.executeUpdate(); statement.close(); @@ -7249,6 +7252,8 @@ // Set Teleport Bookmark Slot player.setBookMarkSlot(rset.getInt("BookmarkSlot")); + player.setPCCafePoint(rset.getInt("pc_point")); // add - PCCafePoint + // Retrieve the name and ID of the other characters assigned to this account. PreparedStatement stmt = con.prepareStatement("SELECT charId, char_name FROM characters WHERE account_name=? AND charId<>?"); stmt.setString(1, player._accountName); @@ -7581,7 +7586,8 @@ statement.setLong(51, getDeathPenaltyBuffLevel()); statement.setInt(52, getBookMarkSlot()); statement.setInt(53, getVitalityPoints()); - statement.setInt(54, getObjectId()); + statement.setInt(54, getPCCafePoint()); // add - PCCafePoint + statement.setInt(55, getObjectId()); statement.execute(); statement.close(); @@ -13976,4 +13982,57 @@ break; } } + + private int _PCCafePoint = 20000; + protected Future<?> _PCCafePontTask = null; + + public int getPCCafePoint() + { + return _PCCafePoint; + } + + public void setPCCafePoint(int point) + { + _PCCafePoint = point; + } + + public void startPCCafePointTask() + { + if (_PCCafePontTask == null) + _PCCafePontTask = ThreadPoolManager.getInstance().scheduleGeneralAtFixedRate(new PCCafePontTask(this), 1800000, 1800000); + sendPacket(new ExPCCafePointInfo(getPCCafePoint(), 1, 1, 10000, 0)); + } + + private void stopPCCafePointTask() + { + if (_PCCafePontTask != null) + { + _PCCafePontTask.cancel(false); + _PCCafePontTask = null; + } + } + + class PCCafePontTask implements Runnable + { + private final L2PcInstance _player; + protected PCCafePontTask(L2PcInstance player) + { + _player = player; + } + public void run() + { + if (Rnd.get(100) > 90) + { + setPCCafePoint(getPCCafePoint() + 200); + _player.sendPacket(new SystemMessage(SystemMessageId.ACQUIRED_S1_PCPOINT_DOUBLE).addItemNumber(200)); + _player.sendPacket(new ExPCCafePointInfo(getPCCafePoint(), 200, 1, 10000, 0)); + } + else + { + setPCCafePoint(getPCCafePoint() + 100); + _player.sendPacket(new SystemMessage(SystemMessageId.ACQUIRED_S1_PCPOINT).addItemNumber(100)); + _player.sendPacket(new ExPCCafePointInfo(getPCCafePoint(), 100, 1, 10000, 0)); + } + } + } } 2. Add data-side handlers TARGET : handlers.MasterHandler.java . . private static void loadItemHandlers() { + ItemHandler.getInstance().registerItemHandler(new PCCafePoint()); // add - PCCafePoint ItemHandler.getInstance().registerItemHandler(new ScrollOfResurrection()); ADD : handlers.itemhandlers.PCCafePoint.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 handlers.itemhandlers; /** * * @author digiri99 < L2Dot Corea Team> * http://www.l2jtw..../trac/L2AE */ import net.sf.l2j.gameserver.handler.IItemHandler; import net.sf.l2j.gameserver.model.L2ItemInstance; import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance; import net.sf.l2j.gameserver.model.actor.L2Playable; import net.sf.l2j.gameserver.network.SystemMessageId; import net.sf.l2j.gameserver.network.serverpackets.ExPCCafePointInfo; import net.sf.l2j.gameserver.network.serverpackets.SystemMessage; public class PCCafePoint implements IItemHandler { public void useItem(L2Playable player, L2ItemInstance item) { if (!(player instanceof L2PcInstance)) return; L2PcInstance activeChar = (L2PcInstance) player; if (activeChar.isCastingNow()) return; activeChar.destroyItem("PC BANG POINT ", item.getObjectId(), 1, null, false); int leftPoint = activeChar.getPCCafePoint() + 7000; activeChar.setPCCafePoint(leftPoint); activeChar.sendPacket(new SystemMessage(SystemMessageId.ACQUIRED_S1_PCPOINT).addItemNumber(7000)); activeChar.sendPacket(new ExPCCafePointInfo(activeChar.getPCCafePoint(), 7000, 1, 10000, 0)); } } 3. Add a database field, and specify the item handler 3.1 Character in the PCpoint table Add Field Points 3.1.1 In the absence of an existing character information ALTER TABLE characters ADD `pc_point` int(11) NOT NULL; 3.1.2 If you have an existing character information ALTER TABLE characters ADD `pc_point` int(11) DEFAULT NULL; UPDATE characters SET pc_point = '20000'; 3.2 Others in this PCpoint item table handler points to the items specified Coupon UPDATE etcitem SET handler='PCCafePoint' where item_id='14559'; 4. multisell exercise <?xml version='1.0' encoding='utf-8'?> <!-- vitamin item : PC point buy --> <list> <item id="1"> <production id="13239" count="1"/> <ingredient id="14559" count="1000"/> </item> <item id="2"> <production id="13240" count="1"/> <ingredient id="14559" count="1000"/> </item> <item id="3"> <production id="13241" count="1"/> <ingredient id="14559" count="1000"/> </item> <item id="4"> <production id="13242" count="1"/> <ingredient id="14559" count="1000"/> </item> <item id="5"> <production id="13243" count="1"/> <ingredient id="14559" count="1000"/> </item> <item id="6"> <production id="13244" count="1"/> <ingredient id="14559" count="1000"/> </item> <item id="7"> <production id="13245" count="1"/> <ingredient id="14559" count="1000"/> </item> <item id="8"> <production id="13246" count="1"/> <ingredient id="14559" count="1000"/> </item> <item id="9"> <production id="13247" count="1"/> <ingredient id="14559" count="1000"/> </item> <item id="10"> <production id="13022" count="1"/> <ingredient id="14559" count="5000"/> </item> <item id="11"> <production id="14053" count="1"/> <ingredient id="14559" count="5000"/> </item> <item id="12"> <production id="14054" count="1"/> <ingredient id="14559" count="5000"/> </item> <item id="13"> <production id="14091" count="1"/> <ingredient id="14559" count="5000"/> </item> <item id="14"> <production id="14092" count="1"/> <ingredient id="14559" count="5000"/> </item> <item id="15"> <production id="13254" count="1"/> <ingredient id="14559" count="5000"/> </item> <item id="16"> <production id="14093" count="1"/> <ingredient id="14559" count="5000"/> </item> <item id="17"> <production id="14094" count="1"/> <ingredient id="14559" count="5000"/> </item> <item id="18"> <production id="14095" count="1"/> <ingredient id="14559" count="5000"/> </item> <item id="19"> <production id="13019" count="1"/> <ingredient id="14559" count="5000"/> </item> <item id="20"> <production id="13020" count="1"/> <ingredient id="14559" count="5000"/> </item> <item id="21"> <production id="13017" count="1"/> <ingredient id="14559" count="5000"/> </item> <item id="22"> <production id="13018" count="1"/> <ingredient id="14559" count="5000"/> </item> <item id="23"> <production id="14064" count="1"/> <ingredient id="14559" count="10000"/> </item> <item id="24"> <production id="14063" count="1"/> <ingredient id="14559" count="10000"/> </item> <item id="25"> <production id="14062" count="1"/> <ingredient id="14559" count="10000"/> </item> <item id="26"> <production id="14061" count="1"/> <ingredient id="14559" count="10000"/> </item> <item id="27"> <production id="13015" count="1"/> <ingredient id="14559" count="20000"/> </item> <item id="28"> <production id="13016" count="1"/> <ingredient id="14559" count="500"/> </item> <item id="29"> <production id="13021" count="1"/> <ingredient id="14559" count="5000"/> </item> <item id="30"> <production id="14055" count="1"/> <ingredient id="14559" count="10000"/> </item> <item id="31"> <production id="10649" count="1"/> <ingredient id="14559" count="1000"/> </item> <item id="32"> <production id="14559" count="1"/> <ingredient id="3554" count="2"/> </item> </list> I change this to Gracia Epilogue, but still dont know how to make the event work, here is the code This is the only picture I have about this system.. :-\
  17. Ow.. yeah About this.. see my post in L2J Sever Forum. thx
  18. Hi masters! I need this PCpoint System to Gracia Epilogue, I try some codes but not work yet! :-[
×
×
  • 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