View difference between Paste ID: M43dCNvd and UtJF1gFB
SHOW: | | - or go back to the newest paste.
1
on join:
2-
	if {player.other.joined::%player%} is not set:
2+
	wait 2 tick
3-
		set {player.other.joined::%player%} to false
3+
	command "teleport %player% 100014 7.2 100016"
4-
	if {player.other.joined::%player%} is false:
4+
5-
		set {player.other.joined::%player%} to true
5+
6-
		command "..firstjoinevent %player%"
6+
	permission: ultima.refje
7
	trigger:
8
		clear {player.other.joined::%player%}
9
10-
		set {player.other.joined::%player%} to false
10+
command /..rpg <player>:
11
	permission: ultima.rpg
12
	trigger:
13
		if {player.other.joined::%player%} is not set:
14
			wait 2 ticks
15
			command "..firstjoinevent %player%"
16
		else:
17
			teleport player to location {player.opt.spawn::%player%}
18
19
command /exc <player> <text>:
20
	permission: skript.admin
21
	trigger:
22
		execute arg 1 command "%arg 2%"
23
24
on chat:
25
	if {player.opt.chatsendcancel::%player%} is true:
26
		cancel event
27
		message "&cError &7>> &c現在メッセージの送信を禁止されています"
28
		stop
29
	loop all players:
30
		{player.opt.chatloadcancel::%loop-player%} is true
31
		remove loop-player from chat recipients
32
33
command /..mute <player>:
34
	permission: ultima.mute
35
	trigger:
36
		if {player.opt.chatsendcancel::%arg 1%} is not set:
37
			set {player.opt.chatsendcancel::%arg 1%} to false
38
		if {player.opt.chatsendcancel::%arg 1%} is false:
39-
			set {player.set.lvup::%loop-player%} to 20
39+
			set {player.opt.chatsendcancel::%arg 1%} to true
40
			message "&3System &7>> &cMuted!" to arg 1
41
		else if {player.opt.chatsendcancel::%arg 1%} is true:
42
			set {player.opt.chatsendcancel::%arg 1%} to false
43-
			set {_lvupup} to ceil({player.prm.level::%loop-player%}/5)*5+5
43+
			message "&3System &7>> &aUnmuted!" to arg 1
44
45
every tick:
46
	loop all players:
47
		if {player.stat.lti::%loop-player%} is not set:
48
			set {player.stat.lti::%loop-player%} to 0
49
		if {player.prm.hp::%loop-player%} is not set:
50
			set {player.prm.hp::%loop-player%} to 10
51-
			message "&cGet: &6%{_getpp}%&cPP" to loop-player
51+
52-
			message "&bGet: &61&bSP" to loop-player
52+
53
		if {player.stat.hp::%loop-player%} is not set:
54
			set {player.stat.hp::%loop-player%} to 10
55
		if {player.stat.mp::%loop-player%} is not set:
56
			set {player.stat.mp::%loop-player%} to 3
57
		if {player.opt.wsp::%loop-player%} is not set:
58
			set {player.opt.wsp::%loop-player%} to 100
59
		if {player.stat.hp::%loop-player%} > {player.prm.hp::%loop-player%}:
60
			set {player.stat.hp::%loop-player%} to {player.prm.hp::%loop-player%}
61
		if {player.stat.mp::%loop-player%} > {player.prm.mp::%loop-player%}:
62
			set {player.stat.mp::%loop-player%} to {player.prm.mp::%loop-player%}
63
64
		if {player.prm.level::%loop-player%} is not set:
65
			set {player.prm.level::%loop-player%} to 1
66-
			message "&1PP振り分け不可 &7計算式 &n(STR^1.3+VIT^2)/2+10 (小数点以下切り捨て)"
66+
67
			set {player.set.lvup::%loop-player%} to 10
68-
			message "&1PP振り分け不可 &7計算式 &n(LUC^1.2+INT^1.8)/2+3 (小数点以下切り捨て)"
68+
69
			remove {player.set.lvup::%loop-player%} from {player.stat.exp::%loop-player%}
70-
			message "&1PP振り分け不可 &7計算式 &n(INT^1.1+AGI^1.5)/2+3 (小数点以下切り捨て)"
