@kradle/challenges 0.0.2 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/actions.d.ts CHANGED
@@ -3,7 +3,6 @@ import type { ATTRIBUTES, BLOCKS, ENTITY_TYPES, ITEMS } from "sandstone/argument
3
3
  import type { LiteralStringUnion } from "./utils";
4
4
  export type TargetNames = LiteralStringUnion<"all" | "self"> | SelectorClass<any, any>;
5
5
  export declare function mapTarget(target: string | SelectorClass): SelectorClass<any, any> | string;
6
- export type Action = () => unknown;
7
6
  export declare const Actions: {
8
7
  /**
9
8
  * Send a chat message to everyone.
@@ -11,20 +10,20 @@ export declare const Actions: {
11
10
  */
12
11
  announce: ({ message }: {
13
12
  message: JSONTextComponent;
14
- }) => () => void;
13
+ }) => void;
15
14
  /**
16
15
  * Clear the inventory of a target.
17
16
  * @param {TargetNames} target - The target to clear the inventory of.
18
17
  */
19
18
  clear: ({ target }: {
20
19
  target: TargetNames;
21
- }) => () => void;
20
+ }) => void;
22
21
  /**
23
22
  * Custom action allowing to run any Sandstone command.
24
23
  *
25
24
  * @param {() => void} callback - The function to execute.
26
25
  */
27
- custom: (callback: () => void) => () => void;
26
+ custom: (callback: () => void) => void;
28
27
  /**
29
28
  * Fill a region with a block.
30
29
  * @param {BLOCKS} block - The block to fill the region with.
@@ -46,7 +45,7 @@ export declare const Actions: {
46
45
  z2: number;
47
46
  absolute: boolean;
48
47
  mode: "fill" | "line" | "pyramid";
49
- }) => () => void;
48
+ }) => void;
50
49
  /**
51
50
  * Give an item to a target.
52
51
  * @param {ITEMS} item - The item to give.
@@ -57,7 +56,7 @@ export declare const Actions: {
57
56
  item: ITEMS;
58
57
  target: TargetNames;
59
58
  count?: number;
60
- }) => () => void;
59
+ }) => void;
61
60
  /**
62
61
  * Give loot to a target with a weighted chance for selecting one of the items.
63
62
  * @param {{ name: ITEMS, count: number, weight: number }[]} items - The items to give.
@@ -70,7 +69,7 @@ export declare const Actions: {
70
69
  weight: number;
71
70
  }];
72
71
  target: TargetNames;
73
- }) => () => void;
72
+ }) => void;
74
73
  /**
75
74
  * Set a gamerule.
76
75
  * @param {GAMERULES} rule - The name of the gamerule.
@@ -79,14 +78,14 @@ export declare const Actions: {
79
78
  gamerule: ({ rule, value }: {
80
79
  rule: GAMERULES;
81
80
  value: boolean | number;
82
- }) => () => void;
81
+ }) => void;
83
82
  /**
84
83
  * Kill entities matching a selector.
85
84
  * @param {SelectorArgument} selector - The entities to kill.
86
85
  */
87
86
  kill: ({ selector }: {
88
87
  selector: TargetNames;
89
- }) => () => void;
88
+ }) => void;
90
89
  /**
91
90
  * Set an attribute for a target.
92
91
  * @param {ATTRIBUTES} attribute_ - The attribute to set.
@@ -97,14 +96,14 @@ export declare const Actions: {
97
96
  attribute_: ATTRIBUTES;
98
97
  value: number;
99
98
  target: TargetNames;
100
- }) => () => void;
99
+ }) => void;
101
100
  /**
102
101
  * Set the time of day.
103
102
  * @param {'day' | 'night'} time_ - The time to set.
104
103
  */
105
104
  setTime: ({ time }: {
106
105
  time: "day" | "night";
107
- }) => () => void;
106
+ }) => void;
108
107
  /**
109
108
  * Summon multiple entities at a specific location.
110
109
  */
@@ -115,14 +114,14 @@ export declare const Actions: {
115
114
  y: number;
116
115
  z: number;
117
116
  absolute: boolean;
118
- }) => () => void;
117
+ }) => void;
119
118
  /**
120
119
  * Set the end state of the challenge.
121
120
  * @param {string} end_state - The end state to set.
122
121
  */
123
122
  setEndState: ({ endState }: {
124
123
  endState: string;
125
- }) => () => void;
124
+ }) => void;
126
125
  /**
127
126
  * Set a block at a specific location.
128
127
  */
@@ -132,7 +131,7 @@ export declare const Actions: {
132
131
  y: number;
133
132
  z: number;
134
133
  absolute: boolean;
135
- }) => () => void;
134
+ }) => void;
136
135
  /**
137
136
  * Teleport entities to a specific location.
138
137
  * @param {TargetNames} target - The entities to teleport.
@@ -147,7 +146,7 @@ export declare const Actions: {
147
146
  y: number;
148
147
  z: number;
149
148
  absolute: boolean;
150
- }) => () => import("sandstone/commands/implementations").TeleportFacing;
149
+ }) => void;
151
150
  /**
152
151
  * Send a chat message to a target.
153
152
  * @param {string[]} message - The message to send.
@@ -156,21 +155,21 @@ export declare const Actions: {
156
155
  tellraw: ({ message, target }: {
157
156
  message: string[];
158
157
  target: TargetNames;
159
- }) => () => void;
158
+ }) => void;
160
159
  /**
161
160
  * Increment a score variable by 1.
162
161
  * @param variable - The score variable to increment.
163
162
  */
164
163
  increment: ({ variable }: {
165
164
  variable: Score;
166
- }) => () => void;
165
+ }) => void;
167
166
  /**
168
167
  * Decrement a score variable by 1.
169
168
  * @param variable - The score variable to decrement.
170
169
  */
171
170
  decrement: ({ variable }: {
172
171
  variable: Score;
173
- }) => () => void;
172
+ }) => void;
174
173
  /**
175
174
  * Set a score variable to a specific value.
176
175
  * @param variable - The score variable to set.
@@ -179,7 +178,7 @@ export declare const Actions: {
179
178
  set: ({ variable, value }: {
180
179
  variable: Score;
181
180
  value: number | Score;
182
- }) => () => void;
181
+ }) => void;
183
182
  /**
184
183
  * log a message with the watcher
185
184
  * @param {string} message - The message to send.
@@ -190,7 +189,7 @@ export declare const Actions: {
190
189
  message: string;
191
190
  variable: Score;
192
191
  store: boolean;
193
- }) => () => void;
192
+ }) => void;
194
193
  /**
195
194
  * Summon an item at a specific location.
196
195
  * @param {ITEMS} item - The item to summon.
@@ -205,6 +204,6 @@ export declare const Actions: {
205
204
  y: number;
206
205
  z: number;
207
206
  absolute: boolean;
208
- }) => () => void;
207
+ }) => void;
209
208
  };
210
209
  //# sourceMappingURL=actions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../src/actions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../src/actions.ts"],"names":[],"mappings":"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"}
package/dist/actions.js CHANGED
@@ -31,16 +31,14 @@ exports.Actions = {
31
31
  * @param {JSONTextComponent} message - The message to send.
32
32
  */
33
33
  announce: ({ message }) => {
34
- return () => {
35
- (0, sandstone_1.tellraw)("@a", ["\n", { text: constants_1.DISPLAY_TAG, color: "aqua" }, " | ", message, "\n"]);
36
- };
34
+ (0, sandstone_1.tellraw)("@a", ["\n", { text: constants_1.DISPLAY_TAG, color: "aqua" }, " | ", message, "\n"]);
37
35
  },
38
36
  /**
39
37
  * Clear the inventory of a target.
40
38
  * @param {TargetNames} target - The target to clear the inventory of.
41
39
  */
42
40
  clear: ({ target }) => {
43
- return () => (0, sandstone_1.clear)(mapTarget(target));
41
+ (0, sandstone_1.clear)(mapTarget(target));
44
42
  },
45
43
  /**
46
44
  * Custom action allowing to run any Sandstone command.
@@ -48,7 +46,7 @@ exports.Actions = {
48
46
  * @param {() => void} callback - The function to execute.
49
47
  */
50
48
  custom: (callback) => {
51
- return () => callback();
49
+ callback();
52
50
  },
53
51
  /**
54
52
  * Fill a region with a block.
@@ -62,52 +60,50 @@ exports.Actions = {
62
60
  * @param {boolean} absolute - Whether the coordinates are absolute or relative.
63
61
  */
