Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package net.sf.l2j.gameserver.model.zone.type;
- import java.util.HashMap;
- import net.sf.l2j.gameserver.enums.ZoneId;
- import net.sf.l2j.gameserver.model.actor.Creature;
- import net.sf.l2j.gameserver.model.actor.Player;
- import net.sf.l2j.gameserver.model.zone.ZoneType;
- import net.sf.l2j.gameserver.network.GameClient;
- public class TestZone2 extends ZoneType
- {
- private final HashMap<String, Integer> _ipPool = new HashMap<>();
- public TestZone2(int id)
- {
- super(id);
- }
- @Override
- protected void onEnter(Creature character)
- {
- if(character instanceof Player)
- {
- Player player = (Player) character;
- String ipHolder = player.getClient().getConnection().getInetAddress().getHostAddress();
- checkIfsmIP(ipHolder,player);
- player.sendMessage(ipHolder);
- player.setInsideZone(ZoneId.TESTZONE, true);
- }
- }
- @Override
- protected void onExit(Creature character)
- {
- if(character instanceof Player)
- {
- Player player = (Player) character;
- GameClient client = player.getClient();
- if (client == null || client.isDetached()) {
- _ipPool.clear();
- }else {
- String ipHolder = player.getClient().getConnection().getInetAddress().getHostAddress();
- character.setInsideZone(ZoneId.TESTZONE, false);
- removeIp(ipHolder,player);
- }
- }
- }
- public void removeIp(String ipHldr, Player activeChar) {
- if(_ipPool.get(ipHldr) == 2) {
- _ipPool.replace(ipHldr, 2, 1);
- }else if(_ipPool.get(ipHldr) == 1) {
- _ipPool.remove(ipHldr);
- }
- }
- public void checkIfsmIP(String ipHldr, Player activeChar) {
- if(_ipPool.containsKey(ipHldr)) {
- _ipPool.replace(ipHldr, 1, 2);
- if(_ipPool.get(ipHldr) == 2) {
- activeChar.teleportTo(83080, 148200, -3464, 0);
- activeChar.sendMessage("You can't use dual box in this zone.");
- }
- }else {
- _ipPool.put(ipHldr, 1);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement