Date: 2014/06/24 20:52:49 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
#
# Proctor for the Archery Test
#
"MineGuard":
type: assignment
debug: false
actions:
on assignment:
- trigger name:chat toggle:true
- trigger name:click toggle:true
- lookclose state:true
interact scripts:
- 10 MineGuardI
MineGuardI:
type: interact
debug: true
steps:
RankUpdate:
click trigger:
script:
# If the NPC guard has the mission flag and the players flag for that mission is false
- if <npc.has_flag[mission]> && <s@<npc.name>.step[<player>].lowercase.is[!EQUALS].to[completed]> {
- run <npc.name>
} else {
- ^define mine <npc.name.char_at[1]>
- ^define pmine <global.flag[Ranks.list].as_list.get[<global.flag[Ranks.list].as_list.find[%mine%].add[1].as_int>]>
- if <player.in_group[%mine%]> {
- narrate "You have already ranked up to %mine%, please proceed to the mine or use /warp %mine%."
} else if !<player.in_group[%pmine%]> {
- narrate "You haven't achieved Rank %pmine% yet. Come back later."
}
else if <player.money> >= <global.flag[Ranks.%mine%.Amount].as_int> {
- narrate "Are you ready to move on?"
- narrate "Taking your fee to rank up."
- take money qty:<global.flag[Ranks.%mine%.Amount].as_int>
- narrate "You have now achieved the <gold>Prisoner Rank of %mine%!"
- announce "<white>Prisoner <gold><player.name><white> has achieved <red> Rank %mine%"
- wait 1
- execute as_server "manselect Prison"
- execute as_server "manuaddsub <player.name> %mine%"
- narrate "Please enter the mine."
} else {
- narrate "You don't have the required fee to rank up."
- narrate "Come back when you have <proc[formatmoney].context[global.flag[Ranks.%mine%.Amount]]>."
}
}