Skip to content
This repository has been archived by the owner on Jul 11, 2018. It is now read-only.

Commit

Permalink
1.4.1
Browse files Browse the repository at this point in the history
  • Loading branch information
alejandroliu committed Dec 5, 2016
1 parent bea000a commit b2e9a28
Show file tree
Hide file tree
Showing 15 changed files with 1,298 additions and 254 deletions.
141 changes: 136 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,15 +27,27 @@ Basic Usage:
* gmc - Switch to creative mode
* gma - Switch to adventure mode
* slay - kill a player
* heal - Restore health to a player
* heal - Restore health to a player *unable to test*
* whois - Info about a player
* showtimings - Display the info gathered through /timings
* seearmor - show player's armor
* seearmor - show player's armor *broken in 1.5*
* seeinv - show player's inventory
* clearinv - Clear player's inventory
* get - obtain an item
* shield [up|down] - Protect a player
* servicemode [on|off] - enter maintenance mode
* opms [msg] - send op only chat messages
* entities - manage entities
* mute/unmute [player] - mute players
* freeze/thaw [player] - freeze players
* after [secs] cmd - Schedule command
* at [timespec] cmd - Schedule command
* rpt [message] - report issues to ops
* summon <player> [msg] - teleports <player> to you.
* dismiss <player> [msg] - teleports <player> back to where they were
summoned.
* pushtp <x y z|player|world> - save current location and teleport
* poptp - goes back to saved location
* !! - repeat command with changes

