Hi all members of MaxCheaters today i will pressent you one java code. VIP System
AdminVip.java
/*
* 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.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import net.sf.l2j.Config;
import net.sf.l2j.L2DatabaseFactory;
import net.sf.l2j.gameserver.Announcements;
import net.sf.l2j.gameserver.GmListTable;
import net.sf.l2j.gameserver.handler.IAdminCommandHandler;
import net.sf.l2j.gameserver.model.L2Object;
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.network.SystemMessageId;
import net.sf.l2j.gameserver.network.serverpackets.SystemMessage;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
/**
*
* Author Rayan
*
*/
public class AdminVip implements IAdminCommandHandler
{
private static String[] _adminCommands =
{
"admin_setvip",};
private final static Log _log = LogFactory.getLog(AdminVip.class.getName());
private static final int REQUIRED_LEVEL = Config.GM_MENU;
public boolean useAdminCommand(String command, L2PcInstance activeChar)
{
if (!Config.ALT_PRIVILEGES_ADMIN)
{
if (!(checkLevel(activeChar.getAccessLevel()) && activeChar.isGM()))
{
return false;
}
}
if (command.startsWith("admin_setvip"))
{
L2Object target = activeChar.getTarget();
L2PcInstance player = null;
SystemMessage sm = new SystemMessage(SystemMessageId.S1_S2);
if (target instanceof L2PcInstance)
{
player = (L2PcInstance)target;
} else
{
player = activeChar;
}
if (player.isvip())
{
player.setvip(false);
sm.addString("You are no longer a server vip.");
GmListTable.broadcastMessageToGMs("GM "+activeChar.getName()+" removed vip stat of player"+ target.getName());
Connection connection = null;
try
{
connection = L2DatabaseFactory.getInstance().getConnection();
PreparedStatement statement = connection.prepareStatement("SELECT obj_id FROM characters where char_name=?");
statement.setString(1,target.getName());
ResultSet rset = statement.executeQuery();
int objId = 0;
if (rset.next())
{
objId = rset.getInt(1);
}
rset.close();
statement.close();
if (objId == 0) {connection.close(); return false;}
statement = connection.prepareStatement("UPDATE characters SET vip=0 WHERE obj_id=?");
statement.setInt(1, objId);
statement.execute();
statement.close();
connection.close();
}
catch (Exception e)
{
_log.warn("could not set vip stats of char:", e);
}
finally
{
try { connection.close(); } catch (Exception e) {}
}
}
else
{
player.setvip(true);
sm.addString("You are now a server vip, congratulations!");
GmListTable.broadcastMessageToGMs("GM "+activeChar.getName()+" has given vip stat for player "+target.getName()+".");
Connection connection = null;
try
{
connection = L2DatabaseFactory.getInstance().getConnection();
PreparedStatement statement = connection.prepareStatement("SELECT obj_id FROM characters where char_name=?");
statement.setString(1,target.getName());
ResultSet rset = statement.executeQuery();
int objId = 0;
if (rset.next())
{
objId = rset.getInt(1);
}
rset.close();
statement.close();
if (objId == 0) {connection.close(); return false;}
statement = connection.prepareStatement("UPDATE characters SET vip=1 WHERE obj_id=?");
statement.setInt(1, objId);
statement.execute();
statement.close();
connection.close();
}
catch (Exception e)
{
_log.warn("could not set vip stats of char:", e);
}
finally
{
try { connection.close(); } catch (Exception e) {}
}
}
player.sendPacket(sm);
player.broadcastUserInfo();
if(player.isvip() == true)
{
Announcements.getInstance().announceToAll(player.getName() + " Has Become a Server Vip!");
}
}
return false;
}
public String[] getAdminCommandList() {
return _adminCommands;
}
private boolean checkLevel(int level)
{
return (level >= REQUIRED_LEVEL);
}
}
Net/sf/l2j/config.java
@@ 1143 @@
- public static int MAX_MATK_SPEED;
+ public static boolean VIP_NAME_COLOR_ENABLED;
+ public static int VIP_NAME_COLOR;
@@ 2640 @@
- MAX_MATK_SPEED = Integer.parseInt(customSettings.getProperty("MaxMAtkSpeed", "1999"));
+ VIP_NAME_COLOR_ENABLED = Boolean.parseBoolean(customSettings.getProperty("VIPNameColorEnabled", "False"));
+ VIP_NAME_COLOR = Integer.decode("0x" + customSettings.getProperty("VIPColorName", "0099ff"));
net/sf/gameserver/network/clientpackets/EnterWorld
@@ 179 @@
- if (activeChar.isdonator())
- {
- activeChar.getAppearance().setNameColor(L2Config.DONATOR_NAME_COLOR);
- activeChar.sendMessage("Welcome Donator "+activeChar.getName()+" !");
- activeChar.sendMessage("Enjoy your Stay Mate!");
- }
+
+ if (activeChar.isvip())
+ {
+ activeChar.getAppearance().setNameColor(L2Config.VIP_NAME_COLOR);
+ activeChar.sendMessage("Welcome V.I.P "+activeChar.getName()+" !");
+ activeChar.sendMessage("Enjoy your Stay Mate!");
+ Announcements.getInstance().announceToAll("VIP Character " +activeChar.getName()+ " is Now Online!");
+ }
net.sf.l2j.gameserver
@@ 130 @@
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminUnblockIp;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminVip;
@@ 647 @@
- _adminCommandHandler.registerAdminCommandHandler(new AdminDonator());
+ _adminCommandHandler.registerAdminCommandHandler(new AdminVip());
@@221 : 744 @@
L2PcInstance.java
@@222 : 831 @@
vip
@@500@@
- private boolean _donator = false;
+ private boolean _vip = false;
+
@@5828@@
- player.setdonator(rset.getInt("donator")==1);
+ player.setvip(rset.getInt("vip")==1);
+
@@6303@@
- statement.setInt(58, isdonator() ? 1 : 0);
+ statement.setInt(59, isvip() ? 1 : 0);
@@6440@@
+ public boolean isvip()
+ {
+ return _vip;
+ }
+
+ public void setvip(boolean vip)
+ {
+ _vip = vip;
+ }
+
net.sf.gameserver.model.L2World.java
@@ 75 @@
- private Map<String, L2PcInstance> _alldonatorPlayers;
+ private Map<String, L2PcInstance> _allvipPlayers;
@@ 99 @@
- _alldonatorPlayers = new FastMap<String, L2PcInstance>().setShared(true);
+ _allvipPlayers = new FastMap<String, L2PcInstance>().setShared(true);
@@ 273 @@
- public Collection<L2PcInstance> getAlldonatorPlayers()
- {
- return _alldonatorPlayers.values();
- }
+
+ public Collection<L2PcInstance> getAllvipPlayers()
+ {
+ return _allvipPlayers.values();
+ }
@@ 402 @@
-
- if (((L2PcInstance) object).isdonator())
- _alldonatorPlayers.put(player.getName().toLowerCase(), player);
+
+ if (((L2PcInstance) object).isvip())
+ _allvipPlayers.put(player.getName().toLowerCase(), player);
+
net.fiero.l2j.gameserver.network.clientpackets.say2.java
@ 181,1 @
- if (_text.length() > 99)
- {
- _log.info("Say2: Msg Type = '" + _type + "' Text length more than 99 truncate them.");
- _text = _text.substring(0, 99);
- }
+
+ if (_text.startsWith("~") && activeChar.isvip())
+ {
+ for (L2PcInstance player : L2World.getInstance().getAllPlayers())
+ player.sendPacket(new CreatureSay(0, 15, activeChar.getName(), _text));
+ return;
+ }
+
Credits : Kяaσh from L2JV-i-t-a-l-i-t-y Team. the real dev there