lpc-forge 1.0.5 → 1.2.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.
Files changed (89) hide show
  1. package/CREDITS.csv +0 -19962
  2. package/dist/assets/manager.js +143 -21
  3. package/dist/assets/manager.js.map +1 -1
  4. package/dist/audio/music-catalog.js +16 -16
  5. package/dist/audio/music-catalog.js.map +1 -1
  6. package/dist/audio/sfx-generator.js +12 -5
  7. package/dist/audio/sfx-generator.js.map +1 -1
  8. package/dist/character/batch.js +9 -0
  9. package/dist/character/batch.js.map +1 -1
  10. package/dist/character/composer.js +43 -35
  11. package/dist/character/composer.js.map +1 -1
  12. package/dist/character/definitions.js +7 -6
  13. package/dist/character/definitions.js.map +1 -1
  14. package/dist/character/types.d.ts +4 -2
  15. package/dist/character/types.js +15 -17
  16. package/dist/character/types.js.map +1 -1
  17. package/dist/cli.js +1 -0
  18. package/dist/export/godot.d.ts +8 -0
  19. package/dist/export/godot.js +21 -14
  20. package/dist/export/godot.js.map +1 -1
  21. package/dist/license.js +43 -28
  22. package/dist/lighting/index.js +5 -5
  23. package/dist/lighting/index.js.map +1 -1
  24. package/dist/lighting/particles.js +0 -1
  25. package/dist/lighting/particles.js.map +1 -1
  26. package/dist/lighting/presets.js +0 -2
  27. package/dist/lighting/presets.js.map +1 -1
  28. package/dist/lighting/types.d.ts +2 -1
  29. package/dist/map/cellular.js +17 -4
  30. package/dist/map/cellular.js.map +1 -1
  31. package/dist/map/dungeon.js +11 -2
  32. package/dist/map/dungeon.js.map +1 -1
  33. package/dist/map/multifloor.d.ts +1 -1
  34. package/dist/map/multifloor.js +4 -3
  35. package/dist/map/multifloor.js.map +1 -1
  36. package/dist/map/overworld.js +3 -0
  37. package/dist/map/overworld.js.map +1 -1
  38. package/dist/map/town.js +6 -1
  39. package/dist/map/town.js.map +1 -1
  40. package/dist/map/wfc.js +1 -0
  41. package/dist/map/wfc.js.map +1 -1
  42. package/dist/systems/day-night.js +4 -1
  43. package/dist/systems/day-night.js.map +1 -1
  44. package/dist/systems/dialog.js +3 -0
  45. package/dist/systems/dialog.js.map +1 -1
  46. package/dist/systems/enemy-ai.js +20 -9
  47. package/dist/systems/enemy-ai.js.map +1 -1
  48. package/dist/systems/hud-full.js +2 -0
  49. package/dist/systems/hud-full.js.map +1 -1
  50. package/dist/systems/index.js +10 -1
  51. package/dist/systems/index.js.map +1 -1
  52. package/dist/systems/inventory.js +3 -2
  53. package/dist/systems/inventory.js.map +1 -1
  54. package/dist/systems/loot.js +4 -2
  55. package/dist/systems/loot.js.map +1 -1
  56. package/dist/systems/menu.js +6 -3
  57. package/dist/systems/menu.js.map +1 -1
  58. package/dist/systems/quest.js +11 -7
  59. package/dist/systems/quest.js.map +1 -1
  60. package/dist/systems/save-load.js +5 -7
  61. package/dist/systems/save-load.js.map +1 -1
  62. package/dist/systems/scene-transition.js +3 -2
  63. package/dist/systems/scene-transition.js.map +1 -1
  64. package/dist/systems/writer.js +6 -1
  65. package/dist/systems/writer.js.map +1 -1
  66. package/dist/tileset/atlas.js +4 -3
  67. package/dist/tileset/atlas.js.map +1 -1
  68. package/dist/tileset/registry.js.map +1 -1
  69. package/dist/tileset/terrain.js +4 -3
  70. package/dist/tileset/terrain.js.map +1 -1
  71. package/dist/ui/generator.js +45 -62
  72. package/dist/ui/generator.js.map +1 -1
  73. package/dist/ui/icons.js +102 -129
  74. package/dist/ui/icons.js.map +1 -1
  75. package/dist/ui/index.d.ts +2 -2
  76. package/dist/ui/index.js +2 -2
  77. package/dist/ui/index.js.map +1 -1
  78. package/dist/ui/pixel-utils.d.ts +27 -0
  79. package/dist/ui/pixel-utils.js +37 -0
  80. package/dist/ui/pixel-utils.js.map +1 -0
  81. package/dist/ui/portrait.js +1 -5
  82. package/dist/ui/portrait.js.map +1 -1
  83. package/dist/ui/props.js +85 -111
  84. package/dist/ui/props.js.map +1 -1
  85. package/dist/utils/credits.js +1 -1
  86. package/dist/utils/credits.js.map +1 -1
  87. package/dist/utils/rng.js +5 -0
  88. package/dist/utils/rng.js.map +1 -1
  89. package/package.json +2 -2
package/dist/ui/icons.js CHANGED
@@ -1,57 +1,30 @@
1
1
  import sharp from 'sharp';