64
62
  fill: ({ block, x1, y1, z1, x2, y2, z2, absolute, mode, }) => {
65
- return () => {
66
- // fill the region with the block
67
- if (mode === "fill") {
68
- const coordinates1 = absolute ? (0, sandstone_1.abs)(x1, y1, z1) : (0, sandstone_1.rel)(x1, y1, z1);
69
- const coordinates2 = absolute ? (0, sandstone_1.abs)(x2, y2, z2) : (0, sandstone_1.rel)(x2, y2, z2);
70
- (0, sandstone_1.fill)(coordinates1, coordinates2, block);
71
- return;
72
- }
73
- // draw a line from the first coordinate to the second coordinate
74
- if (mode === "line") {
75
- const dx = x2 - x1;
76
- const dy = y2 - y1;
77
- const dz = z2 - z1;
78
- const length = Math.max(Math.abs(dx), Math.abs(dy), Math.abs(dz));
79
- const stepX = dx / length || 0;
80
- const stepY = dy / length || 0;
81
- const stepZ = dz / length || 0;
82
- for (let i = 0; i <= length; i++) {
83
- const x = Math.round(x1 + stepX * i);
84
- const y = Math.round(y1 + stepY * i);
85
- const z = Math.round(z1 + stepZ * i);
86
- (0, sandstone_1.setblock)(absolute ? (0, sandstone_1.abs)(x, y, z) : (0, sandstone_1.rel)(x, y, z), block);
87
- }
88
- return;
63
+ // fill the region with the block
64
+ if (mode === "fill") {
65
+ const coordinates1 = absolute ? (0, sandstone_1.abs)(x1, y1, z1) : (0, sandstone_1.rel)(x1, y1, z1);
66
+ const coordinates2 = absolute ? (0, sandstone_1.abs)(x2, y2, z2) : (0, sandstone_1.rel)(x2, y2, z2);
67
+ (0, sandstone_1.fill)(coordinates1, coordinates2, block);
68
+ return;
69
+ }
70
+ // draw a line from the first coordinate to the second coordinate
71
+ if (mode === "line") {
72
+ const dx = x2 - x1;
73
+ const dy = y2 - y1;
74
+ const dz = z2 - z1;
75
+ const length = Math.max(Math.abs(dx), Math.abs(dy), Math.abs(dz));
76
+ const stepX = dx / length || 0;
77
+ const stepY = dy / length || 0;
78
+ const stepZ = dz / length || 0;
79
+ for (let i = 0; i <= length; i++) {
80
+ const x = Math.round(x1 + stepX * i);
81
+ const y = Math.round(y1 + stepY * i);
82
+ const z = Math.round(z1 + stepZ * i);
83
+ (0, sandstone_1.setblock)(absolute ? (0, sandstone_1.abs)(x, y, z) : (0, sandstone_1.rel)(x, y, z), block);
89
84
  }
90
- if (mode === "pyramid") {
91
- const height = Math.abs(y2);
92
- const direction = Math.sign(y2); // +1 for up, -1 for down
93
- for (let i = 0; i < height; i++) {
94
- const y = y1 + i * direction;
95
- const layerRadius = (height - 1 - i) * 2;
96
- const minX = x1 - layerRadius;
97
- const maxX = x1 + layerRadius;
98
- const minZ = z1 - layerRadius;
99
- const maxZ = z1 + layerRadius;
100
- for (let x = minX; x <= maxX; x++) {
101
- for (let z = minZ; z <= maxZ; z++) {
102
- (0, sandstone_1.setblock)(absolute ? (0, sandstone_1.abs)(x, y, z) : (0, sandstone_1.rel)(x, y, z), block);
103
- }
85
+ return;
86
+ }
87
+ if (mode === "pyramid") {
88
+ const height = Math.abs(y2);
89
+ const direction = Math.sign(y2); // +1 for up, -1 for down
90
+ for (let i = 0; i < height; i++) {
91
+ const y = y1 + i * direction;
92
+ const layerRadius = (height - 1 - i) * 2;
93
+ const minX = x1 - layerRadius;
94
+ const maxX = x1 + layerRadius;
95
+ const minZ = z1 - layerRadius;
96
+ const maxZ = z1 + layerRadius;
97
+ for (let x = minX; x <= maxX; x++) {
98
+ for (let z = minZ; z <= maxZ; z++) {
99
+ (0, sandstone_1.setblock)(absolute ? (0, sandstone_1.abs)(x, y, z) : (0, sandstone_1.rel)(x, y, z), block);
104
100
  }
105
101
  }
106
- return;
107
102
  }
108
- // if mode is not fill or line, throw an error
109
- throw new Error(`Invalid fill mode: ${mode}`);
110
- };
103
+ return;
104
+ }
105
+ // if mode is not fill or line, throw an error
106
+ throw new Error(`Invalid fill mode: ${mode}`);
111
107
  },
112
108
  /**
113
109
  * Give an item to a target.
@@ -116,7 +112,7 @@ exports.Actions = {
116
112
  * @param {number} count - The number of items to give.
117
113
  */
118
114
  give: ({ item, target, count = 1 }) => {
119
- return () => (0, sandstone_1.give)(mapTarget(target), item, count);
115
+ (0, sandstone_1.give)(mapTarget(target), item, count);
120
116
  },
121
117
  /**
122
118
  * Give loot to a target with a weighted chance for selecting one of the items.
@@ -125,7 +121,7 @@ exports.Actions = {
125
121
  */
126
122
  giveLoot: ({ items, target }) => {
127
123
  // sort incoming items and create a hash for table re-use
128
- const lootItemsSorted = items.sort((a, b) => a.name.localeCompare(b.name));
124
+ const lootItemsSorted = [...items].sort((a, b) => a.name.localeCompare(b.name));
129
125
  const lootItemsJson = JSON.stringify(lootItemsSorted);
130
126
  const lootItemsHash = node_crypto_1.default.createHash("sha256").update(lootItemsJson).digest("hex");
131
127
  const lootTableName = `loot_${lootItemsHash}`.slice(0, 16);
@@ -152,7 +148,7 @@ exports.Actions = {
152
148
  ],
153
149
  };
154
150
  // on conflict, ignore because we can re-use duplicate loot tables
155
- return () => (0, sandstone_1.LootTable)(lootTableName, lootTable, { onConflict: "ignore" }).give(mapTarget(target));
151
+ (0, sandstone_1.LootTable)(lootTableName, lootTable, { onConflict: "ignore" }).give(mapTarget(target));
156
152
  },
157
153
  /**
158
154
  * Set a gamerule.
@@ -160,14 +156,14 @@ exports.Actions = {
160
156
  * @param {boolean | number} value - The value to set the gamerule to.
161
157
  */
162
158
  gamerule: ({ rule, value }) => {
163
- return () => (0, sandstone_1.gamerule)(rule, value);
159
+ (0, sandstone_1.gamerule)(rule, value);
164
160
  },
165
161
  /**
166
162
  * Kill entities matching a selector.
167
163
  * @param {SelectorArgument} selector - The entities to kill.
168
164
  */
169
165
  kill: ({ selector }) => {
170
- return () => (0, sandstone_1.kill)(mapTarget(selector));
166
+ (0, sandstone_1.kill)(mapTarget(selector));
171
167
  },
172
168
  /**
173
169
  * Set an attribute for a target.
@@ -176,45 +172,37 @@ exports.Actions = {
176
172
  * @param {TargetNames} target - The target to set the attribute for.
177
173
  */
178
174
  setAttribute: ({ attribute_, value, target }) => {
179
- return () => {
180
- sandstone_1.execute.as(mapTarget(target)).run.attribute("@s", attribute_).baseSet(value);
181
- };
175
+ sandstone_1.execute.as(mapTarget(target)).run.attribute("@s", attribute_).baseSet(value);
182
176
  },
183
177
  /**
184
178
  * Set the time of day.
185
179
  * @param {'day' | 'night'} time_ - The time to set.
186
180
  */
187
181
  setTime: ({ time }) => {
188
- return () => sandstone_1.time.set(time);
182
+ sandstone_1.time.set(time);
189
183
  },
190
184
  /**
191
185
  * Summon multiple entities at a specific location.
192
186
  */
193
187
  summonMultiple: (params) => {
194
- return () => {
195
- const coordinates = params.absolute ? (0, sandstone_1.abs)(params.x, params.y, params.z) : (0, sandstone_1.rel)(params.x, params.y, params.z);
196
- for (let i = 0; i < params.count; i++) {
197
- (0, sandstone_1.summon)(params.entity, coordinates);
198
- }
199
- };
188
+ const coordinates = params.absolute ? (0, sandstone_1.abs)(params.x, params.y, params.z) : (0, sandstone_1.rel)(params.x, params.y, params.z);
189
+ for (let i = 0; i < params.count; i++) {
190
+ (0, sandstone_1.summon)(params.entity, coordinates);
191
+ }
200
192
  },
201
193
  /**
202
194
  * Set the end state of the challenge.
203
195
  * @param {string} end_state - The end state to set.
204
196
  */
205
197
  setEndState: ({ endState }) => {
206
- return () => {
207
- sandstone_1.data.modify.storage(constants_1.KRADLE_STORAGE, constants_1.END_STATE_KEY).set.value(endState);
208
- };
198
+ sandstone_1.data.modify.storage(constants_1.KRADLE_STORAGE, constants_1.END_STATE_KEY).set.value(endState);
209
199
  },
210
200
  /**
211
201
  * Set a block at a specific location.
212
202
  */
213
203
  setBlock: (params) => {
214
- return () => {
215
- const coordinates = params.absolute ? (0, sandstone_1.abs)(params.x, params.y, params.z) : (0, sandstone_1.rel)(params.x, params.y, params.z);
216
- (0, sandstone_1.setblock)(coordinates, params.block);
217
- };
204
+ const coordinates = params.absolute ? (0, sandstone_1.abs)(params.x, params.y, params.z) : (0, sandstone_1.rel)(params.x, params.y, params.z);
205
+ (0, sandstone_1.setblock)(coordinates, params.block);
218
206
  },
219
207
  // teleport
220
208
  // TODO: allow destination to be a SingleEntityArgument | Coordinates
@@ -229,7 +217,7 @@ exports.Actions = {
229
217
  */
230
218
  teleport: ({ target, x, y, z, absolute = true, }) => {
231
219
  const coordinates = absolute ? (0, sandstone_1.abs)(x, y, z) : (0, sandstone_1.rel)(x, y, z);
232
- return () => (0, sandstone_1.teleport)(mapTarget(target), coordinates);
220
+ (0, sandstone_1.teleport)(mapTarget(target), coordinates);
233
221
  },
234
222
  /**
235
223
  * Send a chat message to a target.
@@ -237,7 +225,7 @@ exports.Actions = {
237
225
  * @param {TargetNames} target - The target to send the message to.
238
226
  */
239
227
  tellraw: ({ message, target }) => {
240
- return () => (0, sandstone_1.tellraw)(mapTarget(target), message);
228
+ (0, sandstone_1.tellraw)(mapTarget(target), message);
241
229
  },
242
230
  // Score operations
243
231
  /**
@@ -245,18 +233,14 @@ exports.Actions = {
245
233
  * @param variable - The score variable to increment.
246
234
  */
247
235
  increment: ({ variable }) => {
248
- return () => {
249
- variable.add(1);
250
- };
236
+ variable.add(1);
251
237
  },
252
238
  /**
253
239
  * Decrement a score variable by 1.
254
240
  * @param variable - The score variable to decrement.
255
241
  */
256
242
  decrement: ({ variable }) => {
257
- return () => {
258
- variable.remove(1);
259
- };
243
+ variable.remove(1);
260
244
  },
261
245
  /**
262
246
  * Set a score variable to a specific value.
@@ -264,9 +248,7 @@ exports.Actions = {
264
248
  * @param value - The value to set the score variable to, which can be a number or another score variable.
265
249
  */
266
250
  set: ({ variable, value }) => {
267
- return () => {
268
- variable.set(value);
269
- };
251
+ variable.set(value);
270
252
  },
271
253
  /**
272
254
  * log a message with the watcher
@@ -276,7 +258,7 @@ exports.Actions = {
276
258
  */
277
259
  // WARNING: the logs must have precisely this structure to be read by the watcher. DO NOT CHANGE THE STRUCTURE.
278
260
  log_variable: ({ message, variable, store }) => {
279
- return () => commands_1.Commands.logVariable(message, variable, store);
261
+ commands_1.Commands.logVariable(message, variable, store);
280
262
  },
281
263
  /**
282
264
  * Summon an item at a specific location.
@@ -287,10 +269,8 @@ exports.Actions = {
287
269
  * @param {boolean} absolute - Whether the coordinates are absolute or relative.
288
270
  */
289
271
  summonItem: ({ item, x, y, z, absolute }) => {
290
- return () => {
291
- const abs = absolute ? "" : "~";
292
- (0, sandstone_1.raw)(`summon item ${abs}${x} ${abs}${y} ${abs}${z} {Item:{id:"${item}",Count:1b}}`);
293
- };
272
+ const abs = absolute ? "" : "~";
273
+ (0, sandstone_1.raw)(`summon item ${abs}${x} ${abs}${y} ${abs}${z} {Item:{id:"${item}",Count:1b}}`);
294
274
  },
295
275
  };
296
276
  //# sourceMappingURL=actions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"actions.js","sourceRoot":"","sources":["../src/actions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"actions.js","sourceRoot":"","sources":["../src/actions.ts"],"names":[],"mappings":"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"}
package/dist/challenge.js CHANGED
@@ -251,11 +251,11 @@ class ChallengeBase {
251
251
  },
252
252
  });
253
253
  return {
254
- actions: [
254
+ actions: () => {
255
255
  // First action is to reset the score to 0
256
- actions_1.Actions.set({ variable: score, value: 0 }),
257
- ...event.actions,
258
- ],
256
+ actions_1.Actions.set({ variable: score, value: 0 });
257
+ event.actions();
258
+ },
259
259
  mode: event.mode,
260
260
  score: score,
261
261
  };
@@ -292,7 +292,7 @@ class ChallengeBase {
292
292
  // For global scores, we can directly use the condition
293
293
  (0, sandstone_1.comment)(`Processing global custom score event ${debugName}`);
294
294
  sandstone_1._.if(condition, () => {
295
- actions.forEach((action) => action());
295
+ actions();
296
296
  counter.add(1);
297
297
  });
298
298
  }
@@ -301,7 +301,7 @@ class ChallengeBase {
301
301
  (0, sandstone_1.comment)(`Processing individual custom score event ${debugName}`);
302
302
  sandstone_1.execute.as(constants_1.ALL).run((0, utils_1.getChildFunctionName)(debugName), () => {
303
303
  sandstone_1._.if(condition, () => {
304
- actions.forEach((action) => action());
304
+ actions();
305
305
  counter.add(1);
306
306
  });
307
307
  });
@@ -341,7 +341,7 @@ class ChallengeBase {
341
341
  (0, testmode_1.set_up_test_mode)();
342
342
  }
343
343
  (0, sandstone_1.comment)("3. Process the start_challenge events");
344
- this._events.start_challenge?.actions.forEach((action) => action());
344
+ this._events.start_challenge?.();
345
345
  (0, sandstone_1.comment)("4. Schedule the init_participants function to run after 1s");
346
346
  init_participants.schedule("1s");
347
347
  (0, sandstone_1.comment)("5. Display the game objective");
@@ -374,7 +374,7 @@ class ChallengeBase {
374
374
  });
375
375
  }
