Date: 2015/11/01 21:54:06 UTC-08:00
Type: Denizen Script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
command_gamemode:
type: command
name: gamemode
aliases:
- gm
usage: /gamemode <<>mode<>> <<>player<>>
debug: true
description: Changes a player's gamemode.
permission: gamemode.command.user
allowed help:
- determine <player.has_permission[gamemode.command]||false>
tab complete:
- if !<player.is_online||<context.server>> queue clear
- choose <context.args.size>:
- case 0:
- determine <li@2|1|0|adventure|creative|survival|a|c|s>
- case 1:
- determine <li@0|1|2|s|c|a|survival|creative|adventure].filter[starts_with[<context.args.last>]]>
- case 2:
- determine <server.list_online_players.parse[name].filter[starts_with[<context.args.last>]]>
script:
- if <context.args> == null {
- narrate "<&c>Please specify a gamemode for this command!"
- narrate "<&6>/gamemode <&e><<>mode<>> <<>player<>>"
- queue clear
}
- if !<li@2|1|0|adventure|creative|survival|a|c|s.contains[<context.args.get[1]>]> {
- narrate "<&c>Invalid gamemode specified!"
- announce to_console "<&c>Invalid gamemode specified!"
- queue clear
}
- if <context.server||player> {
- if <player.is_op||player.has_permission[gamemode.command.admin]> {
- choose <context.args.get[2].length>:
- case 0:
- execute as_op "gamemode <context.args.get[1]> <player>"
- queue clear
- default:
- if !<server.list_online_players.parse[name].contains[<context.args.get[2]]||null> {
- narrate "<&c><context.args.get[2]> is not online!"
- narrate "<&c>Online player target needs to be specified!"
- queue clear
}
}
- if <context.args.get[2].length> == 0 {
- announce to_console "<&c>Player target needs to be specified!"
- queue clear
}
- if <server.list_online_players.parse[name].contains[<context.args.get[2]]> == false {
- announce to_console "<&c><context.args.get[2]> is not online!"
- announce to_console "<&c>Online player target needs to be specified!"
- queue clear
}
}
else {
- execute as_server "gamemode <context.args.get[1]> <context.args.get[2]>"
- queue clear
}