70+
71
			set {_lvupup} to ceil({player.prm.level::%loop-player%}/5)*4+4
72
			set {player.set.lvup::%loop-player%} to {player.set.lvup::%loop-player%}+{_lvupup}
73-
			message "&5PP振り分け可能 &7HPに小影響"
73+
74
			if {_getpp} > 100:
75-
			message "&5PP振り分け可能 &7HPに大影響"
75+
76
			add {_getpp} to {player.stat.pp::%loop-player%}
77-
			message "&5PP振り分け可能 &7AVOに大影響"
77+
78
			message "&c&l* &e&lLEVEL UP: &6&l%{player.prm.level::%loop-player%}% &c&l*" to loop-player
79-
			message "&5PP振り分け可能 &7MPに大影響 AVOに小影響"
79+
			message "&bGet: &6%{_getpp}%&bPP" to loop-player
80
			message "&aGet: &61&aSP" to loop-player
81-
			message "&5PP振り分け可能 &7MPに小影響"
81+
82
83
command /help-u [<text>]:
84
	aliases: /h
85-
		message "&9残りPP&7:&6%{player.stat.pp::%player%}%"
85+
86
		if arg 1 is not set:
87
			message "&7&l=== &e&lUltima Help &7&l==="
88
			message "&2/h stat &7>> &6ステータスについて"
89
		if arg 1 is "stat":
90
			message "&7&l=== &a&lステータスについて &7&l==="
91
			message "&4PP &7>> &4ParametersPoint(成長点) &7... &4STR,VIT,AGI,INT,LUCに振り分け可能なポイントです。"
92
			message ""
93-
		message "&9残りPP&7:&6%{player.stat.pp::%{_p}%}%" to {_p}
93+
94
			message "&1PP振り分け不可 &7計算式 &n(STR^0.8*VIT^0.8)/1.3+10 (小数点以下切り捨て)"
95
			message "&aMP &7>> &aMagicPoint(魔力量) &7... &aスキルの行使に使用します。マイナスになるとダメージを受け始めます。"
96
			message "&1PP振り分け不可 &7計算式 &n(VIT^0.8*INT^0.8)/1.6+3 (小数点以下切り捨て)"
97
			message "&eAVO &7>> &eAvoidance(回避) &7... &e相手からの攻撃の回避率(攻撃失敗させる)に影響します。"
98
			message "&1PP振り分け不可 &7計算式 &n(LUC^0.8*AGI^0.8)/1.9+3 (小数点以下切り捨て)"
99-
		teleport arg 1 to location (100033.5, 108, 100030.5)
99+
100
			message "&cSTR &7>> &cStrength(攻撃力) &7... &c相手への物理攻撃ダメージに影響します。"
101
			message "&5PP振り分け可能 &7HPに影響"
102
			message "&dVIT &7>> &dVitality(生命力) &7... &d回復スキルの効果量などに影響します。"
103
			message "&5PP振り分け可能 &7HPとMPに影響"
104
			message "&6AGI &7>> &6AGI(敏捷性) &7... &6移動速度などに影響します。"
105
			message "&5PP振り分け可能 &7AVOに影響"
106
			message "&9INT &7>> &9Intelligence(知力) &7... &9相手への魔法攻撃ダメージに影響します。"
107
			message "&5PP振り分け可能 &7MPに影響"
108
			message "&2LUC &7>> &2Luck(幸運) &7... &2クリティカル成功率などに影響します。"
109
			message "&5PP振り分け可能 &7AVOに影響"
110-
		message "&7>> &c喜んで迎え入れましょう――" to arg 1
110+
111
command /nowpp:
112
	trigger:
113
		message "&b残りPP&7:&6%{player.stat.pp::%player%}%"
114
115
command /..nowpp [<player>]:
116
	permission: ultima.nowpp
117
	trigger:
118
		set {_p} to arg 1
119
		if arg 1 is not set:
120
			set {_p} to player
121
		message "&b残りPP&7:&6%{player.stat.pp::%{_p}%}%" to {_p}
122-
			teleport arg 1 to location (100033.5, {_y}, 100030.5)
122+
123
command /nowsp:
124
	trigger:
125
		message "&a残りSP&7:&6%{player.stat.sp::%player%}%"
126
127-
			teleport arg 1 to location (100033.5, {_y}, 100030.5)
127+
command /..nowsp [<player>]:
128
	permission: ultima.nowpp
129
	trigger:
130
		set {_p} to arg 1
131
		if arg 1 is not set:
132
			set {_p} to player
133
		message "&a残りSP&7:&6%{player.stat.sp::%{_p}%}%" to {_p}
134
135
command /..firstjoinevent <player>:
136
	permission: ultima.firstjoinevent
137
	trigger:
138-
			message "&e案内人 &7>>"
138+
139
		wait 5 ticks
140
		command "teleport %arg 1% 100033 108.2 100030"
141
		command "spawnpoint %arg 1% 100000 102 99991"
142
		set gamemode of arg 1 to adventure
143
		set {player.opt.chatloadcancel::%arg 1%} to true
144
		set {player.opt.chatsendcancel::%arg 1%} to true
145-
			message "&e案内人 &7>>"
145+
146
			message "" to arg 1
147
			wait a tick
148
		wait 2 second
149
		message "&7>> &cあなたが、新しい来訪者ね?" to arg 1
150
		wait 3 second
151
		message "&7>> &c歓迎するわ――" to arg 1
152
		wait 3 second
153
		message "&7>> &cようこそ &4""Ultima"" &cへ" to arg 1
154
		wait 5 tick
155-
			message "&e案内人 &7>>"
155+
156
		wait 10 tick
157
		set {_y} to 108
158-
				message "&7>> &b「見る」に設定しました!"
158+
159
		command "teleport %arg 1% ~ ~ ~ 90 0"
160
		loop 30 times:
161-
				message "&7>> &b「見ない」に設定しました!"
161+
162-
			message "&7>> &aこの設定は後から変更できます!"
162+
163
			command "teleport %arg 1% 100033 %{_y}% 100030"
164
			wait a tick
165
		set {player.opt.chatloadcancel::%arg 1%} to false
166
		set {player.opt.chatsendcancel::%arg 1%} to false
167
		loop 45 times:
168
			command "teleport %arg 1% 100033 %{_y}% 100030"
169-
		if {player.set.next::%player%} is "tutorial.2":
169+
170
		command "teleport %arg 1% 100000 102 99991 ~ ~"
171-
				command "..tutorial %player% 2 0"
171+
172
		clear {player.set.next::%arg 1%}
173-
				command "..tutorial %player% 2 1"
173+
174
175
command /..tutorial <player> <number> [<number>]:
176
	permission: ultima.tutorial
177
	trigger:
178
		if arg 2 is 1:
179
			message "&e案内人 &7>>" to arg 1
180
			message "&7>> &aこんにちは、%arg 1%&aさん" to arg 1
181-
		message "&6&lLevel&7: &6%{player.prm.level::%player%}% &a&lEXP&7: &a%{player.stat.exp::%player%}%&7/&a%{player.set.lvup::%player%}%"
181+
182
			message "&7>> &aこのチュートリアルは基本的に&6/next&aで進めます" to arg 1
183
			message "&7>> &aでは、早速&6/next&aしてみましょう!" to arg 1
184
			set {player.set.next::%arg 1%} to "tutorial.1"
185
		if arg 2 is 2:
186
			message "&e案内人 &7>>" to arg 1
187
			message "&7>> &aそんな感じですね!" to arg 1
188
			message "&7>> &aではまず事前設定から始めます" to arg 1
189
			message "&7>> &b・ストーリーパートを見ますか?" to arg 1
190
			message "&7>> &6/next 0 &eで見る &6/next 1 &eで見ない" to arg 1
191
			message "&7>> &aストーリーパートでは物語が綴られていきます" to arg 1
192
			message "&7>> &a見なくてもゲームの進行には影響ありません" to arg 1
193
			message "&7>> &aストーリーパートは数十秒から数分かかります" to arg 1
194
			set {player.set.next::%arg 1%} to "tutorial.2"
195
		if arg 2 is 3:
196-
		message "&6&lLevel&7: &6%{player.prm.level::%{_p}%}% &a&lEXP&7: &a%{player.stat.exp::%{_p}%}%&7/&a%{player.set.lvup::%{_p}%}%" to {_p}
196+
			message "&e案内人 &7>>" to arg 1
197
			if arg 3 is 0:
198
				set {player.opt.playstory::%arg 1%} to true
199
				message "&7>> &b「見る」に設定しました!" to arg 1
200
			if arg 3 is 1:
201
				set {player.opt.playstory::%arg 1%} to false
202
				message "&7>> &b「見ない」に設定しました!" to arg 1
203
			message "&7>> &aこの設定は後から変更できます!" to arg 1
204
			message "&7>> &aさて、次はいよいよキャラクリエイトです!" to arg 1
205
			message "&7>> &6/next &aでまずはパラメータの割り振りから!" to arg 1
206
			set {player.set.next::%arg 1%} to "tutorial.3"
207
		if arg 2 is 4:
208
			command "..statusreset %arg 1%"
209
			message "&e案内人 &7>>" to arg 1
210
			message "&7>> &cSTR&a, &dVIT&a, &6AGI&a, &9INT&a, &2LUC &aに割り振ることができます" to arg 1
211
			message "&7>> &cSTR &aは攻撃力、&dVIT &aは生命力、 &6AGI &aは敏捷性" to arg 1
212
			message "&7>> &9INT &aは知力、そして &2LUC &aは幸運です" to arg 1
213-
		set {player.prm.str::%{_p}%} to 0
213+
			message "&7>> &a詳しくは &6/h stat &aで説明されています" to arg 1
214-
		set {player.prm.vit::%{_p}%} to 0
214+
			message "&7>> &aまた、割り振り画面は &6/alm &aで再表示ができます" to arg 1
215-
		set {player.prm.agi::%{_p}%} to 0
215+
			message "&7>> &aステータスの確認は割り振り画面か &6/status &aから" to arg 1
216-
		set {player.prm.int::%{_p}%} to 0
216+
			message "&7>> &a一通り理解してパラメータ割り振りを終えたら &6/next &aで次へ進みましょう!" to arg 1
217-
		set {player.prm.luc::%{_p}%} to 0
217+
			set {player.set.next::%arg 1%} to "tutorial.4"
218
		if arg 2 is 5:
219
			message "&e案内人 &7>>" to arg 1
220-
		set {player.stat.sp::%{_p}%} to 0
220+
			message "&7>> &a次はスキルを選択します!" to arg 1
221-
		set {player.set.lvup::%{_p}%} to 20
221+
			message "&7>> &aスキルは、&c《戦闘系スキル》&e《探索系スキル》&b《生産系スキル》&aの三つに分けることが出来ます" to arg 1
222
			message "&7>> &c戦闘系スキル&aは、攻撃や回復など戦闘で使うスキル" to arg 1
223
			message "&7>> &e探索系スキル&aは、探索をするのに使うスキル" to arg 1
224
			message "&7>> &b生産系スキル&aは、武具やアイテムを作るのに使うスキルです" to arg 1
225
			message "&7>> &6/next &aで次へ進み、スキルを選択しましょう!" to arg 1
226
			set {player.set.next::%arg 1%} to "tutorial.5"
227
		if arg 2 is 6:
228
			message "&e案内人 &7>>" to arg 1
229
230
command /next [<number>]:
231
	trigger:
232
		if {player.set.next::%player%} is "tutorial.1":
233
			command "..tutorial %player% 2"
234
		else if {player.set.next::%player%} is "tutorial.2":
235
			if arg 1 is 0:
236
				command "..tutorial %player% 3 0"
237
			else if arg 1 is 1:
238-
		format slot 9 of {_p} with diamond named "&6&l残りPP量を確認" to run "..nowpp %{_p}%"
238+
				command "..tutorial %player% 3 1"
239-
		format slot 12 of {_p} with wool:3 named "&b&lHP" with lore "&bHealthPoint / 体力||&7(STR^1.3+VIT^2)/2+10" to be unstealable