376
376
  (0, sandstone_1.comment)("3. Process the init_participants events");
377
- this._events.init_participants?.actions.forEach((action) => action());
377
+ this._events.init_participants?.();
378
378
  (0, sandstone_1.comment)("4. Set the game state to ON");
379
379
  this.full_variables.game_state.score.set(constants_1.GAME_STATES.ON);
380
380
  //tellraw("@a", [`${DISPLAY_TAG}The challenge has started!`]);
@@ -401,7 +401,7 @@ class ChallengeBase {
401
401
  }
402
402
  })();
403
403
  (0, sandstone_1.comment)("2. Process the on_tick event");
404
- this._events.on_tick?.actions.forEach((action) => action());
404
+ this._events.on_tick?.();
405
405
  (0, sandstone_1.comment)("3. Process custom events");
406
406
  (0, sandstone_1.MCFunction)("process_custom_events", () => {
407
407
  // We process all custom events - this checks if the condition is reached & fire them if necessary
@@ -433,14 +433,14 @@ class ChallengeBase {
433
433
  (0, sandstone_1.comment)("1. Set the game state to OFF");
434
434
  this.full_variables.game_state.score.set(constants_1.GAME_STATES.OFF);
435
435
  (0, sandstone_1.comment)("2. Process the end_challenge events");
436
- this._events.end_challenge?.actions.forEach((action) => action());
436
+ this._events.end_challenge?.();
437
437
  (0, sandstone_1.comment)("3. Announce the winners");
438
438
  for (const [role, condition] of Object.entries(this._win_conditions || {})) {
439
439
  sandstone_1.execute.as((0, actions_1.mapTarget)(role)).run((0, utils_1.getChildFunctionName)(`check_winner_team_${role}`), () => {
440
440
  sandstone_1._.if(condition, () => {
441
441
  actions_1.Actions.announce({
442
442
  message: [(0, sandstone_1.Selector)("@s"), " has won the challenge!"],
443
- })();
443
+ });
444
444
  (0, sandstone_1.tag)("@s").add(constants_1.WINNER_TAG);
445
445
  });
446
446
  });
@@ -1 +1 @@
1
- {"version":3,"file":"challenge.js","sourceRoot":"","sources":["../src/challenge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"challenge.js","sourceRoot":"","sources":["../src/challenge.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmiBA,0CAIC;AAviBD,gDAAkC;AAClC,yCAcmB;AAEnB,uCAA+C;AAC/C,yCAAsC;AACtC,2CASqB;AACrB,yCAAiE;AACjE,mCAaiB;AACjB,mCAA+C;AAElC,QAAA,sBAAsB,GAAG,0BAA0B,CAAC;AAEjE,MAAM,qBAAqB,GAAG,QAAQ,CAAC;AACvC,MAAM,qCAAqC,GAAG,kBAAkB,CAAC;AAEjE,MAAM,0BAA0B,GAAG,SAAS,CAAC;AAC7C,MAAM,yCAAyC,GAAG,kBAAkB,CAAC;AAErE,IAAI,sBAAsB,GAAG,CAAC,CAAC;AAE/B;;GAEG;AACH,SAAS,wBAAwB,CAAC,IAAY,EAAE,MAAc;IAC7D,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;IACtD,OAAO,GAAG,WAAW,GAAG,MAAM,EAAE,CAAC;AAClC,CAAC;AAED;;;;;;GAMG;AACH,SAAS,sBAAsB,CAAC,IAAY;IAC3C,sBAAsB,EAAE,CAAC;IAEzB,OAAO,wBAAwB,CAAC,IAAI,EAAE,sBAAsB,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC1E,CAAC;AAED;;;;GAIG;AACH,SAAS,oBAAoB,CAAC,IAAY,EAAE,IAAyB;IACpE,IAAI,CAAC;QACJ,OAAO,qBAAS,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACZ,OAAO,qBAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;AACF,CAAC;AAED,SAAS,kBAAkB,CAAC,KAA4B;IACvD,OAAO,OAAO,IAAI,KAAK,CAAC;AACzB,CAAC;AAED,SAAS,wBAAwB,CAAC,KAA4B;IAC7D,OAAO,UAAU,IAAI,KAAK,CAAC;AAC5B,CAAC;AAED,MAAa,aAAa;IACjB,aAAa,CAAS;IACtB,KAAK,CAAqB;IAC1B,cAAc,CAAgC;IAC9C,uBAAuB,CAAoC;IAC3D,OAAO,GAAoB,EAAE,CAAC;IAEtC,uEAAuE;IAC/D,sBAAsB,GAAiC,EAAE,CAAC;IAC1D,cAAc,CAA4B;IAC1C,eAAe,CAAiD;IAEhE,IAAI,CAAS;IACb,qBAAqB,CAAS;IAEtC,YAAY,MAAgD;QAC3D,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,qBAAqB,GAAG,MAAM,CAAC,qBAAqB,CAAC;QAC1D,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,IAAI,wBAAY,CAAC;QAE1D,IAAI,IAAI,CAAC,aAAa,GAAG,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,6FAA6F,CAAC,CAAC;QAChH,CAAC;QACD,IAAI,IAAI,CAAC,aAAa,GAAG,wBAAY,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,+BAA+B,wBAAY,GAAG,EAAE,WAAW,CAAC,CAAC;QAC9E,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAQ,CAAC;QAEjF,MAAM,aAAa,GAAG;YACrB,GAAG,6BAAiB;YACpB,GAAG,MAAM,CAAC,gBAAgB;SACoB,CAAC;QAEhD,IAAI,CAAC,cAAc,GAAG;YACrB,GAAG,MAAM,CAAC,WAAW,CACpB,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;gBAClD,IAAI,IAAA,mCAA2B,EAAC,KAAK,CAAC,EAAE,CAAC;oBACxC,OAAO;wBACN,GAAG;wBACH;4BACC,IAAI,EAAE,KAAK,CAAC,IAAI;4BAChB,KAAK,EAAE,qBAAS,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC;4BACxD,OAAO,EAAG,KAAa,CAAC,OAAO;4BAC/B,OAAO,EAAE,KAAK,CAAC,OAAO;yBACtB;qBACD,CAAC;gBACH,CAAC;gBACD,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAC7B,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,4BAAgB,CAAC,CAAC,CAAC,6BAAiB,CAAC;oBACtE,OAAO;wBACN,GAAG;wBACH;4BACC,IAAI,EAAE,KAAK,CAAC,IAAI;4BAChB,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC;4BACrB,OAAO,EAAE,KAAK,CAAC,OAAO;4BACtB,OAAO,EAAE,KAAK,CAAC,OAAO;yBACtB;qBACD,CAAC;gBACH,CAAC;gBACD,OAAO;oBACN,GAAG;oBACH;wBACC,IAAI,EAAE,KAAK,CAAC,IAAI;wBAChB,KAAK,EAAE,qBAAS,CAAC,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC;wBAC3C,OAAO,EAAE,KAAK,CAAC,OAAO;wBACtB,OAAO,EAAE,KAAK,CAAC,OAAO;qBACtB;iBACD,CAAC;YACH,CAAC,CAAC,CACF;SACgC,CAAC;IACpC,CAAC;IAED,IAAY,SAAS;QACpB,OAAO,MAAM,CAAC,WAAW,CACxB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YACxD,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC,CAAC,CAC2B,CAAC;IAChC,CAAC;IAED;;;;;;OAMG;IACK,qBAAqB,CAAC,KAAiC,EAAE,MAAuB;QACvF,mFAAmF;QACnF,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACvD,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACvD,MAAM,SAAS,GAAG,GAAG,YAAY,KAAK,MAAM,EAAE,CAAC;QAE/C,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;YAC/B,0DAA0D;YAC1D,MAAM,SAAS,GAAG,oBAAoB,CAAC,yCAAyC,EAAE,OAAO,CAAC,CAAC;YAC3F,OAAO;gBACN,UAAU,EAAE,KAAK;gBACjB,OAAO,EAAE,SAAS,CAAC,SAAS,CAAC;gBAC7B,IAAI,EAAE,YAAY;gBAClB,SAAS,EAAE,SAAS;aACpB,CAAC;QACH,CAAC;QAED,wEAAwE;QACxE,MAAM,SAAS,GAAG,oBAAoB,CAAC,sBAAsB,CAAC,0BAA0B,GAAG,YAAY,CAAC,EAAE,OAAO,CAAC,CAAC;QACnH,OAAO;YACN,UAAU,EAAE,KAAK;YACjB,OAAO,EAAE,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;YACtC,IAAI,EAAE,YAAY;YAClB,SAAS,EAAE,SAAS;SACpB,CAAC;IACH,CAAC;IAEO,WAAW,CAAC,IAAY,EAAE,QAAsB;QACvD,mBAAmB;QACnB,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CAAC,sBAAsB,IAAI,kBAAkB,CAAC,CAAC;QAC/D,CAAC;QACD,mBAAmB;QACnB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC;IACtC,CAAC;IAEO,qBAAqB,CAAC,IAAY;QACzC,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAC/D,CAAC;QAED,OAAO,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,CACL,MAA4F;QAE5F,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAClD,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,QAAe;QACtC,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC;QAC5G,IAAI,CAAC,YAAY,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,uBAAuB,QAAQ,0BAA0B,CAAC,CAAC;QAC5E,CAAC;QACD,OAAO,YAAY,CAAC,CAAC,CAAC,CAAC;IACxB,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,KAAY;QACnC,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QACjD,IAAI,CAAC,YAAY,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,SAAS,KAAK,0BAA0B,CAAC,CAAC;QAC3D,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CAAC,YAA8B,CAAC,CAAC,IAAI,CAAC;IACjE,CAAC;IAED,aAAa,CACZ,aAA2G;QAE3G,MAAM,iBAAiB,GAAG,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAEpE,kHAAkH;QAClH,MAAM,+BAA+B,GAAiC,iBAAiB;aACrF,MAAM,CAAC,wBAAwB,CAAC;aAChC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YACrB,MAAM,OAAO,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YACtG,MAAM,IAAI,GAAG,OAAO,OAAO,KAAK,KAAK,EAAE,CAAC;YACxC,MAAM,KAAK,GAAG,oBAAoB,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC;YAEhF,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE;gBACtB,KAAK,EAAE,KAAK;gBACZ,OAAO,EAAE,CAAC;gBACV,IAAI,EAAE,YAAY;gBAClB,OAAO,EAAE,SAAS;aAClB,CAAC,CAAC;YAEH,MAAM,aAAa,GAAG,IAAA,sBAAU,EAAC,8BAA8B,IAAI,EAAE,EAAE,GAAG,EAAE;gBAC3E,gGAAgG;gBAChG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBACb,WAAW,CAAC,MAAM,CAAC,IAAA,oBAAQ,EAAC,IAAI,CAAC,CAAC,CAAC;YACpC,CAAC,CAAC,CAAC;YAEH,MAAM,WAAW,GAAG,IAAA,uBAAW,EAAC,IAAI,EAAE;gBACrC,QAAQ,EAAE,MAAM,CAAC,WAAW,CAC3B,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC,aAAa,cAAc,EAAE,EAAE,SAAS,CAAC,CAAC,CAC7F;gBACD,OAAO,EAAE;oBACR,QAAQ,EAAE,aAAa;iBACvB;aACD,CAAC,CAAC;YAEH,OAAO;gBACN,OAAO,EAAE,GAAG,EAAE;oBACb,0CAA0C;oBAC1C,iBAAO,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;oBAC3C,KAAK,CAAC,OAAO,EAAE,CAAC;gBACjB,CAAC;gBACD,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,KAAK,EAAE,KAAK;aACZ,CAAC;QACH,CAAC,CAAC,CAAC;QAEJ,IAAI,CAAC,sBAAsB,GAAG,CAAC,GAAG,iBAAiB,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAAE,GAAG,+BAA+B,CAAC,CAAC;QACpH,OAAO,IAAI,CAAC;IACb,CAAC;IAED,aAAa,CACZ,SAA8F;QAE9F,IAAI,CAAC,cAAc,GAAG,SAAS,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAE9D,OAAO,IAAI,CAAC;IACb,CAAC;IAED,cAAc,CACb,SAAkH;QAElH,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7D,IAAI,CAAC,KAAK,EAAE,CAAC;IACd,CAAC;IAED;;;;;;OAMG;IACK,uBAAuB,CAAC,KAAuB;QACtD,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC;QAC1D,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;QAE3C,MAAM,aAAa,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;QAE9E,sGAAsG;QACtG,MAAM,cAAc,GAAG,MAAM;YAC5B,CAAC,CAAC,aAAC,CAAC,GAAG,CAAC,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAChE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;QAEnC,iEAAiE;QACjE,MAAM,SAAS,GAAG,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,aAAC,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QAErG,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACvB,uDAAuD;YACvD,IAAA,mBAAO,EAAC,wCAAwC,SAAS,EAAE,CAAC,CAAC;YAC7D,aAAC,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;gBACpB,OAAO,EAAE,CAAC;gBACV,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAChB,CAAC,CAAC,CAAC;QACJ,CAAC;aAAM,CAAC;YACP,8DAA8D;YAC9D,IAAA,mBAAO,EAAC,4CAA4C,SAAS,EAAE,CAAC,CAAC;YACjE,mBAAO,CAAC,EAAE,CAAC,eAAG,CAAC,CAAC,GAAG,CAAC,IAAA,4BAAoB,EAAC,SAAS,CAAC,EAAE,GAAG,EAAE;gBACzD,aAAC,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;oBACpB,OAAO,EAAE,CAAC;oBACV,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBAChB,CAAC,CAAC,CAAC;YACJ,CAAC,CAAC,CAAC;QACJ,CAAC;IACF,CAAC;IAED;;OAEG;IACK,KAAK;QACZ,wCAAwC;QACxC,kDAAkD;QAClD,IAAI,CAAC,uBAAuB,GAAG,MAAM,CAAC,WAAW,CAChD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;YACnE,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACvB,qFAAqF;gBACrF,MAAM,SAAS,GAAG,oBAAoB,CAAC,qCAAqC,EAAE,OAAO,CAAC,CAAC;gBACvF,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,GAAG,IAAI,KAAK,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YACtD,CAAC;YAED,mEAAmE;YACnE,MAAM,SAAS,GAAG,qBAAS,CAAC,MAAM,CAAC,sBAAsB,CAAC,qBAAqB,GAAG,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;YAClG,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QACxC,CAAC,CAAC,CACF,CAAC;QAEF,iEAAiE;QACjE,MAAM,iBAAiB,GAAG,CAAC,GAAG,IAAI,CAAC,sBAAsB,EAAE,GAAG,IAAA,gCAAoB,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CACtG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,KAAK,CAAC,CAC1D,CAAC;QAEF,2BAA2B;QAC3B,IAAA,sBAAU,EAAC,iBAAiB,EAAE,GAAG,EAAE;YAClC,IAAA,mBAAO,EAAC,4DAA4D,CAAC,CAAC;YACtE,IAAA,mBAAO,EAAC,kCAAkC,CAAC,CAAC;YAC5C,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAClD,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;gBAC3D,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ,IAAI,QAAQ,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;oBAClE,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;gBACtC,CAAC;YACF,CAAC;YACD,IAAA,eAAG,EAAC,eAAG,CAAC,CAAC,MAAM,CAAC,sBAAU,CAAC,CAAC;YAE5B,IAAA,mBAAO,EAAC,wFAAwF,CAAC,CAAC;YAClG,IAAI,4BAAiB,EAAE,CAAC;gBACvB,IAAA,2BAAgB,GAAE,CAAC;YACpB,CAAC;YAED,IAAA,mBAAO,EAAC,uCAAuC,CAAC,CAAC;YACjD,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC;YAEjC,IAAA,mBAAO,EAAC,4DAA4D,CAAC,CAAC;YACtE,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAEjC,IAAA,mBAAO,EAAC,+BAA+B,CAAC,CAAC;YACzC,sBAAU,CAAC,UAAU,CAAC,UAAU,CAAC,SAAS,EAAE,6BAAiB,CAAC,IAAI,CAAC,CAAC;QACrE,CAAC,CAAC,CAAC;QAEH,MAAM,iBAAiB,GAAG,IAAA,sBAAU,EAAC,mBAAmB,EAAE,GAAG,EAAE;YAC9D,IAAA,mBAAO,EAAC,4DAA4D,CAAC,CAAC;YACtE,KAAK,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;gBACpE,MAAM,aAAa,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;gBACvD,IAAI,OAAO,aAAa,KAAK,WAAW,EAAE,CAAC;oBAC1C,MAAM,IAAI,KAAK,CAAC,+BAA+B,IAAI,aAAa,CAAC,CAAC;gBACnE,CAAC;gBAED,IAAI,QAAQ,CAAC,IAAI,KAAK,YAAY,IAAI,QAAQ,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;oBACtE,mBAAO,CAAC,EAAE,CAAC,eAAG,CAAC,CAAC,GAAG,CAAC,IAAA,4BAAoB,EAAC,IAAI,CAAC,EAAE,GAAG,EAAE;wBACpD,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAiB,CAAC,CAAC;wBAC/C,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAiB,CAAC,CAAC;oBAC/C,CAAC,CAAC,CAAC;gBACJ,CAAC;gBAED,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ,IAAI,QAAQ,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;oBAClE,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;oBACrC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;gBACrC,CAAC;YACF,CAAC;YAED,IAAA,mBAAO,EAAC,sCAAsC,CAAC,CAAC;YAEhD,KAAK,MAAM,KAAK,IAAI,iBAAiB,EAAE,CAAC;gBACvC,wEAAwE;gBACxE,6DAA6D;gBAC7D,mBAAO,CAAC,EAAE,CAAC,eAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE;oBACxB,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBACtB,CAAC,CAAC,CAAC;YACJ,CAAC;YAED,IAAA,mBAAO,EAAC,yCAAyC,CAAC,CAAC;YACnD,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC;YAEnC,IAAA,mBAAO,EAAC,6BAA6B,CAAC,CAAC;YACvC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,uBAAW,CAAC,EAAE,CAAC,CAAC;YAEzD,8DAA8D;QAC/D,CAAC,CAAC,CAAC;QAEH,IAAA,sBAAU,EACT,SAAS,EACT,GAAG,EAAE;YACJ,aAAC,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,uBAAW,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE;gBAC5D,IAAA,mBAAO,EAAC,qBAAqB,CAAC,CAAC;gBAC/B,IAAA,sBAAU,EAAC,0BAA0B,EAAE,GAAG,EAAE;oBAC3C,KAAK,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;wBACpE,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;4BACtB,IAAA,mBAAO,EAAC,qBAAqB,IAAI,EAAE,CAAC,CAAC;4BACrC,IAAI,QAAQ,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gCACpC,mBAAO;qCACL,EAAE,CAAC,eAAG,CAAC;qCACP,EAAE,CAAC,IAAI,CAAC;qCACR,GAAG,CAAC,IAAA,4BAAoB,EAAC,UAAU,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE;oCACjD,QAAQ,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;gCACpD,CAAC,CAAC,CAAC;4BACL,CAAC;iCAAM,CAAC;gCACP,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;4BAClD,CAAC;wBACF,CAAC;oBACF,CAAC;gBACF,CAAC,CAAC,EAAE,CAAC;gBAEL,IAAA,mBAAO,EAAC,8BAA8B,CAAC,CAAC;gBACxC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;gBAEzB,IAAA,mBAAO,EAAC,0BAA0B,CAAC,CAAC;gBACpC,IAAA,sBAAU,EAAC,uBAAuB,EAAE,GAAG,EAAE;oBACxC,kGAAkG;oBAClG,iBAAiB,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;wBACnC,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;oBACrC,CAAC,CAAC,CAAC;gBACJ,CAAC,CAAC,EAAE,CAAC;gBAEL,IAAA,mBAAO,EAAC,0CAA0C,CAAC,CAAC;gBACpD,mBAAO,CAAC,EAAE,CAAC,eAAG,CAAC,CAAC,GAAG,CAAC,IAAA,4BAAoB,EAAC,qBAAqB,CAAC,EAAE,GAAG,EAAE;oBACrE,KAAK,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;wBACpE,8EAA8E;wBAC9E,mDAAmD;wBACnD,MAAM,aAAa,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;wBACvD,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;oBACnC,CAAC;gBACF,CAAC,CAAC,CAAC;gBAEH,IAAA,mBAAO,EAAC,yBAAyB,CAAC,CAAC;gBAEnC,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBAC7E,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,aAAC,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC;gBAEtG,aAAC,CAAC,EAAE,CAAC,YAAY,EAAE,GAAG,EAAE;oBACvB,0EAA0E;oBAC1E,aAAa,EAAE,CAAC;gBACjB,CAAC,CAAC,CAAC;YACJ,CAAC,CAAC,CAAC;QACJ,CAAC,EACD;YACC,YAAY,EAAE,IAAI;SAClB,CACD,CAAC;QAEF,MAAM,aAAa,GAAG,IAAA,sBAAU,EAAC,eAAe,EAAE,GAAG,EAAE;YACtD,IAAA,mBAAO,EAAC,8BAA8B,CAAC,CAAC;YACxC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,uBAAW,CAAC,GAAG,CAAC,CAAC;YAE1D,IAAA,mBAAO,EAAC,qCAAqC,CAAC,CAAC;YAC/C,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC;YAE/B,IAAA,mBAAO,EAAC,yBAAyB,CAAC,CAAC;YACnC,KAAK,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,IAAI,EAAE,CAAC,EAAE,CAAC;gBAC5E,mBAAO,CAAC,EAAE,CAAC,IAAA,mBAAS,EAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAA,4BAAoB,EAAC,qBAAqB,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE;oBACvF,aAAC,CAAC,EAAE,CAAC,SAA0B,EAAE,GAAG,EAAE;wBACrC,iBAAO,CAAC,QAAQ,CAAC;4BAChB,OAAO,EAAE,CAAC,IAAA,oBAAQ,EAAC,IAAI,CAAC,EAAE,yBAAyB,CAAC;yBACpD,CAAC,CAAC;wBACH,IAAA,eAAG,EAAC,IAAI,CAAC,CAAC,GAAG,CAAC,sBAAU,CAAC,CAAC;oBAC3B,CAAC,CAAC,CAAC;gBACJ,CAAC,CAAC,CAAC;YACJ,CAAC;YACD,mBAAQ,CAAC,QAAQ,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,IAAA,oBAAQ,EAAC,UAAU,EAAE;YACpB,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,IAAI,CAAC,IAAI,CAAC;SAC5D,CAAC,CAAC;IACJ,CAAC;CACD;AA5bD,sCA4bC;AAED;;GAEG;AACH,SAAgB,eAAe,CAC9B,MAA+C;IAE/C,OAAO,IAAI,aAAa,CAAC,MAAM,CAAC,CAAC;AAClC,CAAC"}
@@ -67,6 +67,6 @@ export type BUILTIN_VARIABLE_NAMES = keyof typeof BUILTIN_VARIABLES;
67
67
  export declare const BUILTIN_SCORE_EVENTS: (variables: Record<BUILTIN_VARIABLE_NAMES, Score>) => {
68
68
  mode: "repeatable";
69
69
  score: Score<string | undefined>;
70
- actions: (() => void)[];
70
+ actions: () => void;
71
71
  }[];
72
72
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,KAAK,KAAK,EAAY,MAAM,WAAW,CAAC;AAIxE;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG,iBAAiB,GAAG,mBAAmB,GAAG,eAAe,GAAG,SAAS,CAAC;AAE7G,eAAO,MAAM,iBAAiB,2DAAuF,CAAC;AACtH,eAAO,MAAM,gBAAgB,2DAAoC,CAAC;AAElE,eAAO,MAAM,OAAO,YAAY,CAAC;AACjC,eAAO,MAAM,UAAU,oBAAoB,CAAC;AAC5C,eAAO,MAAM,sBAAsB,uBAAuB,CAAC;AAC3D,eAAO,MAAM,UAAU,kBAAkB,CAAC;AAC1C,eAAO,MAAM,WAAW,iBAAiB,CAAC;AAE1C,eAAO,MAAM,cAAc,mBAAmB,CAAC;AAC/C,eAAO,MAAM,aAAa,cAAc,CAAC;AAEzC,eAAO,MAAM,YAAY,QAAc,CAAC;AAGxC,eAAO,MAAM,GAAG,gDAAkD,CAAC;AACnE,eAAO,MAAM,WAAW;;;;CAId,CAAC;AAKX,eAAO,MAAM,iBAAiB;;;;;;;;yBAQX,KAAK;;;;yBASL,KAAK;;;;;yBAYL,KAAK;;;;;yBAOL,KAAK;;;;;;;;;;;;;;yBAiBL,KAAK;;;;;yBAYL,KAAK;;CAS8B,CAAC;AAEvD,MAAM,MAAM,sBAAsB,GAAG,MAAM,OAAO,iBAAiB,CAAC;AAEpE,eAAO,MAAM,oBAAoB,GAAI,WAAW,MAAM,CAAC,sBAAsB,EAAE,KAAK,CAAC;;;;GAWjD,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,KAAK,KAAK,EAAY,MAAM,WAAW,CAAC;AAIxE;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG,iBAAiB,GAAG,mBAAmB,GAAG,eAAe,GAAG,SAAS,CAAC;AAE7G,eAAO,MAAM,iBAAiB,2DAAuF,CAAC;AACtH,eAAO,MAAM,gBAAgB,2DAAoC,CAAC;AAElE,eAAO,MAAM,OAAO,YAAY,CAAC;AACjC,eAAO,MAAM,UAAU,oBAAoB,CAAC;AAC5C,eAAO,MAAM,sBAAsB,uBAAuB,CAAC;AAC3D,eAAO,MAAM,UAAU,kBAAkB,CAAC;AAC1C,eAAO,MAAM,WAAW,iBAAiB,CAAC;AAE1C,eAAO,MAAM,cAAc,mBAAmB,CAAC;AAC/C,eAAO,MAAM,aAAa,cAAc,CAAC;AAEzC,eAAO,MAAM,YAAY,QAAc,CAAC;AAGxC,eAAO,MAAM,GAAG,gDAAkD,CAAC;AACnE,eAAO,MAAM,WAAW;;;;CAId,CAAC;AAKX,eAAO,MAAM,iBAAiB;;;;;;;;yBAQX,KAAK;;;;yBASL,KAAK;;;;;yBAYL,KAAK;;;;;yBAOL,KAAK;;;;;;;;;;;;;;yBAiBL,KAAK;;;;;yBAYL,KAAK;;CAS8B,CAAC;AAEvD,MAAM,MAAM,sBAAsB,GAAG,MAAM,OAAO,iBAAiB,CAAC;AAEpE,eAAO,MAAM,oBAAoB,GAAI,WAAW,MAAM,CAAC,sBAAsB,EAAE,KAAK,CAAC;;;;GASjD,CAAC"}
package/dist/constants.js CHANGED
@@ -93,7 +93,7 @@ exports.BUILTIN_VARIABLES = {
93
93
  sandstone_1._.if(value.greaterThan(0), () => {
94
94
  types_1.Actions.announce({
95
95
  message: [(0, sandstone_1.Selector)("@s"), " has died!"],
96
- })();
96
+ });
97
97
  value.set(0); // Reset the death count after announcing
98
98
  });
99
99
  },
@@ -103,11 +103,9 @@ const BUILTIN_SCORE_EVENTS = (variables) => [
103
103
  {
104
104
  mode: "repeatable",
105
105
  score: variables.main_score,
106
- actions: [
107
- () => {
108
- (0, exports.VISIBLE_OBJECTIVE)("@s").set(variables.main_score);
109
- },
110
- ],
106
+ actions: () => {
107
+ (0, exports.VISIBLE_OBJECTIVE)("@s").set(variables.main_score);
108
+ },
111
109
  },
112
110
  ];
113
111
  exports.BUILTIN_SCORE_EVENTS = BUILTIN_SCORE_EVENTS;
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAAA,yCAAwE;AACxE,mCAAuF;AACvF,mCAA+C;AAOlC,QAAA,iBAAiB,GAAG,qBAAS,CAAC,MAAM,CAAC,cAAc,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;AACzG,QAAA,gBAAgB,GAAG,qBAAS,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;AAErD,QAAA,OAAO,GAAG,SAAS,CAAC;AACpB,QAAA,UAAU,GAAG,iBAAiB,CAAC;AAC/B,QAAA,sBAAsB,GAAG,oBAAoB,CAAC;AAC9C,QAAA,UAAU,GAAG,eAAe,CAAC;AAC7B,QAAA,WAAW,GAAG,cAAc,CAAC;AAE7B,QAAA,cAAc,GAAG,gBAAgB,CAAC;AAClC,QAAA,aAAa,GAAG,WAAW,CAAC;AAE5B,QAAA,YAAY,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,qBAAqB;AAE9D,2DAA2D;AAC9C,QAAA,GAAG,GAAG,IAAA,oBAAQ,EAAC,IAAI,EAAE,EAAE,GAAG,EAAE,8BAAsB,EAAE,CAAC,CAAC;AACtD,QAAA,WAAW,GAAG;IAC1B,OAAO,EAAE,CAAC;IACV,EAAE,EAAE,CAAC;IACL,GAAG,EAAE,CAAC;CACG,CAAC;AAEX,iEAAiE;AACjE,4EAA4E;AAC5E,sGAAsG;AACzF,QAAA,iBAAiB,GAAG;IAChC,WAAW,EAAE;QACZ,IAAI,EAAE,YAAY;QAClB,cAAc,EAAE,YAAY;QAC5B,OAAO,EAAE,CAAC;KACV;IACD,cAAc,EAAE;QACf,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,CAAC,KAAY,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE;YAC1C,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACb,aAAC,CAAC,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE;gBACjC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACd,CAAC,CAAC,CAAC;QACJ,CAAC;KACD;IACD,aAAa,EAAE;QACd,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,CAAC,KAAY,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE;YAC7C,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACb,mBAAO,CAAC,EAAE,CAAC,WAAG,CAAC,CAAC,GAAG,CAAC,IAAA,4BAAoB,EAAC,eAAe,CAAC,EAAE,GAAG,EAAE;gBAC/D,aAAC,CAAC,EAAE,CAAC,cAAc,EAAE,GAAG,EAAE;oBACzB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBACd,CAAC,CAAC,CAAC;YACJ,CAAC,CAAC,CAAC;QACJ,CAAC;KACD;IACD,UAAU,EAAE;QACX,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,CAAC,KAAY,EAAE,EAAE;YACzB,IAAA,yBAAiB,EAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACpC,CAAC;KACD;IACD,UAAU,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,CAAC,KAAY,EAAE,EAAE;YACzB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACd,CAAC;KACD;IACD,UAAU,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,mBAAW,CAAC,OAAO;KAC5B;IACD,YAAY,EAAE;QACb,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,CAAC;KACV;IACD,oFAAoF;IACpF,aAAa,EAAE;QACd,IAAI,EAAE,YAAY;QAClB,cAAc,EAAE,OAAO;QACvB,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,CAAC,KAAY,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE;YAC3C,aAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE;gBAC3B,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBACpB,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;gBACxB,uFAAuF;YACxF,CAAC,CAAC,CAAC;QACJ,CAAC;KACD;IACD,oDAAoD;IACpD,WAAW,EAAE;QACZ,IAAI,EAAE,YAAY;QAClB,cAAc,EAAE,YAAY;QAC5B,OAAO,EAAE,CAAC,KAAY,EAAE,EAAE;YACzB,aAAC,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE;gBAC/B,eAAO,CAAC,QAAQ,CAAC;oBAChB,OAAO,EAAE,CAAC,IAAA,oBAAQ,EAAC,IAAI,CAAC,EAAE,YAAY,CAAC;iBACvC,CAAC,EAAE,CAAC;gBACL,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,yCAAyC;YACxD,CAAC,CAAC,CAAC;QACJ,CAAC;KACD;CACoD,CAAC;AAIhD,MAAM,oBAAoB,GAAG,CAAC,SAAgD,EAAE,EAAE,CACxF;IACC;QACC,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,SAAS,CAAC,UAAU;QAC3B,OAAO,EAAE;YACR,GAAG,EAAE;gBACJ,IAAA,yBAAiB,EAAC,IAAI,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YACnD,CAAC;SACD;KACD;CACiC,CAAC;AAXxB,QAAA,oBAAoB,wBAWI"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -1,7 +1,6 @@
1
1
  import type { Score } from "sandstone";
2
2
  import type { OBJECTIVE_CRITERION } from "sandstone/arguments/generated";
3
3
  import type { AdvancementTriggers } from "sandstone/arguments/resources/AdvancementTriggers";
4
- import type { Action } from "./actions";
5
4
  import type { BUILTIN_VARIABLE_NAMES, POSSIBLE_SCENARIO_EVENTS } from "./constants";
6
5
  export { Actions } from "./actions";
7
6
  export type _SpecificObjectiveVariable<VARIABLE_NAMES extends string = string> = {
@@ -56,9 +55,7 @@ export type _BaseConfig<ROLE_NAMES extends string, VARIABLE_NAMES extends string
56
55
  roles: ROLE_NAMES[];
57
56
  custom_variables: Record<VARIABLE_NAMES, _InputVariableType<VARIABLE_NAMES | BUILTIN_VARIABLE_NAMES>>;
58
57
  };
59
- export type _ScenarioEvents = Partial<Record<POSSIBLE_SCENARIO_EVENTS, {
60
- actions: Action[];
61
- }>>;
58
+ export type _ScenarioEvents = Partial<Record<POSSIBLE_SCENARIO_EVENTS, () => void>>;
62
59
  export type Roles<ROLES_NAMES extends string = string> = {
63
60
  [role in ROLES_NAMES]: role;
64
61
  };
@@ -79,7 +76,7 @@ type _InputEventCommonProperties = {
79
76
  /** The mode of the event, either fire once or fire every time the score reaches the target */
80
77
  mode: "fire_once" | "repeatable";
81
78
  /** Actions to execute when the event is triggered */
82
- actions: Action[];
79
+ actions: () => void;
83
80
  };
84
81
  export type _InputScoreCustomEventType = {
85
82
  /** The target score to reach to trigger the event */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AA+CA,kEAIC;AA7CD,qCAAoC;AAA3B,kGAAA,OAAO,OAAA;AAyChB,SAAgB,2BAA2B,CAC1C,QAAoC;IAEpC,OAAO,QAAQ,CAAC,IAAI,KAAK,YAAY,IAAI,CAAC,CAAE,QAAgB,CAAC,cAAc,CAAC;AAC7E,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AA8CA,kEAIC;AA7CD,qCAAoC;AAA3B,kGAAA,OAAO,OAAA;AAyChB,SAAgB,2BAA2B,CAC1C,QAAoC;IAEpC,OAAO,QAAQ,CAAC,IAAI,KAAK,YAAY,IAAI,CAAC,CAAE,QAAgB,CAAC,cAAc,CAAC;AAC7E,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kradle/challenges",
3
- "version": "0.0.2",
3
+ "version": "0.1.0",
4
4
  "description": "Kradle's challenges API",
5
5
  "keywords": [],
6
6
  "license": "AGPL-3.0",
package/src/actions.ts CHANGED
@@ -54,17 +54,13 @@ export function mapTarget(target: string | SelectorClass): SelectorClass<any, an
54
54
  return Selector("@a", { tag: target }); // Assuming the target is a team name
55
55
  }
56
56
 
57
- export type Action = () => unknown;
58
-
59
57
  export const Actions = {
60
58
  /**
61
59
  * Send a chat message to everyone.
62
60
  * @param {JSONTextComponent} message - The message to send.
63
61
  */
64
62
  announce: ({ message }: { message: JSONTextComponent }) => {
65
- return () => {
66
- tellraw("@a", ["\n", { text: DISPLAY_TAG, color: "aqua" }, " | ", message, "\n"]);
67
- };
63
+ tellraw("@a", ["\n", { text: DISPLAY_TAG, color: "aqua" }, " | ", message, "\n"]);
68
64
  },
69
65
 
70
66
  /**
@@ -72,7 +68,7 @@ export const Actions = {
72
68
  * @param {TargetNames} target - The target to clear the inventory of.
73
69
  */
74
70
  clear: ({ target }: { target: TargetNames }) => {
75
- return () => clear(mapTarget(target));
71
+ clear(mapTarget(target))
76
72
  },
77
73
 
78
74
  /**
@@ -81,7 +77,7 @@ export const Actions = {
81
77
  * @param {() => void} callback - The function to execute.
82
78
  */
83
79
  custom: (callback: () => void) => {
84
- return () => callback();
80
+ callback();
85
81
  },
86
82
 
87
83
  /**
@@ -116,64 +112,62 @@ export const Actions = {
116
112
  absolute: boolean;
117
113
  mode: "fill" | "line" | "pyramid";
118
114
  }) => {
119
- return () => {
120
- // fill the region with the block
121
- if (mode === "fill") {
122
- const coordinates1 = absolute ? abs(x1, y1, z1) : rel(x1, y1, z1);
123
- const coordinates2 = absolute ? abs(x2, y2, z2) : rel(x2, y2, z2);
124
-
125
- fill(coordinates1, coordinates2, block);
126
-
127
- return;
115
+ // fill the region with the block
116
+ if (mode === "fill") {
117
+ const coordinates1 = absolute ? abs(x1, y1, z1) : rel(x1, y1, z1);
118
+ const coordinates2 = absolute ? abs(x2, y2, z2) : rel(x2, y2, z2);
119
+
120
+ fill(coordinates1, coordinates2, block);
121
+
122
+ return;
123
+ }
124
+
125
+ // draw a line from the first coordinate to the second coordinate
126
+ if (mode === "line") {
127
+ const dx = x2 - x1;
128
+ const dy = y2 - y1;
129
+ const dz = z2 - z1;
130
+
131
+ const length = Math.max(Math.abs(dx), Math.abs(dy), Math.abs(dz));
132
+ const stepX = dx / length || 0;
133
+ const stepY = dy / length || 0;
134
+ const stepZ = dz / length || 0;
135
+
136
+ for (let i = 0; i <= length; i++) {
137
+ const x = Math.round(x1 + stepX * i);
138
+ const y = Math.round(y1 + stepY * i);
139
+ const z = Math.round(z1 + stepZ * i);
140
+ setblock(absolute ? abs(x, y, z) : rel(x, y, z), block);
128
141
  }
129
142
 
130
- // draw a line from the first coordinate to the second coordinate
131
- if (mode === "line") {
132
- const dx = x2 - x1;
133
- const dy = y2 - y1;
134
- const dz = z2 - z1;
135
-
136
- const length = Math.max(Math.abs(dx), Math.abs(dy), Math.abs(dz));
137
- const stepX = dx / length || 0;
138
- const stepY = dy / length || 0;
139
- const stepZ = dz / length || 0;
140
-
141
- for (let i = 0; i <= length; i++) {
142
- const x = Math.round(x1 + stepX * i);
143
- const y = Math.round(y1 + stepY * i);
144
- const z = Math.round(z1 + stepZ * i);
145
- setblock(absolute ? abs(x, y, z) : rel(x, y, z), block);
146
- }
147
-
148
- return;
149
- }
143
+ return;
144
+ }
150
145
 
151
- if (mode === "pyramid") {
152
- const height = Math.abs(y2);
153
- const direction = Math.sign(y2); // +1 for up, -1 for down
146
+ if (mode === "pyramid") {
147
+ const height = Math.abs(y2);
148
+ const direction = Math.sign(y2); // +1 for up, -1 for down
154
149
 
155
- for (let i = 0; i < height; i++) {
156
- const y = y1 + i * direction;
157
- const layerRadius = (height - 1 - i) * 2;
150
+ for (let i = 0; i < height; i++) {
151
+ const y = y1 + i * direction;
152
+ const layerRadius = (height - 1 - i) * 2;
158
153
 
159
- const minX = x1 - layerRadius;
160
- const maxX = x1 + layerRadius;
161
- const minZ = z1 - layerRadius;
162
- const maxZ = z1 + layerRadius;
154
+ const minX = x1 - layerRadius;
155
+ const maxX = x1 + layerRadius;
156
+ const minZ = z1 - layerRadius;
157
+ const maxZ = z1 + layerRadius;
163
158
 
164
- for (let x = minX; x <= maxX; x++) {
165
- for (let z = minZ; z <= maxZ; z++) {
166
- setblock(absolute ? abs(x, y, z) : rel(x, y, z), block);
167
- }
159
+ for (let x = minX; x <= maxX; x++) {
160
+ for (let z = minZ; z <= maxZ; z++) {
161
+ setblock(absolute ? abs(x, y, z) : rel(x, y, z), block);
168
162
  }
169
163
  }
170
-
171
- return;
172
164
  }
173
165
 
174
- // if mode is not fill or line, throw an error
175
- throw new Error(`Invalid fill mode: ${mode}`);
176
- };
166
+ return;
167
+ }
168
+
169
+ // if mode is not fill or line, throw an error
170
+ throw new Error(`Invalid fill mode: ${mode}`);
177
171
  },
178
172
 
179
173
  /**
@@ -183,7 +177,7 @@ export const Actions = {
183
177
  * @param {number} count - The number of items to give.
184
178
  */
185
179
  give: ({ item, target, count = 1 }: { item: ITEMS; target: TargetNames; count?: number }) => {
186
- return () => give(mapTarget(target), item, count);
180
+ give(mapTarget(target), item, count);
187
181
  },
188
182
 
189
183
  /**
@@ -193,7 +187,7 @@ export const Actions = {
193
187
  */
194
188
  giveLoot: ({ items, target }: { items: [{ name: ITEMS; count: number; weight: number }]; target: TargetNames }) => {
195
189
  // sort incoming items and create a hash for table re-use
196
- const lootItemsSorted = items.sort((a, b) => a.name.localeCompare(b.name));
190
+ const lootItemsSorted = [...items].sort((a, b) => a.name.localeCompare(b.name));
197
191
  const lootItemsJson = JSON.stringify(lootItemsSorted);
198
192
  const lootItemsHash = crypto.createHash("sha256").update(lootItemsJson).digest("hex");
199
193
  const lootTableName = `loot_${lootItemsHash}`.slice(0, 16);
@@ -223,7 +217,7 @@ export const Actions = {
223
217
  };
224
218
 
225
219
  // on conflict, ignore because we can re-use duplicate loot tables
226
- return () => LootTable(lootTableName, lootTable, { onConflict: "ignore" }).give(mapTarget(target));
220
+ LootTable(lootTableName, lootTable, { onConflict: "ignore" }).give(mapTarget(target));
227
221
  },
228
222
 
229
223
  /**
@@ -232,7 +226,7 @@ export const Actions = {
232
226
  * @param {boolean | number} value - The value to set the gamerule to.
233
227
  */
234
228
  gamerule: ({ rule, value }: { rule: GAMERULES; value: boolean | number }) => {
235
- return () => gamerule(rule, value);
229
+ gamerule(rule, value);
236
230
  },
237
231
 
238
232
  /**
@@ -240,7 +234,7 @@ export const Actions = {
240
234
  * @param {SelectorArgument} selector - The entities to kill.
241
235
  */
242
236
  kill: ({ selector }: { selector: TargetNames }) => {
243
- return () => kill(mapTarget(selector));
237
+ kill(mapTarget(selector));
244
238
  },
245
239
 
246
240
  /**
@@ -250,9 +244,7 @@ export const Actions = {
250
244
  * @param {TargetNames} target - The target to set the attribute for.
251
245
  */
252
246
  setAttribute: ({ attribute_, value, target }: { attribute_: ATTRIBUTES; value: number; target: TargetNames }) => {
253
- return () => {
254
- execute.as(mapTarget(target)).run.attribute("@s", attribute_).baseSet(value);
255
- };
247
+ execute.as(mapTarget(target)).run.attribute("@s", attribute_).baseSet(value);
256
248
  },
257
249
 
258
250
  /**
@@ -260,7 +252,7 @@ export const Actions = {
260
252
  * @param {'day' | 'night'} time_ - The time to set.
261
253
  */
262
254
  setTime: ({ time }: { time: "day" | "night" }) => {
263
- return () => timeCmd.set(time);
255
+ timeCmd.set(time);
264
256
  },
265
257
 
266
258
  /**
@@ -274,12 +266,10 @@ export const Actions = {
274
266
  z: number;
275
267
  absolute: boolean;
276
268
  }) => {
277
- return () => {
278
- const coordinates = params.absolute ? abs(params.x, params.y, params.z) : rel(params.x, params.y, params.z);
279
- for (let i = 0; i < params.count; i++) {
280
- summon(params.entity, coordinates);
281
- }
282
- };
269
+ const coordinates = params.absolute ? abs(params.x, params.y, params.z) : rel(params.x, params.y, params.z);
270
+ for (let i = 0; i < params.count; i++) {
271
+ summon(params.entity, coordinates);
272
+ }
283
273
  },
284
274
 
285
275
  /**
@@ -287,19 +277,15 @@ export const Actions = {
287
277
  * @param {string} end_state - The end state to set.
288
278
  */
289
279
  setEndState: ({ endState }: { endState: string }) => {
290
- return () => {
291
- data.modify.storage(KRADLE_STORAGE, END_STATE_KEY).set.value(endState);
292
- };
280
+ data.modify.storage(KRADLE_STORAGE, END_STATE_KEY).set.value(endState);
293
281
  },
294
282
 
295
283
  /**
296
284
  * Set a block at a specific location.
297
285
  */
298
286
  setBlock: (params: { block: BLOCKS; x: number; y: number; z: number; absolute: boolean }) => {
299
- return () => {
300
- const coordinates = params.absolute ? abs(params.x, params.y, params.z) : rel(params.x, params.y, params.z);
301
- setblock(coordinates, params.block);
302
- };
287
+ const coordinates = params.absolute ? abs(params.x, params.y, params.z) : rel(params.x, params.y, params.z);
288
+ setblock(coordinates, params.block);
303
289
  },
304
290
 
305
291
  // teleport
@@ -327,7 +313,7 @@ export const Actions = {
327
313
  absolute: boolean;
328
314
  }) => {
329
315
  const coordinates = absolute ? abs(x, y, z) : rel(x, y, z);
330
- return () => teleport(mapTarget(target), coordinates);
316
+ teleport(mapTarget(target), coordinates);
331
317
  },
332
318
 
333
319
  /**
@@ -336,7 +322,7 @@ export const Actions = {
336
322
  * @param {TargetNames} target - The target to send the message to.
337
323
  */
338
324
  tellraw: ({ message, target }: { message: string[]; target: TargetNames }) => {
339
- return () => tellraw(mapTarget(target), message);
325
+ tellraw(mapTarget(target), message);
340
326
  },
341
327
 
342
328
  // Score operations
@@ -345,9 +331,7 @@ export const Actions = {
345
331
  * @param variable - The score variable to increment.
346
332
  */
347
333
  increment: ({ variable }: { variable: Score }) => {
348
- return () => {
349
- variable.add(1);
350
- };
334
+ variable.add(1);
351
335
  },
352
336
 
353
337
  /**
@@ -355,9 +339,7 @@ export const Actions = {
355
339
  * @param variable - The score variable to decrement.
356
340
  */
357
341
  decrement: ({ variable }: { variable: Score }) => {
358
- return () => {
359
- variable.remove(1);
360
- };
342
+ variable.remove(1);
361
343
  },
362
344
 
363
345
  /**
@@ -366,9 +348,7 @@ export const Actions = {
366
348
  * @param value - The value to set the score variable to, which can be a number or another score variable.
367
349
  */
368
350
  set: ({ variable, value }: { variable: Score; value: number | Score }) => {
369
- return () => {
370
- variable.set(value);
371
- };
351
+ variable.set(value);
372
352
  },
373
353
 
374
354
  /**
@@ -379,7 +359,7 @@ export const Actions = {
379
359
  */
380
360
  // WARNING: the logs must have precisely this structure to be read by the watcher. DO NOT CHANGE THE STRUCTURE.
381
361
  log_variable: ({ message, variable, store }: { message: string; variable: Score; store: boolean }) => {
382
- return () => Commands.logVariable(message, variable, store);
362
+ Commands.logVariable(message, variable, store);
383
363
  },
384
364
 
385
365
  /**
@@ -391,9 +371,7 @@ export const Actions = {
391
371
  * @param {boolean} absolute - Whether the coordinates are absolute or relative.
392
372
  */
393
373
  summonItem: ({ item, x, y, z, absolute }: { item: ITEMS; x: number; y: number; z: number; absolute: boolean }) => {
394
- return () => {
395
- const abs = absolute ? "" : "~";
396
- raw(`summon item ${abs}${x} ${abs}${y} ${abs}${z} {Item:{id:"${item}",Count:1b}}`);
397
- };
374
+ const abs = absolute ? "" : "~";
375
+ raw(`summon item ${abs}${x} ${abs}${y} ${abs}${z} {Item:{id:"${item}",Count:1b}}`);
398
376
  },
399
- } satisfies Record<string, (...args: any[]) => Action>;
377
+ } satisfies Record<string, (...args: any[]) => void | undefined>;
package/src/challenge.ts CHANGED
@@ -294,11 +294,11 @@ export class ChallengeBase<const ROLES_NAMES extends string, const VARIABLE_NAME
294
294
  });
