silphscope 1.4.21 → 1.4.23

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/main.js CHANGED
@@ -1,9 +1,153 @@
1
- import { renderMon } from "./src/graphics/mons/render-mons.js";
2
- import { renderMonIcon } from "./src/graphics/mons/render-mon-icon.js";
3
- import { renderMonFoot } from "./src/graphics/mons/render-mon-foot.js";
4
- import { extract } from "./src/graphics/extract.js"; // random message for a commit lol
1
+ // anyway so for anyone reading this don't use any of these functions lol er well I should be more specific... don't use any functions other than the high-level stuff because everything else I haven't gotten around to writing the typings for as well as that they aren't ready for public use yet (mostly due to documentation and their highly unopinionated default options) but once they are complete you guys should be able to do some cool stuff with these! (provided you know stuff about GBA roms...)
5
2
 
6
- export { renderMon, renderMonIcon, renderMonFoot, extract };
3
+ // low level stuff:
4
+ import { extract } from "./src/graphics/extract.js";
5
+ import { lz77Decompress } from "./src/graphics/lz77-decompress.js";
6
+ import { RomReader } from "./src/rom-reader.js";
7
+ import { getRomConfig } from "./src/get-rom-config.js";
8
+ import { render4bppImage } from "./src/graphics/render-4bpp-image.js";
9
+ import { decode4bppTile } from "./src/graphics/decode-4bpp.js";
10
+ import { decode1bppTile } from "./src/graphics/decode-1bpp.js";
11
+ import { decodePalette } from "./src/graphics/decode-palette.js";
7
12
 