239+
240-
		format slot 13 of {_p} with wool:5 named "&a&lMP" with lore "&aMagicPoint / 魔力||&7(LUC^1.2+INT^1.8)/2+3" to be unstealable
240+
241-
		format slot 14 of {_p} with wool:4 named "&e&lAVO" with lore "&bAvoidance / 回避||&7(INT^1.1+AGI^1.5)/2+3" to be unstealable
241+
		else if {player.set.next::%player%} is "tutorial.3":
242
			command "..tutorial %player% 4"
243
		else if {player.set.next::%player%} is "tutorial.4":
244
			command "..tutorial %player% 5"
245
		else:
246
			message "&7>> &c今は /next を使うべき場面ではありません!"
247
248
command /status:
249
	trigger:
250
		message ""
251
		message "&3&l&o[ S T A T U S ]"
252
		message "&6&lLevel&7: &6%{player.prm.level::%player%}% &a&lEXP&7: &a%{player.stat.exp::%player%}%&7/&a%{player.set.lvup::%player%}% &e&lMoney&7: &e%{player.stat.lti::%player%}%&e(Lti)"
253
		message "&b&lHP&7:&b%{player.stat.hp::%player%}%&7/&b%{player.prm.hp::%player%}%"
254
		message "&a&lMP&7:&a%{player.stat.mp::%player%}%&7/&a%{player.prm.mp::%player%}%"
255
		message "&e&lAVO&7:&e%{player.prm.avo::%player%}% &c&lSTR&7:&c%{player.prm.str::%player%}% &d&lVIT&7:&d%{player.prm.vit::%player%}%"
256
		message "&6&lAGI&7:&6%{player.prm.agi::%player%}% &9&lINT&7:&9%{player.prm.int::%player%}% &2&lLUC&7:&2%{player.prm.luc::%player%}%"
257
		message ""
258
259
command /..status [<player>]:
260
	permission: ultima.status
261
	trigger:
262
		set {_p} to arg 1
263
		if arg 1 is not set:
264
			set {_p} to player
265
		message "" to {_p}
266
		message "&3&l&o[ S T A T U S ]" to {_p}
267
		message "&6&lLevel&7: &6%{player.prm.level::%{_p}%}% &a&lEXP&7: &a%{player.stat.exp::%{_p}%}%&7/&a%{player.set.lvup::%{_p}%}% &e&lMoney&7: &e%{player.stat.lti::%{_p}%}%&e(Lti)" to {_p}
268
		message "&b&lHP&7:&b%{player.stat.hp::%{_p}%}%&7/&b%{player.prm.hp::%{_p}%}%" to {_p}
269
		message "&a&lMP&7:&a%{player.stat.mp::%{_p}%}%&7/&a%{player.prm.mp::%{_p}%}%" to {_p}
270
		message "&e&lAVO&7:&e%{player.prm.avo::%{_p}%}% &c&lSTR&7:&c%{player.prm.str::%{_p}%}% &d&lVIT&7:&d%{player.prm.vit::%{_p}%}%" to {_p}
271
		message "&6&lAGI&7:&6%{player.prm.agi::%{_p}%}% &9&lINT&7:&9%{player.prm.int::%{_p}%}% &2&lLUC&7:&2%{player.prm.luc::%{_p}%}%" to {_p}
272
		message "" to {_p}
273
274
command /..statusreset [<player>]:
275
	permission: ultima.statusreset
276
	trigger:
277
		set {_p} to arg 1
278
		if arg 1 is not set:
279
			set {_p} to player
280
		set {player.prm.level::%{_p}%} to 1
281-
		set {player.prm.hp::%{_p}%} to {player.prm.str::%{_p}%}^1.3+{player.prm.vit::%{_p}%}^2
281+
282-
		set {player.prm.hp::%{_p}%} to ceil({player.prm.hp::%{_p}%}/2)
282+
283
		set {player.prm.avo::%{_p}%} to 3
284-
		set {player.prm.mp::%{_p}%} to {player.prm.luc::%{_p}%}^1.2+{player.prm.int::%{_p}%}^1.8
284+
		set {player.prm.str::%{_p}%} to 1
