Bladeren bron

Fix script for generating icons

Robert Autenrieth 8 jaren geleden
bovenliggende
commit
b6827294b7
2 gewijzigde bestanden met toevoegingen van 922 en 12 verwijderingen
  1. 873
    12
      generator/js/icons.js
  2. 49
    0
      resources/tools/update-icons.js

+ 873
- 12
generator/js/icons.js
Diff onderdrukt omdat het te groot bestand
Bestand weergeven


+ 49
- 0
resources/tools/update-icons.js Bestand weergeven

14
 const imgDir = "./generator/img";
14
 const imgDir = "./generator/img";
15
 const customIconDir = "./resources/custom-icons";
15
 const customIconDir = "./resources/custom-icons";
16
 const cssPath = "./generator/css/icons.css";
16
 const cssPath = "./generator/css/icons.css";
17
+const jsPath = "./generator/js/icons.js";
17
 //const processIconsCmd = "mogrify -background white -alpha shape *.png";
18
 //const processIconsCmd = "mogrify -background white -alpha shape *.png";
18
 const processIconsCmd = `mogrify -alpha copy -channel-fx "red=100%, blue=100%, green=100%" *.png`
19
 const processIconsCmd = `mogrify -alpha copy -channel-fx "red=100%, blue=100%, green=100%" *.png`
19
 
20
 
102
     });
103
     });
103
 }
104
 }
104
 
105
 
106
+// ----------------------------------------------------------------------------
107
+// Generate JS
108
+// ----------------------------------------------------------------------------
109
+function generateJS(src, dest) {
110
+    console.log("Generating JS...");
111
+    return new Promise((resolve, reject) => {
112
+        fs.readdir(src, (err, files) => {
113
+            if (err) {
114
+                reject(err);
115
+            }
116
+            else {
117
+                const content = "var icon_names = [\n" + files
118
+                    .map(name => `    "${name.replace(".png", "")}"`)
119
+                    .join(",\n") +
120
+`
121
+];
122
+
123
+var class_icon_names = [
124
+    "class-barbarian",
125
+    "class-bard",
126
+    "class-cleric",
127
+    "class-druid",
128
+    "class-fighter",
129
+    "class-monk",
130
+    "class-paladin",
131
+    "class-ranger",
132
+    "class-rogue",
133
+    "class-sorcerer",
134
+    "class-warlock",
135
+    "class-wizard"
136
+];
137
+
138
+icon_names = icon_names.concat(class_icon_names);
139
+`;
140
+                fs.writeFile(dest, content, err => {
141
+                    if (err) {
142
+                        reject(err);
143
+                    }
144
+                    else {
145
+                        resolve();
146
+                    }
147
+                });
148
+            }
149
+        });
150
+    });
151
+}
152
+
105
 // ----------------------------------------------------------------------------
153
 // ----------------------------------------------------------------------------
106
 // Copy
154
 // Copy
107
 // ----------------------------------------------------------------------------
155
 // ----------------------------------------------------------------------------
126
 .then(() => copyAll(customIconDir, imgDir))
174
 .then(() => copyAll(customIconDir, imgDir))
127
 .then(() => processAll(imgDir))
175
 .then(() => processAll(imgDir))
128
 .then(() => generateCSS(imgDir, cssPath))
176
 .then(() => generateCSS(imgDir, cssPath))
177
+.then(() => generateJS(imgDir, jsPath))
129
 .then(() => console.log("Done."))
178
 .then(() => console.log("Done."))
130
 .catch(err => cosole.log("Error", err));
179
 .catch(err => cosole.log("Error", err));

Laden…
Annuleren
Opslaan