131 lines
3.6 KiB
JavaScript
131 lines
3.6 KiB
JavaScript
export default {
|
|
data() {
|
|
return {
|
|
firstName: "Sebin",
|
|
middleName: "Antario",
|
|
lastName: "Nyshkim",
|
|
dateOfBirth: new Date("1993-10-17"),
|
|
gender: "male ♂️",
|
|
orientation: "gay",
|
|
height: 210, // cm
|
|
weight: 124, // kg
|
|
tailLength: 104, // cm
|
|
wingspan: 417, // cm
|
|
colors: {
|
|
hairPrimary: "#4b608f",
|
|
hairSecondary: "#6684c0",
|
|
eyes: "#31c215",
|
|
scalesPrimary: "#c64c35",
|
|
scalesSecondary: "#eda958",
|
|
eyebrows: "#eda958",
|
|
tailspikes: "#7f4539",
|
|
horns: "#413a3a",
|
|
claws: "#413a3a",
|
|
nipples: "#413a3a",
|
|
penis: "#413a3a",
|
|
},
|
|
hobbies: ["working out", "travels", "camping", "video games", "tech"],
|
|
penis: {
|
|
shape: "humanoid",
|
|
type: "grower",
|
|
special: "ridged, no foreskin",
|
|
size: 20, // cm
|
|
girth: 5, // cm
|
|
},
|
|
prefs: {
|
|
position: "vers, prefers top",
|
|
kinks: [
|
|
"oral (give/receive)",
|
|
"anal (give/receive)",
|
|
"facial (give/receive/self)",
|
|
"underwear",
|
|
"frotting",
|
|
"creampie",
|
|
"bukkake",
|
|
"biting",
|
|
"nipple play",
|
|
"roughness",
|
|
"toys",
|
|
"chubbies",
|
|
"muscle worship (give/receive)",
|
|
"filling condoms",
|
|
"growth/macro (not rampage-y)",
|
|
"size difference",
|
|
],
|
|
},
|
|
};
|
|
},
|
|
|
|
computed: {
|
|
fullName() {
|
|
return `${this.firstName} ${this.middleName} ${this.lastName}`;
|
|
},
|
|
birthdate() {
|
|
const locale = this.getClientLocale();
|
|
const age = this.getAge(this.dateOfBirth);
|
|
const dobLocaleString = this.dateOfBirth.toLocaleDateString(locale, {
|
|
year: "numeric",
|
|
month: "long",
|
|
day: "2-digit",
|
|
});
|
|
|
|
return `${dobLocaleString} (${age})`;
|
|
},
|
|
getSebinData() {
|
|
const generic = {
|
|
headers: ["Key", "Value"],
|
|
data: [
|
|
["Full Name", this.fullName],
|
|
["Date of Birth", this.birthdate],
|
|
["Sex/Gender", this.gender],
|
|
["Height", `${this.height} cm (${this.toImperial(this.height)})`],
|
|
["Weight", `${this.weight} kg (${this.toLbs(this.weight)} lbs)`],
|
|
[
|
|
"Wingspan",
|
|
`${this.wingspan / 100} m (${this.toImperial(this.wingspan)})`,
|
|
],
|
|
],
|
|
};
|
|
|
|
const colors = {
|
|
headers: ["Body Part", "Color (hex)", "Color"],
|
|
data: [
|
|
["Scale Color", this.colors.scalesPrimary],
|
|
["Chestplate Color", this.colors.scalesSecondary],
|
|
["Hair Color", this.colors.hairPrimary],
|
|
["Hair Streaks (optional)", this.colors.hairSecondary],
|
|
["Eyes", this.colors.eyes],
|
|
["Facial Spikes", this.colors.eyebrows],
|
|
["Horns/Claws/Nipples", this.colors.horns],
|
|
["Tail Spikes", this.colors.tailspikes],
|
|
],
|
|
};
|
|
|
|
const penis = {
|
|
headers: ["Key", "Value", "Color"],
|
|
data: [
|
|
["Shape", this.penis.shape],
|
|
["Type", this.penis.type],
|
|
["Special Traits", this.penis.special],
|
|
["Color", this.colors.penis],
|
|
["Length", `${this.penis.size} cm (${this.toInch(this.penis.size)})`],
|
|
[
|
|
"Girth",
|
|
`${this.penis.girth} cm (${this.toInch(this.penis.girth)})`,
|
|
],
|
|
],
|
|
};
|
|
|
|
const preferences = {
|
|
headers: ["Key", "Value"],
|
|
data: [
|
|
["Orientation", this.orientation],
|
|
["Position", this.prefs.position],
|
|
["Kinks", this.prefs.kinks],
|
|
],
|
|
};
|
|
|
|
return { generic, colors, penis, preferences };
|
|
},
|
|
},
|
|
};
|