Jump to content

Recommended Posts

Posted

Hello Members to Mxc Create One Code to press .reward and select Hero,Noblesse.

Photo:reward.png

Add code ReqeuestBypassToServer

		
    String INSERT_DATA = "REPLACE INTO characters_custom_data (obj_Id, char_name, hero, noble, donator, hero_end_date) VALUES (?,?,?,?,?,?)";

else if (_command.startsWith("hero1"))
	    {
			if(activeChar.isInOlympiadMode())
			{
				activeChar.sendMessage("This Menu Cannot Be Used On Olympiad Games.");
			}

			if(activeChar.isHero())
			{
				activeChar.sendMessage("You Are Already A Hero!.");
			}
			else if (activeChar.getInventory().getInventoryItemCount(9595, 0) >= 25)
	    	{	
	    	     activeChar.broadcastPacket(new SocialAction(activeChar.getObjectId(), 16));
			     activeChar.setHero(true);
			     updateDatabase(activeChar, Config.HERO_CUSTOM_DAY * 24L * 60L * 60L * 1000L);
			     activeChar.sendMessage("You Are Now a Hero,You Are Granted With Hero Status , Skills ,mxc.");
			     activeChar.broadcastUserInfo();
			     activeChar.destroyItem("Consume", activeChar.getObjectId(), 1, null, false);
			     activeChar.getInventory().addItem("Wings", 6842, 1, activeChar, null);
				  if (!activeChar.destroyItemByItemId("Vote Reward Item", 9595, 25, activeChar, false))
					return;
	    	}
	    	else
	    	{
	    		activeChar.sendMessage("You Dont Have Vote Reward Item.");
	    	}

	    }
    	else if (_command.startsWith("nobless"))
        {
			if(activeChar.isInOlympiadMode())
			{
				activeChar.sendMessage("This Menu Cannot Be Used On Olympiad Games.");
			}

    		if(activeChar.isNoble())
			{
				activeChar.sendMessage("You Are Already A Noblesse!.");
			}
			else if (activeChar.getInventory().getInventoryItemCount(9595, 0) >= 25)
	    	{	
				activeChar.broadcastPacket(new SocialAction(activeChar.getObjectId(), 16));
				activeChar.setNoble(true);
				activeChar.sendMessage("You Are Now a Noble,You Are Granted With Noblesse Status , And Noblesse Skills.");
				activeChar.broadcastUserInfo();
				activeChar.destroyItem("Consume", activeChar.getObjectId(), 1, null, false);
				activeChar.getInventory().addItem("Tiara", 7694, 1, activeChar, null);
				  if (!activeChar.destroyItemByItemId("Vote Reward Item", 9595, 25, activeChar, false))
					return;
			}
			else
			{
				activeChar.sendMessage("You Dont Have Vote Reward Item.");
			}
        }
private void updateDatabase(L2PcInstance player, long heroTime)
{
	Connection con = null;
	try
	{
		if(player == null)
			return;

		con = L2DatabaseFactory.getInstance().getConnection(false);
		PreparedStatement stmt = con.prepareStatement(INSERT_DATA);

		stmt.setInt(1, player.getObjectId());
		stmt.setString(2, player.getName());
		stmt.setInt(3, 1);
		stmt.setInt(4, player.isNoble() ? 1 : 0);
		stmt.setInt(5, player.isDonator() ? 1 : 0);
		stmt.setLong(6, heroTime == 0 ? 0 : System.currentTimeMillis() + heroTime);
		stmt.execute();
		stmt.close();
		stmt = null;
	}
	catch(Exception e)
	{
		if(Config.ENABLE_ALL_EXCEPTIONS)
			e.printStackTrace();

		_log.log(Level.SEVERE, "Error: could not update database: ", e);
	}
	finally
	{
		CloseUtil.close(con);

		con = null;
	}
}

go com.l2jfrozen.gameserver.handler.VoicedCommandHandler

Paste Here code

registerVoicedCommandHandler(new votereward());

add Code VoicedCommandHandler

Name votereward

/*
* 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 3 of the License, 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, see <http://www.gnu.org/licenses/>.
*/
package com.l2jfrozen.gameserver.handler.voicedcommandhandlers;

import javolution.text.TextBuilder;

import com.l2jfrozen.gameserver.handler.IVoicedCommandHandler;
import com.l2jfrozen.gameserver.model.actor.instance.L2PcInstance;
import com.l2jfrozen.gameserver.network.serverpackets.NpcHtmlMessage;

