Jump to content
  • 0

[Help]Ban IP Command


Question

Posted

Γεια σε ολους.. Εχω βρει αυτο το command για Ban ip απο το L2J-Archid

/*
* 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.admincommandhandlers;

import java.util.StringTokenizer;
import java.util.logging.Logger;

import net.sf.l2j.Config;
import net.sf.l2j.gameserver.LoginServerThread;
import net.sf.l2j.gameserver.handler.IAdminCommandHandler;
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.network.SystemMessageId;
import net.sf.l2j.gameserver.network.serverpackets.SystemMessage;

public class AdminBlockIp implements IAdminCommandHandler
{

    private static final Logger _log = Logger.getLogger(AdminTeleport.class.getName());

    private static final int REQUIRED_LEVEL = Config.GM_UNBLOCK;
    private static final String[] ADMIN_COMMANDS =
    {
        "admin_banip", "admin_unblockip"
    };

    /* (non-Javadoc)
     * @see com.l2jarchid.gameserver.handler.IAdminCommandHandler#useAdminCommand(java.lang.String, com.l2jarchid.gameserver.model.L2PcInstance)
     */
    public boolean useAdminCommand(String command, L2PcInstance activeChar)
    {
        if (!Config.ALT_PRIVILEGES_ADMIN)
            if (!(checkLevel(activeChar.getAccessLevel()) && activeChar.isGM())) return false;
        
    	if (command.startsWith("admin_banip"))
    	{
    		StringTokenizer st = new StringTokenizer(command);
    		st.nextToken();

    		try
    		{
    			String ip = st.nextToken();
        		String duration = st.nextToken();
        		BanIp(activeChar,ip,Integer.parseInt(duration));
    		}catch(Exception e){activeChar.sendMessage("Usage: //banip ip duration");}
    		
    	}
    	else if (command.startsWith("admin_unblockip "))
        {
            try
            {
                String ipAddress = command.substring(16);
                if (unblockIp(ipAddress, activeChar))
                {
                    SystemMessage sm = new SystemMessage(SystemMessageId.S1_S2);
                    sm.addString("Removed IP " + ipAddress + " from blocklist!");
                    activeChar.sendPacket(sm);
                }
            }
            catch (StringIndexOutOfBoundsException e)
            {
                // Send syntax to the user
                SystemMessage sm = new SystemMessage(SystemMessageId.S1_S2);
                sm.addString("Usage mode: //unblockip <ip>");
                activeChar.sendPacket(sm);
            }
        }

        return true;
    }

    public String[] getAdminCommandList()
    {
        return ADMIN_COMMANDS;
    }

    private boolean checkLevel(int level)
    {
        return (level >= REQUIRED_LEVEL);
    }
    
    private boolean unblockIp(String ipAddress, L2PcInstance activeChar)
    {
    	//LoginServerThread.getInstance().unBlockip(ipAddress);
        _log.warning("IP removed by GM " + activeChar.getName());
        return true;
    }
    private boolean BanIp(L2PcInstance activeChar, String ip, int duration)
    {
    	LoginServerThread.getInstance().sendIpBan(ip, duration * 60000L);
    	activeChar.sendMessage("Ip: "+ip+". baned for "+duration / 60000L+" minutes.");
    	return true;
    }

}

Ολα σωστα! την εκανα register κανονικα και λειτουργει.. Παταω //banip και την IP και λεει πως η IP εχει απαγορευτει, αλλα ο παιχτης μετα μπενει κανονικα..

Καμια ιδεα; Τι φτεει; (το command οπως ειπα το πηρα απο το Archid)

5 answers to this question

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.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock