@rpgjs/client 5.0.0-alpha.23 → 5.0.0-alpha.24
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/RpgClientEngine.d.ts +35 -115
- package/dist/components/gui/mobile/index.d.ts +1 -1
- package/dist/index10.js +1 -1
- package/dist/index11.js +2 -2
- package/dist/index12.js +2 -2
- package/dist/index14.js +1 -2
- package/dist/index14.js.map +1 -1
- package/dist/index15.js +4 -4
- package/dist/index16.js.map +1 -1
- package/dist/index17.js.map +1 -1
- package/dist/index2.js +85 -159
- package/dist/index2.js.map +1 -1
- package/dist/index20.js.map +1 -1
- package/dist/index22.js +1 -1
- package/dist/index25.js +2 -2
- package/dist/index25.js.map +1 -1
- package/dist/index26.js +2 -3
- package/dist/index26.js.map +1 -1
- package/dist/index28.js +2 -2
- package/dist/index28.js.map +1 -1
- package/dist/index3.js +1 -1
- package/dist/index31.js +2622 -42
- package/dist/index31.js.map +1 -1
- package/dist/index32.js +88 -2607
- package/dist/index32.js.map +1 -1
- package/dist/index33.js +64 -107
- package/dist/index33.js.map +1 -1
- package/dist/index34.js +12 -62
- package/dist/index34.js.map +1 -1
- package/dist/index35.js +24 -18
- package/dist/index35.js.map +1 -1
- package/dist/index36.js +87 -19
- package/dist/index36.js.map +1 -1
- package/dist/index37.js +20 -74
- package/dist/index37.js.map +1 -1
- package/dist/index38.js +18 -35
- package/dist/index38.js.map +1 -1
- package/dist/index39.js +137 -20
- package/dist/index39.js.map +1 -1
- package/dist/index4.js +1 -1
- package/dist/index40.js +9 -133
- package/dist/index40.js.map +1 -1
- package/dist/index41.js +3 -41
- package/dist/index41.js.map +1 -1
- package/dist/index42.js +536 -1
- package/dist/index42.js.map +1 -1
- package/dist/index43.js +30 -183
- package/dist/index43.js.map +1 -1
- package/dist/index44.js +9 -501
- package/dist/index44.js.map +1 -1
- package/dist/index45.js +6 -334
- package/dist/index45.js.map +1 -1
- package/dist/index46.js +325 -30
- package/dist/index46.js.map +1 -1
- package/dist/index47.js +3680 -67
- package/dist/index47.js.map +1 -1
- package/dist/index48.js +75 -10
- package/dist/index48.js.map +1 -1
- package/dist/index49.js +186 -6
- package/dist/index49.js.map +1 -1
- package/dist/index50.js +499 -3685
- package/dist/index50.js.map +1 -1
- package/dist/index53.js +1 -1
- package/dist/index8.js +6 -1
- package/dist/index8.js.map +1 -1
- package/dist/index9.js +1 -2
- package/dist/index9.js.map +1 -1
- package/package.json +9 -9
- package/src/Gui/Gui.ts +0 -1
- package/src/RpgClientEngine.ts +106 -176
- package/src/components/character.ce +2 -3
- package/src/components/gui/mobile/index.ts +1 -1
- package/src/components/gui/mobile/mobile.ce +73 -88
- package/src/components/prebuilt/light-halo.ce +2 -71
- package/src/components/scenes/canvas.ce +0 -10
- package/src/components/scenes/event-layer.ce +1 -0
- package/src/module.ts +6 -1
- package/dist/Game/TransitionManager.d.ts +0 -56
- package/src/Game/TransitionManager.ts +0 -75
package/dist/index33.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index33.js","sources":["
|
|
1
|
+
{"version":3,"file":"index33.js","sources":["../src/components/animations/hit.ce"],"sourcesContent":["<Text x y zIndex={10000} color scale size={30} text />\n\n<script>\n import { animatedSignal, mount, signal, tick } from \"canvasengine\";\n import { Direction } from \"@rpgjs/common\";\n const {\n text,\n direction,\n onFinish,\n duration,\n color,\n x: positionX,\n y: positionY\n } = defineProps({\n duration: {\n default: 1000\n },\n color: {\n default: 'black'\n }\n });\n\n const scale = animatedSignal(1, {\n duration: duration(),\n });\n\n // Generate random initial position\n const randomPosition = () => Math.floor(Math.random() * 60);\n const initialY = randomPosition();\n const x = signal(positionX());\n const y = signal(positionY() - initialY);\n\n // Initial velocity\n let velocityX = 0;\n let velocityY = 0;\n\n // Set initial velocity based on direction\n const speed = 200;\n switch (direction()) {\n case Direction.Left:\n velocityX = speed;\n break;\n case Direction.Right:\n velocityX = -speed;\n break;\n case Direction.Up:\n velocityY = speed;\n break;\n case Direction.Down:\n velocityY = -speed;\n break;\n }\n\n // Add some randomness to the velocity\n velocityX += (Math.random() - 0.5) * 100;\n velocityY += (Math.random() - 0.5) * 100;\n\n const gravity = 500; // Gravity effect\n const deceleration = 0.98; // Deceleration factor\n\n mount(() => {\n scale.set(0.1);\n });\n\n let elapsedTime = 0;\n\n tick(({ deltaTime }) => {\n elapsedTime += deltaTime;\n \n if (elapsedTime < duration()) {\n // Update position\n x.update((x) => x + (velocityX * deltaTime) / 1000);\n y.update((y) => y + (velocityY * deltaTime) / 1000);\n\n // Apply gravity\n velocityY += (gravity * deltaTime) / 1000;\n\n // Apply deceleration\n velocityX *= deceleration;\n velocityY *= deceleration;\n } else {\n if (onFinish) {\n onFinish();\n }\n }\n });\n</script>\n"],"names":[],"mappings":"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"}
|
package/dist/index34.js
CHANGED
|
@@ -1,69 +1,19 @@
|
|
|
1
|
-
import { useProps, useDefineProps,
|
|
2
|
-
import {
|
|
1
|
+
import { useProps, useDefineProps, h, Sprite } from 'canvasengine';
|
|
2
|
+
import { RpgClientEngine } from './index2.js';
|
|
3
|
+
import { inject } from './index6.js';
|
|
3
4
|
|
|
4
5
|
function component($$props) {
|
|
5
6
|
useProps($$props);
|
|
6
7
|
const defineProps = useDefineProps($$props);
|
|
7
|
-
var _a
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
duration: duration(),
|
|
17
|
-
});
|
|
18
|
-
var randomPosition = function () { return Math.floor(Math.random() * 60); };
|
|
19
|
-
var initialY = randomPosition();
|
|
20
|
-
var x = signal(positionX());
|
|
21
|
-
var y = signal(positionY() - initialY);
|
|
22
|
-
var velocityX = 0;
|
|
23
|
-
var velocityY = 0;
|
|
24
|
-
var speed = 200;
|
|
25
|
-
switch (direction()) {
|
|
26
|
-
case Direction.Left:
|
|
27
|
-
velocityX = speed;
|
|
28
|
-
break;
|
|
29
|
-
case Direction.Right:
|
|
30
|
-
velocityX = -speed;
|
|
31
|
-
break;
|
|
32
|
-
case Direction.Up:
|
|
33
|
-
velocityY = speed;
|
|
34
|
-
break;
|
|
35
|
-
case Direction.Down:
|
|
36
|
-
velocityY = -speed;
|
|
37
|
-
break;
|
|
38
|
-
}
|
|
39
|
-
velocityX += (Math.random() - 0.5) * 100;
|
|
40
|
-
velocityY += (Math.random() - 0.5) * 100;
|
|
41
|
-
var gravity = 500;
|
|
42
|
-
var deceleration = 0.98;
|
|
43
|
-
mount(function () {
|
|
44
|
-
scale.set(0.1);
|
|
45
|
-
});
|
|
46
|
-
var elapsedTime = 0;
|
|
47
|
-
tick(function (_a) {
|
|
48
|
-
var deltaTime = _a.deltaTime;
|
|
49
|
-
elapsedTime += deltaTime;
|
|
50
|
-
if (elapsedTime < duration()) {
|
|
51
|
-
// Update position
|
|
52
|
-
x.update(function (x) { return x + (velocityX * deltaTime) / 1000; });
|
|
53
|
-
y.update(function (y) { return y + (velocityY * deltaTime) / 1000; });
|
|
54
|
-
// Apply gravity
|
|
55
|
-
velocityY += (gravity * deltaTime) / 1000;
|
|
56
|
-
// Apply deceleration
|
|
57
|
-
velocityX *= deceleration;
|
|
58
|
-
velocityY *= deceleration;
|
|
59
|
-
}
|
|
60
|
-
else {
|
|
61
|
-
if (onFinish) {
|
|
62
|
-
onFinish();
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
});
|
|
66
|
-
let $this = h(Text, { x, y, zIndex: 10000, color, scale, size: 30, text });
|
|
8
|
+
var _a;
|
|
9
|
+
var _b = defineProps(), x = _b.x, y = _b.y, animationName = _b.animationName, graphic = _b.graphic, onFinish = _b.onFinish;
|
|
10
|
+
var client = inject(RpgClientEngine);
|
|
11
|
+
var sheet = {
|
|
12
|
+
definition: client.getSpriteSheet(graphic()),
|
|
13
|
+
playing: (_a = animationName()) !== null && _a !== void 0 ? _a : 'default',
|
|
14
|
+
onFinish: onFinish
|
|
15
|
+
};
|
|
16
|
+
let $this = h(Sprite, { sheet, x, y, anchor: 0.5 });
|
|
67
17
|
return $this
|
|
68
18
|
}
|
|
69
19
|
|
package/dist/index34.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index34.js","sources":["../src/components/animations/
|
|
1
|
+
{"version":3,"file":"index34.js","sources":["../src/components/animations/animation.ce"],"sourcesContent":["<Sprite sheet x y anchor={0.5} />\n\n<script>\n import { RpgClientEngine } from \"../../RpgClientEngine\";\n import { inject } from \"../../core/inject\";\n\n const { x, y, animationName, graphic, onFinish } = defineProps();\n\n const client = inject(RpgClientEngine);\n\n const sheet = {\n definition: client.getSpriteSheet(graphic()),\n playing: animationName() ?? 'default',\n onFinish\n };\n</script>\n"],"names":[],"mappings":";;;;AAOqB,SAAS,SAAS,CAAC,OAAO,EAAE;AACjD,QAAuB,QAAQ,CAAC,OAAO;AACvC,QAAQ,MAAM,WAAW,GAAG,cAAc,CAAC,OAAO;AAClD,QAAQ,IAAI,EAAE;AACd,IAAI,EAAE,GAAG,WAAW,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,aAAa,GAAG,EAAE,CAAC,aAAa,EAAE,OAAO,GAAG,EAAE,CAAC,OAAO,EAAE,QAAQ,GAAG,EAAE,CAAC,QAAQ;AAC1H,IAAI,MAAM,GAAG,MAAM,CAAC,eAAe,CAAC;AACpC,IAAI,KAAK,GAAG;AACZ,IAAI,UAAU,EAAE,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;AAChD,IAAI,OAAO,EAAE,CAAC,EAAE,GAAG,aAAa,EAAE,MAAM,IAAI,IAAI,EAAE,KAAK,MAAM,GAAG,EAAE,GAAG,SAAS;AAC9E,IAAI,QAAQ,EAAE;AACd,CAAC;AACD,QAAQ,IAAI,KAAK,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE;AAC1D,QAAQ,OAAO;AACf,MAAM;;;;"}
|
package/dist/index35.js
CHANGED
|
@@ -1,21 +1,27 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
1
|
+
const AnimationSpritesheetPreset = (framesWidth, framesHeight) => {
|
|
2
|
+
const animations = [];
|
|
3
|
+
for (let y = 0; y < framesHeight; y++) {
|
|
4
|
+
for (let x = 0; x < framesWidth; x++) {
|
|
5
|
+
const frameIndex = y * framesWidth + x;
|
|
6
|
+
animations.push({
|
|
7
|
+
time: frameIndex * 10,
|
|
8
|
+
frameX: x,
|
|
9
|
+
frameY: y
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
return {
|
|
14
|
+
framesWidth,
|
|
15
|
+
framesHeight,
|
|
16
|
+
textures: {
|
|
17
|
+
default: {
|
|
18
|
+
animations: () => [
|
|
19
|
+
animations
|
|
20
|
+
]
|
|
18
21
|
}
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
};
|
|
19
25
|
|
|
20
|
-
export {
|
|
26
|
+
export { AnimationSpritesheetPreset };
|
|
21
27
|
//# sourceMappingURL=index35.js.map
|
package/dist/index35.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index35.js","sources":["../src/
|
|
1
|
+
{"version":3,"file":"index35.js","sources":["../src/presets/animation.ts"],"sourcesContent":["/**\n * Creates an animation spritesheet preset with automatic frame generation\n * \n * This function generates animation frames based on the provided width and height dimensions.\n * It creates a sequence of frames that progresses through the spritesheet from left to right,\n * top to bottom, with each frame having a 10ms time increment.\n * \n * @param {number} framesWidth - The number of frames horizontally in the spritesheet\n * @param {number} framesHeight - The number of frames vertically in the spritesheet\n * @returns {Object} Animation preset configuration object\n * \n * @example\n * ```javascript\n * // For a 4x4 spritesheet\n * const preset = AnimationSpritesheetPreset(4, 4);\n * // This will generate 16 frames with coordinates from (0,0) to (3,3)\n * ```\n */\nexport const AnimationSpritesheetPreset = (framesWidth: number, framesHeight: number) => {\n \n const animations: Array<{ time: number; frameX: number; frameY: number }> = [];\n\n for (let y = 0; y < framesHeight; y++) {\n for (let x = 0; x < framesWidth; x++) {\n const frameIndex = y * framesWidth + x;\n animations.push({ \n time: frameIndex * 10, \n frameX: x, \n frameY: y \n });\n }\n }\n \n return {\n framesWidth,\n framesHeight,\n textures: {\n default: {\n animations: () => [\n animations\n ],\n }\n }\n };\n};\n "],"names":[],"mappings":"AAkBO,MAAM,0BAAA,GAA6B,CAAC,WAAA,EAAqB,YAAA,KAAyB;AAErF,EAAA,MAAM,aAAsE,EAAC;AAE7E,EAAA,KAAA,IAAS,CAAA,GAAI,CAAA,EAAG,CAAA,GAAI,YAAA,EAAc,CAAA,EAAA,EAAK;AACnC,IAAA,KAAA,IAAS,CAAA,GAAI,CAAA,EAAG,CAAA,GAAI,WAAA,EAAa,CAAA,EAAA,EAAK;AAClC,MAAA,MAAM,UAAA,GAAa,IAAI,WAAA,GAAc,CAAA;AACrC,MAAA,UAAA,CAAW,IAAA,CAAK;AAAA,QACZ,MAAM,UAAA,GAAa,EAAA;AAAA,QACnB,MAAA,EAAQ,CAAA;AAAA,QACR,MAAA,EAAQ;AAAA,OACX,CAAA;AAAA,IACL;AAAA,EACJ;AAEA,EAAA,OAAO;AAAA,IACH,WAAA;AAAA,IACA,YAAA;AAAA,IACA,QAAA,EAAU;AAAA,MACN,OAAA,EAAS;AAAA,QACL,YAAY,MAAM;AAAA,UACd;AAAA;AACJ;AACJ;AACJ,GACJ;AACJ;;;;"}
|
package/dist/index36.js
CHANGED
|
@@ -1,27 +1,95 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
1
|
+
import { Animation, Direction } from '@rpgjs/common';
|
|
2
|
+
|
|
3
|
+
const LPCSpritesheetPreset = (options) => {
|
|
4
|
+
const ratio = options.ratio ?? 1;
|
|
5
|
+
const frameY = (direction) => {
|
|
6
|
+
return {
|
|
7
|
+
[Direction.Down]: 2,
|
|
8
|
+
[Direction.Left]: 1,
|
|
9
|
+
[Direction.Right]: 3,
|
|
10
|
+
[Direction.Up]: 0
|
|
11
|
+
}[direction];
|
|
12
|
+
};
|
|
13
|
+
const stand = (direction) => [
|
|
14
|
+
{ time: 0, frameX: 0, frameY: frameY(direction) }
|
|
15
|
+
];
|
|
16
|
+
const anim = (direction, framesWidth, speed = 5) => {
|
|
17
|
+
const array = [];
|
|
18
|
+
for (let i = 0; i < framesWidth; i++) {
|
|
19
|
+
array.push({ time: i * speed, frameX: i, frameY: frameY(direction) });
|
|
11
20
|
}
|
|
12
|
-
|
|
21
|
+
return array;
|
|
22
|
+
};
|
|
13
23
|
return {
|
|
14
|
-
|
|
15
|
-
|
|
24
|
+
id: options.id,
|
|
25
|
+
image: options.imageSource,
|
|
26
|
+
width: options.width,
|
|
27
|
+
height: options.height,
|
|
28
|
+
opacity: 1,
|
|
29
|
+
rectWidth: 64 * ratio,
|
|
30
|
+
rectHeight: 64 * ratio,
|
|
31
|
+
framesWidth: 6,
|
|
32
|
+
framesHeight: 4,
|
|
33
|
+
spriteRealSize: {
|
|
34
|
+
width: 48 * ratio,
|
|
35
|
+
height: 52 * ratio
|
|
36
|
+
},
|
|
16
37
|
textures: {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
38
|
+
[Animation.Stand]: {
|
|
39
|
+
offset: {
|
|
40
|
+
x: 0,
|
|
41
|
+
y: 512 * ratio
|
|
42
|
+
},
|
|
43
|
+
animations: ({ direction }) => [stand(direction)]
|
|
44
|
+
},
|
|
45
|
+
[Animation.Walk]: {
|
|
46
|
+
offset: {
|
|
47
|
+
x: 0,
|
|
48
|
+
y: 512 * ratio
|
|
49
|
+
},
|
|
50
|
+
framesWidth: 9,
|
|
51
|
+
framesHeight: 4,
|
|
52
|
+
animations: ({ direction }) => [anim(direction, 9)]
|
|
53
|
+
},
|
|
54
|
+
[Animation.Attack]: {
|
|
55
|
+
offset: {
|
|
56
|
+
x: 0,
|
|
57
|
+
y: 768 * ratio
|
|
58
|
+
},
|
|
59
|
+
framesWidth: 6,
|
|
60
|
+
framesHeight: 4,
|
|
61
|
+
animations: ({ direction }) => [anim(direction, 6, 3)]
|
|
62
|
+
},
|
|
63
|
+
[Animation.Skill]: {
|
|
64
|
+
framesWidth: 7,
|
|
65
|
+
framesHeight: 4,
|
|
66
|
+
animations: ({ direction }) => [anim(direction, 7, 3)]
|
|
67
|
+
},
|
|
68
|
+
attack2: {
|
|
69
|
+
offset: {
|
|
70
|
+
x: 0,
|
|
71
|
+
y: 256 * ratio
|
|
72
|
+
},
|
|
73
|
+
framesWidth: 7,
|
|
74
|
+
framesHeight: 8,
|
|
75
|
+
animations: ({ direction }) => [anim(direction, 7, 3)]
|
|
76
|
+
},
|
|
77
|
+
...options.height > 3e3 ? {
|
|
78
|
+
attack3: {
|
|
79
|
+
offset: {
|
|
80
|
+
x: 0,
|
|
81
|
+
y: 5568 - 288 * 4
|
|
82
|
+
},
|
|
83
|
+
rectWidth: 288,
|
|
84
|
+
rectHeight: 288,
|
|
85
|
+
framesWidth: 6,
|
|
86
|
+
framesHeight: 4,
|
|
87
|
+
animations: ({ direction }) => [anim(direction, 6, 3)]
|
|
88
|
+
}
|
|
89
|
+
} : {}
|
|
22
90
|
}
|
|
23
91
|
};
|
|
24
92
|
};
|
|
25
93
|
|
|
26
|
-
export {
|
|
94
|
+
export { LPCSpritesheetPreset };
|
|
27
95
|
//# sourceMappingURL=index36.js.map
|
package/dist/index36.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index36.js","sources":["../src/presets/
|
|
1
|
+
{"version":3,"file":"index36.js","sources":["../src/presets/lpc.ts"],"sourcesContent":["import { Animation, Direction } from \"@rpgjs/common\";\n\nexport const LPCSpritesheetPreset = (options: {\n id: string;\n imageSource: string;\n width: number;\n height: number;\n ratio?: number;\n }) => {\n const ratio = options.ratio ?? 1;\n\n const frameY = (direction: Direction) => {\n return {\n [Direction.Down]: 2,\n [Direction.Left]: 1,\n [Direction.Right]: 3,\n [Direction.Up]: 0,\n }[direction];\n };\n \n const stand = (direction: Direction) => [\n { time: 0, frameX: 0, frameY: frameY(direction) },\n ];\n const anim = (\n direction: Direction,\n framesWidth: number,\n speed: number = 5\n ) => {\n const array: any = [];\n for (let i = 0; i < framesWidth; i++) {\n array.push({ time: i * speed, frameX: i, frameY: frameY(direction) });\n }\n return array;\n };\n \n return {\n id: options.id,\n image: options.imageSource,\n width: options.width,\n height: options.height,\n opacity: 1,\n rectWidth: 64 * ratio,\n rectHeight: 64 * ratio,\n framesWidth: 6,\n framesHeight: 4,\n spriteRealSize: {\n width: 48 * ratio,\n height: 52 * ratio,\n },\n textures: {\n [Animation.Stand]: {\n offset: {\n x: 0,\n y: 512 * ratio,\n },\n animations: ({ direction }) => [stand(direction)],\n },\n [Animation.Walk]: {\n offset: {\n x: 0,\n y: 512 * ratio,\n },\n framesWidth: 9,\n framesHeight: 4,\n animations: ({ direction }) => [anim(direction, 9)],\n },\n [Animation.Attack]: {\n offset: {\n x: 0,\n y: 768 * ratio,\n },\n framesWidth: 6,\n framesHeight: 4,\n animations: ({ direction }) => [anim(direction, 6, 3)],\n },\n [Animation.Skill]: {\n framesWidth: 7,\n framesHeight: 4,\n animations: ({ direction }) => [anim(direction, 7, 3)],\n },\n attack2: {\n offset: {\n x: 0,\n y: 256 * ratio,\n },\n framesWidth: 7,\n framesHeight: 8,\n animations: ({ direction }) => [anim(direction, 7, 3)],\n },\n ...(options.height > 3000\n ? {\n attack3: {\n offset: {\n x: 0,\n y: 5568 - 288 * 4,\n },\n rectWidth: 288,\n rectHeight: 288,\n framesWidth: 6,\n framesHeight: 4,\n animations: ({ direction }) => [anim(direction, 6, 3)],\n },\n }\n : {}),\n },\n };\n };\n "],"names":[],"mappings":"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"}
|
package/dist/index37.js
CHANGED
|
@@ -1,95 +1,41 @@
|
|
|
1
1
|
import { Animation, Direction } from '@rpgjs/common';
|
|
2
2
|
|
|
3
|
-
const
|
|
4
|
-
|
|
3
|
+
const RMSpritesheet = (framesWidth, framesHeight, frameStand = 1) => {
|
|
4
|
+
if (framesWidth <= frameStand) {
|
|
5
|
+
frameStand = framesWidth - 1;
|
|
6
|
+
}
|
|
5
7
|
const frameY = (direction) => {
|
|
8
|
+
const gap = Math.max(4 - framesHeight, 0);
|
|
6
9
|
return {
|
|
7
|
-
[Direction.Down]:
|
|
8
|
-
[Direction.Left]: 1,
|
|
9
|
-
[Direction.Right]:
|
|
10
|
-
[Direction.Up]: 0
|
|
10
|
+
[Direction.Down]: 0,
|
|
11
|
+
[Direction.Left]: Math.max(0, 1 - gap),
|
|
12
|
+
[Direction.Right]: Math.max(0, 2 - gap),
|
|
13
|
+
[Direction.Up]: Math.max(0, 3 - gap)
|
|
11
14
|
}[direction];
|
|
12
15
|
};
|
|
13
|
-
const stand = (direction) => [
|
|
14
|
-
|
|
15
|
-
];
|
|
16
|
-
const anim = (direction, framesWidth, speed = 5) => {
|
|
16
|
+
const stand = (direction) => [{ time: 0, frameX: frameStand, frameY: frameY(direction) }];
|
|
17
|
+
const walk = (direction) => {
|
|
17
18
|
const array = [];
|
|
19
|
+
const durationFrame = 10;
|
|
18
20
|
for (let i = 0; i < framesWidth; i++) {
|
|
19
|
-
array.push({ time: i *
|
|
21
|
+
array.push({ time: i * durationFrame, frameX: i, frameY: frameY(direction) });
|
|
20
22
|
}
|
|
23
|
+
array.push({ time: array[array.length - 1].time + durationFrame });
|
|
21
24
|
return array;
|
|
22
25
|
};
|
|
23
26
|
return {
|
|
24
|
-
id: options.id,
|
|
25
|
-
image: options.imageSource,
|
|
26
|
-
width: options.width,
|
|
27
|
-
height: options.height,
|
|
28
|
-
opacity: 1,
|
|
29
|
-
rectWidth: 64 * ratio,
|
|
30
|
-
rectHeight: 64 * ratio,
|
|
31
|
-
framesWidth: 6,
|
|
32
|
-
framesHeight: 4,
|
|
33
|
-
spriteRealSize: {
|
|
34
|
-
width: 48 * ratio,
|
|
35
|
-
height: 52 * ratio
|
|
36
|
-
},
|
|
37
27
|
textures: {
|
|
38
28
|
[Animation.Stand]: {
|
|
39
|
-
offset: {
|
|
40
|
-
x: 0,
|
|
41
|
-
y: 512 * ratio
|
|
42
|
-
},
|
|
43
29
|
animations: ({ direction }) => [stand(direction)]
|
|
44
30
|
},
|
|
45
31
|
[Animation.Walk]: {
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
framesHeight: 4,
|
|
52
|
-
animations: ({ direction }) => [anim(direction, 9)]
|
|
53
|
-
},
|
|
54
|
-
[Animation.Attack]: {
|
|
55
|
-
offset: {
|
|
56
|
-
x: 0,
|
|
57
|
-
y: 768 * ratio
|
|
58
|
-
},
|
|
59
|
-
framesWidth: 6,
|
|
60
|
-
framesHeight: 4,
|
|
61
|
-
animations: ({ direction }) => [anim(direction, 6, 3)]
|
|
62
|
-
},
|
|
63
|
-
[Animation.Skill]: {
|
|
64
|
-
framesWidth: 7,
|
|
65
|
-
framesHeight: 4,
|
|
66
|
-
animations: ({ direction }) => [anim(direction, 7, 3)]
|
|
67
|
-
},
|
|
68
|
-
attack2: {
|
|
69
|
-
offset: {
|
|
70
|
-
x: 0,
|
|
71
|
-
y: 256 * ratio
|
|
72
|
-
},
|
|
73
|
-
framesWidth: 7,
|
|
74
|
-
framesHeight: 8,
|
|
75
|
-
animations: ({ direction }) => [anim(direction, 7, 3)]
|
|
76
|
-
},
|
|
77
|
-
...options.height > 3e3 ? {
|
|
78
|
-
attack3: {
|
|
79
|
-
offset: {
|
|
80
|
-
x: 0,
|
|
81
|
-
y: 5568 - 288 * 4
|
|
82
|
-
},
|
|
83
|
-
rectWidth: 288,
|
|
84
|
-
rectHeight: 288,
|
|
85
|
-
framesWidth: 6,
|
|
86
|
-
framesHeight: 4,
|
|
87
|
-
animations: ({ direction }) => [anim(direction, 6, 3)]
|
|
88
|
-
}
|
|
89
|
-
} : {}
|
|
90
|
-
}
|
|
32
|
+
animations: ({ direction }) => [walk(direction)]
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
framesHeight,
|
|
36
|
+
framesWidth
|
|
91
37
|
};
|
|
92
38
|
};
|
|
93
39
|
|
|
94
|
-
export {
|
|
40
|
+
export { RMSpritesheet };
|
|
95
41
|
//# sourceMappingURL=index37.js.map
|
package/dist/index37.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index37.js","sources":["../src/presets/
|
|
1
|
+
{"version":3,"file":"index37.js","sources":["../src/presets/rmspritesheet.ts"],"sourcesContent":["import { Direction, Animation } from '@rpgjs/common'\n\nexport const RMSpritesheet = (framesWidth: number, framesHeight: number, frameStand: number = 1) => {\n\n if (framesWidth <= frameStand) {\n frameStand = framesWidth - 1\n }\n\n const frameY = direction => {\n const gap = Math.max(4 - framesHeight, 0)\n return {\n [Direction.Down]: 0,\n [Direction.Left]: Math.max(0, 1 - gap),\n [Direction.Right]: Math.max(0, 2 - gap),\n [Direction.Up]: Math.max(0, 3 - gap)\n }[direction]\n }\n\n const stand = (direction: number) => [{ time: 0, frameX: frameStand, frameY: frameY(direction) }]\n const walk = direction => {\n const array: any = []\n const durationFrame = 10\n for (let i = 0; i < framesWidth; i++) {\n array.push({ time: i * durationFrame, frameX: i, frameY: frameY(direction) })\n }\n array.push({ time: array[array.length - 1].time + durationFrame })\n return array\n }\n\n return {\n textures: {\n [Animation.Stand]: {\n animations: ({direction}) => [stand(direction)]\n },\n [Animation.Walk]: {\n animations: ({direction}) => [walk(direction)]\n }\n },\n framesHeight,\n framesWidth\n }\n}"],"names":[],"mappings":";;AAEO,MAAM,aAAA,GAAgB,CAAC,WAAA,EAAqB,YAAA,EAAsB,aAAqB,CAAA,KAAM;AAEhG,EAAA,IAAI,eAAe,UAAA,EAAY;AAC3B,IAAA,UAAA,GAAa,WAAA,GAAc,CAAA;AAAA,EAC/B;AAEA,EAAA,MAAM,SAAS,CAAA,SAAA,KAAa;AACxB,IAAA,MAAM,GAAA,GAAM,IAAA,CAAK,GAAA,CAAI,CAAA,GAAI,cAAc,CAAC,CAAA;AACxC,IAAA,OAAO;AAAA,MACH,CAAC,SAAA,CAAU,IAAI,GAAG,CAAA;AAAA,MAClB,CAAC,UAAU,IAAI,GAAG,KAAK,GAAA,CAAI,CAAA,EAAG,IAAI,GAAG,CAAA;AAAA,MACrC,CAAC,UAAU,KAAK,GAAG,KAAK,GAAA,CAAI,CAAA,EAAG,IAAI,GAAG,CAAA;AAAA,MACtC,CAAC,UAAU,EAAE,GAAG,KAAK,GAAA,CAAI,CAAA,EAAG,IAAI,GAAG;AAAA,MACrC,SAAS,CAAA;AAAA,EACf,CAAA;AAEA,EAAA,MAAM,KAAA,GAAQ,CAAC,SAAA,KAAsB,CAAC,EAAE,IAAA,EAAM,CAAA,EAAG,MAAA,EAAQ,UAAA,EAAY,MAAA,EAAQ,MAAA,CAAO,SAAS,GAAG,CAAA;AAChG,EAAA,MAAM,OAAO,CAAA,SAAA,KAAa;AACtB,IAAA,MAAM,QAAa,EAAC;AACpB,IAAA,MAAM,aAAA,GAAgB,EAAA;AACtB,IAAA,KAAA,IAAS,CAAA,GAAI,CAAA,EAAG,CAAA,GAAI,WAAA,EAAa,CAAA,EAAA,EAAK;AAClC,MAAA,KAAA,CAAM,IAAA,CAAK,EAAE,IAAA,EAAM,CAAA,GAAI,aAAA,EAAe,MAAA,EAAQ,CAAA,EAAG,MAAA,EAAQ,MAAA,CAAO,SAAS,CAAA,EAAG,CAAA;AAAA,IAChF;AACA,IAAA,KAAA,CAAM,IAAA,CAAK,EAAE,IAAA,EAAM,KAAA,CAAM,KAAA,CAAM,SAAS,CAAC,CAAA,CAAE,IAAA,GAAO,aAAA,EAAe,CAAA;AACjE,IAAA,OAAO,KAAA;AAAA,EACX,CAAA;AAEA,EAAA,OAAO;AAAA,IACH,QAAA,EAAU;AAAA,MACN,CAAC,SAAA,CAAU,KAAK,GAAG;AAAA,QACf,UAAA,EAAY,CAAC,EAAC,SAAA,OAAe,CAAC,KAAA,CAAM,SAAS,CAAC;AAAA,OAClD;AAAA,MACA,CAAC,SAAA,CAAU,IAAI,GAAG;AAAA,QACd,UAAA,EAAY,CAAC,EAAC,SAAA,OAAe,CAAC,IAAA,CAAK,SAAS,CAAC;AAAA;AACjD,KACJ;AAAA,IACA,YAAA;AAAA,IACA;AAAA,GACJ;AACJ;;;;"}
|
package/dist/index38.js
CHANGED
|
@@ -1,41 +1,24 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
};
|
|
16
|
-
const stand = (direction) => [{ time: 0, frameX: frameStand, frameY: frameY(direction) }];
|
|
17
|
-
const walk = (direction) => {
|
|
18
|
-
const array = [];
|
|
19
|
-
const durationFrame = 10;
|
|
20
|
-
for (let i = 0; i < framesWidth; i++) {
|
|
21
|
-
array.push({ time: i * durationFrame, frameX: i, frameY: frameY(direction) });
|
|
22
|
-
}
|
|
23
|
-
array.push({ time: array[array.length - 1].time + durationFrame });
|
|
24
|
-
return array;
|
|
25
|
-
};
|
|
1
|
+
const FacesetPreset = (options, framesWidth, framesHeight, expressions) => {
|
|
2
|
+
const textures = {};
|
|
3
|
+
Object.keys(expressions).forEach((expressionName) => {
|
|
4
|
+
const [frameX, frameY] = expressions[expressionName];
|
|
5
|
+
textures[expressionName] = {
|
|
6
|
+
animations: () => [
|
|
7
|
+
[{
|
|
8
|
+
time: 0,
|
|
9
|
+
frameX,
|
|
10
|
+
frameY
|
|
11
|
+
}]
|
|
12
|
+
]
|
|
13
|
+
};
|
|
14
|
+
});
|
|
26
15
|
return {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
animations: ({ direction }) => [stand(direction)]
|
|
30
|
-
},
|
|
31
|
-
[Animation.Walk]: {
|
|
32
|
-
animations: ({ direction }) => [walk(direction)]
|
|
33
|
-
}
|
|
34
|
-
},
|
|
16
|
+
...options,
|
|
17
|
+
framesWidth,
|
|
35
18
|
framesHeight,
|
|
36
|
-
|
|
19
|
+
textures
|
|
37
20
|
};
|
|
38
21
|
};
|
|
39
22
|
|
|
40
|
-
export {
|
|
23
|
+
export { FacesetPreset };
|
|
41
24
|
//# sourceMappingURL=index38.js.map
|
package/dist/index38.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index38.js","sources":["../src/presets/
|
|
1
|
+
{"version":3,"file":"index38.js","sources":["../src/presets/faceset.ts"],"sourcesContent":["/**\n * Creates a faceset preset for character expressions\n * \n * This preset allows you to define multiple facial expressions for a character,\n * where each expression corresponds to a specific frame position (frameX, frameY)\n * within a single faceset texture. Each expression is defined by its position\n * in the faceset grid.\n * \n * @param options - Object containing the faceset configuration\n * @param framesWidth - Number of frames horizontally in the faceset texture\n * @param framesHeight - Number of frames vertically in the faceset texture\n * @param expressions - Object mapping expression names to their frame positions as tuples [frameX, frameY]\n * @returns Faceset configuration with animations for each expression\n * \n * @example\n * ```typescript\n * const faceset = FacesetPreset({\n * id: \"facesetId\",\n * image: \"faceset.png\",\n * width: 1024,\n * height: 1024,\n * }, 4, 2, {\n * happy: [0, 0],\n * sad: [1, 0],\n * angry: [2, 0],\n * surprised: [3, 0]\n * });\n * ```\n */\nexport const FacesetPreset = (\n options: any,\n framesWidth: number, \n framesHeight: number,\n expressions: Record<string, [number, number]>,\n) => {\n \n const textures: Record<string, any> = {};\n \n // Create texture configuration for each expression\n Object.keys(expressions).forEach((expressionName) => {\n const [frameX, frameY] = expressions[expressionName];\n textures[expressionName] = {\n animations: () => [\n [{ \n time: 0, \n frameX: frameX, \n frameY: frameY \n }]\n ],\n };\n });\n \n return {\n ...options,\n framesWidth,\n framesHeight,\n textures\n };\n};\n "],"names":[],"mappings":"AA6BO,MAAM,aAAA,GAAgB,CACzB,OAAA,EACA,WAAA,EACA,cACA,WAAA,KACC;AAED,EAAA,MAAM,WAAgC,EAAC;AAGvC,EAAA,MAAA,CAAO,IAAA,CAAK,WAAW,CAAA,CAAE,OAAA,CAAQ,CAAC,cAAA,KAAmB;AACjD,IAAA,MAAM,CAAC,MAAA,EAAQ,MAAM,CAAA,GAAI,YAAY,cAAc,CAAA;AACnD,IAAA,QAAA,CAAS,cAAc,CAAA,GAAI;AAAA,MACvB,YAAY,MAAM;AAAA,QACd,CAAC;AAAA,UACG,IAAA,EAAM,CAAA;AAAA,UACN,MAAA;AAAA,UACA;AAAA,SACH;AAAA;AACL,KACJ;AAAA,EACJ,CAAC,CAAA;AAED,EAAA,OAAO;AAAA,IACH,GAAG,OAAA;AAAA,IACH,WAAA;AAAA,IACA,YAAA;AAAA,IACA;AAAA,GACJ;AACJ;;;;"}
|