Ivo Julca
10bb83bf3c
Improvements to command broadcast API
...
- Method `this.runBroadcast()` has been split from `this.canBroadcast()`.
It's now the only method handling command-usage and intended as the main API
for synchronous commands. Async commands will execute both separately.
Note that the `suppressMessage` parameter is now passed to `runBroadcast`.
- The semantics of `broadcasting` have been similarly split.
`this,broadcastMessage` will be set to a truthy value when `this.canBroadcast` is run.
`this,broadcasting` will only be set to `true` once `this.runBroadcast` is executed.
2016-04-02 15:46:13 -05:00
Juanma Serrano
77e0a17082
Update /git command: it's only node.js now
...
io.js has been merged into node.js anyway and all information leads to node.
2016-04-01 11:20:43 +02:00
Bär Halberkamp
84d6d328fc
Fix another oversight in randpoke
2016-04-01 03:54:01 +02:00
Bär Halberkamp
a0caee2a07
Fix this.broadcasting not being set in the datasearch commands
2016-04-01 00:52:16 +02:00
Ivo Julca
87c982e2fe
Fix misleading comment in datasearch header
...
The commands provided are never synchronous.
2016-03-31 16:53:09 -05:00
Ivo Julca
f901bfe31e
Fix data load in informational plugins
...
- Single-process `datasearch` requires mods.
- `info` requires Gen 6 data.
2016-03-31 16:50:50 -05:00
Ivo Julca
6173d622d4
Info plugin no longer requires mod data
2016-03-31 14:01:17 -05:00
Ivo Julca
bbb58d5a29
Add a test for old-gen /learn
2016-03-31 14:01:11 -05:00
Bär Halberkamp
4b326d75eb
Fix /learn not working, and filter out more bogus input
2016-03-31 20:12:25 +02:00
Bär Halberkamp
0e206dcd42
Make /learn multiprocess using the same process as /ds
2016-03-31 15:59:36 +02:00
Bär Halberkamp
7f4a18f90f
Mafia: add HTML escaping
...
thanks slayer95 for pointing this out
2016-03-30 13:37:31 +02:00
Bär Halberkamp
8efcad4e41
Mafia: Show list of players and roles every day
2016-03-30 02:46:09 +02:00
Bär Halberkamp
9ae7f1887a
Mafia: games start on day 1
2016-03-30 02:10:40 +02:00
Bär Halberkamp
e0598ff171
Mafia: fix oversights
2016-03-30 02:09:30 +02:00
Guangcong Luo
15a00f5e57
Merge pull request #2453 from Slayer95/process-manager
...
Enhance process management via PM API
2016-03-29 13:41:56 -07:00
Bär Halberkamp
c03df4db8d
ygo: move the broadcast check to the callback function
2016-03-29 04:33:38 +02:00
Bär Halberkamp
998892332c
Mafia: change the pregame window when the game starts
2016-03-29 04:18:54 +02:00
Bär Halberkamp
0faca2d8da
Display pregame when users join
2016-03-29 04:18:54 +02:00
Bär Halberkamp
22b8349957
Mafia: Fix one mafia vote counting for everyone
2016-03-29 04:18:54 +02:00
Bär Halberkamp
d51b5041da
Mafia: make the game actually progress once day is reached
2016-03-29 04:18:54 +02:00
Arburator
dc8a328118
minute(s) not minutes [poll.js]
...
"The poll timer was turned on: the poll will end in 1 minutes"
2016-03-28 17:17:56 +01:00
Bär Halberkamp
e3e89bb3bd
ygo: Better messages when query cannot be found
2016-03-26 16:40:14 +01:00
Bär Halberkamp
285462e9f2
Mafia: make the different cop variations show up in the pregame
2016-03-24 20:13:31 +01:00
Bär Halberkamp
ccdc293d9f
Mafia: add 'dethy' as a shortcut to make a dethy game
2016-03-23 21:01:50 +01:00
Bär Halberkamp
92b49254ee
Mafia: fix the godfather
2016-03-23 21:01:50 +01:00
Bär Halberkamp
df33a0150e
Mafia: add the Goon
2016-03-23 21:01:50 +01:00
Ivo Julca
14d0716e7e
Refactor Simulator to use the PM API
...
This removes Simulator.battles in favor of each process' tracking their own battles.
2016-03-23 02:44:46 -05:00
Ivo Julca
84d4f9dc83
Refactor /dexsearch and /processes to use the PM API
2016-03-23 02:44:34 -05:00
Ivo Julca
a8b76becdb
TCG TableTop: Minor refactor to take advantage of arrow functions
2016-03-22 21:37:35 -05:00
Ivo Julca
3cd1217f18
TheStudio: replace usage of toArrayOfArrays by Array.from
2016-03-22 21:20:10 -05:00
Bär Halberkamp
365462a85c
Dexsearch: Correctly broadcast dexsearches
2016-03-20 04:43:42 +01:00
Guangcong Luo
9db904f691
Fix crash in dexsearch
2016-03-16 11:40:42 -04:00
Guangcong Luo
eae332864f
Fix crash in dexsearch crashlogger
2016-03-16 11:36:51 -04:00
Guangcong Luo
044f4f84e9
Fix crash in dexsearch
2016-03-16 09:44:14 -05:00
Guangcong Luo
e87fd32550
Refactor TeamValidator
...
The callback code in TeamValidator and the functions that use it have
been refactored to use Promises.
Pretty much all signatures have been changed, for instance:
TeamValidator.validateTeamSync(format, team)
-> TeamValidator(format).validateTeam(team)
TeamValidator.validateTeam(format, team, callback)
-> TeamValidator(format).prepTeam(team) // returns a Promise
Validators are no longer cached since they're really lightweight. They
contain a format and a Tools instance, and Tools instances are already
cached in Tools anyway. This saves a tiny bit of RAM in exchange for a
tiny bit of CPU time, but more importantly makes the code more
readable.
I'm introducing a new pattern/API for managing the parts of code with
child processes - their process managers are now at .PM and are now
opt-in, so you can use them synchronously without needing to spawn
any processes.
Fixes #2448
2016-03-16 09:43:59 -05:00
Bär Halberkamp
4ca5c1d2c8
Remove /mtg and allow /ygo in all rooms
...
The only wiki we could use sucks, and I'd rather only have a good command usable everywhere
2016-03-16 02:10:23 +01:00
Bär Halberkamp
bc00dab2f2
Convert dexsearch.js to be multiprocess
2016-03-15 19:47:18 +01:00
Ivo Julca
75b632fed0
Fix crashes in dexsearch
2016-03-11 07:54:28 -05:00
Ivo Julca
12e9ca78da
Remove usage of Date|Function methods implemented by Sugar.js
...
Implements Tools#toTimeStamp to support Node.js builds without ICU support,
which are currently the default. If/when that changes, we should be able to
use Date#toLocaleDateString, given that appropriate locale options are used.
2016-03-09 16:55:47 -05:00
Ivo Julca
66c00d29af
Remove usage of String|Number methods implemented by Sugar.js
...
Implements Tools#toDurationString to replace Number#duration.
2016-03-09 16:55:40 -05:00
Ivo Julca
0281176fd1
Remove usage of Array|Object methods implemented by Sugar.js
...
Adds a dependency to shim Object.values until it's natively available.
2016-03-09 16:55:34 -05:00
Marty-D
c70bc2da94
Avoid all potential Thousand Arrows crashes from info commands
2016-03-07 21:45:29 -05:00
Ivo Julca
2b391ad824
Fix informational commands crashing for Thousand Arrows
2016-03-07 21:22:15 -05:00
Guangcong Luo
9111f2635f
Split dexsearch off to its own chat plugin
2016-03-03 05:25:13 -06:00
Guangcong Luo
8474edccec
Merge pull request #2436 from bumbadadabum/mafia3
...
Various updates
2016-03-02 04:12:30 -06:00
Bär Halberkamp
55b63a9e35
Rename the TG room for the YGO plugin
2016-03-02 06:03:33 +01:00
Guangcong Luo
e54fe99e37
Refactor Context#getLastIdOf to User#getLastId
...
Also add a User#getLastName
These functions allow punishment commands to show a user's userid
even if they try to avoid that by logging out.
2016-02-28 03:25:35 -06:00
Guangcong Luo
60ecc87ab9
Merge pull request #2431 from bumbadadabum/mafia3
...
Add permissions for roomgames
2016-02-26 15:25:50 -06:00
Bär Halberkamp
3465829e22
Add permissions for roomgames
2016-02-26 22:19:19 +01:00
Quinton Lee
ed36908033
The Studio plugin: update /aotd quote
...
It can now be used by drivers+.
2016-02-24 22:51:42 -06:00