2
2
  import { mkdir } from 'node:fs/promises';
3
3
  import { join } from 'node:path';
4
+ import { hexToRGBA, setPixel, fillRect } from './pixel-utils.js';
4
5
  function createBuffer(width, height) {
5
6
  return Buffer.alloc(width * height * 4, 0);
6
7
  }
7
- function hexToRGBA(hex) {
8
- const h = hex.replace('#', '');
9
- return {
10
- r: parseInt(h.substring(0, 2), 16),
11
- g: parseInt(h.substring(2, 4), 16),
12
- b: parseInt(h.substring(4, 6), 16),
13
- alpha: 255,
14
- };
15
- }
16
- function setPixel(buf, width, x, y, color) {
17
- if (x < 0 || y < 0 || x >= width)
18
- return;
19
- const idx = (y * width + x) * 4;
20
- if (idx + 3 >= buf.length)
21
- return;
22
- const { r, g, b, alpha } = hexToRGBA(color);
23
- buf[idx] = r;
24
- buf[idx + 1] = g;
25
- buf[idx + 2] = b;
26
- buf[idx + 3] = alpha;
27
- }
28
- function fillRect(buf, w, x, y, rw, rh, color) {
29
- for (let dy = 0; dy < rh; dy++) {
30
- for (let dx = 0; dx < rw; dx++) {
31
- setPixel(buf, w, x + dx, y + dy, color);
32
- }
33
- }
34
- }
35
8
  const ICON_SIZE = 16;
36
9
  const ICON_DRAW_FUNCTIONS = {
37
10
  // WEAPONS
38
11
  iron_sword: {
39
12
  draw: (buf, w) => {
40
- fillRect(buf, w, 7, 1, 2, 10, '#AAAAAA'); // blade
41
- fillRect(buf, w, 6, 0, 4, 1, '#CCCCCC'); // tip
42
- fillRect(buf, w, 4, 10, 8, 2, '#8B6914'); // guard
43
- fillRect(buf, w, 7, 12, 2, 3, '#6B4F10'); // handle
44
- setPixel(buf, w, 7, 15, '#FFD700'); // pommel
45
- setPixel(buf, w, 8, 15, '#FFD700');
13
+ fillRect(buf, w, ICON_SIZE, 7, 1, 2, 10, hexToRGBA('#AAAAAA')); // blade
14
+ fillRect(buf, w, ICON_SIZE, 6, 0, 4, 1, hexToRGBA('#CCCCCC')); // tip
15
+ fillRect(buf, w, ICON_SIZE, 4, 10, 8, 2, hexToRGBA('#8B6914')); // guard
16
+ fillRect(buf, w, ICON_SIZE, 7, 12, 2, 3, hexToRGBA('#6B4F10')); // handle
17
+ setPixel(buf, w, ICON_SIZE, 7, 15, hexToRGBA('#FFD700')); // pommel
18
+ setPixel(buf, w, ICON_SIZE, 8, 15, hexToRGBA('#FFD700'));
46
19
  },
47
20
  entry: { name: 'Iron Sword', category: 'weapon', description: 'Basic iron sword' },
48
21
  },
49
22
  magic_staff: {
50
23
  draw: (buf, w) => {
51
- fillRect(buf, w, 7, 4, 2, 12, '#6B4F10'); // shaft
52
- fillRect(buf, w, 5, 1, 6, 4, '#7B2D8E'); // orb
53
- fillRect(buf, w, 6, 2, 4, 2, '#AA55CC'); // glow
54
- setPixel(buf, w, 7, 2, '#FFFFFF');
24
+ fillRect(buf, w, ICON_SIZE, 7, 4, 2, 12, hexToRGBA('#6B4F10')); // shaft
25
+ fillRect(buf, w, ICON_SIZE, 5, 1, 6, 4, hexToRGBA('#7B2D8E')); // orb
26
+ fillRect(buf, w, ICON_SIZE, 6, 2, 4, 2, hexToRGBA('#AA55CC')); // glow
27
+ setPixel(buf, w, ICON_SIZE, 7, 2, hexToRGBA('#FFFFFF'));
55
28
  },
56
29
  entry: { name: 'Magic Staff', category: 'weapon', description: 'Staff with magic orb' },
57
30
  },
@@ -60,154 +33,154 @@ const ICON_DRAW_FUNCTIONS = {
60
33
  // Bow curve
61
34
  for (let y = 2; y <= 13; y++) {
62
35
  const x = y <= 4 ? 4 + (4 - y) : y >= 11 ? 4 + (y - 10) : 4;
63
- setPixel(buf, w, x, y, '#8B6914');
36
+ setPixel(buf, w, ICON_SIZE, x, y, hexToRGBA('#8B6914'));
64
37
  }
65
38
  // String
66
39
  for (let y = 2; y <= 13; y++) {
67
- setPixel(buf, w, 10, y, '#CCCCCC');
40
+ setPixel(buf, w, ICON_SIZE, 10, y, hexToRGBA('#CCCCCC'));
68
41
  }
69
42
  },
70
43
  entry: { name: 'Bow', category: 'weapon', description: 'Wooden bow' },
71
44
  },
72
45
  dagger: {
73
46
  draw: (buf, w) => {
74
- fillRect(buf, w, 7, 2, 2, 7, '#AAAAAA');
75
- setPixel(buf, w, 7, 1, '#CCCCCC');
76
- setPixel(buf, w, 8, 1, '#CCCCCC');
77
- fillRect(buf, w, 5, 9, 6, 1, '#8B6914');
78
- fillRect(buf, w, 7, 10, 2, 4, '#6B4F10');
47
+ fillRect(buf, w, ICON_SIZE, 7, 2, 2, 7, hexToRGBA('#AAAAAA'));
48
+ setPixel(buf, w, ICON_SIZE, 7, 1, hexToRGBA('#CCCCCC'));
49
+ setPixel(buf, w, ICON_SIZE, 8, 1, hexToRGBA('#CCCCCC'));
50
+ fillRect(buf, w, ICON_SIZE, 5, 9, 6, 1, hexToRGBA('#8B6914'));
51
+ fillRect(buf, w, ICON_SIZE, 7, 10, 2, 4, hexToRGBA('#6B4F10'));
79
52
  },
80
53
  entry: { name: 'Dagger', category: 'weapon', description: 'Short blade' },
81
54
  },
82
55
  // ARMOR
83
56
  shield: {
84
57
  draw: (buf, w) => {
85
- fillRect(buf, w, 3, 2, 10, 12, '#4444AA');
86
- fillRect(buf, w, 4, 3, 8, 10, '#5555CC');
87
- fillRect(buf, w, 6, 5, 4, 4, '#FFD700'); // emblem
88
- fillRect(buf, w, 7, 6, 2, 2, '#FFFFFF');
58
+ fillRect(buf, w, ICON_SIZE, 3, 2, 10, 12, hexToRGBA('#4444AA'));
59
+ fillRect(buf, w, ICON_SIZE, 4, 3, 8, 10, hexToRGBA('#5555CC'));
60
+ fillRect(buf, w, ICON_SIZE, 6, 5, 4, 4, hexToRGBA('#FFD700')); // emblem
61
+ fillRect(buf, w, ICON_SIZE, 7, 6, 2, 2, hexToRGBA('#FFFFFF'));
89
62
  },
90
63
  entry: { name: 'Shield', category: 'armor', description: 'Blue shield with emblem' },
91
64
  },
92
65
  helmet: {
93
66
  draw: (buf, w) => {
94
- fillRect(buf, w, 4, 4, 8, 8, '#888888');
95
- fillRect(buf, w, 5, 5, 6, 6, '#AAAAAA');
96
- fillRect(buf, w, 3, 8, 10, 2, '#888888'); // visor
97
- fillRect(buf, w, 5, 2, 6, 3, '#999999'); // dome
98
- fillRect(buf, w, 7, 1, 2, 2, '#AAAAAA'); // crest
67
+ fillRect(buf, w, ICON_SIZE, 4, 4, 8, 8, hexToRGBA('#888888'));
68
+ fillRect(buf, w, ICON_SIZE, 5, 5, 6, 6, hexToRGBA('#AAAAAA'));
69
+ fillRect(buf, w, ICON_SIZE, 3, 8, 10, 2, hexToRGBA('#888888')); // visor
70
+ fillRect(buf, w, ICON_SIZE, 5, 2, 6, 3, hexToRGBA('#999999')); // dome
71
+ fillRect(buf, w, ICON_SIZE, 7, 1, 2, 2, hexToRGBA('#AAAAAA')); // crest
99
72
  },
100
73
  entry: { name: 'Helmet', category: 'armor', description: 'Iron helmet' },
101
74
  },
102
75
  chestplate: {
103
76
  draw: (buf, w) => {
104
- fillRect(buf, w, 3, 2, 10, 12, '#888888');
105
- fillRect(buf, w, 4, 3, 8, 10, '#AAAAAA');
106
- fillRect(buf, w, 3, 2, 4, 3, '#888888'); // shoulder L
107
- fillRect(buf, w, 9, 2, 4, 3, '#888888'); // shoulder R
108
- fillRect(buf, w, 6, 6, 4, 4, '#FFD700'); // emblem
77
+ fillRect(buf, w, ICON_SIZE, 3, 2, 10, 12, hexToRGBA('#888888'));
78
+ fillRect(buf, w, ICON_SIZE, 4, 3, 8, 10, hexToRGBA('#AAAAAA'));
79
+ fillRect(buf, w, ICON_SIZE, 3, 2, 4, 3, hexToRGBA('#888888')); // shoulder L
80
+ fillRect(buf, w, ICON_SIZE, 9, 2, 4, 3, hexToRGBA('#888888')); // shoulder R
81
+ fillRect(buf, w, ICON_SIZE, 6, 6, 4, 4, hexToRGBA('#FFD700')); // emblem
109
82
  },
110
83
  entry: { name: 'Chestplate', category: 'armor', description: 'Iron chestplate' },
111
84
  },
112
85
  // POTIONS
113
86
  health_potion: {
114
87
  draw: (buf, w) => {
115
- fillRect(buf, w, 5, 6, 6, 8, '#CC3333'); // bottle
116
- fillRect(buf, w, 6, 3, 4, 3, '#DDDDDD'); // neck
117
- fillRect(buf, w, 5, 3, 6, 1, '#AAAAAA'); // cap
118
- fillRect(buf, w, 7, 8, 2, 2, '#FF6666'); // highlight
88
+ fillRect(buf, w, ICON_SIZE, 5, 6, 6, 8, hexToRGBA('#CC3333')); // bottle
89
+ fillRect(buf, w, ICON_SIZE, 6, 3, 4, 3, hexToRGBA('#DDDDDD')); // neck
90
+ fillRect(buf, w, ICON_SIZE, 5, 3, 6, 1, hexToRGBA('#AAAAAA')); // cap
91
+ fillRect(buf, w, ICON_SIZE, 7, 8, 2, 2, hexToRGBA('#FF6666')); // highlight
119
92
  },
120
93
  entry: { name: 'Health Potion', category: 'potion', description: 'Red healing potion' },
121
94
  },
122
95
  mana_potion: {
123
96
  draw: (buf, w) => {
124
- fillRect(buf, w, 5, 6, 6, 8, '#3366CC');
125
- fillRect(buf, w, 6, 3, 4, 3, '#DDDDDD');
126
- fillRect(buf, w, 5, 3, 6, 1, '#AAAAAA');
127
- fillRect(buf, w, 7, 8, 2, 2, '#6699FF');
97
+ fillRect(buf, w, ICON_SIZE, 5, 6, 6, 8, hexToRGBA('#3366CC'));
98
+ fillRect(buf, w, ICON_SIZE, 6, 3, 4, 3, hexToRGBA('#DDDDDD'));
99
+ fillRect(buf, w, ICON_SIZE, 5, 3, 6, 1, hexToRGBA('#AAAAAA'));
100
+ fillRect(buf, w, ICON_SIZE, 7, 8, 2, 2, hexToRGBA('#6699FF'));
128
101
  },
129
102
  entry: { name: 'Mana Potion', category: 'potion', description: 'Blue mana potion' },
130
103
  },
131
104
  poison_potion: {
132
105
  draw: (buf, w) => {
133
- fillRect(buf, w, 5, 6, 6, 8, '#33AA33');
134
- fillRect(buf, w, 6, 3, 4, 3, '#DDDDDD');
135
- fillRect(buf, w, 5, 3, 6, 1, '#AAAAAA');
136
- fillRect(buf, w, 7, 8, 2, 2, '#66DD66');
106
+ fillRect(buf, w, ICON_SIZE, 5, 6, 6, 8, hexToRGBA('#33AA33'));
107
+ fillRect(buf, w, ICON_SIZE, 6, 3, 4, 3, hexToRGBA('#DDDDDD'));
108
+ fillRect(buf, w, ICON_SIZE, 5, 3, 6, 1, hexToRGBA('#AAAAAA'));
109
+ fillRect(buf, w, ICON_SIZE, 7, 8, 2, 2, hexToRGBA('#66DD66'));
137
110
  },
138
111
  entry: { name: 'Poison Potion', category: 'potion', description: 'Green poison' },
139
112
  },
140
113
  // FOOD
141
114
  bread: {
142
115
  draw: (buf, w) => {
143
- fillRect(buf, w, 3, 8, 10, 4, '#CC9933');
144
- fillRect(buf, w, 4, 6, 8, 3, '#DDAA44');
145
- fillRect(buf, w, 5, 5, 6, 2, '#CC9933');
146
- setPixel(buf, w, 6, 8, '#BB8822');
147
- setPixel(buf, w, 9, 8, '#BB8822');
116
+ fillRect(buf, w, ICON_SIZE, 3, 8, 10, 4, hexToRGBA('#CC9933'));
117
+ fillRect(buf, w, ICON_SIZE, 4, 6, 8, 3, hexToRGBA('#DDAA44'));
118
+ fillRect(buf, w, ICON_SIZE, 5, 5, 6, 2, hexToRGBA('#CC9933'));
119
+ setPixel(buf, w, ICON_SIZE, 6, 8, hexToRGBA('#BB8822'));
120
+ setPixel(buf, w, ICON_SIZE, 9, 8, hexToRGBA('#BB8822'));
148
121
  },
149
122
  entry: { name: 'Bread', category: 'food', description: 'Loaf of bread' },
150
123
  },
151
124
  apple: {
152
125
  draw: (buf, w) => {
153
- fillRect(buf, w, 5, 5, 6, 7, '#CC3333');
154
- fillRect(buf, w, 4, 7, 8, 4, '#CC3333');
155
- fillRect(buf, w, 7, 3, 2, 3, '#6B4F10'); // stem
156
- setPixel(buf, w, 9, 4, '#33AA33'); // leaf
157
- setPixel(buf, w, 10, 3, '#33AA33');
158
- setPixel(buf, w, 6, 6, '#FF6666'); // highlight
126
+ fillRect(buf, w, ICON_SIZE, 5, 5, 6, 7, hexToRGBA('#CC3333'));
127
+ fillRect(buf, w, ICON_SIZE, 4, 7, 8, 4, hexToRGBA('#CC3333'));
128
+ fillRect(buf, w, ICON_SIZE, 7, 3, 2, 3, hexToRGBA('#6B4F10')); // stem
129
+ setPixel(buf, w, ICON_SIZE, 9, 4, hexToRGBA('#33AA33')); // leaf
130
+ setPixel(buf, w, ICON_SIZE, 10, 3, hexToRGBA('#33AA33'));
131
+ setPixel(buf, w, ICON_SIZE, 6, 6, hexToRGBA('#FF6666')); // highlight
159
132
  },
160
133
  entry: { name: 'Apple', category: 'food', description: 'Red apple' },
161
134
  },
