Remove console.log statements, replace some with logger.info, color command, decent modifications to console commands
This commit is contained in:
parent
cb4c84f932
commit
33b55647ad
|
@ -3,5 +3,6 @@ desiredUser:
|
||||||
color: "#1d0054"
|
color: "#1d0054"
|
||||||
agents:
|
agents:
|
||||||
wss://mppclone.com:
|
wss://mppclone.com:
|
||||||
# - id: "✧𝓓𝓔𝓥 𝓡𝓸𝓸𝓶✧"
|
- id: "✧𝓓𝓔𝓥 𝓡𝓸𝓸𝓶✧"
|
||||||
- id: "wizardposting"
|
# - id: "wizardposting"
|
||||||
|
# - id: Room163249719601
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
enableMPP: false
|
enableMPP: true
|
||||||
enableDiscord: false
|
enableDiscord: false
|
||||||
enableConsole: true
|
enableConsole: true
|
||||||
enableSwitchChat: false
|
enableSwitchChat: false
|
||||||
|
|
|
@ -0,0 +1,51 @@
|
||||||
|
import { MPPAgent } from "../../../services/mpp";
|
||||||
|
import { CosmicColor } from "../../../util/CosmicColor";
|
||||||
|
import { Command } from "../../Command";
|
||||||
|
|
||||||
|
export const color = new Command(
|
||||||
|
"color",
|
||||||
|
["color"],
|
||||||
|
"colors, bozo",
|
||||||
|
"color [<r> <g> <b> | <hex>]",
|
||||||
|
(msg, agent) => {
|
||||||
|
if (msg.argv[3]) {
|
||||||
|
// test for rgb
|
||||||
|
try {
|
||||||
|
let rstr = msg.argv[1];
|
||||||
|
let gstr = msg.argv[2];
|
||||||
|
let bstr = msg.argv[3];
|
||||||
|
|
||||||
|
let r = parseInt(rstr);
|
||||||
|
let g = parseInt(gstr);
|
||||||
|
let b = parseInt(bstr);
|
||||||
|
|
||||||
|
if (r > 255 || g > 255 || b > 255) throw "too large";
|
||||||
|
if (r < 0 || g < 0 || b < 0) throw "too small";
|
||||||
|
|
||||||
|
let c = new CosmicColor(r, g, b);
|
||||||
|
let outc = `${c.getName().replace("A", "a")} [${c.toHexa()}]`;
|
||||||
|
return `The RGB color ${r}, ${g}, ${b} is ${outc}`;
|
||||||
|
} catch (e) {
|
||||||
|
return `The color '${msg.argv[1]}, ${msg.argv[2]}, ${msg.argv[3]}' is not a valid RGB color. Reason: ${e}`;
|
||||||
|
}
|
||||||
|
} else if (msg.argv[1]) {
|
||||||
|
if (msg.argv[1].match(/#[0-9a-f]{6}/gi) !== null) {
|
||||||
|
// definitely a hex string
|
||||||
|
let c = new CosmicColor(msg.argv[1]);
|
||||||
|
let outc = `${c.getName().replace("A", "a")} [${c.toHexa()}]`;
|
||||||
|
return `The hex color '${msg.argv[1]}' is ${outc}`;
|
||||||
|
} else {
|
||||||
|
return `I don't think '${msg.argv[1]}' is a hex color.`;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if (msg.p.color) {
|
||||||
|
let c = new CosmicColor(msg.p.color);
|
||||||
|
let outc = `${c.getName().replace("A", "a")} [${c.toHexa()}]`;
|
||||||
|
return `${msg.p.name}, your color is ${outc}`;
|
||||||
|
} else {
|
||||||
|
return `You... have no color property or something? I guess just look at the command usage and manually choose a color so this doesn't happen.`;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
false
|
||||||
|
);
|
|
@ -8,6 +8,7 @@ import { math } from "./commands/utility/math";
|
||||||
import { memory } from "./commands/utility/memory";
|
import { memory } from "./commands/utility/memory";
|
||||||
import { cursor } from "./commands/utility/cursor";
|
import { cursor } from "./commands/utility/cursor";
|
||||||
import { inventory } from "./commands/economy/inventory";
|
import { inventory } from "./commands/economy/inventory";
|
||||||
|
import { color } from "./commands/utility/color";
|
||||||
|
|
||||||
export function loadCommands() {
|
export function loadCommands() {
|
||||||
const general = new CommandGroup("general", "⭐ General");
|
const general = new CommandGroup("general", "⭐ General");
|
||||||
|
@ -19,6 +20,6 @@ export function loadCommands() {
|
||||||
CommandHandler.addCommandGroup(economy);
|
CommandHandler.addCommandGroup(economy);
|
||||||
|
|
||||||
const utility = new CommandGroup("utility", "🔨 Utility");
|
const utility = new CommandGroup("utility", "🔨 Utility");
|
||||||
utility.addCommands([math, memory, id, msg, cursor]);
|
utility.addCommands([math, memory, id, msg, cursor, color]);
|
||||||
CommandHandler.addCommandGroup(utility);
|
CommandHandler.addCommandGroup(utility);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,8 +1,12 @@
|
||||||
import EventEmitter from "events";
|
import EventEmitter from "events";
|
||||||
|
import { Logger } from "../util/Logger";
|
||||||
|
|
||||||
export abstract class ServiceAgent<T> extends EventEmitter {
|
export abstract class ServiceAgent<T> extends EventEmitter {
|
||||||
|
public logger: Logger;
|
||||||
|
|
||||||
constructor(public platform: string, public client: T) {
|
constructor(public platform: string, public client: T) {
|
||||||
super();
|
super();
|
||||||
|
this.logger = new Logger(platform);
|
||||||
this.bindEventListeners();
|
this.bindEventListeners();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -10,6 +14,6 @@ export abstract class ServiceAgent<T> extends EventEmitter {
|
||||||
public abstract stop(): void;
|
public abstract stop(): void;
|
||||||
|
|
||||||
protected bindEventListeners() {
|
protected bindEventListeners() {
|
||||||
this.on("log", txt => console.log(txt));
|
this.on("log", txt => this.logger.info(txt));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,8 +1,14 @@
|
||||||
|
import { ServiceLoader } from "..";
|
||||||
import { scopedEval } from "../..";
|
import { scopedEval } from "../..";
|
||||||
import { BaseCommandMessage } from "../../commands/CommandHandler";
|
import { BaseCommandMessage } from "../../commands/CommandHandler";
|
||||||
|
import { ServiceAgent } from "../ServiceAgent";
|
||||||
|
import { MPPAgent } from "../mpp";
|
||||||
|
|
||||||
export class MicroHandler {
|
export class MicroHandler {
|
||||||
public static async handleMicroCommand(command: BaseCommandMessage) {
|
public static async handleMicroCommand(
|
||||||
|
command: BaseCommandMessage,
|
||||||
|
agent: ServiceAgent<unknown>
|
||||||
|
) {
|
||||||
let microcommand = command.argv[0].substring(1);
|
let microcommand = command.argv[0].substring(1);
|
||||||
|
|
||||||
switch (microcommand) {
|
switch (microcommand) {
|
||||||
|
@ -10,7 +16,7 @@ export class MicroHandler {
|
||||||
case "commands":
|
case "commands":
|
||||||
case "cmds":
|
case "cmds":
|
||||||
default:
|
default:
|
||||||
return "Microcommands: /help | /js | /exit";
|
return "Microcommands: /help | /js | /exit | /list | /view";
|
||||||
break;
|
break;
|
||||||
case "js":
|
case "js":
|
||||||
case "eval":
|
case "eval":
|
||||||
|
@ -25,6 +31,31 @@ export class MicroHandler {
|
||||||
case "stop":
|
case "stop":
|
||||||
process.exit();
|
process.exit();
|
||||||
break;
|
break;
|
||||||
|
case "list":
|
||||||
|
if (agent.platform !== "console")
|
||||||
|
return "This command is only for console agents.";
|
||||||
|
|
||||||
|
for (let i in ServiceLoader.agents) {
|
||||||
|
const agent2 = ServiceLoader.agents[i];
|
||||||
|
if (agent2.platform == "mpp") {
|
||||||
|
agent.emit(
|
||||||
|
"log",
|
||||||
|
`${i} - ${agent2.platform} - ${
|
||||||
|
(agent2 as MPPAgent).desiredChannel
|
||||||
|
}`
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
agent.emit("log", `${i} - ${agent2.platform}`);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case "view":
|
||||||
|
case "connect":
|
||||||
|
if (agent.platform !== "console")
|
||||||
|
return "This command is only for console agents.";
|
||||||
|
|
||||||
|
return "WIP";
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,6 +19,7 @@ export class ConsoleAgent extends ServiceAgent<readline.ReadLine> {
|
||||||
};
|
};
|
||||||
|
|
||||||
public logger = new Logger("Console");
|
public logger = new Logger("Console");
|
||||||
|
public viewAgent: ServiceAgent<unknown> | undefined;
|
||||||
|
|
||||||
constructor() {
|
constructor() {
|
||||||
const cl = readline.createInterface({
|
const cl = readline.createInterface({
|
||||||
|
@ -67,7 +68,7 @@ export class ConsoleAgent extends ServiceAgent<readline.ReadLine> {
|
||||||
let out;
|
let out;
|
||||||
|
|
||||||
if (text.startsWith("/")) {
|
if (text.startsWith("/")) {
|
||||||
out = await MicroHandler.handleMicroCommand(message);
|
out = await MicroHandler.handleMicroCommand(message, this);
|
||||||
} else {
|
} else {
|
||||||
out = await CommandHandler.handleCommand(message, this);
|
out = await CommandHandler.handleCommand(message, this);
|
||||||
}
|
}
|
||||||
|
|
|
@ -290,7 +290,6 @@ export class Cursor {
|
||||||
this.props.position.y <= 0
|
this.props.position.y <= 0
|
||||||
) {
|
) {
|
||||||
this.props.velocity.y = -this.props.velocity.y;
|
this.props.velocity.y = -this.props.velocity.y;
|
||||||
console.log(this.props.velocity, "setting!!!");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
this.props.ot = Date.now();
|
this.props.ot = Date.now();
|
||||||
|
|
|
@ -14,7 +14,6 @@ export class MPPAgent extends ServiceAgent<Client> {
|
||||||
) {
|
) {
|
||||||
const cl = new Client(uri, token);
|
const cl = new Client(uri, token);
|
||||||
super("mpp", cl);
|
super("mpp", cl);
|
||||||
this.emit("log", desiredChannel);
|
|
||||||
this.cursor = new Cursor(this);
|
this.cursor = new Cursor(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -30,7 +29,6 @@ export class MPPAgent extends ServiceAgent<Client> {
|
||||||
super.bindEventListeners();
|
super.bindEventListeners();
|
||||||
|
|
||||||
this.client.on("hi", msg => {
|
this.client.on("hi", msg => {
|
||||||
this.emit("log", msg.u);
|
|
||||||
this.client.setChannel(this.desiredChannel);
|
this.client.setChannel(this.desiredChannel);
|
||||||
this.fixUser();
|
this.fixUser();
|
||||||
});
|
});
|
||||||
|
@ -40,7 +38,6 @@ export class MPPAgent extends ServiceAgent<Client> {
|
||||||
});
|
});
|
||||||
|
|
||||||
this.client.on("a", async msg => {
|
this.client.on("a", async msg => {
|
||||||
console.log(`${msg.p.name}: ${msg.a}`);
|
|
||||||
let args = msg.a.split(" ");
|
let args = msg.a.split(" ");
|
||||||
|
|
||||||
const str = await CommandHandler.handleCommand(
|
const str = await CommandHandler.handleCommand(
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue