diff --git a/src/markets/specificMarkets/customSlaveMarket.js b/src/markets/specificMarkets/customSlaveMarket.js index 8d9877dbcc74aff83971cc7de6fef833f501c14c..e1d98751247f0234d309110d9bf8a2c05974ced5 100644 --- a/src/markets/specificMarkets/customSlaveMarket.js +++ b/src/markets/specificMarkets/customSlaveMarket.js @@ -36,6 +36,7 @@ App.Markets["Custom Slave"] = function() { el.append(nationality()); el.append(reset()); el.append(orderControls()); + el.append(hears()); return el; @@ -671,9 +672,64 @@ App.Markets["Custom Slave"] = function() { return el; } - //TODO: eyes + function eyes() { + const el = document.createElement("div"); + const slaveProperty = "eyes"; + const choices = new Map([ + ["0", "Normal Vision"], + ["-1", "Nearsighted"], + ]); + if (V.seeExtreme) { + choices.set("-2", "Blind"); + } + + // Desc setup + const descText = document.createElement("span"); + descText.id = (`${slaveProperty}-text`); + descText.append(description()); + el.append(descText); + + el.append(choicesMaker(slaveProperty, choices, description)); + + function description() { + const vision = getBestVision(slave); + for (const [value, text] of choices) { + if (vision === Number(value)) { + return `${text}.`; + } + } + return `Blind.`; + } + + return el; + } + - //TODO: ears + function hears() { + const el = document.createElement("div"); + const slaveProperty = "hears"; + const choices = new Map([ + ["0", "Normal Hearing"], + ["-1", "Hard of Hearing"], + ]); + if (V.seeExtreme) { + choices.set("-2", "Deaf"); + } + + createDescription(el, description, slaveProperty); + el.append(choicesMaker(slaveProperty, choices, description)); + + function description() { + for (const [value, text] of choices) { + if (slave.hears === Number(value)) { + return `${text}.`; + } + } + return `Hard of hearing.`; + } + + return el; + } function smells() { const el = document.createElement("div");