From 5ee8ceb585dfca930da98ce7bb634f884ce76c71 Mon Sep 17 00:00:00 2001 From: Fen Dweller Date: Thu, 20 Feb 2020 19:56:38 -0500 Subject: [PATCH] Add Blake, Daimos,Guisetto, Huoyan, Luxor, Prince, and Psymon (and a lamp) --- media/LICENSES.md | 3 + media/characters/blake/bent.svg | 91 +++++ media/characters/blake/crouched.svg | 148 ++++++++ media/characters/blake/side.svg | 148 ++++++++ media/characters/daimos/front.svg | 225 ++++++++++++ media/characters/guisetto/airborne.svg | 103 ++++++ media/characters/guisetto/front.svg | 103 ++++++ media/characters/huoyan/front.svg | 394 +++++++++++++++++++++ media/characters/huoyan/side.svg | 240 +++++++++++++ media/characters/luxor/back.svg | 154 ++++++++ media/characters/luxor/front.svg | 139 ++++++++ media/characters/prince/front.svg | 160 +++++++++ media/characters/prince/jump.svg | 171 +++++++++ media/characters/psymon/slithering-alt.svg | 108 ++++++ media/characters/psymon/slithering.svg | 117 ++++++ media/characters/psymon/standing.svg | 125 +++++++ media/objects/lamp.svg | 21 ++ presets/characters.js | 242 ++++++++++++- presets/objects.js | 15 + presets/scenes.js | 17 +- 20 files changed, 2710 insertions(+), 14 deletions(-) create mode 100644 media/characters/blake/bent.svg create mode 100644 media/characters/blake/crouched.svg create mode 100644 media/characters/blake/side.svg create mode 100644 media/characters/daimos/front.svg create mode 100644 media/characters/guisetto/airborne.svg create mode 100644 media/characters/guisetto/front.svg create mode 100644 media/characters/huoyan/front.svg create mode 100644 media/characters/huoyan/side.svg create mode 100644 media/characters/luxor/back.svg create mode 100644 media/characters/luxor/front.svg create mode 100644 media/characters/prince/front.svg create mode 100644 media/characters/prince/jump.svg create mode 100644 media/characters/psymon/slithering-alt.svg create mode 100644 media/characters/psymon/slithering.svg create mode 100644 media/characters/psymon/standing.svg create mode 100644 media/objects/lamp.svg diff --git a/media/LICENSES.md b/media/LICENSES.md index c19f1980..94142999 100644 --- a/media/LICENSES.md +++ b/media/LICENSES.md @@ -785,6 +785,8 @@ https://www.furaffinity.net/view/21787301/ * front-alt.svg +**(other characters also to be added; FA is down right now!)** + # Naturals * front.svg @@ -815,6 +817,7 @@ https://commons.wikimedia.org/wiki/File:Blank_US_Map_(states_only).svg * soda-can.svg * sewing-pin.svg * pin-head.svg +* lamp.svg # Vehicles diff --git a/media/characters/blake/bent.svg b/media/characters/blake/bent.svg new file mode 100644 index 00000000..a43b886a --- /dev/null +++ b/media/characters/blake/bent.svg @@ -0,0 +1,91 @@ + + + + + diff --git a/media/characters/blake/crouched.svg b/media/characters/blake/crouched.svg new file mode 100644 index 00000000..0efb93a6 --- /dev/null +++ b/media/characters/blake/crouched.svg @@ -0,0 +1,148 @@ + + + + + + + diff --git a/media/characters/blake/side.svg b/media/characters/blake/side.svg new file mode 100644 index 00000000..36d9cff6 --- /dev/null +++ b/media/characters/blake/side.svg @@ -0,0 +1,148 @@ + + + + + diff --git a/media/characters/daimos/front.svg b/media/characters/daimos/front.svg new file mode 100644 index 00000000..eca4f453 --- /dev/null +++ b/media/characters/daimos/front.svg @@ -0,0 +1,225 @@ + + + + + + + diff --git a/media/characters/guisetto/airborne.svg b/media/characters/guisetto/airborne.svg new file mode 100644 index 00000000..0f11a8e1 --- /dev/null +++ b/media/characters/guisetto/airborne.svg @@ -0,0 +1,103 @@ + + + + + + + diff --git a/media/characters/guisetto/front.svg b/media/characters/guisetto/front.svg new file mode 100644 index 00000000..bb84945c --- /dev/null +++ b/media/characters/guisetto/front.svg @@ -0,0 +1,103 @@ + + + + + + + diff --git a/media/characters/huoyan/front.svg b/media/characters/huoyan/front.svg new file mode 100644 index 00000000..8dcecabc --- /dev/null +++ b/media/characters/huoyan/front.svg @@ -0,0 +1,394 @@ + + + + + + + + diff --git a/media/characters/huoyan/side.svg b/media/characters/huoyan/side.svg new file mode 100644 index 00000000..69b7f962 --- /dev/null +++ b/media/characters/huoyan/side.svg @@ -0,0 +1,240 @@ + + + + + + + diff --git a/media/characters/luxor/back.svg b/media/characters/luxor/back.svg new file mode 100644 index 00000000..c0a8c93b --- /dev/null +++ b/media/characters/luxor/back.svg @@ -0,0 +1,154 @@ + + + + + + + diff --git a/media/characters/luxor/front.svg b/media/characters/luxor/front.svg new file mode 100644 index 00000000..52f016bf --- /dev/null +++ b/media/characters/luxor/front.svg @@ -0,0 +1,139 @@ + + + + + + + diff --git a/media/characters/prince/front.svg b/media/characters/prince/front.svg new file mode 100644 index 00000000..237a135d --- /dev/null +++ b/media/characters/prince/front.svg @@ -0,0 +1,160 @@ + + + + + diff --git a/media/characters/prince/jump.svg b/media/characters/prince/jump.svg new file mode 100644 index 00000000..d889b61f --- /dev/null +++ b/media/characters/prince/jump.svg @@ -0,0 +1,171 @@ + + + + + + + diff --git a/media/characters/psymon/slithering-alt.svg b/media/characters/psymon/slithering-alt.svg new file mode 100644 index 00000000..0b1eddca --- /dev/null +++ b/media/characters/psymon/slithering-alt.svg @@ -0,0 +1,108 @@ + + + + + + + diff --git a/media/characters/psymon/slithering.svg b/media/characters/psymon/slithering.svg new file mode 100644 index 00000000..fd7cb4f7 --- /dev/null +++ b/media/characters/psymon/slithering.svg @@ -0,0 +1,117 @@ + + + + + diff --git a/media/characters/psymon/standing.svg b/media/characters/psymon/standing.svg new file mode 100644 index 00000000..ee4b5e34 --- /dev/null +++ b/media/characters/psymon/standing.svg @@ -0,0 +1,125 @@ + + + + + diff --git a/media/objects/lamp.svg b/media/objects/lamp.svg new file mode 100644 index 00000000..9fcd4c1d --- /dev/null +++ b/media/objects/lamp.svg @@ -0,0 +1,21 @@ + + + + + diff --git a/presets/characters.js b/presets/characters.js index 163d9830..c7303694 100644 --- a/presets/characters.js +++ b/presets/characters.js @@ -3333,9 +3333,85 @@ characterMakers["Vivian"] = () => { ) }; -characterMakers["Viktor"] = () => { +characterMakers["Prince"] = () => { return makeCharacter( - "Viktor", + "Prince", + "Kurrikage", + { + front: { + height: math.unit(6, "feet"), + weight: math.unit(160, "lbs"), + name: "Front", + image: { + source: "./media/characters/prince/front.svg", + extra: 3400/3000 + } + }, + jumping: { + height: math.unit(6, "feet"), + weight: math.unit(160, "lbs"), + name: "Jumping", + image: { + source: "./media/characters/prince/jump.svg", + extra: 2555/2134 + } + }, + }, + [ + { + name: "Normal", + height: math.unit(7.75, "feet"), + default: true + } + ] + ) +}; + +characterMakers["Psymon"] = () => { + return makeCharacter( + "Psymon", + "Kurrikage", + { + standing: { + height: math.unit(6, "feet"), + weight: math.unit(300, "lbs"), + name: "Standing", + image: { + source: "./media/characters/psymon/standing.svg", + extra: 1888/1810 + } + }, + slithering: { + height: math.unit(6, "feet"), + weight: math.unit(300, "lbs"), + name: "Slithering", + image: { + source: "./media/characters/psymon/slithering.svg", + extra: 1330/1224 + } + }, + slitheringAlt: { + height: math.unit(6, "feet"), + weight: math.unit(300, "lbs"), + name: "Slithering (Alt)", + image: { + source: "./media/characters/psymon/slithering-alt.svg", + extra: 1330/1224 + } + }, + }, + [ + { + name: "Normal", + height: math.unit(11.25, "feet") + } + ] + ) +}; + +characterMakers["Daimos"] = () => { + return makeCharacter( + "Daimos", "Kurrikage", { front: { @@ -3343,29 +3419,169 @@ characterMakers["Viktor"] = () => { weight: math.unit(180, "lbs"), name: "Front", image: { - source: "./media/characters/viktor/front.svg", - bottom: 0.02, - extra: 1 / (1 - 0.02) + source: "./media/characters/daimos/front.svg", + extra: 4160/3897 + } + } + }, + [ + { + name: "Normal", + height: math.unit(8, "feet") + } + ] + ) +}; + +characterMakers["Blake"] = () => { + return makeCharacter( + "Blake", + "Kurrikage", + { + side: { + height: math.unit(6, "feet"), + weight: math.unit(180, "lbs"), + name: "Side", + image: { + source: "./media/characters/blake/side.svg", + extra: 1212/1120 } }, - frontAlt: { + crouched: { + height: math.unit(6*0.57, "feet"), + weight: math.unit(180, "lbs"), + name: "Crouched", + image: { + source: "./media/characters/blake/crouched.svg", + extra: 840/587 + } + }, + bent: { + height: math.unit(6*0.75, "feet"), + weight: math.unit(180, "lbs"), + name: "Bent", + image: { + source: "./media/characters/blake/bent.svg", + extra: 592/544 + } + }, + }, + [ + { + name: "Normal", + height: math.unit(8 + 1/6, "feet") + } + ] + ) +}; + +characterMakers["Guisetto"] = () => { + return makeCharacter( + "Guisetto", + "Kurrikage", + { + front: { height: math.unit(6, "feet"), weight: math.unit(180, "lbs"), - name: "Front (Alt)", + name: "Front", image: { - source: "./media/characters/viktor/front-alt.svg", - bottom: 0.03, - extra: 1 / (1 - 0.03) + source: "./media/characters/guisetto/front.svg", + extra: 856/817 + } + }, + airborne: { + height: math.unit(6, "feet"), + weight: math.unit(180, "lbs"), + name: "Airborne", + image: { + source: "./media/characters/guisetto/airborne.svg", + extra: 584/525 } }, }, [ { name: "Normal", - height: math.unit(9.5, "feet") + height: math.unit(10 + 11/12, "feet") } - ], - math.unit(9.5, "feet") + ] + ) +}; + +characterMakers["Luxor"] = () => { + return makeCharacter( + "Luxor", + "Kurrikage", + { + front: { + height: math.unit(6, "feet"), + weight: math.unit(180, "lbs"), + name: "Front", + image: { + source: "./media/characters/luxor/front.svg", + extra: 2940/2152 + } + }, + back: { + height: math.unit(6, "feet"), + weight: math.unit(180, "lbs"), + name: "Back", + image: { + source: "./media/characters/luxor/back.svg", + extra: 1083/960 + } + }, + }, + [ + { + name: "Normal", + height: math.unit(5 + 5/6, "feet"), + default: true + }, + { + name: "Lamp", + height: math.unit(50, "feet") + }, + { + name: "Lämp", + height: math.unit(300, "feet") + }, + { + name: "The sun is a lamp", + height: math.unit(250000, "miles") + }, + ] + ) +}; + +characterMakers["Huoyan"] = () => { + return makeCharacter( + "Huoyan", + "Kurrikage", + { + front: { + height: math.unit(6, "feet"), + weight: math.unit(50, "lbs"), + name: "Front", + image: { + source: "./media/characters/huoyan/front.svg" + } + }, + side: { + height: math.unit(6, "feet"), + weight: math.unit(180, "lbs"), + name: "Side", + image: { + source: "./media/characters/huoyan/side.svg" + } + }, + }, + [ + { + name: "Normal", + height: math.unit(65, "feet") + } + ] ) }; diff --git a/presets/objects.js b/presets/objects.js index 504d6f66..7d9d0418 100644 --- a/presets/objects.js +++ b/presets/objects.js @@ -65,5 +65,20 @@ function makeObjects() { ) }); + results.push({ + name: "Lamp", + constructor: () => makeObject( + "Lamp", + { + lamp: { + height: math.unit(30, "inches"), + mass: math.unit(10, "lbs"), + image: { source: "./media/objects/lamp.svg" }, + name: "Lamp" + } + } + ) + }); + return results; } diff --git a/presets/scenes.js b/presets/scenes.js index 48e79ee2..1ce8a3bc 100644 --- a/presets/scenes.js +++ b/presets/scenes.js @@ -73,4 +73,19 @@ scenes["10m < x < 100m"] = makeSlice(math.unit(10, "meters"), math.unit(100, "me scenes["100m < x < 1km"] = makeSlice(math.unit(100, "meters"), math.unit(1000, "meters")); scenes["1km < x < 10km"] = makeSlice(math.unit(1000, "meters"), math.unit(10000, "meters")); scenes["10km < x < 100km"] = makeSlice(math.unit(10000, "meters"), math.unit(100000, "meters")); -scenes["100km < x < 1000km"] = makeSlice(math.unit(100000, "meters"), math.unit(1000000, "meters")); \ No newline at end of file +scenes["100km < x < 1000km"] = makeSlice(math.unit(100000, "meters"), math.unit(1000000, "meters")); + +scenes["Kurri"] = () => { + availableEntities["characters"].filter(x => { + const entity = x.constructor(); + return entity.info.author == "Kurrikage"; + }).forEach(maker => { + const entity = maker.constructor(); + displayEntity(entity, entity.view, 0, 1); + }); + + arrangeEntities(getSortedEntities()); + fitWorld(); + + +} \ No newline at end of file