295
295
 
296
296
  return {
297
- actions: [
297
+ actions: () => {
298
298
  // First action is to reset the score to 0
299
- Actions.set({ variable: score, value: 0 }),
300
- ...event.actions,
301
- ],
299
+ Actions.set({ variable: score, value: 0 });
300
+ event.actions();
301
+ },
302
302
  mode: event.mode,
303
303
  score: score,
304
304
  };
@@ -348,7 +348,7 @@ export class ChallengeBase<const ROLES_NAMES extends string, const VARIABLE_NAME
348
348
  // For global scores, we can directly use the condition
349
349
  comment(`Processing global custom score event ${debugName}`);
350
350
  _.if(condition, () => {
351
- actions.forEach((action) => action());
351
+ actions();
352
352
  counter.add(1);
353
353
  });
354
354
  } else {
@@ -356,7 +356,7 @@ export class ChallengeBase<const ROLES_NAMES extends string, const VARIABLE_NAME
356
356
  comment(`Processing individual custom score event ${debugName}`);
357
357
  execute.as(ALL).run(getChildFunctionName(debugName), () => {
358
358
  _.if(condition, () => {
359
- actions.forEach((action) => action());
359
+ actions();
360
360
  counter.add(1);
361
361
  });
362
362
  });
@@ -406,7 +406,7 @@ export class ChallengeBase<const ROLES_NAMES extends string, const VARIABLE_NAME
406
406
  }
