From 40311b513c55cd0bedffa3c7c1568a0e159061a0 Mon Sep 17 00:00:00 2001 From: DCoded <dicoded@email.com> Date: Thu, 16 Dec 2021 22:31:06 -0500 Subject: [PATCH] Added Option class --- src/interaction/useSlave/useSlave.js | 4 ++-- src/interaction/useSlave/useSlaveHelpers.js | 19 +++++++++++++++++++ 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/src/interaction/useSlave/useSlave.js b/src/interaction/useSlave/useSlave.js index 8cb4cceae51..c0ef1e02e94 100644 --- a/src/interaction/useSlave/useSlave.js +++ b/src/interaction/useSlave/useSlave.js @@ -15,7 +15,7 @@ App.UI.SlaveInteract.useSlave = function(slave) { const {he, him, his} = getPronouns(slave); - /** @type {Record<string, string>[]} */ + /** @type {FC.UseSlave.Option[]} */ const log = []; /** @enum {string} */ const none = "none"; @@ -135,7 +135,7 @@ App.UI.SlaveInteract.useSlave = function(slave) { div.innerHTML = e.desc; div.append(App.UI.DOM.makeElement("div", e.reaction, ['indent', 'italics'])); - log.push({action: e.link}); + log.push(new App.UI.SlaveInteract.Option(e.link, e.desc, e.tooltip, e.prereq, e.effect, e.reaction)); e.effect(); diff --git a/src/interaction/useSlave/useSlaveHelpers.js b/src/interaction/useSlave/useSlaveHelpers.js index 1dd3f35329b..f267aeaeff4 100644 --- a/src/interaction/useSlave/useSlaveHelpers.js +++ b/src/interaction/useSlave/useSlaveHelpers.js @@ -17,6 +17,25 @@ App.UI.SlaveInteract.Action = { VAGINAL: 'vaginal', }; +App.UI.SlaveInteract.Option = class Option { + /** + * @param {string} link + * @param {string} desc + * @param {string} tooltip + * @param {() => boolean} prereq + * @param {() => void} effect + * @param {string} reaction + */ + constructor(link, desc, tooltip, prereq, effect, reaction) { + this.link = link; + this.desc = desc; + this.tooltip = tooltip; + this.prereq = prereq; + this.effect = effect; + this.reaction = reaction; + } +}; + /** A class containing the different temporary variables and states for each participant. */ App.UI.SlaveInteract.CharacterState = class CharacterState { constructor() { -- GitLab