Index: com/l2jfrozen/gameserver/model/L2Character.java
===================================================================
--- com/l2jfrozen/gameserver/model/L2Character.java (revision 948)
+++ com/l2jfrozen/gameserver/model/L2Character.java (working copy)
@@ -340,6 +340,9 @@
/** The Constant ZONE_DANGERAREA. */
public static final int ZONE_DANGERAREA = 16384;
+ /** The Constant ZONE_NEWBIE. */
+ public static final int ZONE_NEWBIE = 16385;
+
/** The _current zones. */
private int _currentZones = 0;
Index: com/l2jfrozen/gameserver/model/zone/type/L2NewbieZone.java
===================================================================
--- com/l2jfrozen/gameserver/model/zone/type/L2NewbieZone.java (revision 0)
+++ com/l2jfrozen/gameserver/model/zone/type/L2NewbieZone.java (revision 0)
@@ -0,0 +1,83 @@
+/* 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 com.l2jfrozen.gameserver.model.zone.type;
+
+import com.l2jfrozen.gameserver.datatables.csv.MapRegionTable;
+import com.l2jfrozen.gameserver.model.L2Character;
+import com.l2jfrozen.gameserver.model.actor.instance.L2ItemInstance;
+import com.l2jfrozen.gameserver.model.actor.instance.L2PcInstance;
+import com.l2jfrozen.gameserver.model.zone.L2ZoneType;
+
+/**
+ *
+ * @author Leki
+ */
+public class L2NewbieZone extends L2ZoneType
+{
+ public L2NewbieZone(int id)
+ {
+ super(id);
+ }
+
+ @Override
+ protected void onEnter(L2Character character)
+ {
+ if(character instanceof L2PcInstance)
+ {
+ L2PcInstance player = (L2PcInstance) character;
+ for (L2ItemInstance i : player.getInventory().getItems())
+ {
+ if (!player.isGM())
+ {
+ if (i.isEquipable())
+ {
+ if (i.getEnchantLevel() > 3)
+ {
+ player.sendMessage("You can enter to this zone if your items aren't enchant more than 3");
+ player.teleToLocation(MapRegionTable.TeleportWhereType.Town);
+ return;
+ }
+ }
+ }
+ }
+ if(!player.isGM() && player.isFlying())
+ {
+ player.teleToLocation(MapRegionTable.TeleportWhereType.Town);
+ return;
+ }
+ character.setInsideZone(L2Character.ZONE_NEWBIE, true);
+ }
+ }
+
+ @Override
+ protected void onExit(L2Character character)
+ {
+ if(character instanceof L2PcInstance)
+ {
+ character.setInsideZone(L2Character.ZONE_NEWBIE, false);
+ }
+ }
+
+ @Override
+ public void onDieInside(L2Character character)
+ {}
+
+ @Override
+ public void onReviveInside(L2Character character)
+ {}
+}
\ No newline at end of file
Index: com/l2jfrozen/gameserver/network/clientpackets/RequestEnchantItem.java
===================================================================
--- com/l2jfrozen/gameserver/network/clientpackets/RequestEnchantItem.java (revision 948)
+++ com/l2jfrozen/gameserver/network/clientpackets/RequestEnchantItem.java (working copy)
@@ -21,6 +21,7 @@
import com.l2jfrozen.Config;
import com.l2jfrozen.gameserver.model.Inventory;
+import com.l2jfrozen.gameserver.model.L2Character;
import com.l2jfrozen.gameserver.model.L2World;
import com.l2jfrozen.gameserver.model.actor.instance.L2ItemInstance;
import com.l2jfrozen.gameserver.model.actor.instance.L2PcInstance;
@@ -135,7 +136,13 @@
activeChar.setActiveEnchantItem(null);
return;
}
+ if(activeChar.isInsideZone(L2Character.ZONE_NEWBIE))
+ {
+ activeChar.sendMessage("You can't enchant in newbie zone!");
+ return;
+ }
+
/*
if(!FloodProtector.getInstance().tryPerformAction(activeChar.getObjectId(), FloodProtector.PROTECTED_ENCHANT))
{
I Wanna change this code from echant check to Grade check can some1 help me with that?
I fixed same problem a while ago... look for an item which does not cause the character to stop walking/running when used and check its skill xml attributes, I think it's most likely the "operate_type" or the "next_action" attributes. First test different "operate_type" parameters.
Question
GsL
Index: com/l2jfrozen/gameserver/model/L2Character.java =================================================================== --- com/l2jfrozen/gameserver/model/L2Character.java (revision 948) +++ com/l2jfrozen/gameserver/model/L2Character.java (working copy) @@ -340,6 +340,9 @@ /** The Constant ZONE_DANGERAREA. */ public static final int ZONE_DANGERAREA = 16384; + /** The Constant ZONE_NEWBIE. */ + public static final int ZONE_NEWBIE = 16385; + /** The _current zones. */ private int _currentZones = 0; Index: com/l2jfrozen/gameserver/model/zone/type/L2NewbieZone.java =================================================================== --- com/l2jfrozen/gameserver/model/zone/type/L2NewbieZone.java (revision 0) +++ com/l2jfrozen/gameserver/model/zone/type/L2NewbieZone.java (revision 0) @@ -0,0 +1,83 @@ +/* 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 com.l2jfrozen.gameserver.model.zone.type; + +import com.l2jfrozen.gameserver.datatables.csv.MapRegionTable; +import com.l2jfrozen.gameserver.model.L2Character; +import com.l2jfrozen.gameserver.model.actor.instance.L2ItemInstance; +import com.l2jfrozen.gameserver.model.actor.instance.L2PcInstance; +import com.l2jfrozen.gameserver.model.zone.L2ZoneType; + +/** + * + * @author Leki + */ +public class L2NewbieZone extends L2ZoneType +{ + public L2NewbieZone(int id) + { + super(id); + } + + @Override + protected void onEnter(L2Character character) + { + if(character instanceof L2PcInstance) + { + L2PcInstance player = (L2PcInstance) character; + for (L2ItemInstance i : player.getInventory().getItems()) + { + if (!player.isGM()) + { + if (i.isEquipable()) + { + if (i.getEnchantLevel() > 3) + { + player.sendMessage("You can enter to this zone if your items aren't enchant more than 3"); + player.teleToLocation(MapRegionTable.TeleportWhereType.Town); + return; + } + } + } + } + if(!player.isGM() && player.isFlying()) + { + player.teleToLocation(MapRegionTable.TeleportWhereType.Town); + return; + } + character.setInsideZone(L2Character.ZONE_NEWBIE, true); + } + } + + @Override + protected void onExit(L2Character character) + { + if(character instanceof L2PcInstance) + { + character.setInsideZone(L2Character.ZONE_NEWBIE, false); + } + } + + @Override + public void onDieInside(L2Character character) + {} + + @Override + public void onReviveInside(L2Character character) + {} +} \ No newline at end of file Index: com/l2jfrozen/gameserver/network/clientpackets/RequestEnchantItem.java =================================================================== --- com/l2jfrozen/gameserver/network/clientpackets/RequestEnchantItem.java (revision 948) +++ com/l2jfrozen/gameserver/network/clientpackets/RequestEnchantItem.java (working copy) @@ -21,6 +21,7 @@ import com.l2jfrozen.Config; import com.l2jfrozen.gameserver.model.Inventory; +import com.l2jfrozen.gameserver.model.L2Character; import com.l2jfrozen.gameserver.model.L2World; import com.l2jfrozen.gameserver.model.actor.instance.L2ItemInstance; import com.l2jfrozen.gameserver.model.actor.instance.L2PcInstance; @@ -135,7 +136,13 @@ activeChar.setActiveEnchantItem(null); return; } + if(activeChar.isInsideZone(L2Character.ZONE_NEWBIE)) + { + activeChar.sendMessage("You can't enchant in newbie zone!"); + return; + } + /* if(!FloodProtector.getInstance().tryPerformAction(activeChar.getObjectId(), FloodProtector.PROTECTED_ENCHANT)) {I Wanna change this code from echant check to Grade check can some1 help me with that?
20 answers to this question
Recommended Posts