Documentation
Expand Down Expand Up @@ -74,18 +86,64 @@ plugins.
Show player's armor
* *seeinv* *player*
Show player's inventory
* *clearinv* *player*
Clear player's inventory
* *get* *item[:damage]* _[amount]_
Obtain an *item*. When the item name contain spaces in the name,
use `_` instead.
* *shield* _[up|down]_
Show shield status. Or raise/lower shields.
* *servicemode* _[on|off]_ _[message]_
* *servicemode* _[on|off]_ _[message]_
In servicemode, new connections are not allowed. Existing users are
OK. Ops (gb.servicemode.allow) can always login.
* *opms* text
* *opms* text
Send a message that can only be seen by ops or by the console. You
should use the *ops* command to see if there are any server ops
on-line.
* *mute|unmute* _[player]_
Stops players from chatting. If no player specified it will show a
list of mutes.
* *freeze|thaw* _[player]_
Stops players from moving. If no player specified it will show a
list of statues.
* *at* *time* _[:]_ *command*
Will schedule to run *command* at the given date/time. This uses
php's [strtotime](http://php.net/manual/en/function.strtotime.php)
function so *times* must follow the format described in
[Date and Time Formats](http://php.net/manual/en/datetime.formats.php).
* *after* *seconds* *command*
Will schedule to run *command* after *seconds*.
* *entities* _level_ _subcommand_
By default it will show the current entities. The following
sub-commands are available:
* *tiles*
Show tile entities
* *info* _[e#|t#]_
Show details about one or more entities or tiles.
* *rm* _[e#]_
Removes one or more entities.
* *signN* _[t#]_ _message text_
Changes the text line _N_ in the tile/sign identified by _t#_.
* *rpt* _[text]_
Report issues to server ops. Sub commands:
* read
Show messages
* clear _[m#|all]_
Clears messages
* *summon* <player> [msg]
teleports <player> to you.
* *dismiss* <player> [msg]
teleports <player> back to where they were summoned from.
* *pushtp* <x y z|player|world>
save current location and teleport (if desired).
* *poptp*
goes back to saved location. Push and pop work in a stack. Push
will save the current location on the top of the stack, while pop
will pop it from the top of the stack.

Note that commands scheduled with `at` and `after` will only run as
long as the server is running. These scheduled commands will *not*
survive server reloads or reboots.

### Command repeater

Expand All @@ -101,6 +159,10 @@ things:
!!2
!!3
This will start showing the output of `/mw ls` and consecutive pages.
* `!!` `/`
if you forgot the `/` in front, this command will add it. Example:
help
!!/
* `!!` text
Will append `text` to the previous command. For example:
/gamemode
Expand All @@ -119,21 +181,29 @@ things:
Also this plugin supports the following modules:

* adminjoin : Broadcast a message when an op joins.
* servermotd : Display the server's motd when connecting.
* spawnitems : Initialize a player inventory when they spawn.
It will place a configuratble list of inventory items. Note that it
only does it for users who start without any inventory. As soon as
they start owning stuff, spawnitems will stop working for them.
* spawnarmor : Initialize a player armor when they spawn.
*Broken in 1.5*
I will configure a player's armor through a configurable list. Note
that it only does it for users without armor.
* compasstp: When holding a compass tap the screen for 1 second, will
teleport you in the direciton you are facing.
* unbreakable : Unbreakable blocks.

### Configuration

Configuration is through the `config.yml` file:

---
settings:
hard-freeze: false
unbreakable:
- 32
- 45
spawn:
armor:
head: '-'
Expand All @@ -144,8 +214,17 @@ Configuration is through the `config.yml` file:
- "272:0:1"
- "17:0:16"
- "364:0:5"

...

Settings:

* `hard-freeze` : if `true` no movement is allowed for frozen
players. If `false`, moves are not allowed, but turning is allowed.

The `unbreakable` section is for the `unbreakable` listener module.
Lists block ids that can not be broken.

The `spawn` section contains two lists:

* `armor`: defines the list of armor that players will spawn with.
Expand All @@ -156,6 +235,8 @@ The `spawn` section contains two lists:

There is a `modules.yml` that by default activates all modules. You
can de-activate modules by commenting them out from `modules.yml`.
This is done by inserting a `#` in front of the text.


### Permission Nodes:

Expand All @@ -171,6 +252,7 @@ can de-activate modules by commenting them out from `modules.yml`.
* gb.cmd.whois.showip: Allow to view IP addresses
* gb.cmd.seearmor: Show player's armor
* gb.cmd.seeinv: Show player's inventory
* gb.cmd.clearinv: Clear player's inventory
* gb.cmd.get: get blocks. A shortcut to give.
* gb.spawnarmor.receive: allows player to receive armor when spawning
* gb.spawnitems.receive: allows player to receive items when spawning
Expand All @@ -179,10 +261,39 @@ can de-activate modules by commenting them out from `modules.yml`.
* gb.cmd.shield: Allow players to become invulnerable
* gb.cmd.servicemode: Allow access to service mode command
* gb.servicemode.allow: Allow login when in service mode.
* gb.cmd.entities: Manage entities
* gb.cmd.mute: mute/unmute
* gb.cmd.freeze: freeze/thaw
* gb.cmd.after: Access to command scheduler
* gb.cmd.rpt: Report issues
* gb.cmd.rpt.read: Read reported issues
* gb.ubab.override: Can break blocks in the ubab list.
* gb.cmd.summon: Access to summon/dismiss command
* gb.cmd.pushpoptp: Access to push/pop teleport

Changes
-------

* 1.4.1: maintenance
* Fixed a bug in showtimings.
* Fixed improper usage of the API in Removing Tile and Entities.
* Changed so unbreakable is off by default
* 1.4.0
* new commands: clearinv, rpt
* new listeners: unbreakable
* players : shows game mode
* et signX : new subcommand
* summon/dismiss commands
* push/pop teleport commands
* 1.3.0: More Commands
* Added !! / to repeater
* Added freeze and mute commands
* Added at and after commands
* Improved entities output
* Improved documentation
* 1.2.0 : Additional functionality
* Entities command
* servermotd module
* Fixed one warning
* 1.1.2 : Fixes
* showtimings, added clear operation.
* "/as": bug fixes
Expand Down Expand Up @@ -222,3 +333,23 @@ Copyright

You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.

* * *

# REFACTOR

* Main
* loader
* config
* state

* Command
- common code
- paginate
- inGame
- access
<xxx>Cmd - modules.yml contains the cmd to class mapping
execute(Sender,$cmd,$args)

* Manager - modules.yml contains the listener to class mapping
* <xxx>Mgr
32 changes: 31 additions & 1 deletion plugin.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ load: POSTWORLD

name: GrabBag
description: Collection of miscellaneous commands and listener modules
version: 1.1.2
version: 1.4.1
author: aliuly

permissions:
Expand Down Expand Up @@ -47,6 +47,9 @@ permissions:
gb.cmd.seeinv:
default: op
description: "Show player's inventory"
gb.cmd.clearinv:
default: op
description: "Clear player's inventory"
gb.cmd.get:
default: op
description: "Get blocks"
Expand All @@ -71,3 +74,30 @@ permissions:
gb.cmd.opms:
default: true
description: "Allow to send op only messages"
gb.cmd.entities:
default: op
description: "Access entities command"
gb.cmd.mute:
default: op
description: "mute/unmute"
gb.cmd.freeze:
default: op
description: "freeze/thaw users"
gb.cmd.after:
default: op
description: "Schedule commands"
gb.cmd.rpt:
default: true
description: "Report issues"
gb.cmd.rpt.read:
default: op
description: "Read reported issues"
gb.ubab.override:
default: false
description: "Blocks that can not be broken"
gb.cmd.summon:
default: op
description: "Summon|Dismiss command"
gb.cmd.pushpoptp:
default: op
description: "push/pop teleport"
62 changes: 59 additions & 3 deletions resources/modules.yml
Original file line number Diff line number Diff line change
@@ -1,14 +1,16 @@
#
# Sample modules.yml
#
# To disable features, comment them out using "#"
# To disable features, comment them out using "#" in front of the feature.
#
listener:
adminjoin:
servermotd:
spawnitems:
spawnarmor:
compasstp:
repeater:
# unbreakable:

commands:
players:
Expand Down Expand Up @@ -53,11 +55,15 @@ commands:
usage: "/showtimings"
permission: gb.cmd.timings
seeinv:
description:
description: "Show a players inventory"
usage: "/seeinv <player>"
permission: gb.cmd.seeinv
clearinv:
description: "Clear a player's inventory"
usage: "/clearinv <player>"
permission: gb.cmd.clearinv
seearmor:
description:
description: "Show players armor"
usage: "/seearmor <player>"
permission: gb.cmd.seearmor
get:
Expand All @@ -76,3 +82,53 @@ commands:
description: Send a message to ops only
usage: "/opms message"
permission: gb.cmd.opms
entities:
description: Manage entities
usage: "/entitites [level] [tiles|info|rm|sign1-4] ..."
permission: gb.cmd.entities
aliases: [et]
mute:
description: Mute a player so they can not use chat
usage: "/mute [player]"
permission: gb.cmd.mute
unmute:
description: Un mute a player so they can use chat
usage: "/unmute [player]"
permission: gb.cmd.mute
freeze:
description: Freeze a player so they can not move
usage: "/freeze [player]"
permission: gb.cmd.freeze
thaw:
description: Reverse the effects of freeze
usage: "/thaw [player]"
permission: gb.cmd.freeze
aliases: [unfreeze]
after:
description: Schedule to run a command after x seconds
usage: "/after [seconds] command"
permission: gb.cmd.after
at:
description: Schedule to run a command at a certain time
usage: "/at [time] command"
permission: gb.cmd.after
rpt:
description: Report issues to ops
usage: "/rpt [message|read|clear [all|##]]"
permssion: gb.cmd.rpt
summon:
description: Teleports players to your location
usage: "/summon <player> [message]"
permission: gb.cmd.summon
dismiss:
description: Dismiss players that you summoned
usage: "/dismiss <player|--all> [message]"
permission: gb.cmd.summon
pushtp:
description: Save your current x,y,z coordinate
usage: "/pushtp [player|position]"
permission: gb.cmd.pushpoptp
poptp:
description: Return to previously saved coordinates
usage: "/poptp"
permission: gb.cmd.pushpoptp
Loading

0 comments on commit b2e9a28

Please sign in to comment.