|
142 | 142 | if (window.modelRender && window.modelRender._scene) { |
143 | 143 | window.modelRender.clearScene(); |
144 | 144 | window.modelRender.models = []; |
| 145 | + ModelRender.cache.resetInstances(); |
145 | 146 | } |
146 | 147 |
|
147 | 148 | let type = $("#typeInput").val(); |
|
202 | 203 | setTimeout(function () { |
203 | 204 | console.log(option); |
204 | 205 | window.modelRender.render([option], function () { |
205 | | - console.log(window.modelRender.blockstate); |
206 | | - console.log(window.modelRender.modelData) |
207 | | - $("#variantInput").empty(); |
208 | | - if (window.modelRender.blockstate.variants) { |
209 | | - $("#variantInput").prop("disabled", false); |
210 | | - for (let v in window.modelRender.blockstate.variants) { |
211 | | - $("#variantInput").append("<option value='" + v + "'>" + (v === "" ? "(normal)" : v) + "</option>"); |
212 | | - } |
213 | | - if (variant && variant.length > 0) { |
214 | | - $("#variantInput").val(variant); |
| 206 | + try { |
| 207 | + console.log(window.modelRender.blockstate); |
| 208 | + console.log(window.modelRender.modelData) |
| 209 | + $("#variantInput").empty(); |
| 210 | + if (window.modelRender.blockstate.variants) { |
| 211 | + $("#variantInput").prop("disabled", false); |
| 212 | + for (let v in window.modelRender.blockstate.variants) { |
| 213 | + $("#variantInput").append("<option value='" + v + "'>" + (v === "" ? "(normal)" : v) + "</option>"); |
| 214 | + } |
| 215 | + if (variant && variant.length > 0) { |
| 216 | + $("#variantInput").val(variant); |
| 217 | + } |
| 218 | + } else { |
| 219 | + $("#variantInput").prop("disabled", true); |
215 | 220 | } |
216 | | - } else { |
217 | | - $("#variantInput").prop("disabled", true); |
218 | | - } |
219 | 221 |
|
220 | | - if (window.modelRender.blockstate.multipart) { |
221 | | - $("#multipartGroup").empty(); |
222 | | - |
223 | | - let added = []; |
224 | | - console.log(window.modelRender.blockstate.multipart) |
225 | | - for (let j = 0; j < window.modelRender.blockstate.multipart.length; j++) { |
226 | | - let v = window.modelRender.blockstate.multipart[j]; |
227 | | - if (v.when) { |
228 | | - if (v.when.hasOwnProperty("OR")) { |
229 | | - for (let k = 0; k < v.when.OR.length; k++) { |
230 | | - for (let c in v.when.OR[k]) { |
231 | | - if (v.when.OR[k].hasOwnProperty(c)) { |
| 222 | + if (window.modelRender.blockstate.multipart) { |
| 223 | + $("#multipartGroup").empty(); |
| 224 | + |
| 225 | + let added = []; |
| 226 | + console.log(window.modelRender.blockstate.multipart) |
| 227 | + for (let j = 0; j < window.modelRender.blockstate.multipart.length; j++) { |
| 228 | + let v = window.modelRender.blockstate.multipart[j]; |
| 229 | + if (v.when) { |
| 230 | + if (v.when.hasOwnProperty("OR")) { |
| 231 | + for (let k = 0; k < v.when.OR.length; k++) { |
| 232 | + for (let c in v.when.OR[k]) { |
| 233 | + if (v.when.OR[k].hasOwnProperty(c)) { |
| 234 | + if (added.indexOf(c) !== -1) continue; |
| 235 | + |
| 236 | + $("#multipartGroup").append("<label>" + c + "</label><input type='text' class='multipartInput' name='" + c + "' value='" + (multipartOptions.hasOwnProperty(c) ? multipartOptions[c] : "") + "'><br/>"); |
| 237 | + $(".multipartInput").on("change", doRender); |
| 238 | + |
| 239 | + added.push(c); |
| 240 | + } |
| 241 | + } |
| 242 | + } |
| 243 | + } else { |
| 244 | + for (let c in v.when) { |
| 245 | + if (v.when.hasOwnProperty(c)) { |
232 | 246 | if (added.indexOf(c) !== -1) continue; |
233 | 247 |
|
234 | 248 | $("#multipartGroup").append("<label>" + c + "</label><input type='text' class='multipartInput' name='" + c + "' value='" + (multipartOptions.hasOwnProperty(c) ? multipartOptions[c] : "") + "'><br/>"); |
|
238 | 252 | } |
239 | 253 | } |
240 | 254 | } |
241 | | - } else { |
242 | | - for (let c in v.when) { |
243 | | - if (v.when.hasOwnProperty(c)) { |
244 | | - if (added.indexOf(c) !== -1) continue; |
245 | | - |
246 | | - $("#multipartGroup").append("<label>" + c + "</label><input type='text' class='multipartInput' name='" + c + "' value='" + (multipartOptions.hasOwnProperty(c) ? multipartOptions[c] : "") + "'><br/>"); |
247 | | - $(".multipartInput").on("change", doRender); |
248 | | - |
249 | | - added.push(c); |
250 | | - } |
251 | | - } |
252 | 255 | } |
253 | 256 | } |
254 | 257 | } |
255 | | - } |
256 | 258 |
|
257 | | - $("#cameraX").val(modelRender._camera.position.x); |
258 | | - $("#cameraY").val(modelRender._camera.position.y); |
259 | | - $("#cameraZ").val(modelRender._camera.position.z); |
| 259 | + $("#cameraX").val(modelRender._camera.position.x); |
| 260 | + $("#cameraY").val(modelRender._camera.position.y); |
| 261 | + $("#cameraZ").val(modelRender._camera.position.z); |
260 | 262 |
|
261 | | - // $(".displayOption").prop("disabled", true); |
262 | | - // if (modelRender.modelData.hasOwnProperty("display")) { |
263 | | - // for (let d in modelRender.modelData.display) { |
264 | | - // $(".displayOption[value=" + d + "]").prop("disabled", false); |
265 | | - // } |
266 | | - // } |
| 263 | + // $(".displayOption").prop("disabled", true); |
| 264 | + // if (modelRender.modelData.hasOwnProperty("display")) { |
| 265 | + // for (let d in modelRender.modelData.display) { |
| 266 | + // $(".displayOption[value=" + d + "]").prop("disabled", false); |
| 267 | + // } |
| 268 | + // } |
267 | 269 |
|
268 | 270 |
|
| 271 | + } catch (e) { |
| 272 | + console.warn(e); |
| 273 | + } |
269 | 274 | }); |
270 | 275 | }, 200); |
271 | 276 | } |
|
0 commit comments