407
407
 
408
408
  comment("3. Process the start_challenge events");
409
- this._events.start_challenge?.actions.forEach((action) => action());
409
+ this._events.start_challenge?.();
410
410
 
411
411
  comment("4. Schedule the init_participants function to run after 1s");
412
412
  init_participants.schedule("1s");
@@ -447,7 +447,7 @@ export class ChallengeBase<const ROLES_NAMES extends string, const VARIABLE_NAME
447
447
  }
448
448
 
449
449
  comment("3. Process the init_participants events");
450
- this._events.init_participants?.actions.forEach((action) => action());
450
+ this._events.init_participants?.();
451
451
 
452
452
  comment("4. Set the game state to ON");
453
453
  this.full_variables.game_state.score.set(GAME_STATES.ON);
@@ -479,7 +479,7 @@ export class ChallengeBase<const ROLES_NAMES extends string, const VARIABLE_NAME
479
479
  })();
480
480
 
481
481
  comment("2. Process the on_tick event");
482
- this._events.on_tick?.actions.forEach((action) => action());
482
+ this._events.on_tick?.();
483
483
 
484
484
  comment("3. Process custom events");
485
485
  MCFunction("process_custom_events", () => {
@@ -520,7 +520,7 @@ export class ChallengeBase<const ROLES_NAMES extends string, const VARIABLE_NAME
520
520
  this.full_variables.game_state.score.set(GAME_STATES.OFF);
521
521
 
522
522
  comment("2. Process the end_challenge events");
523
- this._events.end_challenge?.actions.forEach((action) => action());
523
+ this._events.end_challenge?.();
524
524
 
525
525
  comment("3. Announce the winners");
526
526
  for (const [role, condition] of Object.entries(this._win_conditions || {})) {
@@ -528,7 +528,7 @@ export class ChallengeBase<const ROLES_NAMES extends string, const VARIABLE_NAME
528
528
  _.if(condition as ConditionType, () => {
529
529
  Actions.announce({
530
530
  message: [Selector("@s"), " has won the challenge!"],
531
- })();
531
+ });
532
532
  tag("@s").add(WINNER_TAG);
533
533
  });
534
534
  });
