RєVєnGeR^ Posted October 6, 2009 Posted October 6, 2009 JoinOly.java Hello , with theese commands , .Joinoly and .leaveoly you are gonna register and unregister your practicipation from olympiad games.. * 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 2, 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA * 02111-1307, USA. * * http://www.gnu.org/copyleft/gpl.html */ package net.sf.l2j.gameserver.handler.voicedcommandhandlers; import net.sf.l2j.gameserver.Olympiad; import net.sf.l2j.gameserver.handler.IVoicedCommandHandler; import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance; /** * * @Author Revenger * */ public class JoinOly implements IVoicedCommandHandler { private static final String[] VOICED_COMMANDS = { "joinoly" , "leaveoly" }; public boolean useVoicedCommand(String command, L2PcInstance activeChar,String target) { if (command.equalsIgnoreCase("joinoly")) { if (!activeChar.isInOlympiadMode() ) { Olympiad.getInstance().registerNoble(activeChar, true); return true; } else if (activeChar.isParalyzed() || !activeChar.isNoble() || activeChar.isDead() || activeChar.isFestivalParticipant() || activeChar.atEvent || activeChar.isSubClassActive() || activeChar.isInDuel() || activeChar.isAlikeDead() || activeChar.isAfraid() || activeChar.isBetrayed() || activeChar.getPvpFlag() > 0 || activeChar.getKarma() > 0 || activeChar.isInCombat() || activeChar.inObserverMode()) { activeChar.sendMessage("Your Status Doesnt Allow You To Join Olympiad!"); return false; } } if (command.equalsIgnoreCase("leaveoly")) { if (activeChar.isInOlympiadMode()) { Olympiad.getInstance().unRegisterNoble(activeChar); return true; } else if (activeChar.isParalyzed() || !activeChar.isNoble() || activeChar.isDead() || activeChar.isFestivalParticipant() || activeChar.atEvent || activeChar.isSubClassActive() || activeChar.isInDuel() || activeChar.isAlikeDead() || activeChar.isAfraid() || activeChar.isBetrayed() || activeChar.getPvpFlag() > 0 || activeChar.getKarma() > 0 || activeChar.isInCombat() || activeChar.inObserverMode() || !activeChar.isInOlympiadMode()) { activeChar.sendMessage("Your Status Doesnt Allow You To Join Olympiad!"); return false; } } return true; } public String[] getVoicedCommandList() { return VOICED_COMMANDS; } } Don't forget to register the command on the game server .. Credits , Revenger Quote
™Dariuse® Posted October 6, 2009 Posted October 6, 2009 Awesome share ReVenGeR®,if i was staff i give you +1karma for your job. :P Quote
Apithanos Posted October 6, 2009 Posted October 6, 2009 omg revenger.good idea! thanks for share ! Quote
HolySmoke Posted October 6, 2009 Posted October 6, 2009 +1 for ur awesome share as always.. Keep up the good job ;) Quote
Nabzor Posted October 7, 2009 Posted October 7, 2009 amazing share i will try to add to my server Quote
RєVєnGeR^ Posted October 7, 2009 Author Posted October 7, 2009 Thank you both for comments , and karma :P Keep up posting if any problem appears on you .. Quote
Neo1993k Posted October 8, 2009 Posted October 8, 2009 Omg ReVenGeR® u have the best share!!! Nice code.. good job .. THX! Quote
RєVєnGeR^ Posted October 8, 2009 Author Posted October 8, 2009 Omg ReVenGeR® u have the best share!!! Nice code.. good job .. THX! Thank you , and thanks everyone for the good job Quote
Tristen Posted October 9, 2009 Posted October 9, 2009 Sorry, if I'm bad but isnt here a mistake? if (!activeChar.isInOlympiadMode() ) { Olympiad.getInstance().registerNoble(activeChar, true); return true; } else if (activeChar.isParalyzed() || !activeChar.isNoble() || activeChar.isDead() || activeChar.isFestivalParticipant() || activeChar.atEvent || activeChar.isSubClassActive() || activeChar.isInDuel() || activeChar.isAlikeDead() || activeChar.isAfraid() || activeChar.isBetrayed() || activeChar.getPvpFlag() > 0 || activeChar.getKarma() > 0 || activeChar.isInCombat() || activeChar.inObserverMode()) { activeChar.sendMessage("Your Status Doesnt Allow You To Join Olympiad!"); return false; } I think it should be like this: if (activeChar.isParalyzed() || !activeChar.isNoble() || activeChar.isDead() || activeChar.isFestivalParticipant() || activeChar.atEvent || activeChar.isSubClassActive() || activeChar.isInDuel() || activeChar.isAlikeDead() || activeChar.isAfraid() || activeChar.isBetrayed() || activeChar.getPvpFlag() > 0 || activeChar.getKarma() > 0 || activeChar.isInCombat() || activeChar.inObserverMode()) { activeChar.sendMessage("Your Status Doesnt Allow You To Join Olympiad!"); return false; } else if (!activeChar.isInOlympiadMode() ) { Olympiad.getInstance().registerNoble(activeChar, true); return true; } .. Sorry, if I'm bad. And of course, great idea :-) Quote
RєVєnGeR^ Posted October 10, 2009 Author Posted October 10, 2009 No its not :D because if you se true a char who is o paralyse or is not noble etc etc etc will be available to join olympiad Quote
Grim. Posted October 10, 2009 Posted October 10, 2009 o.O Revenger!! keep coding ;) i never saw a code like this again Quote
Tristen Posted October 10, 2009 Posted October 10, 2009 No its not :D because if you se true a char who is o paralyse or is not noble etc etc etc will be available to join olympiad But yes. With your code, the paralyse, duel, nobless etc. check will not work. If java see if (!activeChar.isInOlympiadMode()), and char will not be in oly, then code will register him/her to oly (dont matter on duel, non-nobless, or paralyse, because else if (activeChar.isParalyzed()...) will be skipped.) Excuse me, if I'm bad. Quote
RєVєnGeR^ Posted October 10, 2009 Author Posted October 10, 2009 ehm , whres the problem i say again , i chek my code and i see it fine , and it worked fine .. Quote
Emrys Posted October 10, 2009 Posted October 10, 2009 This code can be deleted : if (command.equalsIgnoreCase("leaveoly")) { if (activeChar.isInOlympiadMode()) { Olympiad.getInstance().unRegisterNoble(activeChar); return true; } else if (activeChar.isParalyzed() || !activeChar.isNoble() || activeChar.isDead() || activeChar.isFestivalParticipant() || activeChar.atEvent || activeChar.isSubClassActive() || activeChar.isInDuel() || activeChar.isAlikeDead() || activeChar.isAfraid() || activeChar.isBetrayed() || activeChar.getPvpFlag() > 0 || activeChar.getKarma() > 0 || activeChar.isInCombat() || activeChar.inObserverMode() || !activeChar.isInOlympiadMode()) { activeChar.sendMessage("Your Status Doesnt Allow You To Join Olympiad!"); return false; } In my opinion it will be better without this part... Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.