Date: 2024/12/30 08:49:41 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
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
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
#========================
##### Gui
#========================
ListofBanks:
type: inventory
inventory: chest
title: <dark_gray>Central Bank of Suncrest
gui: true
slots:
- [] [] [] [] [] [] [] [] []
- [] [] [] [] [] [] [] [] []
- [] [] [] [] [] [] [] [] []
bankicon:
type: item
material: emerald
display name: <&color[#3d85c6]><bold><[obj].get[1]> Bank
lore:
- <gray>Bank Owner: <&color[#3d85c6]><[obj].get[2]>
- <gray>Legal Entity: <&color[#3d85c6]><[obj].get[3]>
#========================
##### Commands
#========================
PlayerBankGui:
type: command
name: bank
description: Suncrest Banks.
usage: /bank account create|deposit|withdraw|close account number
tab completions:
1: account
2: create|deposit|withdraw|close
3: ACCNumber
script:
- if <server.has_flag[savedaccnumber]>:
- narrate "<red>NO! IT ALREADY EXISTS >:C"
- else:
- define char1 <util.random.int[1000].to[9999]>
- define char2 <util.random.int[1000].to[9999]>
- define char3 <util.random.int[1000].to[9999]>
- define char4 <util.random.int[1000].to[9999]>
- flag server savedaccnumber:<[char1]>-<[char2]>-<[char3]>-<[char4]>
- narrate "<gray><[char1]>-<[char2]>-<[char3]>-<[char4]>"
DevBanksGui:
type: command
name: devbank
description: Suncrest Banks Developer Portal.
usage: /devbank list|create|delete|help
tab completions:
1: list|create|delete|help
usage: /devbank
script:
- choose <context.args.get[1].if_null[null]>:
- case list:
- if !<player.has_permission[devbanks.menu]>:
- narrate "<&color[#3d85c6]>CB of Suncrest <gray>| You do not have permission to do that!"
- stop
- else:
- if <context.args.size> > 1:
- narrate "<&color[#3d85c6]>CB of Suncrest <gray>| Too many arguments provided!"
- else:
- if <server.flag[bankscreated]> >= 1:
- inventory open d:ListofBanks
- foreach <server.flag[bankssaveddata]> as:obj:
- give bankicon quantity:1 to:<player.open_inventory>
- stop
- else:
- narrate "<&color[#3d85c6]>CB of Suncrest <gray>| There are no banks."
- playsound <player> sound:BLOCK_NOTE_BLOCK_BASS pitch:5
- stop
- case create:
- if !<player.has_permission[devbanks.create]>:
- narrate "<&color[#3d85c6]>CB of Suncrest <gray>| You do not have permission to do that!"
- stop
- if <context.args.size> = 1:
- narrate "<&color[#3d85c6]>CB of Suncrest <gray>| Please specify a name for the <&color[#6fa8dc]>bank<gray>, the <&color[#6fa8dc]>bank owner's <gray>name, and, <gray>the <&color[#6fa8dc]>legal entity's <gray>name."
- else:
- if <context.args.size> = 2:
- narrate "<&color[#3d85c6]>CB of Suncrest <gray>| Please specify the <&color[#6fa8dc]>bank owner's <gray>name and <&color[#6fa8dc]>legal entity's <gray>name."
- else:
- if <context.args.size> = 3:
- narrate "<&color[#3d85c6]>CB of Suncrest <gray>| Please specify the <&color[#6fa8dc]>legal entity's <gray>name."
- else:
- if <context.args.size> = 4:
- define playerName <context.args.get[3]>
- define playerToRegister <server.match_offline_player[<[playerName]>].if_null[null]>
- if <[playerToRegister]> == null:
- narrate "<&color[#3d85c6]>CB of Suncrest <gray>| Can't find player by the name '<&color[#6C9808]><[playerName]><gray>'!"
- stop
- foreach <server.flag[bankssaveddata]> as:obj:
- if <[playerName]> == <[obj].get[2]>:
- narrate "<&color[#3d85c6]>CB of Suncrest <gray>| <&color[#6C9808]><[playerName]> <gray>Already owns a bank."
- stop
- narrate "<gray><&m>----<reset><&color[#3d85c6]><bold> Central Bank of Suncrest<reset> <gray><&m>----"
- narrate "<gray>| Bank Name: <&color[#6C9808]><context.args.get[2]>"
- narrate "<gray>| Owner's Username: <&color[#6C9808]><[playerName]>"
- narrate "<gray>| Legal Entity: <&color[#6C9808]><context.args.get[4]>"
- narrate "<gray><&m>-----------------------------------"
- playsound <player> sound:BLOCK_ANVIL_USE pitch:5
- flag server bankscreated:++
- flag server bankname:<context.args.get[2]>
- flag server bankowner:<[playerName]>
- flag server legalentity:<context.args.get[4]>
- flag server bankssaveddata:->:<list[<server.flag[bankname]>|<server.flag[bankowner]>|<server.flag[legalentity]>]>
- else:
- if <context.args.size> > 4:
- narrate "<&color[#3d85c6]>CB of Suncrest <gray>| Too many arguments provided!"
- case delete:
- if !<player.has_permission[devbanks.delete]>:
- narrate "<&color[#3d85c6]>CB of Suncrest <gray>| You do not have permission to do that!"
- stop
- if <context.args.size> = 1:
- narrate "<&color[#3d85c6]>CB of Suncrest <gray>| Please specify a name for the <&color[#6fa8dc]>bank<gray>, the <&color[#6fa8dc]>bank owner's <gray>name, and, <gray>the <&color[#6fa8dc]>legal entity's <gray>name."
- else:
- if <context.args.size> = 2:
- narrate "<&color[#3d85c6]>CB of Suncrest <gray>| Please specify the <&color[#6fa8dc]>bank owner's <gray>name and <&color[#6fa8dc]>legal entity's <gray>name."
- else:
- if <context.args.size> = 3:
- narrate "<&color[#3d85c6]>CB of Suncrest <gray>| Please specify the <&color[#6fa8dc]>legal entity's <gray>name."
- else:
- if <context.args.size> = 4:
- define playerName <context.args.get[3]>
- define playerToRegister <server.match_offline_player[<[playerName]>].if_null[null]>
- if <[playerToRegister]> == null:
- narrate "<&color[#3d85c6]>CB of Suncrest <gray>| Can't find player by name '<&color[#6C9808]><[playerName]><gray>'!"
- stop
- playsound <player> sound:BLOCK_ANVIL_USE pitch:5
- flag server bankscreated:--
- flag server bankname:<context.args.get[2]>
- flag server bankowner:<[playerName]>
- flag server legalentity:<context.args.get[4]>
- flag server bankssaveddata:<-:<list[<server.flag[bankname]>|<server.flag[bankowner]>|<server.flag[legalentity]>]>
- narrate "<&color[#3d85c6]>CB of Suncrest <gray>| Bank deleted, all clients refunded!"
- else:
- if <context.args.size> > 4:
- narrate "<&color[#3d85c6]>CB of Suncrest <gray>| Too many arguments provided!"
- case help:
- if !<player.has_permission[devbanks.help]>:
- narrate "<&color[#3d85c6]>CB of Suncrest <gray>| You do not have permission to do that!"
- stop
- if <context.args.size> = 1:
- narrate "<gray><&m>--------<reset><&color[#3d85c6]><bold> Central Bank of Suncrest<reset> <gray><&m>--------"
- narrate "<&color[#6fa8dc]>/bank <gray>- Displays this message."
- narrate "<&color[#6fa8dc]>/bank list <gray>- Lists all banks of Suncrest."
- narrate "<&color[#6fa8dc]>/bank create <&color[#3d85c6]>{bank name} {bank owner} {legal entity} <gray>- Create a bank."
- narrate "<&color[#6fa8dc]>/bank delete <&color[#3d85c6]>{bank name} {bank owner} {legal entity} <gray>- Deletes the bank and refunds all clients."
- narrate "<gray><&m>--------------------------------------"
- narrate "<gray>Scripted with 🖤 by SpaceSlayer_"
- narrate "<gray><&m>--------------------------------------"
- else:
- if <context.args.size> > 1:
- narrate "<&color[#3d85c6]>CB of Suncrest <gray>| Too many arguments provided!"
- default:
- execute as_player "bank help"