diff --git a/.vscode/snippets.code-snippets b/.vscode/snippets.code-snippets
index 7ec93f3f..8dbaf3dd 100644
--- a/.vscode/snippets.code-snippets
+++ b/.vscode/snippets.code-snippets
@@ -76,7 +76,7 @@
"View (Form)": {
"prefix": "view-form",
"body": [
- "${1/(-([a-z]))/${2:/upcase}/g}: {",
+ "$3_${1/(-([a-z]))/${2:/upcase}/g}: {",
" height: math.unit(6, \"feet\"),",
" weight: math.unit(150, \"lb\"),",
" name: \"${1/(.*)/${1:/capitalize}/}\",",
diff --git a/media/attribution.js b/media/attribution.js
index 8aafce6f..0dcc4ca0 100644
--- a/media/attribution.js
+++ b/media/attribution.js
@@ -20718,9 +20718,13 @@ const attributionData = {
files: [
{ name: "snivy-front.svg", source: "https://twitter.com/Cassettewaves/status/1387838932662951937" },
{ name: "snivy-back.svg", source: "https://twitter.com/Cassettewaves/status/1387838932662951937" },
- { name: "snivy-front-nsfw.svg", source: "https://twitter.com/Cassettewaves/status/1387838932662951937", nsfw: true},
+ { name: "snivy-front-nsfw.svg", source: null, nsfw: true},
{ name: "snivy-foot.svg", source: "https://twitter.com/Cassettewaves/status/1387838932662951937" },
{ name: "snivy-sole.svg", source: "https://twitter.com/Cassettewaves/status/1387838932662951937" },
+ { name: "yoshi-front.svg", source: "https://twitter.com/RobinPhox/status/1457614087844630529" },
+ { name: "yoshi-back.svg", source: "https://twitter.com/RobinPhox/status/1457614087844630529" },
+ { name: "yoshi-front-nsfw.svg", source: null, nsfw: true},
+ { name: "yoshi-foot.svg", source: "https://twitter.com/RobinPhox/status/1457614087844630529" },
],
authors: [
"cassettewaves"
diff --git a/media/characters/robin-phox/yoshi-back.svg b/media/characters/robin-phox/yoshi-back.svg
new file mode 100644
index 00000000..389f4c6c
--- /dev/null
+++ b/media/characters/robin-phox/yoshi-back.svg
@@ -0,0 +1,492 @@
+
+
+
diff --git a/media/characters/robin-phox/yoshi-foot.svg b/media/characters/robin-phox/yoshi-foot.svg
new file mode 100644
index 00000000..23e282c2
--- /dev/null
+++ b/media/characters/robin-phox/yoshi-foot.svg
@@ -0,0 +1,143 @@
+
+
+
diff --git a/media/characters/robin-phox/yoshi-front-nsfw.svg b/media/characters/robin-phox/yoshi-front-nsfw.svg
new file mode 100644
index 00000000..f0d9e002
--- /dev/null
+++ b/media/characters/robin-phox/yoshi-front-nsfw.svg
@@ -0,0 +1,660 @@
+
+
+
diff --git a/media/characters/robin-phox/yoshi-front.svg b/media/characters/robin-phox/yoshi-front.svg
new file mode 100644
index 00000000..ca8f772b
--- /dev/null
+++ b/media/characters/robin-phox/yoshi-front.svg
@@ -0,0 +1,587 @@
+
+
+
diff --git a/presets/characters.js b/presets/characters.js
index 76c4c7a5..ec019a0e 100644
--- a/presets/characters.js
+++ b/presets/characters.js
@@ -706,7 +706,7 @@ const speciesData = {
},
"yoshi": {
name: "Yoshi",
- parents: ["lizard"]
+ parents: ["dinosaur"]
},
"lynx": {
name: "Lynx",
@@ -57572,9 +57572,9 @@ characterMakers.push(() => makeCharacter(
))
characterMakers.push(() => makeCharacter(
- { name: "Robin Phox", species: ["snivy"], tags: ["anthro"] },
+ { name: "Robin Phox", species: ["snivy", "yoshi"], tags: ["anthro"] },
{
- front: {
+ snivy_front: {
height: math.unit(2, "feet"),
weight: math.unit(17.9, "lb"),
name: "Front",
@@ -57586,29 +57586,29 @@ characterMakers.push(() => makeCharacter(
form: "snivy",
default: true
},
- back: {
+ snivy_frontNsfw: {
height: math.unit(2, "feet"),
weight: math.unit(17.9, "lb"),
- name: "Back",
+ name: "Front (NSFW)",
image: {
- source: "./media/characters/robin-phox/snivy-back.svg",
- extra: 577/508,
- bottom: 21/598
+ source: "./media/characters/robin-phox/snivy-front-nsfw.svg",
+ extra: 569/504,
+ bottom: 33/602
},
form: "snivy",
},
- frontNsfw: {
+ snivy_back: {
height: math.unit(2, "feet"),
weight: math.unit(17.9, "lb"),
- name: "Front-nsfw",
+ name: "Back",
image: {
- source: "./media/characters/robin-phox/snivy-front-nsfw.svg",
- extra: 569/504,
- bottom: 33/602
+ source: "./media/characters/robin-phox/snivy-back.svg",
+ extra: 577/508,
+ bottom: 21/598
},
form: "snivy",
},
- foot: {
+ snivy_foot: {
height: math.unit(0.68, "feet"),
name: "Foot",
image: {
@@ -57616,7 +57616,7 @@ characterMakers.push(() => makeCharacter(
},
form: "snivy",
},
- sole: {
+ snivy_sole: {
height: math.unit(0.68, "feet"),
name: "Sole",
image: {
@@ -57624,6 +57624,48 @@ characterMakers.push(() => makeCharacter(
},
form: "snivy",
},
+ yoshi_front: {
+ height: math.unit(6, "feet"),
+ weight: math.unit(150, "lb"),
+ name: "Front",
+ image: {
+ source: "./media/characters/robin-phox/yoshi-front.svg",
+ extra: 890/792,
+ bottom: 29/919
+ },
+ form: "yoshi",
+ default: true
+ },
+ yoshi_frontNsfw: {
+ height: math.unit(6, "feet"),
+ weight: math.unit(150, "lb"),
+ name: "Front (NSFW)",
+ image: {
+ source: "./media/characters/robin-phox/yoshi-front-nsfw.svg",
+ extra: 890/792,
+ bottom: 29/919
+ },
+ form: "yoshi",
+ },
+ yoshi_back: {
+ height: math.unit(6, "feet"),
+ weight: math.unit(150, "lb"),
+ name: "Back",
+ image: {
+ source: "./media/characters/robin-phox/yoshi-back.svg",
+ extra: 890/792,
+ bottom: 29/919
+ },
+ form: "yoshi",
+ },
+ yoshi_foot: {
+ height: math.unit(1.5, "feet"),
+ name: "Foot",
+ image: {
+ source: "./media/characters/robin-phox/yoshi-foot.svg"
+ },
+ form: "yoshi",
+ },
},
[
{
@@ -57632,6 +57674,12 @@ characterMakers.push(() => makeCharacter(
default: true,
form: "snivy"
},
+ {
+ name: "Normal",
+ height: math.unit(6, "feet"),
+ default: true,
+ form: "yoshi"
+ },
{
name: "Macro",
height: math.unit(500, "feet"),
@@ -57658,6 +57706,9 @@ characterMakers.push(() => makeCharacter(
name: "Snivy",
default: true
},
+ "yoshi": {
+ name: "Yoshi",
+ },
}
))