285-
		set {player.prm.mp::%{_p}%} to ceil({player.prm.mp::%{_p}%}/2)
285+
		set {player.prm.vit::%{_p}%} to 1
286
		set {player.prm.agi::%{_p}%} to 1
287-
		set {player.prm.avo::%{_p}%} to {player.prm.int::%{_p}%}^1.1+{player.prm.agi::%{_p}%}^1.5
287+
		set {player.prm.int::%{_p}%} to 1
288-
		set {player.prm.avo::%{_p}%} to ceil({player.prm.avo::%{_p}%}/2)
288+
		set {player.prm.luc::%{_p}%} to 1
289
		set {player.stat.pp::%{_p}%} to 10
290
		set {player.stat.exp::%{_p}%} to 0
291
		set {player.stat.sp::%{_p}%} to 10
292
		set {player.stat.lti::%{_p}%} to 0
293
		set {player.set.lvup::%{_p}%} to 10
294
		command "/alm %{_p}%"
295
296
command /allotment [<player>]:
297
	aliases: /alm
298
	trigger:
299
		set {_p} to arg 1
300
		if arg 1 is not set:
301-
		add arg 2 to {player.stat.lti::%arg 1%}
301+
302
		wait a tick
303
		open chest with 2 rows named "&6&lStatus" to {_p}
304
		wait a tick
305
		format slot 2 of {_p} with wool:14 named "&c&lSTR" with lore "&cStrength / 攻撃力 &7にPPを割り振る" to run "..allotment str %{_p}%"
306
		format slot 3 of {_p} with wool:2 named "&d&lVIT" with lore "&dVitality / 生命力 &7にPPを割り振る" to run "..allotment vit %{_p}%" 
307
		format slot 4 of {_p} with wool:1 named "&6&lAGI" with lore "&6Agility / 俊敏性 &7にPPを割り振る"  to run "..allotment agi %{_p}%" 
308
		format slot 5 of {_p} with wool:9 named "&9&lINT" with lore "&9IntelliGence / 知力 &7にPPを割り振る" to run "..allotment int %{_p}%"
309
		format slot 6 of {_p} with wool:13 named "&2&lLUC" with lore "&2Luck / 幸運 &7にPPを割り振る" to run "..allotment luc %{_p}%"
310
		format slot 9 of {_p} with diamond named "&b&l残りPP量を確認" to run "..nowpp %{_p}%"
311
		format slot 12 of {_p} with wool:3 named "&b&lHP" with lore "&bHealthPoint / 体力||&7(STR^0.8*VIT^0.8)/2+10" to be unstealable
312
		format slot 13 of {_p} with wool:5 named "&a&lMP" with lore "&aMagicPoint / 魔力||&7(LUC^0.8*INT^0.8)/2+3" to be unstealable
313
		format slot 14 of {_p} with wool:4 named "&e&lAVO" with lore "&bAvoidance / 回避||&7(INT^0.8*AGI^0.8)/2+3" to be unstealable
314
		format slot 17 of {_p} with nether_star named "&3&lステータスを表示" to run "..status %{_p}%"
315
316
command /skill [<player>] [<number>]:
317
	trigger:
318
		set {_p} to arg 1
319
		if arg 1 is not set:
320
			set {_p} to player
321
		if arg 2 is not set:
322
			wait 2 tick
323
			open chest with 3 rows named "&aSkill" to {_p}
324
			wait a tick
325
			format slot 0 of {_p} with arrow named "&7&l---" to be unstealable
326
			format slot 9 of {_p} with emerald named "&a&l残りSP量を確認" to run "..nowsp %{_p}%"
327
			format slot 18 of {_p} with arrow named "&7&l---" to be unstealable
328
			format slot 1 of {_p} with stained_glass_pane:7 named "&r" to be unstealable
329
			format slot 10 of {_p} with stained_glass_pane:7 named "&r" to be unstealable
330
			format slot 19 of {_p} with stained_glass_pane:7 named "&r" to be unstealable
331
			format slot 12 of {_p} with wool:14 named "&c戦闘系スキル" to close then run "skill %{_p}% 100"
