Jump to content
  • 0

I am getting mad. Custom zone error.


Devlin

Question

Hello, I created a new zone and when I reload zones in order to check if my zone works I get at gameserver the following error:

 

Error while loading zones.
net.sf.l2j.gameserver.model.zone.type.L2SpecialZone.<init><int>

 

And zone doesn't load.

 

Zone code:

 

/*
* 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.model.zone.type;

import net.sf.l2j.Config;
import net.sf.l2j.gameserver.datatables.MapRegionTable;
import net.sf.l2j.gameserver.model.actor.L2Character;
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.model.zone.L2ZoneType;
import net.sf.l2j.gameserver.model.zone.ZoneId;

/**
* @author Devlin
*
*/
public class L2SpecialZone extends L2ZoneType
{
protected L2SpecialZone(int id)
{
	super(id);
}

@Override
protected void onEnter(L2Character character)
{
	character.setInsideZone(ZoneId.SPECIAL, true);

        if (character instanceof L2PcInstance)
        {
                L2PcInstance p = (L2PcInstance)character;
                
                if (!Config.ALLOW_BISHOP_ENTER_SPECIAL_ZONE)
                {
                    if (p.getClassId().getId() == 16 || p.getClassId().getId() == 97)
                    {
                    	p.setInsideZone(ZoneId.SPECIAL, false);
                    	p.teleToLocation(MapRegionTable.TeleportWhereType.Town);
                    	p.sendMessage("Your class is not allowed to enter this zone.");
                    	return;
                    }
                }
                
                p.updatePvPStatus();
                p.sendMessage("You have entered special pvp zone.");
        }
}

@Override
protected void onExit(L2Character character)
{
        character.setInsideZone(ZoneId.SPECIAL, false);
        
        if (character instanceof L2PcInstance)
        {
                L2PcInstance p = (L2PcInstance)character;
                
                p.setPvpFlag(0);
                p.broadcastUserInfo();
                p.sendMessage("You have exited special pvp zone.");
        }
}

@Override
public void onDieInside(L2Character character)
{
	// nothing.
}

@Override
public void onReviveInside(L2Character character)
{
        if (character instanceof L2PcInstance)
        {
                L2PcInstance p = (L2PcInstance)character;
                
                p.setCurrentHpMp(p.getMaxHp(), p.getMaxMp());
                p.setCurrentCp(p.getMaxCp());
        }
}
}

 

Xml:

 

	<zone type="SpecialZone" shape="NPoly" minZ="-4290" maxZ="-1290"><!-- Primeval Isle (Town Zone) -->
	<node X="10408" Y="-27395" />
	<node X="12065" Y="-25334" />
	<node X="12223" Y="-23159" />
	<node X="10424" Y="-22340" />
	<node X="9566" Y="-23131" />
	<node X="9290" Y="-24261" />
	<spawn X="10468" Y="-24569" Z="-3645" />
</zone>

 

Pack: aCis last rev.

Link to comment
Share on other sites

2 answers to this question

Recommended Posts

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now


×
×
  • Create New...