package/src/constants.ts CHANGED
@@ -101,7 +101,7 @@ export const BUILTIN_VARIABLES = {
101
101
  _.if(value.greaterThan(0), () => {
102
102
  Actions.announce({
103
103
  message: [Selector("@s"), " has died!"],
104
- })();
104
+ });
105
105
  value.set(0); // Reset the death count after announcing
106
106
  });
107
107
  },
@@ -115,10 +115,8 @@ export const BUILTIN_SCORE_EVENTS = (variables: Record<BUILTIN_VARIABLE_NAMES, S
115
115
  {
116
116
  mode: "repeatable",
117
117
  score: variables.main_score,
118
- actions: [
119
- () => {
120
- VISIBLE_OBJECTIVE("@s").set(variables.main_score);
121
- },
122
- ],
118
+ actions: () => {
119
+ VISIBLE_OBJECTIVE("@s").set(variables.main_score);
120
+ },
123
121
  },
124
122
  ] satisfies _InputCustomEventType[];
package/src/types.ts CHANGED
@@ -1,7 +1,6 @@
1
1
  import type { Score } from "sandstone";
2
2
  import type { OBJECTIVE_CRITERION } from "sandstone/arguments/generated";
3
3
  import type { AdvancementTriggers } from "sandstone/arguments/resources/AdvancementTriggers";