332
			format slot 14 of {_p} with wool:4 named "&e探索系スキル" to close then run "skill %{_p}% 200"
333
			format slot 16 of {_p} with wool:3 named "&b生産系スキル" to close then run "skill %{_p}% 300"
334
		if arg 2 is 100:
335
			wait 2 tick
336
			open chest with 3 rows named "&cSkill" to {_p}
337
			wait a tick
338
			format slot 0 of {_p} with arrow named "&7&l---" to be unstealable
339
			format slot 9 of {_p} with emerald named "&a&l残りSP量を確認" to run "..nowsp %{_p}%"
340
			format slot 18 of {_p} with arrow named "&7&l---" to be unstealable
341
			format slot 1 of {_p} with stained_glass_pane:7 named "&r" to be unstealable
342
			format slot 10 of {_p} with stained_glass_pane:7 named "&r" to be unstealable
343
			format slot 19 of {_p} with stained_glass_pane:7 named "&r" to be unstealable
344
			format slot 12 of {_p} with wooden_sword named "&6&l剣&7カテゴリ" to close then run "skill %{_p}% 110"
345
			format slot 13 of {_p} with wooden_axe named "&6&l斧&7カテゴリ" to close then run "skill %{_p}% 120"
346
			format slot 14 of {_p} with wooden_hoe named "&6&l鎌&7カテゴリ" to close then run "skill %{_p}% 130"
347
			format slot 15 of {_p} with bow named "&6&l弓&7カテゴリ" to close then run "skill %{_p}% 140"
348
			format slot 16 of {_p} with book named "&6&l術&7カテゴリ" to close then run "skill %{_p}% 150"
349
		if arg 2 is 150:
350
			wait 2 tick
351
			open chest with 3 rows named "&6Skill" to {_p}
352
			wait a tick
353
			format slot 0 of {_p} with arrow named "&7&l---" to be unstealable
354
			format slot 9 of {_p} with emerald named "&a&l残りSP量を確認" to run "..nowsp %{_p}%"
355
			format slot 18 of {_p} with arrow named "&7&l---" to be unstealable
356
			format slot 1 of {_p} with stained_glass_pane:7 named "&r" to be unstealable
357
			format slot 10 of {_p} with stained_glass_pane:7 named "&r" to be unstealable
358
			format slot 19 of {_p} with stained_glass_pane:7 named "&r" to be unstealable
359
			format slot 12 of {_p} with wool:15 named "&9&l黒魔法&7サブカテゴリ" to close then run "skill %{_p}% 151"
360
			format slot 16 of {_p} with wool:0 named "&9&l白魔法&7サブカテゴリ" to close then run "skill %{_p}% 161"
361
		if arg 2 is 151:
362
			wait 2 tick
363
			open chest with 3 rows named "&9Skill" to {_p}
364
			wait a tick
365
			format slot 0 of {_p} with arrow named "&7&l---" to be unstealable
366
			format slot 9 of {_p} with emerald named "&a&l残りSP量を確認" to run "..nowsp %{_p}%"
367
			format slot 18 of {_p} with arrow named "&7&l---" to be unstealable
368
			format slot 1 of {_p} with stained_glass_pane:7 named "&r" to be unstealable
369
			format slot 10 of {_p} with stained_glass_pane:7 named "&r" to be unstealable
370
			format slot 19 of {_p} with stained_glass_pane:7 named "&r" to be unstealable
371
			if {player.skill.lock.15001::%{_p}%} is 2:
372
				format slot 2 of {_p} with wool:15 named "&a&l15001 &7&l- &8&l黒の技術" with lore "" to close then run "..skillget %{_p}% 15001"
373
			else if {player.skill.lock.15001::%{_p}%} is 1:
374
				format slot 2 of {_p} with wool:15 named "&c&l15001 &7&l- &8&l黒の技術" to close then run "..skillget %{_p}% 15001"
375
			else:
376
				true is true
377
378
command /..allotment <text> [<player>]:
379
	permission: ultima.allotment
380
	trigger:
381
		set {_p} to arg 2
382
		if arg 2 is not set:
383
			set {_p} to player
384
		if {player.stat.pp::%{_p}%} < 1:
