From c43b989e7d1b4a20d51fbda819ffb1592f71ce2e Mon Sep 17 00:00:00 2001 From: Svornost <11434-svornost@users.noreply.gitgud.io> Date: Thu, 26 Mar 2020 19:12:28 -0700 Subject: [PATCH] Get rid of obsolete widgets <<CorpDevBuySell>>, <<CreateSlaveByOrigin>> and <<AddMarketOrigins>>. --- src/pregmod/widgets/economyWidgets.tw | 133 -------------------------- src/pregmod/widgets/marketWidgets.tw | 38 -------- 2 files changed, 171 deletions(-) delete mode 100644 src/pregmod/widgets/marketWidgets.tw diff --git a/src/pregmod/widgets/economyWidgets.tw b/src/pregmod/widgets/economyWidgets.tw index e4de275dca6..8bb509efc59 100644 --- a/src/pregmod/widgets/economyWidgets.tw +++ b/src/pregmod/widgets/economyWidgets.tw @@ -458,136 +458,3 @@ <</if>> <</if>> <</widget>> - -/* Call with <<CorpDevBuySell "asset" "Numasset">> TODO: replace eval parse with appropriate functions */ -<<widget "CorpDevBuySell">> -<<set _textboxMLArg = '_'+$args[1]>> -| Trade Qty -<<textbox `'_Num' + $args[0]` `eval(parse('_Num' + $args[0]))`>><<script>>setTextboxMaxLength(State.temporary["textboxMLArg"], 10);<</script>>: -<<link "Buy">> - <<if !Number.isInteger(Number.parseFloat(eval(parse('_Num' + $args[0]))))>> /* Checks if _Numasset is string */ -/* Buy all */ - <<if ["all", "max"].includes(State.temporary[$args[1]].toLowerCase())>> - <<set State.temporary[$args[1]] = Math.floor($corp.Cash/(State.variables[$args[0]+"AssetPrice"] * 500))>> - <<replace `'#'+$args[0]+'AssetsPurchasing'`>> - Bought <<print num(Math.floor($corp.Cash/(State.variables[$args[0]+"AssetPrice"] * 500)))>> units for <<print cashFormat(Math.floor($corp.Cash/(State.variables[$args[0]+"AssetPrice"] * 500))*500*State.variables[$args[0]+"AssetPrice"])>> - <</replace>> - <<set State.variables[$args[0]+"Assets"] += (eval(parse('_Num' + $args[0]))) * 500>> - <<set $corp.Cash -= (eval(parse('_Num' + $args[0]))) * 500 * State.variables[$args[0]+"AssetPrice"]>> - <<replace '#cashOnHand'>> - <<print cashFormat($corp.Cash)>> - <</replace>> - <<replace `'#'+$args[0]+'AssetsDisp'`>> - <<print cashFormat(State.variables[$args[0]+"AssetPrice"] * State.variables[$args[0]+"Assets"])>> (<<print num(Math.floor(State.variables[$args[0]+"Assets"]/500))>> unit<<if State.variables[$args[0]+"Assets"]/500 > 1>>s<</if>>) - <</replace>> - <<replace `'#'+'controls'+$args[0]`>><<CorpDevBuySell $args[0] $args[1]>><</replace>><<script>>setReplaceTextboxMaxLength(State.temporary["textboxMLArg"], 10);<</script>> - <<else>> -/* Error if decimal or not "all" or "max" string */ - <<replace `'#'+$args[0]+'AssetsPurchasing'`>> Please input a round number. <</replace>> - <</if>> -/* Negative number, try again */ - <<elseif Number.parseFloat(eval(parse('_Num' + $args[0]))) < 0>> - <<replace `'#'+$args[0]+'AssetsPurchasing'`>>Please input a positive number.<</replace>> -/* Buy % */ - <<elseif State.temporary[$args[1]].toString().includes("%")>> - <<set _DesPerc = State.temporary[$args[1]]>> - <<set State.temporary[$args[1]] = Math.floor((Math.clamp((Number.parseFloat(State.temporary[$args[1]])/100),0,1)*$corp.Cash)/(State.variables[$args[0]+"AssetPrice"] * 500))>> - <<replace `'#'+$args[0]+'AssetsPurchasing'`>> - Purchased <<print num(State.temporary[$args[1]])>> units (<<print num((State.temporary[$args[1]]*(State.variables[$args[0]+"AssetPrice"] * 50000)/$corp.Cash).toFixed(2))>>% of cash, desired was _DesPerc) - <</replace>> - <<set State.variables[$args[0]+"Assets"] += (eval(parse('_Num' + $args[0]))) * 500>> - <<set $corp.Cash -= (eval(parse('_Num' + $args[0]))) * 500 * State.variables[$args[0]+"AssetPrice"]>> - <<replace '#cashOnHand'>> - <<print cashFormat($corp.Cash)>> - <</replace>> - <<replace `'#'+$args[0]+'AssetsDisp'`>> - <<print cashFormat(State.variables[$args[0]+"AssetPrice"] * State.variables[$args[0]+"Assets"])>> (<<print num(Math.floor(State.variables[$args[0]+"Assets"]/500))>> unit<<if State.variables[$args[0]+"Assets"]/500 > 1>>s<</if>>) - <</replace>> - <<replace `'#'+'controls'+$args[0]`>><<CorpDevBuySell $args[0] $args[1]>><</replace>><<script>>setReplaceTextboxMaxLength(State.temporary["textboxMLArg"], 10);<</script>> -/* Successful buy */ - <<elseif (eval(parse('_Num' + $args[0]))) * 500 * State.variables[$args[0]+"AssetPrice"] < $corp.Cash>> - <<set State.variables[$args[0]+"Assets"] += (eval(parse('_Num' + $args[0]))) * 500>> - <<set $corp.Cash -= (eval(parse('_Num' + $args[0]))) * 500 * State.variables[$args[0]+"AssetPrice"]>> - <<replace '#cashOnHand'>> - <<print cashFormat($corp.Cash)>> - <</replace>> - <<replace `'#'+$args[0]+'AssetsDisp'`>> - <<print cashFormat(State.variables[$args[0]+"AssetPrice"] * State.variables[$args[0]+"Assets"])>> (<<print num(Math.floor(State.variables[$args[0]+"Assets"]/500))>> unit<<if State.variables[$args[0]+"Assets"]/500 > 1>>s<</if>>) - <</replace>> - <<replace `'#'+$args[0]+'AssetsPurchasing'`>><</replace>> -/* Unsuccessful buy but have enough cash for more than 1 unit */ - <<elseif $corp.Cash > 500 * State.variables[$args[0]+"AssetPrice"]>> - <<replace `'#'+$args[0]+'AssetsPurchasing'`>> - The corp can only buy <<print num(Math.floor($corp.Cash/(State.variables[$args[0]+"AssetPrice"] * 500)))>> more unit<<if Math.floor($corp.Cash/(State.variables[$args[0]+"AssetPrice"] * 500)) > 1 >>s<</if>> of $args[0] assets. - <</replace>> - <<set State.temporary[$args[1]] = Math.floor($corp.Cash/(State.variables[$args[0]+"AssetPrice"] * 500))>> - <<replace `'#'+'controls'+$args[0]`>><<CorpDevBuySell $args[0] $args[1]>><</replace>><<script>>setReplaceTextboxMaxLength(State.temporary["textboxMLArg"], 10);<</script>> -/* Unsuccessful buy */ - <<else>> - <<replace `'#'+$args[0]+'AssetsPurchasing'`>>There are insufficient funds for additional purchases.<</replace>> - <</if>> -<</link>> -| <<link "Sell">> - <<if !Number.isInteger(Number.parseFloat(eval(parse('_Num' + $args[0]))))>> -/* Sell all */ - <<if ["all", "max"].includes(State.temporary[$args[1]].toLowerCase())>> - <<replace `'#'+$args[0]+'AssetsPurchasing'`>> - Sold <<print num(Math.ceil((State.variables[$args[0]+"Assets"]-500)/500))>> units for <<print cashFormat(Math.ceil((State.variables[$args[0]+"Assets"]-500)/500)*500*State.variables[$args[0]+"AssetPrice"])>> - <</replace>> - <<set State.temporary[$args[1]] = Math.ceil((State.variables[$args[0]+"Assets"]-500)/500)>> - <<set State.variables[$args[0]+"Assets"] -= eval(parse('_Num' + $args[0])) * 500>> - <<set $corp.Cash += eval(parse('_Num' + $args[0])) * 500 * State.variables[$args[0]+"AssetPrice"]>> - <<replace '#cashOnHand'>> - <<print cashFormat($corp.Cash)>> - <</replace>> - <<replace `'#'+$args[0]+'AssetsDisp'`>> - <<print cashFormat(State.variables[$args[0]+"AssetPrice"] * State.variables[$args[0]+"Assets"])>> (<<if Math.ceil(State.variables[$args[0]+"Assets"]/500) < 1>> < 1 <<else>><<print num(Math.ceil(State.variables[$args[0]+"Assets"]/500))>> <</if>>unit<<if State.variables[$args[0]+"Assets"]/500 > 1>>s<</if>>) - <</replace>> - <<replace `'#'+'controls'+$args[0]`>><<CorpDevBuySell $args[0] $args[1]>><</replace>><<script>>setReplaceTextboxMaxLength(State.temporary["textboxMLArg"], 10);<</script>> -/* Error if decimal or not "all" or "max" string */ - <<else>> - <<replace `'#'+$args[0]+'AssetsPurchasing'`>> Please input a round number. <</replace>> - <</if>> -/* Negative number, try again */ - <<elseif Number.parseFloat(eval(parse('_Num' + $args[0]))) < 0>> - <<replace `'#'+$args[0]+'AssetsPurchasing'`>>Please input a positive number.<</replace>> -/* Sell % */ - <<elseif State.temporary[$args[1]].toString().includes("%")>> - <<set _DesPerc = State.temporary[$args[1]]>> - <<set State.temporary[$args[1]] = Math.ceil((State.variables[$args[0]+"Assets"]-500)/500*(Math.clamp((Number.parseFloat(State.temporary[$args[1]])/100),0,1)))>> - <<replace `'#'+$args[0]+'AssetsPurchasing'`>> - Sold <<print num(State.temporary[$args[1]])>> units (<<print num((State.temporary[$args[1]]*100/((State.variables[$args[0]+"Assets"]-500)/500)).toFixed(2))>>% of $args[0] assets, desired was _DesPerc) - <</replace>> - <<set State.variables[$args[0]+"Assets"] -= eval(parse('_Num' + $args[0])) * 500>> - <<set $corp.Cash += eval(parse('_Num' + $args[0])) * 500 * State.variables[$args[0]+"AssetPrice"]>> - <<replace '#cashOnHand'>> - <<print cashFormat($corp.Cash)>> - <</replace>> - <<replace `'#'+$args[0]+'AssetsDisp'`>> - <<print cashFormat(State.variables[$args[0]+"AssetPrice"] * State.variables[$args[0]+"Assets"])>> (<<if Math.ceil(State.variables[$args[0]+"Assets"]/500) < 1>> < 1 <<else>><<print num(Math.ceil(State.variables[$args[0]+"Assets"]/500))>> <</if>>unit<<if State.variables[$args[0]+"Assets"]/500 > 1>>s<</if>>) - <</replace>> - <<replace `'#'+'controls'+$args[0]`>><<CorpDevBuySell $args[0] $args[1]>><</replace>><<script>>setReplaceTextboxMaxLength(State.temporary["textboxMLArg"], 10);<</script>> -/* Successful sell */ - <<elseif State.variables[$args[0]+"Assets"] > 500 && eval(parse('_Num' + $args[0])) * 500 < State.variables[$args[0]+"Assets"]>> - <<set State.variables[$args[0]+"Assets"] -= eval(parse('_Num' + $args[0])) * 500>> - <<set $corp.Cash += eval(parse('_Num' + $args[0])) * 500 * State.variables[$args[0]+"AssetPrice"]>> - <<replace '#cashOnHand'>> - <<print cashFormat($corp.Cash)>> - <</replace>> - <<replace `'#'+$args[0]+'AssetsDisp'`>> - <<print cashFormat(State.variables[$args[0]+"AssetPrice"] * State.variables[$args[0]+"Assets"])>> (<<if (State.variables[$args[0]+"Assets"]/500) < 1>> < 1 <<else>><<print num(Math.ceil(State.variables[$args[0]+"Assets"]/500))>> <</if>>unit<<if State.variables[$args[0]+"Assets"]/500 > 1>>s<</if>>) - <</replace>> - <<replace `'#'+$args[0]+'AssetsPurchasing'`>><</replace>> -/* Unsuccessful sell but have enough assets for more than 1 unit */ - <<elseif State.variables[$args[0]+"Assets"] > 500>> - <<replace `'#'+$args[0]+'AssetsPurchasing'`>> - The corp can only sell <<print num(Math.ceil((State.variables[$args[0]+"Assets"]-500)/500))>> more unit<<if Math.ceil((State.variables[$args[0]+"Assets"]-500)/500) > 1 >>s<</if>> of $args[0] assets. - <</replace>> - <<set State.temporary[$args[1]] = Math.ceil((State.variables[$args[0]+"Assets"]-500)/500)>> - <<replace `'#'+'controls'+$args[0]`>><<CorpDevBuySell $args[0] $args[1]>><</replace>><<script>>setReplaceTextboxMaxLength(State.temporary["textboxMLArg"], 10);<</script>> -/* Unsuccessful sell */ - <<else>> - <<replace `'#'+$args[0]+'AssetsPurchasing'`>>The corp cannot sell any more $args[0] assets.<</replace>> - <</if>> -<</link>> -<</widget>> diff --git a/src/pregmod/widgets/marketWidgets.tw b/src/pregmod/widgets/marketWidgets.tw deleted file mode 100644 index 517b15aca8f..00000000000 --- a/src/pregmod/widgets/marketWidgets.tw +++ /dev/null @@ -1,38 +0,0 @@ -:: Market Widgets [widget nobr] - -/* -* Look for widgets in passages tagged with "market:marketname" which -* end in "Populate" and calls them all with the second argument -* (an "origins" array) as argument. -* -* Call like <<AddMarketOrigins "marketname" _possibleOrigins>> -*/ - -<<widget "AddMarketOrigins">> -<<if _.isString($args[0]) && _.isArray($args[1])>> - <<set _sanityCheck = '>>', /* to appease sanityCheck */ - _widgets = _(Story.widgets) - .filter(function(wp) { return wp.tags.includes('market:' + $args[0]); }) - .flatMap(function(wp) { - var re = RegExp('<<widget\\s+"([^"]+Populate)"\\s*>>', 'g'); - var match, result = []; - while(match = re.exec(wp.text)) { result.push(match[1]); } - return result; }) - .value()>> - <<silently>><<for _widget range _widgets>> - <<= "<<" + _widget + " $args[1]>>">> - <</for>><</silently>> -<</if>> -<</widget>> - -<<widget "CreateSlaveByOrigin">> -<<silently>> - <<if _.isObject($args[0]) && _.isString($args[0].widget)>> - <<= "<<" + $args[0].widget + " $args[0]>>">> - <<elseif _.isString($args[0])>> - <<= "<<" + $args[0] + " $args[0]>>">> - <<else>> - <<include "Generate Random Slave">> - <</if>> -<</silently>> -<</widget>> -- GitLab