4
- import type { Action } from "./actions";
5
4
  import type { BUILTIN_VARIABLE_NAMES, POSSIBLE_SCENARIO_EVENTS } from "./constants";
6
5
 
7
6
  export { Actions } from "./actions";
@@ -77,7 +76,7 @@ export type _BaseConfig<ROLE_NAMES extends string, VARIABLE_NAMES extends string
77
76
  custom_variables: Record<VARIABLE_NAMES, _InputVariableType<VARIABLE_NAMES | BUILTIN_VARIABLE_NAMES>>;
78
77
  };
79
78
 
80
- export type _ScenarioEvents = Partial<Record<POSSIBLE_SCENARIO_EVENTS, { actions: Action[] }>>;
79
+ export type _ScenarioEvents = Partial<Record<POSSIBLE_SCENARIO_EVENTS, () => void>>;
81
80
 
82
81
  export type Roles<ROLES_NAMES extends string = string> = {
83
82
  [role in ROLES_NAMES]: role;
@@ -106,7 +105,7 @@ type _InputEventCommonProperties = {
106
105
  /** The mode of the event, either fire once or fire every time the score reaches the target */
107
106
  mode: "fire_once" | "repeatable";
108
107
  /** Actions to execute when the event is triggered */
109
- actions: Action[];
108
+ actions: () => void;
110
109
  };
111
110
 
112
111
  export type _InputScoreCustomEventType = {