385
			message "&3[STATUS] &cPPが足りません" to {_p}
386
			stop
387
		if arg 1 is "str":
388
			remove 1 from {player.stat.pp::%{_p}%}
389
			add 1 to {player.prm.str::%{_p}%}
390
			message "&3[STATUS] &c攻撃力&7に1ポイント割り振りました&c(計%{player.prm.str::%{_p}%}%ポイント)" to {_p}
391
		if arg 1 is "vit":
392
			remove 1 from {player.stat.pp::%{_p}%}
393
			add 1 to {player.prm.vit::%{_p}%}
394
			message "&3[STATUS] &d生命力&7に1ポイント割り振りました&d(計%{player.prm.vit::%{_p}%}%ポイント)" to {_p}
395
		if arg 1 is "agi":
396
			remove 1 from {player.stat.pp::%{_p}%}
397
			add 1 to {player.prm.agi::%{_p}%}
398
			message "&3[STATUS] &6俊敏性&7に1ポイント割り振りました&6(計%{player.prm.agi::%{_p}%}%ポイント)" to {_p}
399
		if arg 1 is "int":
400
			remove 1 from {player.stat.pp::%{_p}%}
401
			add 1 to {player.prm.int::%{_p}%}
402
			message "&3[STATUS] &9知力&7に1ポイント割り振りました&9(計%{player.prm.int::%{_p}%}%ポイント)" to {_p}
403
		if arg 1 is "luc":
404
			remove 1 from {player.stat.pp::%{_p}%}
405
			add 1 to {player.prm.luc::%{_p}%}
406
			message "&3[STATUS] &2幸運&7に1ポイント割り振りました&2(計%{player.prm.luc::%{_p}%}%ポイント)" to {_p}
407
		command "..calc3stat %{_p}%"
408
409
command /..calc3stat [<player>]:
410
	permission: ultima.calc3stat
411
	trigger:
412
		set {_p} to arg 1
413
		if arg 1 is not set:
414
			set {_p} to player
415
		set {_str} to {player.prm.str::%{_p}%}^0.8
416
		set {_vit} to {player.prm.vit::%{_p}%}^0.8
417
		set {_agi} to {player.prm.agi::%{_p}%}^0.8
418
		set {_int} to {player.prm.int::%{_p}%}^0.8
419
		set {_luc} to {player.prm.luc::%{_p}%}^0.8
420
		set {player.prm.hp::%{_p}%} to {_str}*{_vit}
421
		set {player.prm.hp::%{_p}%} to ceil({player.prm.hp::%{_p}%}/1.3)
422
		add 10 to {player.prm.hp::%{_p}%}
423
		set {player.prm.mp::%{_p}%} to {_vit}*{_int}
424
		set {player.prm.mp::%{_p}%} to ceil({player.prm.mp::%{_p}%}/1.6)
425
		add 3 to {player.prm.mp::%{_p}%}
426
		set {player.prm.avo::%{_p}%} to {_luc}*{_agi}
427
		set {player.prm.avo::%{_p}%} to ceil({player.prm.avo::%{_p}%}/1.9)
428
		add 3 to {player.prm.avo::%{_p}%}
429
		set {player.set.walkspeed::%{_p}%} to 0.2+{player.prm.agi::%{_p}%}*0.03
430
		set {_ws} to {player.set.walkspeed::%{_p}%}*({player.opt.wsp::%{_p}%}/100)
431
		command "/..walkspeed %{_p}% %{_ws}%"
432
433
command /..giveexp <player> <number>:
434
	permission: ultima.giveexp
435
	trigger:
436
		message "&aGet: &6%arg 2%&aEXP" to arg 1
437
		add arg 2 to {player.stat.exp::%arg 1%}
438
439
command /..givelti <player> <number>:
440
	permission: ultima.giveexp
441
	trigger:
442
		message "&eGet: &6%arg 2%&eLti" to arg 1
443
		add arg 2 to {player.stat.lti::%arg 1%}
444
445
command /..walkspeed <player> <number>:
446
	permission: ultima.walkspeed
447
	trigger:
448
		set arg 1's walk speed to arg 2