diff --git a/src/markets/theMarket/market.js b/src/markets/theMarket/market.js new file mode 100644 index 0000000000000000000000000000000000000000..a172b7fcbaa16c1ff7cfaf00c729881fff3473fc --- /dev/null +++ b/src/markets/theMarket/market.js @@ -0,0 +1,41 @@ +App.UI.market = function() { + const span = document.createElement("span"); + span.id = "slave-markets"; + + span.append(App.UI.buySlaves()); + span.append(App.UI.sellSlaves()); + + const menialSpan = document.createElement("span"); + menialSpan.id = "menial-span"; + menialSpan.append(App.UI.tradeMenials()); + span.append(menialSpan); + + return span; +}; + +App.UI.specificMarket = function({market, slaveMarket, slaveMarketLimit, newSlaves = [], numArcology} = {}) { + const el = new DocumentFragment(); + + // Sidebar + V.nextButton = "Back"; + V.nextLink = "Buy Slaves"; + V.returnTo = "Buy Slaves"; + V.encyclopedia = "Kidnapped Slaves"; + // Multi-Purchase Support + if (V.newSlaves.length > 0) { + V.nextButton = "Continue"; + V.nextLink = "Bulk Slave Intro"; + V.returnTo = "Main"; + V.newSlaveIndex = 0; + } + + // fake a new passage so we can preserve some persistent data without globals + App.Utils.scheduleSidebarRefresh(); // TODO: not updating back button + window.scrollTo(0, 0); + el.append( + App.Markets[market](numArcology) + ); + + + return jQuery("#slave-markets").empty().append(el); +}; diff --git a/src/markets/theMarket/tradeMenials.js b/src/markets/theMarket/tradeMenials.js index 26db47d763b7c7847d3f2ddeda335e4e7b34584a..dfd14db4901d621d3edd5a8c8f99fbb7d40f654c 100644 --- a/src/markets/theMarket/tradeMenials.js +++ b/src/markets/theMarket/tradeMenials.js @@ -166,9 +166,10 @@ App.UI.tradeMenials = function() { linkArray.push( App.UI.DOM.link( "Buy", - () => buySomeMenials(1), - [], - "Buy Slaves" + () => { + buySomeMenials(1); + jQuery("#menial-span").empty().append(App.UI.tradeMenials()); + } ) ); if (V.cash > (menialSlaveCost(10)) * 10) { @@ -186,9 +187,8 @@ App.UI.tradeMenials = function() { buySomeMenials( Math.trunc(Math.clamp(V.cash / (menialPrice + _menialBulkPremium), 0, bulkMax)) ); + jQuery("#menial-span").empty().append(App.UI.tradeMenials()); }, - [], - "Buy Slaves" ) ); } @@ -207,9 +207,10 @@ App.UI.tradeMenials = function() { linkArray.push( App.UI.DOM.link( "Sell", - () => sellSomeMenials(1), - [], - "Buy Slaves" + () => { + sellSomeMenials(1); + jQuery("#menial-span").empty().append(App.UI.tradeMenials()); + } ) ); @@ -225,9 +226,8 @@ App.UI.tradeMenials = function() { () => { sellSomeMenials(V.menials); V.menials = 0; // Be quite sure. + jQuery("#menial-span").empty().append(App.UI.tradeMenials()); }, - [], - "Buy Slaves" ) ); App.UI.DOM.appendNewElement("div", el, App.UI.DOM.generateLinksStrip(linkArray)); @@ -251,9 +251,10 @@ App.UI.tradeMenials = function() { linkArray.push( App.UI.DOM.link( "Convert to Fuckdoll", - () => convertSomeMenialsToFuckdolls(1), - [], - "Buy Slaves" + () => { + convertSomeMenialsToFuckdolls(1); + jQuery("#menial-span").empty().append(App.UI.tradeMenials()); + } ) ); @@ -269,9 +270,8 @@ App.UI.tradeMenials = function() { () => { convertSomeMenialsToFuckdolls(V.menials); V.menials = 0; // Be really sure + jQuery("#menial-span").empty().append(App.UI.tradeMenials()); }, - [], - "Buy Slaves" ) ); @@ -290,9 +290,10 @@ App.UI.tradeMenials = function() { linkArray.push( App.UI.DOM.link( "Convert to Bioreactor", - () => convertSomeMenialsToBioreactors(1), - [], - "Buy Slaves" + () => { + convertSomeMenialsToBioreactors(1); + jQuery("#menial-span").empty().append(App.UI.tradeMenials()); + } ) ); @@ -308,9 +309,8 @@ App.UI.tradeMenials = function() { () => { convertSomeMenialsToBioreactors(V.menials); V.menials = 0; // Be really sure + jQuery("#menial-span").empty().append(App.UI.tradeMenials()); }, - [], - "Buy Slaves" ) ); div = document.createElement("div"); @@ -347,9 +347,10 @@ App.UI.tradeMenials = function() { linkArray.push( App.UI.DOM.link( "Buy", - () => buySomeFuckdolls(1), - [], - "Buy Slaves" + () => { + buySomeFuckdolls(1); + jQuery("#menial-span").empty().append(App.UI.tradeMenials()); + } ) ); if (V.cash > (menialSlaveCost(10)) * 10) { @@ -367,9 +368,8 @@ App.UI.tradeMenials = function() { buySomeFuckdolls( Math.trunc(Math.clamp(V.cash / (menialPrice + _menialBulkPremium), 0, bulkMax)) ); + jQuery("#menial-span").empty().append(App.UI.tradeMenials()); }, - [], - "Buy Slaves" ) ); } @@ -388,9 +388,10 @@ App.UI.tradeMenials = function() { linkArray.push( App.UI.DOM.link( "Sell", - () => sellSomeFuckdolls(1), - [], - "Buy Slaves" + () => { + sellSomeFuckdolls(1); + jQuery("#menial-span").empty().append(App.UI.tradeMenials()); + } ) ); @@ -406,9 +407,8 @@ App.UI.tradeMenials = function() { () => { sellSomeFuckdolls(V.fuckdolls); V.fuckdolls = 0; // Be quite sure. + jQuery("#menial-span").empty().append(App.UI.tradeMenials()); }, - [], - "Buy Slaves" ) ); App.UI.DOM.appendNewElement("div", el, App.UI.DOM.generateLinksStrip(linkArray)); @@ -443,9 +443,10 @@ App.UI.tradeMenials = function() { linkArray.push( App.UI.DOM.link( "Buy", - () => buySomeBioreactors(1), - [], - "Buy Slaves" + () => { + buySomeBioreactors(1); + jQuery("#menial-span").empty().append(App.UI.tradeMenials()); + } ) ); if (V.cash > (menialSlaveCost(10)) * 10) { @@ -463,9 +464,8 @@ App.UI.tradeMenials = function() { buySomeBioreactors( Math.trunc(Math.clamp(V.cash / (menialPrice - 99 + _bioreactorBulkPremium), 0, bulkMax)) ); + jQuery("#menial-span").empty().append(App.UI.tradeMenials()); }, - [], - "Buy Slaves" ) ); } @@ -484,9 +484,10 @@ App.UI.tradeMenials = function() { linkArray.push( App.UI.DOM.link( "Sell", - () => sellSomeBioreactors(1), - [], - "Buy Slaves" + () => { + sellSomeBioreactors(1); + jQuery("#menial-span").empty().append(App.UI.tradeMenials()); + } ) ); @@ -502,9 +503,8 @@ App.UI.tradeMenials = function() { () => { sellSomeBioreactors(V.menialBioreactors); V.menialBioreactors = 0; // Be quite sure. + jQuery("#menial-span").empty().append(App.UI.tradeMenials()); }, - [], - "Buy Slaves" ) ); div = document.createElement("div"); @@ -524,9 +524,10 @@ App.UI.tradeMenials = function() { linkArray.push( App.UI.DOM.link( `x${number}`, - () => runMe(number), - [], - "Buy Slaves" + () => { + runMe(number); + jQuery("#menial-span").empty().append(App.UI.tradeMenials()); + } ) ); } diff --git a/src/uncategorized/buySlaves.tw b/src/uncategorized/buySlaves.tw index eb4532559c26dc97358cf9c0a0f978d0ed594306..953bee616f245ad277686f635dc994041f80c57e 100644 --- a/src/uncategorized/buySlaves.tw +++ b/src/uncategorized/buySlaves.tw @@ -3,8 +3,4 @@ <<set $nextButton = "Back">> <<set $nextLink = "Main">> -<<includeDOM App.UI.buySlaves()>> - -<<includeDOM App.UI.sellSlaves()>> - -<<includeDOM App.UI.tradeMenials()>> \ No newline at end of file +<<includeDOM App.UI.market()>>