@nice2dev/ui-graphics 1.0.0 → 1.0.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.
- package/CHANGELOG.md +147 -1
- package/dist/cjs/animation/AnimatedPerson.js +2 -2
- package/dist/cjs/animation/AnimatedPerson.js.map +1 -1
- package/dist/cjs/animation/AnimationEditor.js +11 -6
- package/dist/cjs/animation/AnimationEditor.js.map +1 -1
- package/dist/cjs/animation/Audience.js +4 -3
- package/dist/cjs/animation/Audience.js.map +1 -1
- package/dist/cjs/animation/BodyRenderer.js +5 -2
- package/dist/cjs/animation/BodyRenderer.js.map +1 -1
- package/dist/cjs/animation/rig/RigPlayer.js +2 -2
- package/dist/cjs/animation/rig/RigPlayer.js.map +1 -1
- package/dist/cjs/animation/rig/RiggedBody.js +2 -2
- package/dist/cjs/animation/rig/RiggedBody.js.map +1 -1
- package/dist/cjs/animation/shapes/heads.js +4 -1
- package/dist/cjs/animation/shapes/heads.js.map +1 -1
- package/dist/cjs/core/LocalUI.js +1 -1
- package/dist/cjs/core/NiceBrushEngine.js +446 -0
- package/dist/cjs/core/NiceBrushEngine.js.map +1 -0
- package/dist/cjs/core/yjsCollaboration.js +292 -0
- package/dist/cjs/core/yjsCollaboration.js.map +1 -0
- package/dist/cjs/font/NiceFontEditor.js +89 -85
- package/dist/cjs/font/NiceFontEditor.js.map +1 -1
- package/dist/cjs/font/fontFormatUtils.js +468 -0
- package/dist/cjs/font/fontFormatUtils.js.map +1 -0
- package/dist/cjs/game/GameAsset2dEditor.js +38 -24
- package/dist/cjs/game/GameAsset2dEditor.js.map +1 -1
- package/dist/cjs/icon/NiceIconEditor.js +218 -133
- package/dist/cjs/icon/NiceIconEditor.js.map +1 -1
- package/dist/cjs/index.js +83 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/nice2dev-ui-graphics.css +1 -1
- package/dist/cjs/photo/NiceAITools.js +446 -0
- package/dist/cjs/photo/NiceAITools.js.map +1 -0
- package/dist/cjs/photo/PhotoEditor.js +2 -2
- package/dist/cjs/photo/PhotoEditor.js.map +1 -1
- package/dist/cjs/pixel/PixelEditor.js +16 -5
- package/dist/cjs/pixel/PixelEditor.js.map +1 -1
- package/dist/cjs/pixel/PixelEditor.module.css.js +1 -1
- package/dist/cjs/pixel/PixelEditorMenuBar.js +2 -1
- package/dist/cjs/pixel/PixelEditorMenuBar.js.map +1 -1
- package/dist/cjs/pixel/PixelEditorRightPanel.js +3 -2
- package/dist/cjs/pixel/PixelEditorRightPanel.js.map +1 -1
- package/dist/cjs/pixel/PixelEditorTimeline.js +2 -1
- package/dist/cjs/pixel/PixelEditorTimeline.js.map +1 -1
- package/dist/cjs/pixel/PixelEditorToolbar.js +2 -1
- package/dist/cjs/pixel/PixelEditorToolbar.js.map +1 -1
- package/dist/cjs/pixel/SpriteGeneratorPanel.js +224 -0
- package/dist/cjs/pixel/SpriteGeneratorPanel.js.map +1 -0
- package/dist/cjs/pixel/animalGeneratorPresets.js +654 -0
- package/dist/cjs/pixel/animalGeneratorPresets.js.map +1 -0
- package/dist/cjs/pixel/buildingGeneratorPresets.js +573 -0
- package/dist/cjs/pixel/buildingGeneratorPresets.js.map +1 -0
- package/dist/cjs/pixel/characterGeneratorPresets.js +563 -0
- package/dist/cjs/pixel/characterGeneratorPresets.js.map +1 -0
- package/dist/cjs/pixel/spriteGeneratorCore.js +297 -0
- package/dist/cjs/pixel/spriteGeneratorCore.js.map +1 -0
- package/dist/cjs/pixel/usePixelEditor.js +16 -0
- package/dist/cjs/pixel/usePixelEditor.js.map +1 -1
- package/dist/cjs/texture/Nice3DTexturePainter.js +123 -79
- package/dist/cjs/texture/Nice3DTexturePainter.js.map +1 -1
- package/dist/cjs/ui/NiceUIDesigner.js +175 -62
- package/dist/cjs/ui/NiceUIDesigner.js.map +1 -1
- package/dist/cjs/ui/dist/index.js +50089 -0
- package/dist/cjs/ui/dist/index.js.map +1 -0
- package/dist/cjs/vector/NiceSvgToCode.js +427 -0
- package/dist/cjs/vector/NiceSvgToCode.js.map +1 -0
- package/dist/cjs/vector/VectorEditor.js +7 -3
- package/dist/cjs/vector/VectorEditor.js.map +1 -1
- package/dist/cjs/vector/VectorEditor.module.css.js +1 -1
- package/dist/cjs/vector/VectorEditorMenuBar.js +5 -1
- package/dist/cjs/vector/VectorEditorMenuBar.js.map +1 -1
- package/dist/cjs/vector/VectorEditorRightPanel.js +23 -19
- package/dist/cjs/vector/VectorEditorRightPanel.js.map +1 -1
- package/dist/esm/animation/AnimatedPerson.js +2 -2
- package/dist/esm/animation/AnimatedPerson.js.map +1 -1
- package/dist/esm/animation/AnimationEditor.js +12 -8
- package/dist/esm/animation/AnimationEditor.js.map +1 -1
- package/dist/esm/animation/Audience.js +5 -4
- package/dist/esm/animation/Audience.js.map +1 -1
- package/dist/esm/animation/BodyRenderer.js +4 -2
- package/dist/esm/animation/BodyRenderer.js.map +1 -1
- package/dist/esm/animation/rig/RigPlayer.js +4 -4
- package/dist/esm/animation/rig/RigPlayer.js.map +1 -1
- package/dist/esm/animation/rig/RiggedBody.js +2 -2
- package/dist/esm/animation/rig/RiggedBody.js.map +1 -1
- package/dist/esm/animation/shapes/heads.js +4 -2
- package/dist/esm/animation/shapes/heads.js.map +1 -1
- package/dist/esm/core/LocalUI.js +4 -4
- package/dist/esm/core/NiceBrushEngine.js +442 -0
- package/dist/esm/core/NiceBrushEngine.js.map +1 -0
- package/dist/esm/core/yjsCollaboration.js +283 -0
- package/dist/esm/core/yjsCollaboration.js.map +1 -0
- package/dist/esm/font/NiceFontEditor.js +89 -85
- package/dist/esm/font/NiceFontEditor.js.map +1 -1
- package/dist/esm/font/fontFormatUtils.js +461 -0
- package/dist/esm/font/fontFormatUtils.js.map +1 -0
- package/dist/esm/game/GameAsset2dEditor.js +38 -25
- package/dist/esm/game/GameAsset2dEditor.js.map +1 -1
- package/dist/esm/icon/NiceIconEditor.js +218 -133
- package/dist/esm/icon/NiceIconEditor.js.map +1 -1
- package/dist/esm/index.js +21 -11
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/nice2dev-ui-graphics.css +1 -1
- package/dist/esm/photo/NiceAITools.js +439 -0
- package/dist/esm/photo/NiceAITools.js.map +1 -0
- package/dist/esm/photo/PhotoEditor.js +2 -2
- package/dist/esm/photo/PhotoEditor.js.map +1 -1
- package/dist/esm/pixel/PixelEditor.js +16 -6
- package/dist/esm/pixel/PixelEditor.js.map +1 -1
- package/dist/esm/pixel/PixelEditor.module.css.js +1 -1
- package/dist/esm/pixel/PixelEditorMenuBar.js +2 -1
- package/dist/esm/pixel/PixelEditorMenuBar.js.map +1 -1
- package/dist/esm/pixel/PixelEditorRightPanel.js +3 -2
- package/dist/esm/pixel/PixelEditorRightPanel.js.map +1 -1
- package/dist/esm/pixel/PixelEditorTimeline.js +2 -1
- package/dist/esm/pixel/PixelEditorTimeline.js.map +1 -1
- package/dist/esm/pixel/PixelEditorToolbar.js +2 -1
- package/dist/esm/pixel/PixelEditorToolbar.js.map +1 -1
- package/dist/esm/pixel/SpriteGeneratorPanel.js +222 -0
- package/dist/esm/pixel/SpriteGeneratorPanel.js.map +1 -0
- package/dist/esm/pixel/animalGeneratorPresets.js +647 -0
- package/dist/esm/pixel/animalGeneratorPresets.js.map +1 -0
- package/dist/esm/pixel/buildingGeneratorPresets.js +566 -0
- package/dist/esm/pixel/buildingGeneratorPresets.js.map +1 -0
- package/dist/esm/pixel/characterGeneratorPresets.js +556 -0
- package/dist/esm/pixel/characterGeneratorPresets.js.map +1 -0
- package/dist/esm/pixel/spriteGeneratorCore.js +279 -0
- package/dist/esm/pixel/spriteGeneratorCore.js.map +1 -0
- package/dist/esm/pixel/usePixelEditor.js +16 -0
- package/dist/esm/pixel/usePixelEditor.js.map +1 -1
- package/dist/esm/texture/Nice3DTexturePainter.js +123 -79
- package/dist/esm/texture/Nice3DTexturePainter.js.map +1 -1
- package/dist/esm/ui/NiceUIDesigner.js +175 -62
- package/dist/esm/ui/NiceUIDesigner.js.map +1 -1
- package/dist/esm/ui/dist/index.js +49686 -0
- package/dist/esm/ui/dist/index.js.map +1 -0
- package/dist/esm/vector/NiceSvgToCode.js +423 -0
- package/dist/esm/vector/NiceSvgToCode.js.map +1 -0
- package/dist/esm/vector/VectorEditor.js +7 -4
- package/dist/esm/vector/VectorEditor.js.map +1 -1
- package/dist/esm/vector/VectorEditor.module.css.js +1 -1
- package/dist/esm/vector/VectorEditorMenuBar.js +5 -1
- package/dist/esm/vector/VectorEditorMenuBar.js.map +1 -1
- package/dist/esm/vector/VectorEditorRightPanel.js +23 -19
- package/dist/esm/vector/VectorEditorRightPanel.js.map +1 -1
- package/package.json +3 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buildingGeneratorPresets.js","sources":["../../../src/pixel/buildingGeneratorPresets.ts"],"sourcesContent":[null],"names":["createPartData","registerParts"],"mappings":"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AE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAChD,IAAA,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAChD,IAAA,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAChD,IAAA,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAChD,IAAA,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAChD,IAAA,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAChD,IAAA,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,C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AAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAC5D,IAAA,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAC5D,IAAA,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAC5D,IAAA,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAC5D,IAAA,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAC5D,IAAA,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;CAC7D,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;AAErC,MAAM,SAAS,GAAGA,kCAAc,CAAC,EAAE,EAAE,CAAC,EAAE;AACtC,IAAA,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AACtD,IAAA,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AACtD,IAAA,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AACtD,IAAA,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;CACvD,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;AAErC,MAAM,WAAW,GAAGA,kCAAc,CAAC,EAAE,EAAE,CAAC,EAAE;AACxC,IAAA,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAClE,IAAA,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAClE,IAAA,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAClE,IAAA,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAClE,IAAA,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAClE,IAAA,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAA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"}
|
|
@@ -0,0 +1,563 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var spriteGeneratorCore = require('./spriteGeneratorCore.js');
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* characterGeneratorPresets.ts — Extensive library of character parts
|
|
7
|
+
* for the sprite generator. Provides heads, hair, torsos, arms, legs,
|
|
8
|
+
* faces, and equipment in multiple styles at 16×16 and 32×32 sizes.
|
|
9
|
+
*
|
|
10
|
+
* Each part has directional pixel data (S, E, N with mirroring for W, etc.)
|
|
11
|
+
*/
|
|
12
|
+
/* ════════════════════════════════════════════════════════════════
|
|
13
|
+
COLOR PALETTES
|
|
14
|
+
════════════════════════════════════════════════════════════════ */
|
|
15
|
+
const SKIN_PALETTES = {
|
|
16
|
+
light: ['#ffecd2', '#f5c6a0', '#e0a070', '#c07848', '#8b5e3c'],
|
|
17
|
+
medium: ['#e8c090', '#d4a06c', '#b88050', '#946038', '#6b4423'],
|
|
18
|
+
dark: ['#c08050', '#a06838', '#805028', '#603818', '#402010'],
|
|
19
|
+
fantasy1: ['#d0f0d0', '#a8d8a0', '#78b868', '#508030', '#304818'],
|
|
20
|
+
fantasy2: ['#d0d8f0', '#a8b0d8', '#7888b8', '#506090', '#303860'],
|
|
21
|
+
};
|
|
22
|
+
const HAIR_PALETTES = {
|
|
23
|
+
black: ['#1a1a2e', '#101020', '#080810'],
|
|
24
|
+
brown: ['#8b6914', '#6b4e0a', '#4a3508'],
|
|
25
|
+
blonde: ['#f0d060', '#d0b040', '#b09028'],
|
|
26
|
+
red: ['#d03020', '#a02018', '#781810'],
|
|
27
|
+
white: ['#f0f0f0', '#d0d0d0', '#a0a0a0'],
|
|
28
|
+
blue: ['#4080e0', '#3060b0', '#204080'],
|
|
29
|
+
green: ['#40c040', '#309030', '#206020'],
|
|
30
|
+
pink: ['#f080b0', '#d06090', '#a04070'],
|
|
31
|
+
purple: ['#a040e0', '#8030b0', '#602080'],
|
|
32
|
+
};
|
|
33
|
+
const CLOTHING_PALETTES = {
|
|
34
|
+
leather: ['#b08060', '#906840', '#705028'],
|
|
35
|
+
iron: ['#c0c0c8', '#909098', '#606068'],
|
|
36
|
+
gold: ['#f0d060', '#d0b040', '#a08020'],
|
|
37
|
+
cloth_r: ['#d04040', '#b02020', '#801010'],
|
|
38
|
+
cloth_b: ['#4060d0', '#3040b0', '#202880'],
|
|
39
|
+
cloth_g: ['#40b040', '#208020', '#105010'],
|
|
40
|
+
cloth_w: ['#f0f0f0', '#d0d0d0', '#b0b0b0'],
|
|
41
|
+
cloth_k: ['#404040', '#282828', '#181818'],
|
|
42
|
+
royal: ['#8020a0', '#601080', '#400860'],
|
|
43
|
+
};
|
|
44
|
+
/* ════════════════════════════════════════════════════════════════
|
|
45
|
+
16×16 CHARACTER PARTS — HEADS
|
|
46
|
+
════════════════════════════════════════════════════════════════ */
|
|
47
|
+
const _ = -1; // transparent shorthand
|
|
48
|
+
const HEAD_ROUND_S = spriteGeneratorCore.createPartData(8, 8, [
|
|
49
|
+
[_, _, 1, 1, 1, 1, _, _],
|
|
50
|
+
[_, 1, 0, 0, 0, 0, 1, _],
|
|
51
|
+
[1, 0, 0, 0, 0, 0, 0, 1],
|
|
52
|
+
[1, 0, 3, 0, 0, 3, 0, 1],
|
|
53
|
+
[1, 0, 0, 0, 0, 0, 0, 1],
|
|
54
|
+
[1, 0, 0, 2, 2, 0, 0, 1],
|
|
55
|
+
[_, 1, 0, 0, 0, 0, 1, _],
|
|
56
|
+
[_, _, 1, 1, 1, 1, _, _],
|
|
57
|
+
], ['#ffecd2', '#c07848', '#e05050', '#2a2a4e']);
|
|
58
|
+
const HEAD_ROUND_E = spriteGeneratorCore.createPartData(7, 8, [
|
|
59
|
+
[_, _, 1, 1, 1, _, _],
|
|
60
|
+
[_, 1, 0, 0, 0, 1, _],
|
|
61
|
+
[1, 0, 0, 0, 0, 0, 1],
|
|
62
|
+
[1, 0, 0, 0, 3, 0, 1],
|
|
63
|
+
[1, 0, 0, 0, 0, 0, 1],
|
|
64
|
+
[1, 0, 0, 0, 2, 0, 1],
|
|
65
|
+
[_, 1, 0, 0, 0, 1, _],
|
|
66
|
+
[_, _, 1, 1, 1, _, _],
|
|
67
|
+
], ['#ffecd2', '#c07848', '#e05050', '#2a2a4e']);
|
|
68
|
+
const HEAD_ROUND_N = spriteGeneratorCore.createPartData(8, 8, [
|
|
69
|
+
[_, _, 1, 1, 1, 1, _, _],
|
|
70
|
+
[_, 1, 0, 0, 0, 0, 1, _],
|
|
71
|
+
[1, 0, 0, 0, 0, 0, 0, 1],
|
|
72
|
+
[1, 0, 0, 0, 0, 0, 0, 1],
|
|
73
|
+
[1, 0, 0, 0, 0, 0, 0, 1],
|
|
74
|
+
[1, 0, 0, 0, 0, 0, 0, 1],
|
|
75
|
+
[_, 1, 0, 0, 0, 0, 1, _],
|
|
76
|
+
[_, _, 1, 1, 1, 1, _, _],
|
|
77
|
+
], ['#ffecd2', '#c07848', '#e05050', '#2a2a4e']);
|
|
78
|
+
const HEAD_SQUARE_S = spriteGeneratorCore.createPartData(8, 7, [
|
|
79
|
+
[_, 1, 1, 1, 1, 1, 1, _],
|
|
80
|
+
[1, 0, 0, 0, 0, 0, 0, 1],
|
|
81
|
+
[1, 0, 3, 0, 0, 3, 0, 1],
|
|
82
|
+
[1, 0, 0, 0, 0, 0, 0, 1],
|
|
83
|
+
[1, 0, 0, 2, 2, 0, 0, 1],
|
|
84
|
+
[1, 0, 0, 0, 0, 0, 0, 1],
|
|
85
|
+
[_, 1, 1, 1, 1, 1, 1, _],
|
|
86
|
+
], ['#ffecd2', '#c07848', '#e05050', '#2a2a4e']);
|
|
87
|
+
const HEAD_CHIBI_S = spriteGeneratorCore.createPartData(10, 10, [
|
|
88
|
+
[_, _, _, 1, 1, 1, 1, _, _, _],
|
|
89
|
+
[_, _, 1, 0, 0, 0, 0, 1, _, _],
|
|
90
|
+
[_, 1, 0, 0, 0, 0, 0, 0, 1, _],
|
|
91
|
+
[1, 0, 0, 0, 0, 0, 0, 0, 0, 1],
|
|
92
|
+
[1, 0, 0, 3, 0, 0, 3, 0, 0, 1],
|
|
93
|
+
[1, 0, 0, 3, 0, 0, 3, 0, 0, 1],
|
|
94
|
+
[1, 0, 0, 0, 0, 0, 0, 0, 0, 1],
|
|
95
|
+
[1, 0, 0, 0, 2, 2, 0, 0, 0, 1],
|
|
96
|
+
[_, 1, 0, 0, 0, 0, 0, 0, 1, _],
|
|
97
|
+
[_, _, 1, 1, 1, 1, 1, 1, _, _],
|
|
98
|
+
], ['#ffecd2', '#c07848', '#e05050', '#2a2a4e']);
|
|
99
|
+
/* ── HAIR ── */
|
|
100
|
+
const HAIR_SHORT_S = spriteGeneratorCore.createPartData(8, 4, [
|
|
101
|
+
[_, _, 0, 0, 0, 0, _, _],
|
|
102
|
+
[_, 0, 0, 0, 0, 0, 0, _],
|
|
103
|
+
[0, 0, 1, 1, 1, 1, 0, 0],
|
|
104
|
+
[0, 1, _, _, _, _, 1, 0],
|
|
105
|
+
], ['#4a3508', '#6b4e0a']);
|
|
106
|
+
const HAIR_LONG_S = spriteGeneratorCore.createPartData(10, 10, [
|
|
107
|
+
[_, _, _, 0, 0, 0, 0, _, _, _],
|
|
108
|
+
[_, _, 0, 0, 0, 0, 0, 0, _, _],
|
|
109
|
+
[_, 0, 0, 1, 1, 1, 1, 0, 0, _],
|
|
110
|
+
[0, 0, 1, _, _, _, _, 1, 0, 0],
|
|
111
|
+
[0, 1, _, _, _, _, _, _, 1, 0],
|
|
112
|
+
[0, 1, _, _, _, _, _, _, 1, 0],
|
|
113
|
+
[0, 1, _, _, _, _, _, _, 1, 0],
|
|
114
|
+
[0, 0, _, _, _, _, _, _, 0, 0],
|
|
115
|
+
[_, 0, _, _, _, _, _, _, 0, _],
|
|
116
|
+
[_, 0, 0, _, _, _, _, 0, 0, _],
|
|
117
|
+
], ['#4a3508', '#6b4e0a']);
|
|
118
|
+
const HAIR_MOHAWK_S = spriteGeneratorCore.createPartData(8, 6, [
|
|
119
|
+
[_, _, _, 0, 0, _, _, _],
|
|
120
|
+
[_, _, 0, 0, 0, 0, _, _],
|
|
121
|
+
[_, _, 0, 0, 0, 0, _, _],
|
|
122
|
+
[_, _, 0, 1, 1, 0, _, _],
|
|
123
|
+
[_, 0, 1, _, _, 1, 0, _],
|
|
124
|
+
[0, 1, _, _, _, _, 1, 0],
|
|
125
|
+
], ['#d03020', '#a02018']);
|
|
126
|
+
const HAIR_PONYTAIL_S = spriteGeneratorCore.createPartData(10, 8, [
|
|
127
|
+
[_, _, _, 0, 0, 0, 0, _, _, _],
|
|
128
|
+
[_, _, 0, 0, 0, 0, 0, 0, _, _],
|
|
129
|
+
[_, 0, 0, 1, 1, 1, 1, 0, 0, _],
|
|
130
|
+
[0, 0, 1, _, _, _, _, 1, 0, 0],
|
|
131
|
+
[_, _, _, _, _, _, _, _, 0, 0],
|
|
132
|
+
[_, _, _, _, _, _, _, _, _, 0],
|
|
133
|
+
[_, _, _, _, _, _, _, _, _, 0],
|
|
134
|
+
[_, _, _, _, _, _, _, _, 0, _],
|
|
135
|
+
], ['#f0d060', '#d0b040']);
|
|
136
|
+
const HAIR_SPIKY_S = spriteGeneratorCore.createPartData(10, 6, [
|
|
137
|
+
[_, 0, _, _, 0, _, 0, _, _, _],
|
|
138
|
+
[_, 0, 0, 0, 0, 0, 0, 0, _, _],
|
|
139
|
+
[0, 0, 0, 0, 0, 0, 0, 0, 0, _],
|
|
140
|
+
[0, 0, 1, 1, 1, 1, 1, 1, 0, 0],
|
|
141
|
+
[0, 1, _, _, _, _, _, _, 1, 0],
|
|
142
|
+
[_, _, _, _, _, _, _, _, _, _],
|
|
143
|
+
], ['#1a1a2e', '#101020']);
|
|
144
|
+
/* ── TORSOS ── */
|
|
145
|
+
const TORSO_BASIC_S = spriteGeneratorCore.createPartData(8, 6, [
|
|
146
|
+
[_, _, 1, 1, 1, 1, _, _],
|
|
147
|
+
[_, 1, 0, 0, 0, 0, 1, _],
|
|
148
|
+
[1, 0, 0, 0, 0, 0, 0, 1],
|
|
149
|
+
[1, 0, 0, 0, 0, 0, 0, 1],
|
|
150
|
+
[_, 1, 0, 0, 0, 0, 1, _],
|
|
151
|
+
[_, _, 1, 1, 1, 1, _, _],
|
|
152
|
+
], ['#4060d0', '#3040b0']);
|
|
153
|
+
const TORSO_ARMOR_S = spriteGeneratorCore.createPartData(10, 7, [
|
|
154
|
+
[_, _, _, 1, 1, 1, 1, _, _, _],
|
|
155
|
+
[_, _, 1, 0, 2, 2, 0, 1, _, _],
|
|
156
|
+
[_, 1, 0, 0, 2, 2, 0, 0, 1, _],
|
|
157
|
+
[1, 0, 0, 0, 0, 0, 0, 0, 0, 1],
|
|
158
|
+
[1, 0, 0, 0, 0, 0, 0, 0, 0, 1],
|
|
159
|
+
[_, 1, 0, 0, 0, 0, 0, 0, 1, _],
|
|
160
|
+
[_, _, 1, 1, 1, 1, 1, 1, _, _],
|
|
161
|
+
], ['#c0c0c8', '#909098', '#f0d060']);
|
|
162
|
+
const TORSO_ROBE_S = spriteGeneratorCore.createPartData(10, 10, [
|
|
163
|
+
[_, _, _, 1, 1, 1, 1, _, _, _],
|
|
164
|
+
[_, _, 1, 0, 0, 0, 0, 1, _, _],
|
|
165
|
+
[_, 1, 0, 0, 2, 2, 0, 0, 1, _],
|
|
166
|
+
[1, 0, 0, 0, 0, 0, 0, 0, 0, 1],
|
|
167
|
+
[1, 0, 0, 0, 0, 0, 0, 0, 0, 1],
|
|
168
|
+
[1, 0, 0, 0, 0, 0, 0, 0, 0, 1],
|
|
169
|
+
[1, 0, 0, 0, 0, 0, 0, 0, 0, 1],
|
|
170
|
+
[_, 1, 0, 0, 0, 0, 0, 0, 1, _],
|
|
171
|
+
[_, _, 1, 0, 0, 0, 0, 1, _, _],
|
|
172
|
+
[_, _, _, 1, 1, 1, 1, _, _, _],
|
|
173
|
+
], ['#8020a0', '#601080', '#f0d060']);
|
|
174
|
+
/* ── ARMS ── */
|
|
175
|
+
const ARM_BASIC_S = spriteGeneratorCore.createPartData(3, 5, [
|
|
176
|
+
[_, 0, _],
|
|
177
|
+
[0, 0, 1],
|
|
178
|
+
[0, 0, 1],
|
|
179
|
+
[0, 0, 1],
|
|
180
|
+
[_, 0, _],
|
|
181
|
+
], ['#ffecd2', '#c07848']);
|
|
182
|
+
const ARM_ARMORED_S = spriteGeneratorCore.createPartData(4, 5, [
|
|
183
|
+
[_, 0, 1, _],
|
|
184
|
+
[0, 0, 0, 1],
|
|
185
|
+
[0, 0, 0, 1],
|
|
186
|
+
[0, 0, 0, 1],
|
|
187
|
+
[_, 0, 1, _],
|
|
188
|
+
], ['#c0c0c8', '#909098']);
|
|
189
|
+
/* ── LEGS ── */
|
|
190
|
+
const LEG_BASIC_S = spriteGeneratorCore.createPartData(3, 5, [
|
|
191
|
+
[_, 0, _],
|
|
192
|
+
[0, 0, 1],
|
|
193
|
+
[0, 0, 1],
|
|
194
|
+
[0, 0, 1],
|
|
195
|
+
[0, 1, 1],
|
|
196
|
+
], ['#4060d0', '#3040b0']);
|
|
197
|
+
const LEG_BOOT_S = spriteGeneratorCore.createPartData(4, 5, [
|
|
198
|
+
[_, 0, 0, _],
|
|
199
|
+
[_, 0, 0, _],
|
|
200
|
+
[_, 0, 0, _],
|
|
201
|
+
[0, 0, 0, 1],
|
|
202
|
+
[0, 0, 0, 1],
|
|
203
|
+
], ['#b08060', '#906840']);
|
|
204
|
+
/* ── HATS ── */
|
|
205
|
+
const HAT_WIZARD_S = spriteGeneratorCore.createPartData(10, 8, [
|
|
206
|
+
[_, _, _, _, 0, _, _, _, _, _],
|
|
207
|
+
[_, _, _, 0, 0, 0, _, _, _, _],
|
|
208
|
+
[_, _, 0, 0, 0, 0, 0, _, _, _],
|
|
209
|
+
[_, 0, 0, 0, 0, 0, 0, 0, _, _],
|
|
210
|
+
[_, 0, 0, 0, 2, 0, 0, 0, _, _],
|
|
211
|
+
[0, 0, 0, 0, 2, 0, 0, 0, 0, _],
|
|
212
|
+
[0, 1, 1, 1, 1, 1, 1, 1, 0, _],
|
|
213
|
+
[_, _, _, _, _, _, _, _, _, _],
|
|
214
|
+
], ['#8020a0', '#601080', '#f0d060']);
|
|
215
|
+
const HAT_KNIGHT_S = spriteGeneratorCore.createPartData(10, 6, [
|
|
216
|
+
[_, _, _, 0, 0, 0, 0, _, _, _],
|
|
217
|
+
[_, _, 0, 0, 0, 0, 0, 0, _, _],
|
|
218
|
+
[_, 0, 0, 0, 0, 0, 0, 0, 0, _],
|
|
219
|
+
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
|
|
220
|
+
[0, 0, 2, 2, 2, 2, 2, 2, 0, 0],
|
|
221
|
+
[_, _, _, 1, 1, 1, 1, _, _, _],
|
|
222
|
+
], ['#c0c0c8', '#606068', '#f0d060']);
|
|
223
|
+
const HAT_CROWN_S = spriteGeneratorCore.createPartData(10, 5, [
|
|
224
|
+
[_, 2, _, _, 2, _, _, 2, _, _],
|
|
225
|
+
[_, 0, 2, _, 0, _, 2, 0, _, _],
|
|
226
|
+
[_, 0, 0, 2, 0, 2, 0, 0, _, _],
|
|
227
|
+
[_, 0, 0, 0, 0, 0, 0, 0, _, _],
|
|
228
|
+
[_, 1, 1, 1, 1, 1, 1, 1, _, _],
|
|
229
|
+
], ['#f0d060', '#d0b040', '#ff4040']);
|
|
230
|
+
const HAT_CAP_S = spriteGeneratorCore.createPartData(9, 5, [
|
|
231
|
+
[_, _, _, 0, 0, 0, _, _, _],
|
|
232
|
+
[_, _, 0, 0, 0, 0, 0, _, _],
|
|
233
|
+
[_, 0, 0, 0, 0, 0, 0, 0, _],
|
|
234
|
+
[0, 0, 0, 0, 0, 0, 0, 0, 0],
|
|
235
|
+
[_, _, 1, 1, 1, 1, 1, _, _],
|
|
236
|
+
], ['#d04040', '#b02020']);
|
|
237
|
+
/* ── WEAPONS ── */
|
|
238
|
+
const WEAPON_SWORD_S = spriteGeneratorCore.createPartData(3, 10, [
|
|
239
|
+
[_, 0, _],
|
|
240
|
+
[_, 0, _],
|
|
241
|
+
[_, 0, _],
|
|
242
|
+
[_, 0, _],
|
|
243
|
+
[_, 0, _],
|
|
244
|
+
[_, 0, _],
|
|
245
|
+
[_, 0, _],
|
|
246
|
+
[1, 1, 1],
|
|
247
|
+
[_, 2, _],
|
|
248
|
+
[_, 2, _],
|
|
249
|
+
], ['#c0c0c8', '#f0d060', '#8b5e3c']);
|
|
250
|
+
const WEAPON_STAFF_S = spriteGeneratorCore.createPartData(3, 12, [
|
|
251
|
+
[_, 1, _],
|
|
252
|
+
[1, 1, 1],
|
|
253
|
+
[_, 1, _],
|
|
254
|
+
[_, 0, _],
|
|
255
|
+
[_, 0, _],
|
|
256
|
+
[_, 0, _],
|
|
257
|
+
[_, 0, _],
|
|
258
|
+
[_, 0, _],
|
|
259
|
+
[_, 0, _],
|
|
260
|
+
[_, 0, _],
|
|
261
|
+
[_, 0, _],
|
|
262
|
+
[_, 0, _],
|
|
263
|
+
], ['#8b5e3c', '#4080e0']);
|
|
264
|
+
const WEAPON_BOW_S = spriteGeneratorCore.createPartData(5, 10, [
|
|
265
|
+
[_, _, _, 0, _],
|
|
266
|
+
[_, _, 0, _, 1],
|
|
267
|
+
[_, 0, _, _, 1],
|
|
268
|
+
[0, _, _, _, 1],
|
|
269
|
+
[0, _, _, _, 1],
|
|
270
|
+
[0, _, _, _, 1],
|
|
271
|
+
[0, _, _, _, 1],
|
|
272
|
+
[_, 0, _, _, 1],
|
|
273
|
+
[_, _, 0, _, 1],
|
|
274
|
+
[_, _, _, 0, _],
|
|
275
|
+
], ['#8b5e3c', '#c0c0c8']);
|
|
276
|
+
const SHIELD_ROUND_S = spriteGeneratorCore.createPartData(6, 7, [
|
|
277
|
+
[_, _, 1, 1, _, _],
|
|
278
|
+
[_, 1, 0, 0, 1, _],
|
|
279
|
+
[1, 0, 0, 2, 0, 1],
|
|
280
|
+
[1, 0, 2, 2, 0, 1],
|
|
281
|
+
[1, 0, 0, 2, 0, 1],
|
|
282
|
+
[_, 1, 0, 0, 1, _],
|
|
283
|
+
[_, _, 1, 1, _, _],
|
|
284
|
+
], ['#c0c0c8', '#909098', '#f0d060']);
|
|
285
|
+
/* ════════════════════════════════════════════════════════════════
|
|
286
|
+
REGISTER ALL CHARACTER PARTS
|
|
287
|
+
════════════════════════════════════════════════════════════════ */
|
|
288
|
+
const CHARACTER_PARTS = [
|
|
289
|
+
// ── Heads ──
|
|
290
|
+
{
|
|
291
|
+
id: 'head-round', name: 'Round Head', category: 'head', slot: 'head',
|
|
292
|
+
anchorX: 4, anchorY: 7, zOrder: 10, tags: ['basic', 'round'],
|
|
293
|
+
pixels: spriteGeneratorCore.generateMirroredDirections({ S: HEAD_ROUND_S, E: HEAD_ROUND_E, N: HEAD_ROUND_N }),
|
|
294
|
+
},
|
|
295
|
+
{
|
|
296
|
+
id: 'head-square', name: 'Square Head', category: 'head', slot: 'head',
|
|
297
|
+
anchorX: 4, anchorY: 6, zOrder: 10, tags: ['basic', 'angular'],
|
|
298
|
+
pixels: { S: HEAD_SQUARE_S },
|
|
299
|
+
},
|
|
300
|
+
{
|
|
301
|
+
id: 'head-chibi', name: 'Chibi Head', category: 'head', slot: 'head',
|
|
302
|
+
anchorX: 5, anchorY: 9, zOrder: 10, tags: ['cute', 'chibi', 'large'],
|
|
303
|
+
pixels: { S: HEAD_CHIBI_S },
|
|
304
|
+
},
|
|
305
|
+
// ── Hair ──
|
|
306
|
+
{
|
|
307
|
+
id: 'hair-short', name: 'Short Hair', category: 'hair', slot: 'head',
|
|
308
|
+
anchorX: 4, anchorY: 3, zOrder: 11, tags: ['basic', 'short'],
|
|
309
|
+
pixels: { S: HAIR_SHORT_S },
|
|
310
|
+
recolorableIndices: [0, 1],
|
|
311
|
+
},
|
|
312
|
+
{
|
|
313
|
+
id: 'hair-long', name: 'Long Hair', category: 'hair', slot: 'head',
|
|
314
|
+
anchorX: 5, anchorY: 3, zOrder: 11, tags: ['long', 'flowing'],
|
|
315
|
+
pixels: { S: HAIR_LONG_S },
|
|
316
|
+
recolorableIndices: [0, 1],
|
|
317
|
+
},
|
|
318
|
+
{
|
|
319
|
+
id: 'hair-mohawk', name: 'Mohawk', category: 'hair', slot: 'head',
|
|
320
|
+
anchorX: 4, anchorY: 5, zOrder: 12, tags: ['punk', 'mohawk'],
|
|
321
|
+
pixels: { S: HAIR_MOHAWK_S },
|
|
322
|
+
recolorableIndices: [0, 1],
|
|
323
|
+
},
|
|
324
|
+
{
|
|
325
|
+
id: 'hair-ponytail', name: 'Ponytail', category: 'hair', slot: 'head',
|
|
326
|
+
anchorX: 5, anchorY: 3, zOrder: 11, tags: ['long', 'ponytail'],
|
|
327
|
+
pixels: { S: HAIR_PONYTAIL_S },
|
|
328
|
+
recolorableIndices: [0, 1],
|
|
329
|
+
},
|
|
330
|
+
{
|
|
331
|
+
id: 'hair-spiky', name: 'Spiky Hair', category: 'hair', slot: 'head',
|
|
332
|
+
anchorX: 5, anchorY: 5, zOrder: 12, tags: ['spiky', 'anime'],
|
|
333
|
+
pixels: { S: HAIR_SPIKY_S },
|
|
334
|
+
recolorableIndices: [0, 1],
|
|
335
|
+
},
|
|
336
|
+
// ── Torsos ──
|
|
337
|
+
{
|
|
338
|
+
id: 'torso-basic', name: 'Basic Torso', category: 'torso', slot: 'torso',
|
|
339
|
+
anchorX: 4, anchorY: 0, zOrder: 5, tags: ['basic', 'shirt'],
|
|
340
|
+
pixels: { S: TORSO_BASIC_S },
|
|
341
|
+
recolorableIndices: [0, 1],
|
|
342
|
+
},
|
|
343
|
+
{
|
|
344
|
+
id: 'torso-armor', name: 'Armor Torso', category: 'torso', slot: 'torso',
|
|
345
|
+
anchorX: 5, anchorY: 0, zOrder: 5, tags: ['armor', 'knight'],
|
|
346
|
+
pixels: { S: TORSO_ARMOR_S },
|
|
347
|
+
recolorableIndices: [0, 1, 2],
|
|
348
|
+
},
|
|
349
|
+
{
|
|
350
|
+
id: 'torso-robe', name: 'Robe Torso', category: 'torso', slot: 'torso',
|
|
351
|
+
anchorX: 5, anchorY: 0, zOrder: 5, tags: ['robe', 'wizard', 'long'],
|
|
352
|
+
pixels: { S: TORSO_ROBE_S },
|
|
353
|
+
recolorableIndices: [0, 1, 2],
|
|
354
|
+
},
|
|
355
|
+
// ── Arms ──
|
|
356
|
+
{
|
|
357
|
+
id: 'arm-basic', name: 'Basic Arm', category: 'arm', slot: 'leftArm',
|
|
358
|
+
anchorX: 1, anchorY: 0, zOrder: 6, tags: ['basic', 'bare'],
|
|
359
|
+
pixels: { S: ARM_BASIC_S },
|
|
360
|
+
},
|
|
361
|
+
{
|
|
362
|
+
id: 'arm-armored', name: 'Armored Arm', category: 'arm', slot: 'leftArm',
|
|
363
|
+
anchorX: 2, anchorY: 0, zOrder: 6, tags: ['armor', 'knight'],
|
|
364
|
+
pixels: { S: ARM_ARMORED_S },
|
|
365
|
+
recolorableIndices: [0, 1],
|
|
366
|
+
},
|
|
367
|
+
// ── Legs ──
|
|
368
|
+
{
|
|
369
|
+
id: 'leg-basic', name: 'Basic Leg', category: 'leg', slot: 'leftLeg',
|
|
370
|
+
anchorX: 1, anchorY: 0, zOrder: 3, tags: ['basic', 'pants'],
|
|
371
|
+
pixels: { S: LEG_BASIC_S },
|
|
372
|
+
recolorableIndices: [0, 1],
|
|
373
|
+
},
|
|
374
|
+
{
|
|
375
|
+
id: 'leg-boot', name: 'Boot Leg', category: 'leg', slot: 'leftLeg',
|
|
376
|
+
anchorX: 2, anchorY: 0, zOrder: 3, tags: ['boot', 'heavy'],
|
|
377
|
+
pixels: { S: LEG_BOOT_S },
|
|
378
|
+
recolorableIndices: [0, 1],
|
|
379
|
+
},
|
|
380
|
+
// ── Hats ──
|
|
381
|
+
{
|
|
382
|
+
id: 'hat-wizard', name: 'Wizard Hat', category: 'hat', slot: 'head',
|
|
383
|
+
anchorX: 5, anchorY: 7, zOrder: 13, tags: ['wizard', 'magic'],
|
|
384
|
+
pixels: { S: HAT_WIZARD_S },
|
|
385
|
+
recolorableIndices: [0, 1, 2],
|
|
386
|
+
},
|
|
387
|
+
{
|
|
388
|
+
id: 'hat-knight', name: 'Knight Helmet', category: 'helmet', slot: 'head',
|
|
389
|
+
anchorX: 5, anchorY: 5, zOrder: 13, tags: ['knight', 'armor'],
|
|
390
|
+
pixels: { S: HAT_KNIGHT_S },
|
|
391
|
+
recolorableIndices: [0, 1, 2],
|
|
392
|
+
},
|
|
393
|
+
{
|
|
394
|
+
id: 'hat-crown', name: 'Crown', category: 'hat', slot: 'head',
|
|
395
|
+
anchorX: 5, anchorY: 4, zOrder: 14, tags: ['royal', 'king'],
|
|
396
|
+
pixels: { S: HAT_CROWN_S },
|
|
397
|
+
recolorableIndices: [0, 1, 2],
|
|
398
|
+
},
|
|
399
|
+
{
|
|
400
|
+
id: 'hat-cap', name: 'Cap', category: 'hat', slot: 'head',
|
|
401
|
+
anchorX: 4, anchorY: 4, zOrder: 13, tags: ['casual', 'cap'],
|
|
402
|
+
pixels: { S: HAT_CAP_S },
|
|
403
|
+
recolorableIndices: [0, 1],
|
|
404
|
+
},
|
|
405
|
+
// ── Weapons ──
|
|
406
|
+
{
|
|
407
|
+
id: 'weapon-sword', name: 'Sword', category: 'weapon', slot: 'rightHand',
|
|
408
|
+
anchorX: 1, anchorY: 7, zOrder: 15, tags: ['sword', 'melee'],
|
|
409
|
+
pixels: { S: WEAPON_SWORD_S },
|
|
410
|
+
},
|
|
411
|
+
{
|
|
412
|
+
id: 'weapon-staff', name: 'Staff', category: 'weapon', slot: 'rightHand',
|
|
413
|
+
anchorX: 1, anchorY: 2, zOrder: 15, tags: ['staff', 'magic'],
|
|
414
|
+
pixels: { S: WEAPON_STAFF_S },
|
|
415
|
+
},
|
|
416
|
+
{
|
|
417
|
+
id: 'weapon-bow', name: 'Bow', category: 'weapon', slot: 'rightHand',
|
|
418
|
+
anchorX: 0, anchorY: 5, zOrder: 15, tags: ['bow', 'ranged'],
|
|
419
|
+
pixels: { S: WEAPON_BOW_S },
|
|
420
|
+
},
|
|
421
|
+
// ── Shields ──
|
|
422
|
+
{
|
|
423
|
+
id: 'shield-round', name: 'Round Shield', category: 'shield', slot: 'leftHand',
|
|
424
|
+
anchorX: 3, anchorY: 3, zOrder: 7, tags: ['shield', 'defense'],
|
|
425
|
+
pixels: { S: SHIELD_ROUND_S },
|
|
426
|
+
recolorableIndices: [0, 1, 2],
|
|
427
|
+
},
|
|
428
|
+
];
|
|
429
|
+
function charAssembly(name, parts, w = 32, h = 32) {
|
|
430
|
+
return {
|
|
431
|
+
id: `char-${name.toLowerCase().replace(/\s+/g, '-')}`,
|
|
432
|
+
name,
|
|
433
|
+
parts,
|
|
434
|
+
skeletonId: 'basic-humanoid',
|
|
435
|
+
canvasWidth: w,
|
|
436
|
+
canvasHeight: h,
|
|
437
|
+
projection: 'sideView',
|
|
438
|
+
};
|
|
439
|
+
}
|
|
440
|
+
const CHARACTER_PRESETS = [
|
|
441
|
+
{
|
|
442
|
+
id: 'preset-warrior', name: 'Warrior', description: 'Knight with armor and sword',
|
|
443
|
+
tags: ['knight', 'armor', 'melee'],
|
|
444
|
+
assembly: charAssembly('Warrior', [
|
|
445
|
+
{ partId: 'leg-boot', offsetX: 10, offsetY: 24 },
|
|
446
|
+
{ partId: 'leg-boot', offsetX: 18, offsetY: 24, flipH: true },
|
|
447
|
+
{ partId: 'torso-armor', offsetX: 11, offsetY: 16 },
|
|
448
|
+
{ partId: 'arm-armored', offsetX: 7, offsetY: 17 },
|
|
449
|
+
{ partId: 'arm-armored', offsetX: 21, offsetY: 17, flipH: true },
|
|
450
|
+
{ partId: 'head-round', offsetX: 12, offsetY: 8 },
|
|
451
|
+
{ partId: 'hat-knight', offsetX: 11, offsetY: 3 },
|
|
452
|
+
{ partId: 'weapon-sword', offsetX: 24, offsetY: 12 },
|
|
453
|
+
{ partId: 'shield-round', offsetX: 3, offsetY: 16 },
|
|
454
|
+
]),
|
|
455
|
+
},
|
|
456
|
+
{
|
|
457
|
+
id: 'preset-mage', name: 'Mage', description: 'Wizard with robe and staff',
|
|
458
|
+
tags: ['wizard', 'magic', 'ranged'],
|
|
459
|
+
assembly: charAssembly('Mage', [
|
|
460
|
+
{ partId: 'leg-basic', offsetX: 11, offsetY: 24 },
|
|
461
|
+
{ partId: 'leg-basic', offsetX: 18, offsetY: 24, flipH: true },
|
|
462
|
+
{ partId: 'torso-robe', offsetX: 11, offsetY: 14 },
|
|
463
|
+
{ partId: 'arm-basic', offsetX: 8, offsetY: 15 },
|
|
464
|
+
{ partId: 'arm-basic', offsetX: 22, offsetY: 15, flipH: true },
|
|
465
|
+
{ partId: 'head-round', offsetX: 12, offsetY: 6 },
|
|
466
|
+
{ partId: 'hat-wizard', offsetX: 11, offsetY: -2 },
|
|
467
|
+
{ partId: 'weapon-staff', offsetX: 24, offsetY: 6 },
|
|
468
|
+
]),
|
|
469
|
+
},
|
|
470
|
+
{
|
|
471
|
+
id: 'preset-archer', name: 'Archer', description: 'Ranger with bow',
|
|
472
|
+
tags: ['ranger', 'bow', 'ranged'],
|
|
473
|
+
assembly: charAssembly('Archer', [
|
|
474
|
+
{ partId: 'leg-boot', offsetX: 10, offsetY: 24 },
|
|
475
|
+
{ partId: 'leg-boot', offsetX: 18, offsetY: 24, flipH: true },
|
|
476
|
+
{ partId: 'torso-basic', offsetX: 12, offsetY: 17 },
|
|
477
|
+
{ partId: 'arm-basic', offsetX: 9, offsetY: 18 },
|
|
478
|
+
{ partId: 'arm-basic', offsetX: 21, offsetY: 18, flipH: true },
|
|
479
|
+
{ partId: 'head-round', offsetX: 12, offsetY: 9 },
|
|
480
|
+
{ partId: 'hair-short', offsetX: 12, offsetY: 6 },
|
|
481
|
+
{ partId: 'weapon-bow', offsetX: 23, offsetY: 14 },
|
|
482
|
+
]),
|
|
483
|
+
},
|
|
484
|
+
{
|
|
485
|
+
id: 'preset-king', name: 'King', description: 'Royal with crown and robe',
|
|
486
|
+
tags: ['royal', 'king', 'npc'],
|
|
487
|
+
assembly: charAssembly('King', [
|
|
488
|
+
{ partId: 'leg-basic', offsetX: 11, offsetY: 24 },
|
|
489
|
+
{ partId: 'leg-basic', offsetX: 18, offsetY: 24, flipH: true },
|
|
490
|
+
{ partId: 'torso-robe', offsetX: 11, offsetY: 14 },
|
|
491
|
+
{ partId: 'arm-basic', offsetX: 8, offsetY: 15 },
|
|
492
|
+
{ partId: 'arm-basic', offsetX: 22, offsetY: 15, flipH: true },
|
|
493
|
+
{ partId: 'head-round', offsetX: 12, offsetY: 6 },
|
|
494
|
+
{ partId: 'hat-crown', offsetX: 11, offsetY: 2 },
|
|
495
|
+
]),
|
|
496
|
+
},
|
|
497
|
+
{
|
|
498
|
+
id: 'preset-villager', name: 'Villager', description: 'Simple villager NPC',
|
|
499
|
+
tags: ['npc', 'villager', 'simple'],
|
|
500
|
+
assembly: charAssembly('Villager', [
|
|
501
|
+
{ partId: 'leg-basic', offsetX: 11, offsetY: 24 },
|
|
502
|
+
{ partId: 'leg-basic', offsetX: 18, offsetY: 24, flipH: true },
|
|
503
|
+
{ partId: 'torso-basic', offsetX: 12, offsetY: 17 },
|
|
504
|
+
{ partId: 'arm-basic', offsetX: 9, offsetY: 18 },
|
|
505
|
+
{ partId: 'arm-basic', offsetX: 21, offsetY: 18, flipH: true },
|
|
506
|
+
{ partId: 'head-round', offsetX: 12, offsetY: 9 },
|
|
507
|
+
{ partId: 'hair-short', offsetX: 12, offsetY: 6 },
|
|
508
|
+
]),
|
|
509
|
+
},
|
|
510
|
+
{
|
|
511
|
+
id: 'preset-punk', name: 'Punk', description: 'Edgy character with mohawk',
|
|
512
|
+
tags: ['punk', 'rebellious'],
|
|
513
|
+
assembly: charAssembly('Punk', [
|
|
514
|
+
{ partId: 'leg-boot', offsetX: 10, offsetY: 24 },
|
|
515
|
+
{ partId: 'leg-boot', offsetX: 18, offsetY: 24, flipH: true },
|
|
516
|
+
{ partId: 'torso-basic', offsetX: 12, offsetY: 17 },
|
|
517
|
+
{ partId: 'arm-basic', offsetX: 9, offsetY: 18 },
|
|
518
|
+
{ partId: 'arm-basic', offsetX: 21, offsetY: 18, flipH: true },
|
|
519
|
+
{ partId: 'head-round', offsetX: 12, offsetY: 9 },
|
|
520
|
+
{ partId: 'hair-mohawk', offsetX: 12, offsetY: 4 },
|
|
521
|
+
]),
|
|
522
|
+
},
|
|
523
|
+
{
|
|
524
|
+
id: 'preset-chibi-hero', name: 'Chibi Hero', description: 'Cute chibi character',
|
|
525
|
+
tags: ['chibi', 'cute', 'hero'],
|
|
526
|
+
assembly: charAssembly('Chibi Hero', [
|
|
527
|
+
{ partId: 'leg-basic', offsetX: 11, offsetY: 26 },
|
|
528
|
+
{ partId: 'leg-basic', offsetX: 18, offsetY: 26, flipH: true },
|
|
529
|
+
{ partId: 'torso-basic', offsetX: 12, offsetY: 19 },
|
|
530
|
+
{ partId: 'arm-basic', offsetX: 9, offsetY: 20 },
|
|
531
|
+
{ partId: 'arm-basic', offsetX: 21, offsetY: 20, flipH: true },
|
|
532
|
+
{ partId: 'head-chibi', offsetX: 11, offsetY: 9 },
|
|
533
|
+
{ partId: 'hair-spiky', offsetX: 11, offsetY: 4 },
|
|
534
|
+
{ partId: 'weapon-sword', offsetX: 24, offsetY: 14 },
|
|
535
|
+
]),
|
|
536
|
+
},
|
|
537
|
+
{
|
|
538
|
+
id: 'preset-princess', name: 'Princess', description: 'Royal princess with crown and long hair',
|
|
539
|
+
tags: ['royal', 'princess', 'npc'],
|
|
540
|
+
assembly: charAssembly('Princess', [
|
|
541
|
+
{ partId: 'leg-basic', offsetX: 11, offsetY: 24 },
|
|
542
|
+
{ partId: 'leg-basic', offsetX: 18, offsetY: 24, flipH: true },
|
|
543
|
+
{ partId: 'torso-robe', offsetX: 11, offsetY: 14 },
|
|
544
|
+
{ partId: 'arm-basic', offsetX: 8, offsetY: 15 },
|
|
545
|
+
{ partId: 'arm-basic', offsetX: 22, offsetY: 15, flipH: true },
|
|
546
|
+
{ partId: 'head-round', offsetX: 12, offsetY: 6 },
|
|
547
|
+
{ partId: 'hair-long', offsetX: 11, offsetY: 3 },
|
|
548
|
+
{ partId: 'hat-crown', offsetX: 11, offsetY: 2 },
|
|
549
|
+
]),
|
|
550
|
+
},
|
|
551
|
+
];
|
|
552
|
+
/** Initialize: register all character parts */
|
|
553
|
+
function initCharacterParts() {
|
|
554
|
+
spriteGeneratorCore.registerParts(CHARACTER_PARTS);
|
|
555
|
+
}
|
|
556
|
+
|
|
557
|
+
exports.CHARACTER_PARTS = CHARACTER_PARTS;
|
|
558
|
+
exports.CHARACTER_PRESETS = CHARACTER_PRESETS;
|
|
559
|
+
exports.CLOTHING_PALETTES = CLOTHING_PALETTES;
|
|
560
|
+
exports.HAIR_PALETTES = HAIR_PALETTES;
|
|
561
|
+
exports.SKIN_PALETTES = SKIN_PALETTES;
|
|
562
|
+
exports.initCharacterParts = initCharacterParts;
|
|
563
|
+
//# sourceMappingURL=characterGeneratorPresets.js.map
|