162
135
  // KEYS
163
136
  gold_key: {
164
137
  draw: (buf, w) => {
165
- fillRect(buf, w, 6, 2, 4, 4, '#FFD700'); // bow (ring)
166
- fillRect(buf, w, 7, 3, 2, 2, '#000000'); // hole
167
- fillRect(buf, w, 7, 6, 2, 7, '#FFD700'); // shaft
168
- fillRect(buf, w, 9, 11, 2, 2, '#FFD700'); // bit 1
169
- fillRect(buf, w, 9, 8, 2, 2, '#FFD700'); // bit 2
138
+ fillRect(buf, w, ICON_SIZE, 6, 2, 4, 4, hexToRGBA('#FFD700')); // bow (ring)
139
+ fillRect(buf, w, ICON_SIZE, 7, 3, 2, 2, hexToRGBA('#000000')); // hole
140
+ fillRect(buf, w, ICON_SIZE, 7, 6, 2, 7, hexToRGBA('#FFD700')); // shaft
141
+ fillRect(buf, w, ICON_SIZE, 9, 11, 2, 2, hexToRGBA('#FFD700')); // bit 1
142
+ fillRect(buf, w, ICON_SIZE, 9, 8, 2, 2, hexToRGBA('#FFD700')); // bit 2
170
143
  },
171
144
  entry: { name: 'Gold Key', category: 'key', description: 'Ornate gold key' },
172
145
  },
173
146
  iron_key: {
174
147
  draw: (buf, w) => {
175
- fillRect(buf, w, 6, 2, 4, 4, '#888888');
176
- fillRect(buf, w, 7, 3, 2, 2, '#000000');
177
- fillRect(buf, w, 7, 6, 2, 7, '#888888');
178
- fillRect(buf, w, 9, 11, 2, 2, '#888888');
179
- fillRect(buf, w, 9, 8, 2, 2, '#888888');
148
+ fillRect(buf, w, ICON_SIZE, 6, 2, 4, 4, hexToRGBA('#888888'));
149
+ fillRect(buf, w, ICON_SIZE, 7, 3, 2, 2, hexToRGBA('#000000'));
150
+ fillRect(buf, w, ICON_SIZE, 7, 6, 2, 7, hexToRGBA('#888888'));
151
+ fillRect(buf, w, ICON_SIZE, 9, 11, 2, 2, hexToRGBA('#888888'));
152
+ fillRect(buf, w, ICON_SIZE, 9, 8, 2, 2, hexToRGBA('#888888'));
180
153
  },
181
154
  entry: { name: 'Iron Key', category: 'key', description: 'Simple iron key' },
182
155
  },
183
156
  // GEMS
184
157
  ruby: {
185
158
  draw: (buf, w) => {
186
- fillRect(buf, w, 6, 4, 4, 6, '#CC2222');
187
- fillRect(buf, w, 5, 6, 6, 3, '#CC2222');
188
- setPixel(buf, w, 7, 3, '#CC2222');
189
- setPixel(buf, w, 8, 3, '#CC2222');
190
- setPixel(buf, w, 7, 10, '#CC2222');
191
- setPixel(buf, w, 8, 10, '#CC2222');
192
- fillRect(buf, w, 6, 5, 2, 2, '#FF6666'); // shine
159
+ fillRect(buf, w, ICON_SIZE, 6, 4, 4, 6, hexToRGBA('#CC2222'));
160
+ fillRect(buf, w, ICON_SIZE, 5, 6, 6, 3, hexToRGBA('#CC2222'));
161
+ setPixel(buf, w, ICON_SIZE, 7, 3, hexToRGBA('#CC2222'));
162
+ setPixel(buf, w, ICON_SIZE, 8, 3, hexToRGBA('#CC2222'));
163
+ setPixel(buf, w, ICON_SIZE, 7, 10, hexToRGBA('#CC2222'));
164
+ setPixel(buf, w, ICON_SIZE, 8, 10, hexToRGBA('#CC2222'));
165
+ fillRect(buf, w, ICON_SIZE, 6, 5, 2, 2, hexToRGBA('#FF6666')); // shine
193
166
  },
194
167
  entry: { name: 'Ruby', category: 'gem', description: 'Red gemstone' },
195
168
  },
196
169
  emerald: {
197
170
  draw: (buf, w) => {
198
- fillRect(buf, w, 5, 4, 6, 8, '#22AA22');
199
- fillRect(buf, w, 6, 3, 4, 1, '#22AA22');
200
- fillRect(buf, w, 6, 12, 4, 1, '#22AA22');
201
- fillRect(buf, w, 6, 5, 2, 2, '#66DD66');
171
+ fillRect(buf, w, ICON_SIZE, 5, 4, 6, 8, hexToRGBA('#22AA22'));
172
+ fillRect(buf, w, ICON_SIZE, 6, 3, 4, 1, hexToRGBA('#22AA22'));
173
+ fillRect(buf, w, ICON_SIZE, 6, 12, 4, 1, hexToRGBA('#22AA22'));
174
+ fillRect(buf, w, ICON_SIZE, 6, 5, 2, 2, hexToRGBA('#66DD66'));
202
175
  },
203
176
  entry: { name: 'Emerald', category: 'gem', description: 'Green gemstone' },
204
177
  },