public class votereward implements IVoicedCommandHandler
{
private static String[] _voicedCommands =
{
	"reward"
};


@Override
public boolean useVoicedCommand(String command, L2PcInstance activeChar, String target)
{
	if (command.equalsIgnoreCase("reward"))
	{
		if (activeChar.getInventory().getInventoryItemCount(9595, 0) >= 1)
		{	 
		  votepanel(activeChar);
		}
		else
		{
			activeChar.sendMessage("You Dont Have Vote Reward Items.");
			activeChar.sendMessage("Try again.");
		}
	}
	return true;
}

public static void votepanel(L2PcInstance activeChar)
{
	NpcHtmlMessage adminReply = new NpcHtmlMessage(5);
	TextBuilder replyMSG = new TextBuilder("<html><center><body><title>Reward Panel</title><br>");
	replyMSG.append("<center><font color=\"FFFF00\">"+ activeChar.getName() +"</font></center><br>");
	replyMSG.append("<center><font color=3c3c3c>__________________________________</font></center><br>");
	replyMSG.append("<table>");
	replyMSG.append("<tr>");
	replyMSG.append("<td><img src=\"icon.etc_alphabet_r_i00\" width=32 height=32 align=\"center\"></td>");
	replyMSG.append("<td><img src=\"icon.etc_alphabet_e_i00\" width=32 height=32 align=\"center\"></td>");
	replyMSG.append("<td><img src=\"icon.etc_alphabet_w_i00\" width=32 height=32 align=\"center\"></td>");
	replyMSG.append("<td><img src=\"icon.etc_alphabet_a_i00\" width=32 height=32 align=\"center\"></td>");
	replyMSG.append("<td><img src=\"icon.etc_alphabet_r_i00\" width=32 height=32 align=\"center\"></td>");
	replyMSG.append("<td><img src=\"icon.etc_alphabet_d_i00\" width=32 height=32 align=\"center\"></td>");
	replyMSG.append("</tr>");
	replyMSG.append("</table>");
	replyMSG.append("<br>");
	replyMSG.append("<table>");
	replyMSG.append("<tr>");
	replyMSG.append("<td><img src=\"icon.etc_alphabet_p_i00\" width=32 height=32 align=\"center\"></td>");
	replyMSG.append("<td><img src=\"icon.etc_alphabet_a_i00\" width=32 height=32 align=\"center\"></td>");
	replyMSG.append("<td><img src=\"icon.etc_alphabet_n_i00\" width=32 height=32 align=\"center\"></td>");
	replyMSG.append("<td><img src=\"icon.etc_alphabet_e_i00\" width=32 height=32 align=\"center\"></td>");
	replyMSG.append("<td><img src=\"icon.etc_alphabet_l_i00\" width=32 height=32 align=\"center\"></td>");
	replyMSG.append("</tr>");
	replyMSG.append("</table><br>");
	replyMSG.append("<center><font color=3c3c3c>__________________________________</font></center><br>");
	if(activeChar.isHero())
	{	
		replyMSG.append("<center><font color=\"00FF00\">Hero Status:</font> Enabled</center><br>");
	}
	else
	{
		replyMSG.append("<button value=\"Hero 1 Day (25 Vote Item)\" action=\"bypass -h hero1\" width=204 height=20 back=\"sek.cbui75\" fore=\"sek.cbui75\">");
	}
	if(activeChar.isNoble())
	{	
		replyMSG.append("<center><font color=\"00FF00\">Noble Status:</font> Enabled</center><br>");
	}
	else
	{
		replyMSG.append("<button value=\"Noblesse (25 Vote Item)\" action=\"bypass -h nobless\" width=204 height=20 back=\"sek.cbui75\" fore=\"sek.cbui75\">");
	}
	replyMSG.append("<center><font color=3c3c3c>__________________________________</font></center><br>");
	replyMSG.append("</body></html>");

	adminReply.setHtml(replyMSG.toString());
	activeChar.sendPacket(adminReply);

	adminReply = null;
	replyMSG = null;
}

@Override
public String[] getVoicedCommandList()
{
	return _voicedCommands;
}
}

Posted

It can be lighter. Like the half code.

True...However, i think that when you use that: activeChar.setNoble(true); It makes the database updates automatically (at least on freya client).

 

Anyway, thanks for sharing this.

Posted

True...However, i think that when you use that: activeChar.setNoble(true); It makes the database updates automatically (at least on freya client).

 

It does, at least on aCis, but.. this is broken :troll:

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
Reply to this topic...

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