@energy8platform/game-engine 0.34.0 → 0.34.2

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.
@@ -1,4 +1,4 @@
1
- import { Container, Graphics, Rectangle } from 'pixi.js';
1
+ import { Container, Graphics, Rectangle, Point } from 'pixi.js';
2
2
 
3
3
  // Pure helpers behind the scene inspector — kept renderer/DOM-free so the control
4
4
  // inference and layout-field enumeration are unit-testable and reusable (the same
@@ -860,6 +860,7 @@ function createTransformGizmo(opts) {
860
860
  layer.addChildAt(body, 1);
861
861
  let nodeId = null;
862
862
  let drag = null;
863
+ const getMode = () => opts.getMode?.() ?? null;
863
864
  const findDocNode = (id, node = handle.doc().root) => {
864
865
  if (node.id === id)
865
866
  return node;
@@ -870,14 +871,22 @@ function createTransformGizmo(opts) {
870
871
  }
871
872
  return undefined;
872
873
  };
873
- /** Effective layout rule for the current orientation (base or portrait/landscape override). */
874
+ /**
875
+ * Effective layout rule + which override an edit should target. Editing in a non-base
876
+ * mode targets that mode's override (so base and free_spins are edited independently);
877
+ * otherwise the current orientation override, else base.
878
+ */
874
879
  const effectiveRule = (id) => {
875
880
  const node = findDocNode(id);
876
881
  if (!node)
877
- return {};
882
+ return { target: {} };
883
+ const mode = getMode();
884
+ if (mode && mode !== 'base') {
885
+ return { rule: node.modes?.[mode]?.layout ?? node.layout, target: { mode } };
886
+ }
878
887
  const o = getOrientation();
879
888
  const override = node.responsive?.[o]?.layout;
880
- return override ? { rule: override, orientation: o } : { rule: node.layout };
889
+ return override ? { rule: override, target: { orientation: o } } : { rule: node.layout, target: {} };
881
890
  };
882
891
  const boxOf = (id) => {
883
892
  const view = handle.node(id);
@@ -891,7 +900,7 @@ function createTransformGizmo(opts) {
891
900
  if (!nodeId)
892
901
  return;
893
902
  const box = boxOf(nodeId);
894
- const { rule, orientation } = effectiveRule(nodeId);
903
+ const { rule, target } = effectiveRule(nodeId);
895
904
  if (!box || !rule)
896
905
  return;
897
906
  const center = { x: box.x + box.width / 2, y: box.y + box.height / 2 };
@@ -899,7 +908,7 @@ function createTransformGizmo(opts) {
899
908
  handle: h,
900
909
  startBox: box,
901
910
  baseRule: JSON.parse(JSON.stringify(rule)),
902
- orientation,
911
+ target,
903
912
  start: { x: e.global.x, y: e.global.y },
904
913
  center,
905
914
  startAngle: Math.atan2(e.global.y - center.y, e.global.x - center.x),
@@ -923,7 +932,7 @@ function createTransformGizmo(opts) {
923
932
  const { factorX, factorY } = resizeFactors(drag.startBox, drag.handle, { x: e.global.x, y: e.global.y });
924
933
  rule = resizeRule(drag.baseRule, factorX, factorY);
925
934
  }
926
- applyPatch({ op: 'set-layout', id: nodeId, layout: rule, orientation: drag.orientation });
935
+ applyPatch({ op: 'set-layout', id: nodeId, layout: rule, orientation: drag.target.orientation, mode: drag.target.mode });
927
936
  };
928
937
  const onUp = () => {
929
938
  drag = null;
@@ -1017,12 +1026,16 @@ function mountIdeBridge(opts) {
1017
1026
  const post = (msg) => window.parent?.postMessage(msg, origin);
1018
1027
  const emit = (event, payload) => post({ type: EVT, event, payload });
1019
1028
  const pushSnapshot = () => emit('snapshot', snapshot());
1029
+ // Current authoring mode — the view the canvas shows AND the override edits target.
1030
+ let editMode = null;
1020
1031
  const snapshot = () => ({
1021
1032
  docId: handle.doc().id,
1022
1033
  doc: handle.doc(),
1023
1034
  tree: handle.tree(),
1024
1035
  palette: handle.palette(),
1025
1036
  sceneFile: opts.sceneFile,
1037
+ modes: handle.doc().modes ?? [],
1038
+ mode: editMode,
1026
1039
  selectedId,
1027
1040
  });
1028
1041
  // Transform gizmo (resize/rotate/move on canvas) — owns the selection visuals too, so
@@ -1031,6 +1044,7 @@ function mountIdeBridge(opts) {
1031
1044
  handle,
1032
1045
  app,
1033
1046
  getOrientation: opts.getOrientation,
1047
+ getMode: () => editMode,
1034
1048
  designPerPixel: opts.designPerPixel,
1035
1049
  applyPatch: (patch) => {
1036
1050
  handle.patch(patch);
@@ -1086,6 +1100,15 @@ function mountIdeBridge(opts) {
1086
1100
  select(params.id);
1087
1101
  return { selectedId };
1088
1102
  },
1103
+ // Switch the authoring mode: drives the runtime `mode` var (so visibleWhen + mode
1104
+ // overlays render the mode's view) AND becomes the target of subsequent edits.
1105
+ setMode: (params) => {
1106
+ const mode = params.mode;
1107
+ editMode = mode && mode !== 'base' ? mode : null;
1108
+ handle.setVar('mode', editMode ?? 'base');
1109
+ pushSnapshot();
1110
+ return { mode: editMode };
1111
+ },
1089
1112
  save: async (params) => {
1090
1113
  const file = params?.file ?? opts.sceneFile;
1091
1114
  if (!file)
@@ -1099,6 +1122,126 @@ function mountIdeBridge(opts) {
1099
1122
  throw new Error(await res.text());
1100
1123
  return { saved: file };
1101
1124
  },
1125
+ // Drag an asset from the IDE panel onto the canvas: replace a sprite's art if dropped
1126
+ // on one, else add a new sprite at the drop point (design coords via root.toLocal).
1127
+ dropAsset: (params) => {
1128
+ const { alias, x, y } = params;
1129
+ const hit = topSpriteAt(x, y);
1130
+ if (hit) {
1131
+ handle.patch({ op: 'set-props', id: hit, props: { src: alias } });
1132
+ pushSnapshot();
1133
+ return { action: 'replace', id: hit };
1134
+ }
1135
+ const local = handle.view.toLocal(new Point(x, y));
1136
+ const id = uniqueId(`img_${alias}`.replace(/[^\w]/g, '_'));
1137
+ const node = {
1138
+ id,
1139
+ type: 'sprite',
1140
+ name: alias,
1141
+ props: { src: alias },
1142
+ layout: { mode: 'absolute', x: Math.round(local.x), y: Math.round(local.y), anchor: [0.5, 0.5] },
1143
+ };
1144
+ handle.patch({ op: 'add-node', parent: handle.doc().root.id, node });
1145
+ afterStructural();
1146
+ pushSnapshot();
1147
+ select(id);
1148
+ return { action: 'add', id };
1149
+ },
1150
+ // ── flow-IR surface (present only if opts.flow was given) ────────────────────
1151
+ flowMeta: () => {
1152
+ const f = opts.flow;
1153
+ if (!f)
1154
+ return { enabled: false };
1155
+ return {
1156
+ enabled: true,
1157
+ doc: f.doc,
1158
+ file: f.file,
1159
+ events: Object.keys(f.doc.on ?? {}),
1160
+ cues: Object.keys(f.doc.cues ?? {}),
1161
+ stepKinds: f.stepKinds ?? [],
1162
+ ctx: f.ctx ?? [],
1163
+ };
1164
+ },
1165
+ flowSetDoc: (params) => {
1166
+ const f = requireFlow();
1167
+ // The runner reads doc.on at fire-time, so replacing the on-map is enough — the very
1168
+ // next fire plays the edit. Mutate in place to keep the same object identity.
1169
+ const next = params;
1170
+ f.doc.on = next.on;
1171
+ f.doc.cues = next.cues;
1172
+ return { ok: true };
1173
+ },
1174
+ flowSave: async () => {
1175
+ const f = requireFlow();
1176
+ if (!f.file)
1177
+ throw new Error('no flow file configured');
1178
+ const res = await fetch('/__ide/write', {
1179
+ method: 'POST',
1180
+ headers: { 'content-type': 'application/json' },
1181
+ body: JSON.stringify({ file: f.file, content: f.doc }),
1182
+ });
1183
+ if (!res.ok)
1184
+ throw new Error(await res.text());
1185
+ return { saved: f.file };
1186
+ },
1187
+ flowFire: async (params) => {
1188
+ const f = requireFlow();
1189
+ const { event, ctx } = params;
1190
+ const trace = await f.runner.fire(event, ctx ?? f.sampleCtx?.(event) ?? {});
1191
+ pushSnapshot();
1192
+ return trace;
1193
+ },
1194
+ flowReplay: async (params) => {
1195
+ const f = requireFlow();
1196
+ const { event, untilEntry } = params;
1197
+ const trace = await f.runner.replay(event, untilEntry);
1198
+ pushSnapshot();
1199
+ return trace;
1200
+ },
1201
+ flowTurbo: (params) => {
1202
+ requireFlow().runner.setTurbo(params.factor);
1203
+ return { ok: true };
1204
+ },
1205
+ flowSkip: () => {
1206
+ requireFlow().runner.skip();
1207
+ return { ok: true };
1208
+ },
1209
+ };
1210
+ const requireFlow = () => {
1211
+ if (!opts.flow)
1212
+ throw new Error('this game exposed no flow surface');
1213
+ return opts.flow;
1214
+ };
1215
+ /** Topmost sprite-like node (props.src) whose laid-out bounds contain the point. */
1216
+ const topSpriteAt = (x, y) => {
1217
+ let best = null;
1218
+ const walk = (node) => {
1219
+ if ((node.type === 'sprite' || node.type === 'reelFrame') && node.props?.src !== undefined) {
1220
+ const view = handle.node(node.id);
1221
+ if (view?.visible) {
1222
+ const b = view.getBounds();
1223
+ if (x >= b.x && x <= b.x + b.width && y >= b.y && y <= b.y + b.height) {
1224
+ const area = b.width * b.height;
1225
+ if (!best || area < best.area)
1226
+ best = { id: node.id, area }; // smallest = most specific
1227
+ }
1228
+ }
1229
+ }
1230
+ node.children?.forEach(walk);
1231
+ };
1232
+ walk(handle.doc().root);
1233
+ return best ? best.id : null;
1234
+ };
1235
+ const uniqueId = (base) => {
1236
+ const ids = new Set();
1237
+ const walk = (n) => { ids.add(n.id); n.children?.forEach(walk); };
1238
+ walk(handle.doc().root);
1239
+ if (!ids.has(base))
1240
+ return base;
1241
+ let i = 2;
1242
+ while (ids.has(`${base}_${i}`))
1243
+ i++;
1244
+ return `${base}_${i}`;
1102
1245
  };
1103
1246
  const onMessage = async (e) => {
1104
1247
  const data = e.data;
@@ -1117,7 +1260,7 @@ function mountIdeBridge(opts) {
1117
1260
  };
1118
1261
  window.addEventListener('message', onMessage);
1119
1262
  // Announce readiness (the IDE may mount before or after the game boots).
1120
- emit('ready', { docId: handle.doc().id });
1263
+ emit('ready', { docId: handle.doc().id, hasFlow: !!opts.flow });
1121
1264
  return {
1122
1265
  refresh: pushSnapshot,
1123
1266
  select,
@@ -1 +1 @@
1
- {"version":3,"file":"scene-devtools.esm.js","sources":["../src/scene/devtools/helpers.ts","../src/scene/devtools/inspector.ts","../src/scene/devtools/timeline.ts","../src/scene/devtools/flowEditor.ts","../src/scene/transform.ts","../src/scene/transformGizmo.ts","../src/scene/devtools/ideBridge.ts"],"sourcesContent":[null,null,null,null,null,null,null],"names":["STYLE"],"mappings":"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"}
1
+ {"version":3,"file":"scene-devtools.esm.js","sources":["../src/scene/devtools/helpers.ts","../src/scene/devtools/inspector.ts","../src/scene/devtools/timeline.ts","../src/scene/devtools/flowEditor.ts","../src/scene/transform.ts","../src/scene/transformGizmo.ts","../src/scene/devtools/ideBridge.ts"],"sourcesContent":[null,null,null,null,null,null,null],"names":["STYLE"],"mappings":"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"}
package/dist/scene.cjs.js CHANGED
@@ -12,9 +12,11 @@ function orientationOf(width, height, portraitFactor = 1) {
12
12
  return width < height * portraitFactor ? 'portrait' : 'landscape';
13
13
  }
14
14
  /** Base node + orientation override + active state override (state wins), for one frame. */
15
- function effectiveNode(node, orientation, state) {
15
+ function effectiveNode(node, orientation, state, mode) {
16
+ // Layer order: base → orientation → mode → active state (later wins).
16
17
  const layers = [
17
18
  node.responsive?.[orientation],
19
+ mode ? node.modes?.[mode] : undefined,
18
20
  state ? node.states?.[state] : undefined,
19
21
  ];
20
22
  let layout = node.layout;
@@ -2882,6 +2884,7 @@ function createReelSystem(opts) {
2882
2884
  for (let i = 0; i < steps.length; i++) {
2883
2885
  await tumble.step(steps[i], i, cOpts);
2884
2886
  board = steps[i].settledGrid;
2887
+ await cOpts?.onStep?.(i, steps[i], tumble.multiplier);
2885
2888
  }
2886
2889
  if (config.cascade.multiplier.enabled)
2887
2890
  log?.(`Cascade multiplier ×${tumble.multiplier}`);
@@ -2893,6 +2896,7 @@ function createReelSystem(opts) {
2893
2896
  for (let i = 0; i < steps.length; i++) {
2894
2897
  await reelStepCtl.step(steps[i], i, rOpts);
2895
2898
  board = steps[i].settledGrid;
2899
+ await rOpts?.onStep?.(i, steps[i], reelStepCtl.multiplier);
2896
2900
  }
2897
2901
  if (config.cascade.multiplier.enabled)
2898
2902
  log?.(`ReelStep multiplier ×${reelStepCtl.multiplier}`);
@@ -3436,9 +3440,10 @@ function createSceneFromDoc(doc, opts = {}) {
3436
3440
  lastWidth = width;
3437
3441
  lastHeight = height;
3438
3442
  const orientation = orientationOf(width, height, opts.portraitFactor ?? 1);
3439
- // Phase 1 effective props (base + orientation + state), applied before measuring.
3443
+ const mode = typeof vars.mode === 'string' ? vars.mode : null;
3444
+ // Phase 1 — effective props (base + orientation + mode + state), applied before measuring.
3440
3445
  for (const runtime of [...runtimes.values()]) {
3441
- const eff = effectiveNode(runtime.node, orientation, runtime.state);
3446
+ const eff = effectiveNode(runtime.node, orientation, runtime.state, mode);
3442
3447
  runtime.visibleBase = eff.visible;
3443
3448
  const space = eff.props.space;
3444
3449
  runtime.spaceSize =
@@ -3542,7 +3547,7 @@ function createSceneFromDoc(doc, opts = {}) {
3542
3547
  const parentOriginY = parentIsFrame ? 0 : (runtime.parent?.bounds?.y ?? 0);
3543
3548
  const parentScaleX = parentIsFrame ? 1 : (runtime.parent?.worldScaleX ?? 1);
3544
3549
  const parentScaleY = parentIsFrame ? 1 : (runtime.parent?.worldScaleY ?? 1);
3545
- const eff = effectiveNode(runtime.node, orientation, runtime.state);
3550
+ const eff = effectiveNode(runtime.node, orientation, runtime.state, mode);
3546
3551
  const natural = runtime.instance.measure();
3547
3552
  const rule = eff.layout;
3548
3553
  // `space:'viewport'` resolves against the live viewport even inside a nested
@@ -3715,14 +3720,25 @@ function createSceneFromDoc(doc, opts = {}) {
3715
3720
  const node = findNode(doc.root, patch.id);
3716
3721
  if (!node)
3717
3722
  return warnOnce(`patch:${patch.id}`, `patch: unknown node "${patch.id}"`);
3718
- node.props = { ...(node.props ?? {}), ...patch.props };
3723
+ if (patch.mode) {
3724
+ node.modes = { ...(node.modes ?? {}) };
3725
+ const over = node.modes[patch.mode] ?? {};
3726
+ node.modes[patch.mode] = { ...over, props: { ...(over.props ?? {}), ...patch.props } };
3727
+ }
3728
+ else {
3729
+ node.props = { ...(node.props ?? {}), ...patch.props };
3730
+ }
3719
3731
  break;
3720
3732
  }
3721
3733
  case 'set-layout': {
3722
3734
  const node = findNode(doc.root, patch.id);
3723
3735
  if (!node)
3724
3736
  return warnOnce(`patch:${patch.id}`, `patch: unknown node "${patch.id}"`);
3725
- if (patch.orientation) {
3737
+ if (patch.mode) {
3738
+ node.modes = { ...(node.modes ?? {}) };
3739
+ node.modes[patch.mode] = { ...(node.modes[patch.mode] ?? {}), layout: patch.layout };
3740
+ }
3741
+ else if (patch.orientation) {
3726
3742
  node.responsive = { ...(node.responsive ?? {}) };
3727
3743
  node.responsive[patch.orientation] = {
3728
3744
  ...(node.responsive[patch.orientation] ?? {}),
@@ -4139,6 +4155,7 @@ function createTransformGizmo(opts) {
4139
4155
  layer.addChildAt(body, 1);
4140
4156
  let nodeId = null;
4141
4157
  let drag = null;
4158
+ const getMode = () => opts.getMode?.() ?? null;
4142
4159
  const findDocNode = (id, node = handle.doc().root) => {
4143
4160
  if (node.id === id)
4144
4161
  return node;
@@ -4149,14 +4166,22 @@ function createTransformGizmo(opts) {
4149
4166
  }
4150
4167
  return undefined;
4151
4168
  };
4152
- /** Effective layout rule for the current orientation (base or portrait/landscape override). */
4169
+ /**
4170
+ * Effective layout rule + which override an edit should target. Editing in a non-base
4171
+ * mode targets that mode's override (so base and free_spins are edited independently);
4172
+ * otherwise the current orientation override, else base.
4173
+ */
4153
4174
  const effectiveRule = (id) => {
4154
4175
  const node = findDocNode(id);
4155
4176
  if (!node)
4156
- return {};
4177
+ return { target: {} };
4178
+ const mode = getMode();
4179
+ if (mode && mode !== 'base') {
4180
+ return { rule: node.modes?.[mode]?.layout ?? node.layout, target: { mode } };
4181
+ }
4157
4182
  const o = getOrientation();
4158
4183
  const override = node.responsive?.[o]?.layout;
4159
- return override ? { rule: override, orientation: o } : { rule: node.layout };
4184
+ return override ? { rule: override, target: { orientation: o } } : { rule: node.layout, target: {} };
4160
4185
  };
4161
4186
  const boxOf = (id) => {
4162
4187
  const view = handle.node(id);
@@ -4170,7 +4195,7 @@ function createTransformGizmo(opts) {
4170
4195
  if (!nodeId)
4171
4196
  return;
4172
4197
  const box = boxOf(nodeId);
4173
- const { rule, orientation } = effectiveRule(nodeId);
4198
+ const { rule, target } = effectiveRule(nodeId);
4174
4199
  if (!box || !rule)
4175
4200
  return;
4176
4201
  const center = { x: box.x + box.width / 2, y: box.y + box.height / 2 };
@@ -4178,7 +4203,7 @@ function createTransformGizmo(opts) {
4178
4203
  handle: h,
4179
4204
  startBox: box,
4180
4205
  baseRule: JSON.parse(JSON.stringify(rule)),
4181
- orientation,
4206
+ target,
4182
4207
  start: { x: e.global.x, y: e.global.y },
4183
4208
  center,
4184
4209
  startAngle: Math.atan2(e.global.y - center.y, e.global.x - center.x),
@@ -4202,7 +4227,7 @@ function createTransformGizmo(opts) {
4202
4227
  const { factorX, factorY } = resizeFactors(drag.startBox, drag.handle, { x: e.global.x, y: e.global.y });
4203
4228
  rule = resizeRule(drag.baseRule, factorX, factorY);
4204
4229
  }
4205
- applyPatch({ op: 'set-layout', id: nodeId, layout: rule, orientation: drag.orientation });
4230
+ applyPatch({ op: 'set-layout', id: nodeId, layout: rule, orientation: drag.target.orientation, mode: drag.target.mode });
4206
4231
  };
4207
4232
  const onUp = () => {
4208
4233
  drag = null;