205
178
  sapphire: {
206
179
  draw: (buf, w) => {
207
- fillRect(buf, w, 5, 4, 6, 8, '#2244CC');
208
- fillRect(buf, w, 6, 3, 4, 1, '#2244CC');
209
- fillRect(buf, w, 6, 12, 4, 1, '#2244CC');
210
- fillRect(buf, w, 6, 5, 2, 2, '#6688FF');
180
+ fillRect(buf, w, ICON_SIZE, 5, 4, 6, 8, hexToRGBA('#2244CC'));
181
+ fillRect(buf, w, ICON_SIZE, 6, 3, 4, 1, hexToRGBA('#2244CC'));
182
+ fillRect(buf, w, ICON_SIZE, 6, 12, 4, 1, hexToRGBA('#2244CC'));
183
+ fillRect(buf, w, ICON_SIZE, 6, 5, 2, 2, hexToRGBA('#6688FF'));
211
184
  },
212
185
  entry: { name: 'Sapphire', category: 'gem', description: 'Blue gemstone' },
213
186
  },
@@ -216,48 +189,48 @@ const ICON_DRAW_FUNCTIONS = {
216
189
  draw: (buf, w) => {
217
190
  // Handle (diagonal)
218
191
  for (let i = 0; i < 10; i++) {
219
- setPixel(buf, w, 4 + i, 5 + i, '#6B4F10');
220
- setPixel(buf, w, 5 + i, 5 + i, '#6B4F10');
192
+ setPixel(buf, w, ICON_SIZE, 4 + i, 5 + i, hexToRGBA('#6B4F10'));
193
+ setPixel(buf, w, ICON_SIZE, 5 + i, 5 + i, hexToRGBA('#6B4F10'));
221
194
  }
222
195
  // Head
223
- fillRect(buf, w, 3, 3, 8, 2, '#888888');
224
- setPixel(buf, w, 2, 4, '#888888');
225
- setPixel(buf, w, 11, 4, '#888888');
196
+ fillRect(buf, w, ICON_SIZE, 3, 3, 8, 2, hexToRGBA('#888888'));
197
+ setPixel(buf, w, ICON_SIZE, 2, 4, hexToRGBA('#888888'));
198
+ setPixel(buf, w, ICON_SIZE, 11, 4, hexToRGBA('#888888'));
226
199
  },
227
200
  entry: { name: 'Pickaxe', category: 'tool', description: 'Mining pickaxe' },
228
201
  },
229
202
  // SCROLLS
230
203
  spell_scroll: {
231
204
  draw: (buf, w) => {
232
- fillRect(buf, w, 4, 3, 8, 10, '#F5E6C8'); // parchment
233
- fillRect(buf, w, 3, 3, 2, 10, '#D4C4A8'); // left roll
234
- fillRect(buf, w, 11, 3, 2, 10, '#D4C4A8'); // right roll
205
+ fillRect(buf, w, ICON_SIZE, 4, 3, 8, 10, hexToRGBA('#F5E6C8')); // parchment
206
+ fillRect(buf, w, ICON_SIZE, 3, 3, 2, 10, hexToRGBA('#D4C4A8')); // left roll
207
+ fillRect(buf, w, ICON_SIZE, 11, 3, 2, 10, hexToRGBA('#D4C4A8')); // right roll
235
208
  // Text lines
236
- fillRect(buf, w, 5, 5, 6, 1, '#4A3510');
237
- fillRect(buf, w, 5, 7, 5, 1, '#4A3510');
238
- fillRect(buf, w, 5, 9, 6, 1, '#4A3510');
209
+ fillRect(buf, w, ICON_SIZE, 5, 5, 6, 1, hexToRGBA('#4A3510'));
210
+ fillRect(buf, w, ICON_SIZE, 5, 7, 5, 1, hexToRGBA('#4A3510'));
211
+ fillRect(buf, w, ICON_SIZE, 5, 9, 6, 1, hexToRGBA('#4A3510'));
239
212
  },
240
213
  entry: { name: 'Spell Scroll', category: 'scroll', description: 'Magical scroll' },
241
214
  },
242
215
  // MISC
