Jump to content

[Share] Clear Karma Voice Command [Hi5 & Freya ... ]


Recommended Posts

Its been a long time since i shared something, so i decide to share something simple but with good idia.

So the main feature of this command is to remove karma when player is stack with it.

Command is .clean

It cannot be used in combat & doesn't need compile to insert it.

Tested on Freya!

 

package handlers.voicedcommandhandlers;
import com.l2jserver.gameserver.handler.IVoicedCommandHandler;
import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;


/**
* @author Stewie
*/

public class clean implements IVoicedCommandHandler
{
public static final String[] VOICED_COMMANDS = { "clean" };
    
public boolean useVoicedCommand(String command, L2PcInstance player, String params)
{

	if (command.startsWith("clean"))
	{
    {
	if(player.getKarma() == 0)
	{
	player.sendMessage("You don't have any karma!");
	}
	else if (!player.isInCombat())
        {		
			player.sendMessage("Done you are clean now!");
			player.setKarma(0);
         }
else 
					player.sendMessage("You can't clean karma while in combat!"); 
	}
}
	return false;
}

public String[] getVoicedCommandList()
{
	return VOICED_COMMANDS;
}}

 

In MasterHandler.java

import handlers.voicedcommandhandlers.clean;

VoicedCommandHandler.getInstance().registerVoicedCommandHandler(new clean());

 

Command: .clean

Credits: Mine

Have fun!

Link to comment
Share on other sites

### Eclipse Workspace Patch 1.0
#P aCis_gameserver
Index: java/net/sf/l2j/gameserver/handler/customcommandhandlers/KarmaClean.java
===================================================================
--- java/net/sf/l2j/gameserver/handler/customcommandhandlers/KarmaClean.java	(revision 0)
+++ java/net/sf/l2j/gameserver/handler/customcommandhandlers/KarmaClean.java	(working copy)
@@ -0,0 +1,55 @@
+/*
+ * 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 net.sf.l2j.gameserver.handler.customcommandhandlers;
+
+import net.sf.l2j.gameserver.handler.ICustomCommandHandler;
+import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
+
+/**
+ * @author Devlin
+ *
+ */
+public class KarmaClean implements ICustomCommandHandler
+{
+	private static String[] VOICED_COMMANDS = { "karmaclean" };
+	
+	@Override
+	public boolean useCustomCommand(String command, L2PcInstance activeChar)
+	{
+		if (command.equals("karmaclean"))
+		{
+			if (activeChar.getKarma() == 0)
+			{
+				activeChar.sendMessage("You don't have any karma.");
+			}
+			
+			if (activeChar.isInCombat())
+			{
+				activeChar.sendMessage("You cannot use this command while you are in combat.");
+			}
+			
+			activeChar.setKarma(0);
+			activeChar.broadcastKarma();
+			activeChar.sendMessage("Your karma has been cleaned.");
+		}
+		return true;
+	}
+
+	@Override
+	public String[] getCustomCommandList()
+	{
+		return VOICED_COMMANDS;
+	}
+}
\ No newline at end of file
Index: java/net/sf/l2j/gameserver/handler/CustomCommandHandler.java
===================================================================
--- java/net/sf/l2j/gameserver/handler/CustomCommandHandler.java	(revision 21)
+++ java/net/sf/l2j/gameserver/handler/CustomCommandHandler.java	(working copy)
@@ -20,6 +20,7 @@

import net.sf.l2j.Config;
import net.sf.l2j.gameserver.handler.customcommandhandlers.HappyHour;
+import net.sf.l2j.gameserver.handler.customcommandhandlers.KarmaClean;
import net.sf.l2j.gameserver.handler.customcommandhandlers.Topstats;

public class CustomCommandHandler
@@ -40,6 +41,8 @@

		if (Config.ALLOW_TOPSTATS_COMMAND)
			registerCustomCommandHandler(new Topstats());
+		
+		registerCustomCommandHandler(new KarmaClean());
	}

	public void registerCustomCommandHandler(ICustomCommandHandler handler)

 

It looks better, what's your opinion?

 

Nice try tho, btw you forgot broadcast method and use diff patches.