13
+ export { extract, lz77Decompress, RomReader, getRomConfig, render4bppImage, decode4bppTile, decode1bppTile, decodePalette };
14
+
15
+ // mon related (mid-level? is that even a term?) stuff:
16
+ import { renderMon as garbagePublicOptionsRenderMon } from "./src/graphics/mons/render-mons.js";
17
+ import { renderMonIcon as garbagePublicOptionsRenderMonIcon } from "./src/graphics/mons/render-mon-icon.js";
18
+ import { renderMonFoot as garbagePublicOptionsRenderMonFoot } from "./src/graphics/mons/render-mon-foot.js";
19
+ import monData from "./mon-data/monData.json" with { type: "json" };
20
+
21
+ async function renderMon(monName, mons, reader, rom, options = {}) { // so yes I could have set renderMon to just have these default options... but I kinda like it when the renderX functions default to nothing :p (let me enjoy my slightly useless code)
22
+ return garbagePublicOptionsRenderMon(monName, mons, reader, rom, {
23
+ pngFilterType: 0,
24
+ pngCompressionLevel: 4,
25
+ returnFileBuffer: false,
26
+ outputDir: "./out",
27
+ side: ["front", "back"],
28
+ variant: ["normal", "shiny"],
29
+ icon: true,
30
+ footprint: true,
31
+ ...options,
32
+ });
33
+ }
34
+
35
+ async function renderMonIcon(monName, mons, reader, rom, options = {}) {
36
+ return garbagePublicOptionsRenderMonIcon(monName, mons, reader, rom, {
37
+ pngFilterType: 0,
38
+ pngCompressionLevel: 4,
39
+ returnFileBuffer: false,
40
+ outputDir: "./out",
41
+ ...options,
42
+ });
43
+ }
44
+
45
+ async function renderMonFoot(monName, mons, reader, rom, options = {}) {
46
+ return garbagePublicOptionsRenderMonFoot(monName, mons, reader, rom, {
47
+ pngFilterType: 0,
48
+ pngCompressionLevel: 4,
49
+ returnFileBuffer: false,
50
+ outputDir: "./out",
51
+ ...options,
52
+ });
53
+ }
54
+
55
+ export { renderMon, renderMonIcon, renderMonFoot, monData };
56
+
57
+ // icon related (I feel like mid level is a term but it isn't exactly mid level...) stuff:
58
+ import { renderIcon as garbagePublicOptionsRenderIcon } from "./src/graphics/icons/render-icons.js";
59
+ import itemData from "./item-data/itemData.json" with { type: "json" };
60
+
61
+ async function renderIcon(itemName, items, reader, rom, options = {}) {
62
+ return garbagePublicOptionsRenderIcon(itemName, items, reader, rom, {
63
+ pngFilterType: 0,
64
+ pngCompressionType: 4,
65
+ returnFileBuffer: false,
66
+ outputDir: "./out",
67
+ ...options,
68
+ });
69
+ }
70
+
71
+ export { renderIcon, itemData };
72
+
73
+ // trainer related (maybe I should search the term...) stuff:
74
+ import { renderTrainer as garbagePublicOptionsRenderTrainer } from "./src/graphics/trainers/render-trainers.js";
75
+ import { renderTrainerBackPic as garbagePublicOptionsRenderTrainerBackPic } from "./src/graphics/trainers/render-trainer-back-pics.js";
76
+ import trainerData from "./trainer-data/trainerData.json" with { type: "json" };
77
+ import trainerBackData from "./trainer-data/trainerBackData.json" with { type: "json" };
78
+
79
+ async function renderTrainer(trainerName, trainers, backTrainers, reader, rom, options = {}) {
80
+ return garbagePublicOptionsRenderTrainer(trainerName, trainers, backTrainers, reader, rom, {
81
+ pngFilterType: 0,
82
+ pngCompressionLevel: 4,
83
+ returnFileBuffer: false,
84
+ outputDir: "./out",
85
+ trainerBackPics: true,
86
+ ...options,
87
+ });
88
+ }
89
+
90
+ async function renderTrainerBackPic(trainerName, trainers, reader, rom, options = {}) {
91
+ return garbagePublicOptionsRenderTrainerBackPic(trainerName, trainers, reader, rom, {
92
+ pngFilterType: 0,
93
+ pngCompressionLevel: 4,
94
+ returnFileBuffer: false,
95
+ outputDir: "./out",
96
+ ...options,
97
+ });
98
+ }
99
+
100
+ export { renderTrainer, renderTrainerBackPic, trainerData, trainerBackData };
101
+
102
+ // move related mid level (turns out it is a term :o) stuff:
103
+ import { renderMove as garbagePublicOptionsRenderMove } from "./src/graphics/moves/render-moves.js";
104
+ import moveData from "./move-data/moveData.json" with { type: "json" };
105
+
106
+ async function renderMove(moveName, moves, reader, rom, options = {}) {
107
+ return garbagePublicOptionsRenderMove(moveName, moves, reader, rom, {
108
+ pngFilterType: 0,
109
+ pngCompressionLevel: 4,
110
+ returnFileBuffer: false,
111
+ outputDir: "./out",
112
+ renderMasterImage: true,
113
+ sortUnused: true,
114
+ ...options,
115
+ });
116
+ }
117
+
118
+ export { renderMove, moveData };
119
+
120
+ // ball related mid level stuff:
121
+ import { renderBall as garbagePublicOptionsRenderBall } from "./src/graphics/balls/render-balls.js";
122
+ import { renderBallParticle as garbagePublicOptionsRenderBallParticle } from "./src/graphics/balls/render-ball-particle.js";
123
+ import ballData from "./ball-data/ballData.json" with { type: "json" };
124
+
125
+ async function renderBall(ballName, balls, reader, rom, options = {}) {
126
+ return garbagePublicOptionsRenderBall(ballName, balls, reader, rom, {
127
+ pngFilterType: 0,
128
+ pngCompressionLevel: 4,
129
+ returnFileBuffer: false,
130
+ outputDir: "./out",
131
+ ballParticles: true,
132
+ renderMasterBallImage: true,
133
+ renderMasterBallParticleImage: true,
134
+ ...options,
135
+ });
136
+ }
137
+
138
+ async function renderBallParticle(ballName, balls, reader, rom, options = {}) {
139
+ return garbagePublicOptionsRenderBallParticle(ballName, balls, reader, rom, {
140
+ pngFilterType: 0,
141
+ pngCompressionLevel: 4,
142
+ returnFileBuffer: false,
143
+ outputDir: "./out",
144
+ renderMasterBallParticleImage: true,
145
+ ...options,
146
+ });
147
+ }
148
+
149
+ export { renderBall, renderBallParticle, ballData }; // wait a second... oh well I have to redo this now... because these functions are highly unopinionated so if you don't change literally every option the defaults will just make the function do well nothing :p
150
+
151
+ // high level batch rendering thingies that is enough for most people :p
8
152
  import { renderAllMons, renderAllIcons, renderAllTrainers, renderAllMoves, renderAllBalls, renderAllGraphics } from "./src/graphics/graphics-extractor-main.js";
9
153
  export { renderAllMons, renderAllIcons, renderAllTrainers, renderAllMoves, renderAllBalls, renderAllGraphics };