243
216
  coin: {
244
217
  draw: (buf, w) => {
245
- fillRect(buf, w, 5, 4, 6, 8, '#FFD700');
246
- fillRect(buf, w, 6, 3, 4, 1, '#FFD700');
247
- fillRect(buf, w, 6, 12, 4, 1, '#FFD700');
248
- fillRect(buf, w, 4, 6, 1, 4, '#FFD700');
249
- fillRect(buf, w, 11, 6, 1, 4, '#FFD700');
250
- fillRect(buf, w, 7, 5, 2, 6, '#CC9900'); // center mark
251
- setPixel(buf, w, 6, 5, '#FFEE66'); // shine
218
+ fillRect(buf, w, ICON_SIZE, 5, 4, 6, 8, hexToRGBA('#FFD700'));
219
+ fillRect(buf, w, ICON_SIZE, 6, 3, 4, 1, hexToRGBA('#FFD700'));
220
+ fillRect(buf, w, ICON_SIZE, 6, 12, 4, 1, hexToRGBA('#FFD700'));
221
+ fillRect(buf, w, ICON_SIZE, 4, 6, 1, 4, hexToRGBA('#FFD700'));
222
+ fillRect(buf, w, ICON_SIZE, 11, 6, 1, 4, hexToRGBA('#FFD700'));
223
+ fillRect(buf, w, ICON_SIZE, 7, 5, 2, 6, hexToRGBA('#CC9900')); // center mark
224
+ setPixel(buf, w, ICON_SIZE, 6, 5, hexToRGBA('#FFEE66')); // shine
252
225
  },
253
226
  entry: { name: 'Gold Coin', category: 'misc', description: 'Gold coin currency' },
254
227
  },
255
228
  ring: {
256
229
  draw: (buf, w) => {
257
- fillRect(buf, w, 5, 5, 6, 6, '#FFD700');
258
- fillRect(buf, w, 6, 6, 4, 4, '#000000'); // hole (transparent would be better)
259
- fillRect(buf, w, 6, 6, 4, 4, '#00000000');
260
- fillRect(buf, w, 6, 4, 4, 1, '#CC2222'); // gem
230
+ fillRect(buf, w, ICON_SIZE, 5, 5, 6, 6, hexToRGBA('#FFD700'));
231
+ fillRect(buf, w, ICON_SIZE, 6, 6, 4, 4, hexToRGBA('#000000')); // hole (transparent would be better)
232
+ fillRect(buf, w, ICON_SIZE, 6, 6, 4, 4, hexToRGBA('#00000000'));
233
+ fillRect(buf, w, ICON_SIZE, 6, 4, 4, 1, hexToRGBA('#CC2222')); // gem
261
234
  },
262
235
  entry: { name: 'Magic Ring', category: 'misc', description: 'Gold ring with red gem' },
263
236
  },