Link to comment
Share on other sites

Devlin, your code is wrong.

 

The way you wrote the player even if he has no karma or even if he is in combat is going to have his karma set to 0 anyway.

 

After the sendMessage you should call return in order to prevent the exexution of the rest script.

 

Or the karma set part in else bracket.

Link to comment
Share on other sites

Devlin, your code is wrong.

 

The way you wrote the player even if he has no karma or even if he is in combat is going to have his karma set to 0 anyway.

 

After the sendMessage you should call return in order to prevent the exexution of the rest script.

 

Or the karma set part in else bracket.

It is aCis. In aCis you write first the exceptions in brackets and you write the last lines alone. Dunno, maybe you are right. Thanks for your suggestion.
Link to comment
Share on other sites

It is aCis. In aCis you write first the exceptions in brackets and you write the last lines alone. Dunno, maybe you are right. Thanks for your suggestion.

 

Your mistake is not related to the pack. 

 

It is, let's say, a logic mistake and it would have the same results everywhere.

Link to comment
Share on other sites

anyway.. its already shared.. "old share" but stills here and its working.. iam too lazy to search it now.

 

I am sorry if already exist i made it yestarday... so i decide to share ...

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.



  • Posts

    • Well my friend, I'm not going to stay here arguing anymore, because you won't give up and much less have the humility to accept something you did wrong, as you saw, I value the work of others, I know who really creates or even takes a block of code and does something better and different, but the subject here was about a guy, nicknamed Vraekar, who steals and SELLS interfaces as if they were his, and is that within your beliefs?, belief that if the guy creates something it has to be stolen and whoever stole it can profit from it?, that's what I'm talking about, you've fought a lot against this, and today you help a guy like that to do wrong, but anyway, you know what you're doing, I hope you reflect, the community knows who does and who helps the wrong. Stay with God, because six of the problems that go around.
    • You claim you thought I was a "serious" person before. Well, maybe you just never took the time to actually know me. People evolve, but I stay true to what I do and believe in. If you’re that hung up on what I’ve been doing, maybe it's time to stop speculating and start focusing on yourself. 🙂
    • Well, at least it's clear that you don't respect the work of others. Secondly, everyone knows that you code nothing. Your group has devs. known that you've asked for a lot of help and code exchange with some well-known BRs. there are chats and I can prove it, then don't come playing the good guy because you're not. So, Celestine, I'm not judging you. I'm saying that I know that your group helped vraekar steal the codes, and I have proof. In the past, I thought you were a serious, good-natured guy, but lately, you're a different person. Your text above speaks for you.
    • What I do or who I work with is none of your concern, and honestly, I couldn't care less. Lately, I've seen a lot of people trying to make a quick buck off scams, so let's not even mention names you wouldn't want them getting upset, right? 🙂  As for the projects I've been involved with, there's a server about to launch that I’m personally waiting for, and when it does, I’ll release the work publicly for free because people deserve better than what these so called "developers" are pushing. I’m not here to defend anyone, but if you had any real knowledge, you’d see how poorly written some of these scripts are. I’ve worked with Vraekar in the past, and I know for a fact he’s never sold anything I’ve created. So before you start running your mouth, ask yourself: why are you even juding me?
    • I didn't even want to touch on your name Celestine, but it took a while to want to protect it, right? But then I say, everyone knows that you and your group helped Vraekar in deobfuscating the interfaces, do you want me to post here the dates and videos of the releases of the OMG and Silence interfaces?, and then see Vraekar's?, do you want?, a blatant copy, even their variable names, the theft is blatant, and you who are an admin here at Max and say you are the right one, helped him decrypt and remove the code obfuscation, everyone knows that, and now you come and tell me that his code is not copied?, if you want I can put all the evidence here and this will be very ugly even for you, since those you helped Vraekar and the interface dev community know this, they know about the thefts, very ugly indeed my friend that you still come and tell such a lie.   ps. And just one more thing, did you say that all the code he wrote? you became a joker? Vraekar doesn't program a single line of code, the guy works as a data analyst, what he learned was to copy and paste ready-made codes, but he doesn't write a single line of code.
  • Topics

×
×
  • Create New...