diff --git a/media/attribution.js b/media/attribution.js index 04068685..7f3b8852 100644 --- a/media/attribution.js +++ b/media/attribution.js @@ -6235,6 +6235,20 @@ const attributionData = { "chemicalcrux" ] }, + { + prefix: "./media/objects/game-pieces/", + files: [ + { name: "chess_king.svg", source: "https://svgsilh.com/image/3413429.html" }, + { name: "chess_queen.svg", source: "https://svgsilh.com/image/3413429.html" }, + { name: "chess_bishop.svg", source: "https://svgsilh.com/image/3413429.html" }, + { name: "chess_knight.svg", source: "https://svgsilh.com/image/3413429.html" }, + { name: "chess_rook.svg", source: "https://svgsilh.com/image/3413429.html" }, + { name: "chess_pawn.svg", source: "https://svgsilh.com/image/3413429.html" }, + ], + authors: [ + "anonymous" + ] + }, { prefix: "./media/objects/shoes/", files: [ diff --git a/media/objects/chess-pieces/chess_bishop.svg b/media/objects/chess-pieces/chess_bishop.svg new file mode 100644 index 00000000..4ff7bd3f --- /dev/null +++ b/media/objects/chess-pieces/chess_bishop.svg @@ -0,0 +1,17 @@ + + + + + diff --git a/media/objects/chess-pieces/chess_king.svg b/media/objects/chess-pieces/chess_king.svg new file mode 100644 index 00000000..4cf1ad2a --- /dev/null +++ b/media/objects/chess-pieces/chess_king.svg @@ -0,0 +1,20 @@ + + + + + + + diff --git a/media/objects/chess-pieces/chess_knight.svg b/media/objects/chess-pieces/chess_knight.svg new file mode 100644 index 00000000..9dcce1c5 --- /dev/null +++ b/media/objects/chess-pieces/chess_knight.svg @@ -0,0 +1,17 @@ + + + + + diff --git a/media/objects/chess-pieces/chess_pawn.svg b/media/objects/chess-pieces/chess_pawn.svg new file mode 100644 index 00000000..b7efbbe6 --- /dev/null +++ b/media/objects/chess-pieces/chess_pawn.svg @@ -0,0 +1,13 @@ + + + + + diff --git a/media/objects/chess-pieces/chess_queen.svg b/media/objects/chess-pieces/chess_queen.svg new file mode 100644 index 00000000..db20cd02 --- /dev/null +++ b/media/objects/chess-pieces/chess_queen.svg @@ -0,0 +1,18 @@ + + + + + diff --git a/media/objects/chess-pieces/chess_rook.svg b/media/objects/chess-pieces/chess_rook.svg new file mode 100644 index 00000000..5ffbac90 --- /dev/null +++ b/media/objects/chess-pieces/chess_rook.svg @@ -0,0 +1,14 @@ + + + + + diff --git a/presets/objects.js b/presets/objects.js index 59f5de92..ed2646eb 100644 --- a/presets/objects.js +++ b/presets/objects.js @@ -48,6 +48,27 @@ function addShoeView(object, name, points) { } } +function makeHeight(info, category, prefix="") { + const views = {}; + + info.forEach(object => { + views[object[0]] = { + height: math.unit(object[1], object[2]), + image: { source: "./media/objects/" + category.replace(/ /g, "-").toLowerCase() + "/" + prefix + object[0] + ".svg" }, + name: object[0].replace(/-/g, " ").replace(/\b\w/g, x => x.toUpperCase()), + rename: true + } + }); + + return { + name: category, + constructor: () => makeObject( + category, + views + ) + } +} + function makeHeightWeight(info, category, prefix="") { const views = {}; @@ -438,6 +459,19 @@ function makeObjects() { } ) }) + + results.push(makeHeight( + [ + ["king", 4, "inches"], + ["queen", 351/407*4, "inches"], + ["bishop", 340/407*4, "inches"], + ["knight", 309/407*4, "inches"], + ["rook", 271/407*4, "inches"], + ["pawn", 197/407*4, "inches"], + ], + "Chess Pieces", + "chess_" + )) results.sort((b1, b2) => {