@@ -1 +1 @@
1
- {"version":3,"file":"icons.js","sourceRoot":"","sources":["../../src/ui/icons.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"icons.js","sourceRoot":"","sources":["../../src/ui/icons.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- export { generateUIKit, listThemes, UI_THEMES } from './generator.js';
2
- export { UI_THEMES as themes } from './themes.js';
1
+ export { generateUIKit, listThemes } from './generator.js';
2
+ export { UI_THEMES } from './themes.js';
3
3
  export { extractPortrait, extractAllPortraits } from './portrait.js';
4
4
  export { generateAllProps, listProps, PROP_GENERATORS } from './props.js';
5
5
  export { generateAllIcons, listIcons, iconCount } from './icons.js';
package/dist/ui/index.js CHANGED
@@ -1,5 +1,5 @@
1
- export { generateUIKit, listThemes, UI_THEMES } from './generator.js';
2
- export { UI_THEMES as themes } from './themes.js';
1
+ export { generateUIKit, listThemes } from './generator.js';
2
+ export { UI_THEMES } from './themes.js';
3
3
  export { extractPortrait, extractAllPortraits } from './portrait.js';
4
4
  export { generateAllProps, listProps, PROP_GENERATORS } from './props.js';
5
5
  export { generateAllIcons, listIcons, iconCount } from './icons.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACtE,OAAO,EAAE,SAAS,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Shared pixel-manipulation utilities for UI generation.
3
+ *
4
+ * Fixes applied:
5
+ * - HIGH-007/008: hexToRGBA now parses an optional alpha channel from
6
+ * 8-character hex strings instead of hard-coding 255.
7
+ * - MEDIUM-010/011: setPixel includes a `y >= height` bounds check.
8
+ * - HIGH-015: single source of truth (code deduplication).
9
+ */
10
+ export declare function hexToRGBA(hex: string): {
11
+ r: number;
12
+ g: number;
13
+ b: number;
14
+ alpha: number;
15
+ };
16
+ export declare function setPixel(buf: Buffer, width: number, height: number, x: number, y: number, color: {
17
+ r: number;
18
+ g: number;
19
+ b: number;
20
+ alpha: number;
21
+ }): void;
22
+ export declare function fillRect(buf: Buffer, width: number, height: number, x: number, y: number, w: number, h: number, color: {
23
+ r: number;
24
+ g: number;
25
+ b: number;
26
+ alpha: number;
27
+ }): void;
@@ -0,0 +1,37 @@
1
+ /**
2
+ * Shared pixel-manipulation utilities for UI generation.
3
+ *
4
+ * Fixes applied:
5
+ * - HIGH-007/008: hexToRGBA now parses an optional alpha channel from
6
+ * 8-character hex strings instead of hard-coding 255.
7
+ * - MEDIUM-010/011: setPixel includes a `y >= height` bounds check.
8
+ * - HIGH-015: single source of truth (code deduplication).
9
+ */
10
+ export function hexToRGBA(hex) {
11
+ const h = hex.replace('#', '');
12
+ return {
13
+ r: parseInt(h.substring(0, 2), 16),
14
+ g: parseInt(h.substring(2, 4), 16),
15
+ b: parseInt(h.substring(4, 6), 16),
16
+ alpha: h.length >= 8 ? parseInt(h.substring(6, 8), 16) : 255,
17
+ };
18
+ }
19
+ export function setPixel(buf, width, height, x, y, color) {
20
+ if (x < 0 || y < 0 || x >= width || y >= height)
21
+ return;
22
+ const idx = (y * width + x) * 4;
23
+ if (idx + 3 >= buf.length)
24
+ return;
25
+ buf[idx] = color.r;
26
+ buf[idx + 1] = color.g;
27
+ buf[idx + 2] = color.b;
28
+ buf[idx + 3] = color.alpha;
29
+ }
30
+ export function fillRect(buf, width, height, x, y, w, h, color) {
31
+ for (let dy = 0; dy < h; dy++) {
32
+ for (let dx = 0; dx < w; dx++) {
33
+ setPixel(buf, width, height, x + dx, y + dy, color);
34
+ }
35
+ }
36
+ }
37
+ //# sourceMappingURL=pixel-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pixel-utils.js","sourceRoot":"","sources":["../../src/ui/pixel-utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,MAAM,UAAU,SAAS,CAAC,GAAW;IACnC,MAAM,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IAC/B,OAAO;QACL,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;QAClC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;QAClC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;QAClC,KAAK,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG;KAC7D,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,QAAQ,CACtB,GAAW,EACX,KAAa,EACb,MAAc,EACd,CAAS,EACT,CAAS,EACT,KAAyD;IAEzD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,MAAM;QAAE,OAAO;IACxD,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IAChC,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM;QAAE,OAAO;IAClC,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;IACnB,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;IACvB,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;IACvB,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,QAAQ,CACtB,GAAW,EACX,KAAa,EACb,MAAc,EACd,CAAS,EACT,CAAS,EACT,CAAS,EACT,CAAS,EACT,KAAyD;IAEzD,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC;QAC9B,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC;YAC9B,QAAQ,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,KAAK,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -63,10 +63,6 @@ export async function extractPortrait(sheetBuffer, outputDir, characterName) {
63
63
  * Requires the character compositor to generate sheets first.
64
64
  */
65
65
  export async function extractAllPortraits(outputDir) {
66
- // This is a convenience wrapper actual batch portrait extraction
67
- // requires compositing each preset first, which is handled by the CLI command
68
- const portraitDir = join(outputDir, 'portraits');
69
- await mkdir(portraitDir, { recursive: true });
70
- return [];
66
+ throw new Error('extractAllPortraits is not implemented. Use extractPortrait() with individual character sheets instead.');
71
67
  }
72
68
  //# sourceMappingURL=portrait.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"portrait.js","sourceRoot":"","sources":["../../src/ui/portrait.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"portrait.js","sourceRoot":"","sources":["../../src/ui/portrait.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAE3E;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,WAAmB,EACnB,SAAiB,EACjB,aAAqB;IAErB,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IACjD,MAAM,KAAK,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE9C,0CAA0C;IAC1C,uFAAuF;IACvF,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC;IACjC,MAAM,YAAY,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,WAAW,GAAG,QAAQ,CAAC,GAAG,GAAG,YAAY,CAAC;IAEhD,2BAA2B;IAC3B,MAAM,MAAM,GAAG,CAAC,CAAC;IACjB,MAAM,MAAM,GAAG,WAAW,GAAG,UAAU,CAAC;IAExC,2BAA2B;IAC3B,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC;SACnC,OAAO,CAAC;QACP,IAAI,EAAE,MAAM;QACZ,GAAG,EAAE,MAAM;QACX,KAAK,EAAE,UAAU;QACjB,MAAM,EAAE,UAAU;KACnB,CAAC;SACD,QAAQ,EAAE,CAAC;IAEd,wFAAwF;IACxF,kEAAkE;IAClE,MAAM,YAAY,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC;SACpC,OAAO,CAAC;QACP,IAAI,EAAE,EAAE;QACR,GAAG,EAAE,CAAC;QACN,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,EAAE;KACX,CAAC;SACD,QAAQ,EAAE,CAAC;IAEd,MAAM,OAAO,GAAqB,EAAE,CAAC;IAErC,0BAA0B;IAC1B,MAAM,KAAK,GAAG;QACZ,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE;QAC1B,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE;QAC3B,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE;KAC5B,CAAC;IAEF,KAAK,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,KAAK,EAAE,CAAC;QACrC,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,EAAE,GAAG,aAAa,aAAa,MAAM,MAAM,CAAC,CAAC;QAChF,MAAM,KAAK,CAAC,YAAY,CAAC;aACtB,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE;YAClB,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,qBAAqB;YACnD,GAAG,EAAE,SAAS;YACd,UAAU,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE;SAC3C,CAAC;aACD,GAAG,EAAE;aACL,MAAM,CAAC,UAAU,CAAC,CAAC;QAEtB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,aAAa,IAAI,MAAM,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/E,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,SAAiB;IAEjB,MAAM,IAAI,KAAK,CACb,yGAAyG,CAC1G,CAAC;AACJ,CAAC"}