View difference between Paste ID: 1wXac2Qx and EuVeDUYP
SHOW: | | - or go back to the newest paste.
1
package org.tymoonnext.bot.module.misc;
2
3
import NexT.Commons;
4
import java.util.logging.Level;
5
import net.sourceforge.jeval.EvaluationException;
6
import net.sourceforge.jeval.Evaluator;
7
import org.tymoonnext.bot.Kizai;
8
import org.tymoonnext.bot.event.CommandListener;
9
import org.tymoonnext.bot.event.core.CommandEvent;
10
import org.tymoonnext.bot.module.Module;
11
import org.tymoonnext.bot.module.core.ext.CommandModule;
12
13
/**
14
 * 
15
 * @author Shinmera
16
 * @license GPLv3
17
 * @version 0.0.0
18
 */
19
public class Calc extends Module implements CommandListener{
20
    private Evaluator evaluator = new Evaluator();
21
22
    public Calc(Kizai bot){
23
        super(bot);
24
        CommandModule.register(bot, "calc", "expression".split(" "), "Evaluate mathematical expressions.", this);
25
    }
26
    
27
    @Override
28
    public void shutdown() {
29-
        //Do your thing.
29+
30
    }
31
32
    @Override
33
    public void onCommand(CommandEvent cmd) {
34
        try{
35
            cmd.getStream().send("Result: " + evaluator.evaluate(cmd.getArgs()), cmd.getChannel());
36
        }catch(EvaluationException ex){
37
            Commons.log.log(Level.WARNING, "Failed to evaluate '"+cmd.getArgs()+"'.", ex);
38
            cmd.getStream().send("Failed to evaluate: "+ex.getMessage(), cmd.getChannel());
39
        }
40
    }
41
}