Jump to content

Reward Panel


Recommended Posts

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;
}
}

Link to comment
Share on other sites

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.

Link to comment
Share on other sites

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:

Link to comment
Share on other sites

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