diff --git a/media/attribution.js b/media/attribution.js index 2723d59b..9d734b7f 100644 --- a/media/attribution.js +++ b/media/attribution.js @@ -1439,6 +1439,30 @@ const attributionData = { "quake-yote" ] }, + { + prefix: "./media/characters/chari-gal/", + files: [ + { name: "front.svg", source: "https://www.furaffinity.net/view/32375639/" } + ], + authors: [ + "sonicsweeti" + ], + owners: [ + "knoem" + ] + }, + { + prefix: "./media/characters/chari-gal/", + files: [ + { name: "gigantamax.svg", source: "https://www.furaffinity.net/view/33701314/" } + ], + authors: [ + "cheeki" + ], + owners: [ + "knoem" + ] + }, { prefix: "./media/characters/chiros/", files: [ @@ -2422,6 +2446,18 @@ const attributionData = { "h-padleckas" ] }, + { + prefix: "./media/vehicles/spacecraft/", + files: [ + { name: "n-1.svg", source: "https://en.wikipedia.org/wiki/File:Super_heavy-lift_launch_vehicles.png" }, + { name: "saturn-v.svg", source: "https://en.wikipedia.org/wiki/File:Super_heavy-lift_launch_vehicles.png" }, + { name: "starship.svg", source: "https://en.wikipedia.org/wiki/File:Super_heavy-lift_launch_vehicles.png" } + ], + authors: [ + "thorenn", + "chemicalcrux" + ] + }, ], people: { "ahastar": { @@ -3264,6 +3300,22 @@ const attributionData = { "name": "BKdebo", "url": "https://www.furaffinity.net/user/bkdebo", }, + "sonicsweeti": { + "name": "SonicSweeti", + "url": "https://www.furaffinity.net/user/sonicsweeti/" + }, + "knoem": { + "name": "Knoem", + "url": "https://www.furaffinity.net/user/knoem", + }, + "thorenn": { + "name": "Thorenn", + "url": "https://commons.wikimedia.org/wiki/User:Thorenn", + }, + "cheeki": { + "name": "CHeeki", + "url": "https://www.furaffinity.net/user/cheeki", + }, } } diff --git a/media/characters/chari-gal/front.svg b/media/characters/chari-gal/front.svg new file mode 100644 index 00000000..966202c2 --- /dev/null +++ b/media/characters/chari-gal/front.svg @@ -0,0 +1,185 @@ + + + + + + + + + + + + + diff --git a/media/characters/chari-gal/gigantamax.svg b/media/characters/chari-gal/gigantamax.svg new file mode 100644 index 00000000..f5041c2e --- /dev/null +++ b/media/characters/chari-gal/gigantamax.svg @@ -0,0 +1,527 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/media/vehicles/spacecraft/n-1.svg b/media/vehicles/spacecraft/n-1.svg new file mode 100644 index 00000000..1c36e8c6 --- /dev/null +++ b/media/vehicles/spacecraft/n-1.svg @@ -0,0 +1,699 @@ + + + + + + + + + + + + + + + + + diff --git a/media/vehicles/spacecraft/saturn-v.svg b/media/vehicles/spacecraft/saturn-v.svg new file mode 100644 index 00000000..ccca4d1a --- /dev/null +++ b/media/vehicles/spacecraft/saturn-v.svg @@ -0,0 +1,699 @@ + + + + + + + + + + + + + + + + + diff --git a/media/vehicles/spacecraft/starship.svg b/media/vehicles/spacecraft/starship.svg new file mode 100644 index 00000000..4f89ed2b --- /dev/null +++ b/media/vehicles/spacecraft/starship.svg @@ -0,0 +1,699 @@ + + + + + + + + + + + + + + + + + diff --git a/presets/characters.js b/presets/characters.js index fbbc38d6..bcba0491 100644 --- a/presets/characters.js +++ b/presets/characters.js @@ -6354,6 +6354,46 @@ characterMakers["Coffee"] = () => { ) }; +characterMakers["Chari-Gal"] = () => { + return makeCharacter( + "Chari-Gal", + "Vonadi", + { + front: { + height: math.unit(6, "feet"), + weight: math.unit(200, "lbs"), + name: "Front", + image: { + source: "./media/characters/chari-gal/front.svg", + extra: 1568/1385 * (1 / (1 - 0.047)), + bottom: 0.047 + } + }, + gigantamax: { + height: math.unit(6*16, "feet"), + weight: math.unit(200*16*16*16, "lbs"), + name: "Gigantamax", + image: { + source: "./media/characters/chari-gal/gigantamax.svg", + extra: 1124/888 * (1 / (1 - 0.03)), + bottom: 0.03 + } + }, + }, + [ + { + name: "Normal", + height: math.unit(5 + 7/12, "feet") + }, + { + name: "Macro", + height: math.unit(200, "feet"), + default: true + } + ] + ) +}; + function makeCharacters() { const results = []; diff --git a/presets/vehicles.js b/presets/vehicles.js index 568a952b..6db0b030 100644 --- a/presets/vehicles.js +++ b/presets/vehicles.js @@ -27,6 +27,37 @@ function makeVehicle(name, sides, mass) { return makeEntity({ name: name }, views); } +function makeMultiVehicle(name, sides) { + views = { + + } + + Object.entries(sides).forEach(([key, val]) => { + views[key] = { + attributes: { + height: { + name: "Height", + power: 1, + type: "length", + base: val.height + }, + mass: { + name: "Mass", + power: 3, + type: "mass", + base: val.mass + } + }, + image: val.image, + name: val.name, + rename: val.rename + } + }); + + return makeEntity({ name: name }, views); +} + + function makeVehicles() { const results = []; @@ -141,5 +172,35 @@ function makeVehicles() { ) }); + results.push({ + name: "Spacecraft", + constructor: () => makeMultiVehicle( + "Spacecraft", + { + "n-1": { + name: "N-1", + rename: true, + height: math.unit(105, "meters"), + mass: math.unit(95, "tons"), + image: { source: "./media/vehicles/spacecraft/n-1.svg" } + }, + "saturn-v": { + name: "Saturn V", + rename: true, + height: math.unit(110.6, "meters"), + mass: math.unit(140, "tons"), + image: { source: "./media/vehicles/spacecraft/saturn-v.svg" } + }, + "starship": { + name: "Starship", + rename: true, + height: math.unit(118, "m"), + mass: math.unit(150, "tons"), + image: { source: "./media/vehicles/spacecraft/saturn-v.svg" } + }, + } + ) + }); + return results; }