Jump to content
  • 0

[Help]Ban IP Command


Spidey*

Question

Γεια σε ολους.. Εχω βρει αυτο το 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)

Link to comment
Share on other sites

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...