Date: 2015/06/06 21:32:55 UTC-07: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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
maintain_world:
type: world
events:
on server start:
- createworld guildworld worldtype:flat
guild_commands:
type: command
name: guild
description: Manage your guild.
usage: /guild
script:
- if <context.args.get[1]> == create {
- inject locally path:create
} else if <context.args.get[1]> == invite {
- inject locally path:invite
} else if <context.args.get[1]> == accept {
- inject locally path:accept
} else if <context.args.get[1]> == kick {
- inject locally path:kick
} else if <context.args.get[1]> == leave {
- inject locally path:leave
} else if <context.args.get[1]> == name {
- inject locally path:name
}
create:
- if <yaml[GUILDSAVES].read[guilds.<player>.current_guild]||none> == none {
- narrate "<&c>You created your guild."
- yaml id:GUILDSAVES set guilds.<player>.current_guild:<player>
- yaml id:GUILDSAVES set guilds.<player>.members:->:<player>
- if !<yaml[GUILDSAVES].contains[guilds.<player>.A_chunk]> {
- yaml id:GUILDSAVES set guilds.<player>.A_chunk:<yaml[GUILDSAVES].read[chunk_counter]||0>
- yaml id:GUILDSAVES set chunk_counter:<yaml[GUILDSAVES].read[chunk_counter].add[32]||32>
}
} else {
- narrate "<&c>You're already in a guild."
}
invite:
- if <yaml[GUILDSAVES].read[guilds.<player>.current_guild]||none> == <player> {
- if <server.match_offline_player[<context.args.get[2]>]||none> != none {
- define player <server.match_offline_player[<context.args.get[2]>]||none>
- if <yaml[GUILDSAVES].read[guilds.%player%.current_guild]||none> == none {
- flag %player% guild_invitation:<player> duration:5m
- narrate "<&c>You invited <def[player].name> to your guild!"
- narrate "You've been invited to the <yaml[GUILDSAVES].read[guilds.<player>.guildname]||unnamed> guild by <player.name>.<&nl><&c>Type '/guild accept' to accept." targets:%player%
} else {
- narrate "<&c>That player is already in a guild!"
}
} else {
- narrate "<&c><context.args.get[2]> was not found!"
}
} else {
- narrate "<&c>You're not the leader of this guild!"
}
accept:
- if <player.has_flag[guild_invitation]> {
- narrate "<&c>You joined <player.flag[guild_invitation].as_player.name>'s guild."
- narrate "<&c><player.name> joined your guild!" targets:<yaml[GUILDSAVES].read[guilds.<player.flag[guild_invitation]>.members]>
- yaml id:GUILDSAVES set guilds.<player>.current_guild:<player.flag[guild_invitation].as_player>
- yaml id:GUILDSAVES set guilds.<player.flag[guild_invitation].as_player>.members:->:<player>
} else {
- narrate <&c>You have no invitation pending."
}
kick:
- if <yaml[GUILDSAVES].read[guilds.<player>.current_guild]||none> == <player> {
- if <server.match_offline_player[<context.args.get[2]>]||none> != none {
- define player <server.match_offline_player[<context.args.get[2]>]||none>
- if <yaml[GUILDSAVES].read[guilds.%player%.current_guild]||none> == <yaml[GUILDSAVES].read[guilds.<player>.current_guild]||none> {
- narrate "<&c>You kicked <def[player].name> out of your guild."
- narrate "<&c>You've been kicked out of <player.name>'s guild!" targets:%player%
- yaml id:GUILDSAVES set guilds.<player>.members:<-:%player%
- yaml id:GUILDSAVES set guilds.%player%.current_guild:none
} else {
- narrate "<&c>That player is not in your guild!"
}
} else {
- narrate "<&c><context.args.get[2]> was not found!"
}
} else {
- narrate "<&c>You're not the leader of this guild!"
}
leave:
- if <yaml[GUILDSAVES].read[guilds.<player>.current_guild]||none> != none {
- if <yaml[GUILDSAVES].read[guilds.<player>.current_guild]||none> != <player> {
- define owner <yaml[GUILDSAVES].read[guilds.<player>.current_guild].as_player||none>
- narrate "<&c>You left your guild!"
- narrate "<&c><player.name> has left the guild." targets:<yaml[GUILDSAVES].read[guilds.%owner%.members]>
- yaml id:GUILDSAVES set guilds.%owner%.members:<-:<player>
- yaml id:GUILDSAVES set guilds.<player>.current_guild:none
} else {
- narrate "<&c>Leaving your own guild will completely remove it. If you are sure that you want to do this, type '/guild disband'."
}
} else {
- narrate "<&c>You're not in a guild!"
}
name:
- if <yaml[GUILDSAVES].read[guilds.<player>.current_guild]||none> == <player> {
- if <context.args.get[2]||none> != none {
- narrate "<&c>You set your guild name to <context.args.get[2]>
- yaml id:GUILDSAVES set guilds.<player>.name:<context.args.get[2]>
} else {
- narrate "<&c>Please specify a valid guild name."
}
} else {
- narrate "<&c>You're not the leader of this guild!"
}