Yesterday I downloaded a PvP flag zone related script from a website, it worked well but I tried to modify it a bit. So I made a Karma zone but I have an error when I try to compile it ... I think it's related to getKarma() function because when I use updatePvPFlag it work well.
(I'm begeiner in java)
Here is my code:
Code: Select all
/* * 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 com.l2jserver.gameserver.model.zone.type; import com.l2jserver.gameserver.ThreadPoolManager;import com.l2jserver.gameserver.model.actor.L2Character;import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;import com.l2jserver.gameserver.network.serverpackets.ExShowScreenMessage; /** * An Custom PvP Zone * * @author Namtar */public class L2CustomPk extends L2RespawnZone{ private static byte zone = 0; private static ExShowScreenMessage enterD = new ExShowScreenMessage("You enter in a forbidden area... You'll be red in 5 seconds !", 3000); private static ExShowScreenMessage enter = new ExShowScreenMessage("You enter in a forbidden area !", 3000); private static ExShowScreenMessage leftD = new ExShowScreenMessage("You exit from a forbidden area... You'll be white in 10 seconds !", 3000); private static ExShowScreenMessage left = new ExShowScreenMessage("You exit from a forbidden area.", 3000); private static ExShowScreenMessage karma = new ExShowScreenMessage("You're now red !", 3000); private static ExShowScreenMessage unkarma = new ExShowScreenMessage("You're now white !", 3000); public L2CustomPk(int id) { super(5555); } @Override protected void onEnter(L2Character character) { if (character instanceof L2PcInstance) { zone = 1; if(((L2PcInstance) character).getKarma() != 0) { ((L2PcInstance) character).sendPacket(enter); ((L2PcInstance) character).setKarma(5000); } else { ((L2PcInstance) character).sendPacket(enterD); ThreadPoolManager.getInstance().scheduleGeneral(new red(character), 5000); } } } @Override protected void onExit(L2Character character) { if (character instanceof L2PcInstance) { zone = 0; if(((L2PcInstance) character).getKarma() != 0) { ((L2PcInstance) character).sendPacket(leftD); ThreadPoolManager.getInstance().scheduleGeneral(new Unred(character), 10000); } else { ((L2PcInstance) character).sendPacket(left); } } } static class BackToPk implements Runnable { private L2Character _activeChar; BackToPk(L2Character character) { _activeChar = character; } @Override public void run() { _activeChar.teleToLocation(_activeChar.getX(), _activeChar.getY(), _activeChar.getZ()); } } public class red implements Runnable { private L2Character _activeChar; red(L2Character character) { _activeChar = character; } @Override public void run() { if(zone == 1) { _activeChar.setKarma(5000); _activeChar.sendPacket(karma); } } } public class Unred implements Runnable { private L2Character _activeChar; Unred(L2Character character) { _activeChar = character; } @Override public void run() { if(zone == 0) { _activeChar.setKarma(5000); _activeChar.sendPacket(unkarma); } } } @Override public void onDieInside(L2Character character) { if (character instanceof L2PcInstance) { } } @Override public void onReviveInside(L2Character character) { ThreadPoolManager.getInstance().scheduleGeneral(new BackToPk(character), 500); }}
Code: Select all
[javac] C:\Users\Administrateur\workspace\HDcore\java\com\l2jserver\gameserver\model\zone\type\L2CustomPk.java:114: error: cannot find symbol [javac] _activeChar.setKarma(5000); [javac] ^ [javac] symbol: method setKarma(int) [javac] location: variable _activeChar of type L2Character [javac] C:\Users\Administrateur\workspace\HDcore\java\com\l2jserver\gameserver\model\zone\type\L2CustomPk.java:134: error: cannot find symbol [javac] _activeChar.setKarma(5000); [javac] ^ [javac] symbol: method setKarma(int) [javac] location: variable _activeChar of type L2Character [javac] 2 errors BUILD FAILEDC:\Users\Administrateur\workspace\HDcore\build.xml:57: Compile failed; see the compiler error output for details.