created new 'slash' module for executing commands.
This commit is contained in:
parent
5c4ff153e8
commit
30c4667a2b
1 changed files with 53 additions and 0 deletions
53
src/main/js/modules/slash.js
Normal file
53
src/main/js/modules/slash.js
Normal file
|
@ -0,0 +1,53 @@
|
||||||
|
'use strict';
|
||||||
|
/*global module, require, server, __plugin*/
|
||||||
|
var _ = require('underscore');
|
||||||
|
/************************************************************************
|
||||||
|
## The slash Module
|
||||||
|
|
||||||
|
This module provides a single function which makes it easy to execute
|
||||||
|
minecraft commands via javascript.
|
||||||
|
|
||||||
|
### The slash() function
|
||||||
|
|
||||||
|
This function makes it easy to execute one or more minecraft commands.
|
||||||
|
|
||||||
|
#### Parameters
|
||||||
|
|
||||||
|
* commands : A String or Array of strings - each string is a command to be executed.
|
||||||
|
* sender: The player or server on whose behalf the commands should be executed.
|
||||||
|
|
||||||
|
#### Examples
|
||||||
|
|
||||||
|
Invoke the `/defaultgamemode creative` command (as server).
|
||||||
|
|
||||||
|
```javascript
|
||||||
|
var slash = require('slash');
|
||||||
|
slash('defaultgamemode creative', server);
|
||||||
|
```
|
||||||
|
|
||||||
|
Set the time of day to Midday and toggle downfall:
|
||||||
|
|
||||||
|
```javascript
|
||||||
|
var slash = require('slash');
|
||||||
|
slash([
|
||||||
|
'time set 6000',
|
||||||
|
'toggledownfall'
|
||||||
|
], server);
|
||||||
|
```
|
||||||
|
|
||||||
|
***/
|
||||||
|
function slash( commands, sender ){
|
||||||
|
if (_.isArray(commands)){
|
||||||
|
_.each(commands, function(command){
|
||||||
|
slash(command, sender);
|
||||||
|
});
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (__plugin.canary){
|
||||||
|
server.executeVanillaCommand(sender, commands);
|
||||||
|
}
|
||||||
|
if (__plugin.bukkit){
|
||||||
|
server.dispatchCommand(sender, commands);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
module.exports = slash;
|
Reference in a new issue