diff --git a/src/art/vector/Boob.tw b/src/art/vector/Boob.tw index faa52b9038e9f5eb76e078cc83ee94d54efe5056..5687ee3774552131fb0cff5e48e5a48515614a30 100644 --- a/src/art/vector/Boob.tw +++ b/src/art/vector/Boob.tw @@ -13,24 +13,25 @@ See https://www.wolframalpha.com/input/?i=log+fit+%7B%7B300,1%7D,%7B15000,2.5%7D Boobs start at 300cc as of "flesh description widgets". Upper value was discussed at https://github.com/Free-Cities/Free-Cities/issues/950#issuecomment-321359466 . */ -<<set _art_scale_factor = 0.383433*Math.log(0.0452403*_artSlave.boobs) >> -<<set _art_translation_x = -282.841*_art_scale_factor+292.349 >> -<<set _art_translation_y = -225.438*_art_scale_factor+216.274 >> -<<set _art_boob_transform = "matrix(" + _art_scale_factor +",0,0," + _art_scale_factor + "," + _art_translation_x + "," + _art_translation_y + ")">> +<<if _artSlave.boobs < 300>> + <<set _art_scale_factor = 1 >> + <<set _art_translation_x = 22 >> /* a little shift to the right is needed due to perspective */ + <<set _art_translation_y = 0 >> +<<else>> + <<set _art_scale_factor = 0.383433*Math.log(0.0452403*_artSlave.boobs) >> + <<set _art_translation_x = -282.841*_art_scale_factor+292.349 >> + <<set _art_translation_y = -225.438*_art_scale_factor+216.274 >> +<</if>> /* _art_boob_transform is for internal program usage. _art_transform will affect the display. */ +<<set _art_boob_transform = "matrix(" + _art_scale_factor +",0,0," + _art_scale_factor + "," + _art_translation_x + "," + _art_translation_y + ")">> <<set _art_transform = _art_boob_transform>> <<if _artSlave.boobs < 300 >> /* BEWARE: this threshold may be used in other art-related code, too */ /* boobs too small - draw areolae directly onto torso */ - <<set _art_scale_factor = 1 >> - <<set _art_translation_x = 22 >> /* a little shift to the right is needed due to perspective */ - <<set _art_translation_y = 0 >> - <<set _art_boob_transform = "matrix(" + _art_scale_factor +",0,0," + _art_scale_factor + "," + _art_translation_x + "," + _art_translation_y + ")">> - <<set _art_transform = _art_boob_transform>> <<else>> <<include Art_Vector_Boob_Alt>> /* shiny clothings */ diff --git a/src/js/vectorRevampedArtControlJS.tw b/src/js/vectorRevampedArtControlJS.tw index ab6bd98b3894de011b50725ace49518b1b0cac92..47a3f7356209cb64f0a1c8b745502906b3d133c3 100644 --- a/src/js/vectorRevampedArtControlJS.tw +++ b/src/js/vectorRevampedArtControlJS.tw @@ -99,7 +99,7 @@ class ArtStyleControl { } applyCalcMuscleTone() { - var musclesValue = this.artSlave.muscles + 100; + var musclesValue = this.artSlave.muscles + 101; var musclesVisibility = 0.910239*Math.log(0.02*musclesValue); this.muscleTone["fill-opacity"] = musclesVisibility; diff --git a/src/uncategorized/fullReport.tw b/src/uncategorized/fullReport.tw index 8cae5fa0cb9258f6b0c6a976a7c19de9b6e75a5f..afa4242200ace80397959b27f13e7d18c07c9f43 100644 --- a/src/uncategorized/fullReport.tw +++ b/src/uncategorized/fullReport.tw @@ -83,7 +83,7 @@ <br> <</if>> -<<if ($slaves[$i].tired == 0) && Array.isArray($personalAttention) && $personalAttention.findIndex(function(s) { return s.ID == $slaves[$i].ID; }) != -1>> +<<if Array.isArray($personalAttention) && $personalAttention.findIndex(function(s) { return s.ID == $slaves[$i].ID; }) != -1>> <<set $activeSlave = $slaves[$i]>> <<include "PT Workaround">> <br> diff --git a/src/uncategorized/pMercenaryRomeo.tw b/src/uncategorized/pMercenaryRomeo.tw index 9df2d9eeb98c742ea244dcb886afc75efd7a1058..d6e54f3521ce93be26aef32137ccef549cba9b18 100644 --- a/src/uncategorized/pMercenaryRomeo.tw +++ b/src/uncategorized/pMercenaryRomeo.tw @@ -2,16 +2,21 @@ <<set $nextButton = "Continue", $nextLink = "Random Nonindividual Event">> -<<set _romeoSlaves = $slaves.filter(function(s) { return s.fetish != "mindbroken" && s.fuckdoll == 0 && ["serve the public", "serve in the club", "whore", "work in the brothel"].includes(s.assignment); })>> -<<if _romeoSlaves.length == 0>> - <<set _romeoSlaves = $slaves.filter(function(s) { return (s.publicCount > 0) && (s.newGamePlus == 0) && (s.relationship > -3) && !["be your Concubine", "serve in the master suite"].includes(s.assignment); })>> +<<if ndef $romeoID>> + <<set _romeoSlaves = $slaves.filter(function(s) { return s.fetish != "mindbroken" && s.fuckdoll == 0 && ["serve the public", "serve in the club", "whore", "work in the brothel"].includes(s.assignment); })>> <<if _romeoSlaves.length == 0>> - <<set $activeSlave = $slaves.random()>> + <<set _romeoSlaves = $slaves.filter(function(s) { return (s.publicCount > 0) && (s.newGamePlus == 0) && (s.relationship > -3) && !["be your Concubine", "serve in the master suite"].includes(s.assignment); })>> + <<if _romeoSlaves.length == 0>> + <<set $activeSlave = $slaves.random()>> + <<else>> + <<set $activeSlave = _romeoSlaves.random()>> + <</if>> <<else>> <<set $activeSlave = _romeoSlaves.random()>> <</if>> + <<set $romeoID = $activeSlave.ID>> <<else>> - <<set $activeSlave = _romeoSlaves.random()>> + <<set $activeSlave = getSlave($romeoID)>> <</if>> <<slaveCost $activeSlave>> @@ -55,6 +60,7 @@ I've scraped together what I can, and I can pay <<print cashFormat($slaveCost)>> <<replace "#result">> $activeSlave.slaveName obeys your orders not to see the old mercenary. Though neither he or $activeSlave.slaveName says a word about it, his squadmates are not so closemouthed. Soon the tragic story of The Mercenary and the Slave Girl is being told in bars and brothels across the Free City, with you naturally playing @@.red;the role of the villain.@@ <<set $rep -= 1000>> + <<unset $romeoID>> <</replace>> <</link>> <br><<link "Politely decline">> @@ -62,6 +68,7 @@ I've scraped together what I can, and I can pay <<print cashFormat($slaveCost)>> <<replace "#result">> "Ah well," he says, "didn't think you would, but I had to ask. If you'd be so kind as to keep her assigned so's I can see her, I would be grateful. That was a fine victory, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>; come down to the bar and join the boys and I. We'll buy you a drink. Devil knows, thanks to you we can afford to." <<if $activeSlave.relationship == -3 && $activeSlave.fetish != "mindbroken" && $activeSlave.devotion+$activeSlave.trust > 190>>$activeSlave.slaveName politely thanks you for not letting him take her away.<</if>> + <<unset $romeoID>> <</replace>> <</link>> <br><<link "Accept">> @@ -89,6 +96,7 @@ I've scraped together what I can, and I can pay <<print cashFormat($slaveCost)>> <<set $rep += 500, $cash += $slaveCost>> <<include "Remove activeSlave">> <</if>> + <<unset $romeoID>> <</replace>> <</link>> <br><<link "Give her to him as a gift">> @@ -111,6 +119,7 @@ I've scraped together what I can, and I can pay <<print cashFormat($slaveCost)>> <<set $trinkets.push(_poster)>> <<include "Remove activeSlave">> <</if>> + <<unset $romeoID>> <</replace>> <</link>> </span> diff --git a/src/uncategorized/persBusiness.tw b/src/uncategorized/persBusiness.tw index 69f7c1c98d482056ff9eaab3b445952a8123f33d..1f5fcd62ec07dfb65e54d0586a1b2303d141bd8f 100644 --- a/src/uncategorized/persBusiness.tw +++ b/src/uncategorized/persBusiness.tw @@ -317,7 +317,7 @@ <<set $enduringRep *= .8>> <</if>> <</if>> - <<set $seed += Math.trunc(Math.min(3000 * Math.log($cash), $cash * 0.07))>> + <<set $seed += Math.trunc(Math.min(3000 * Math.log($cash+1), $cash * 0.07))>> This week, your illicit and legitimate business dealings earned you a combined total of @@.yellowgreen;<<print cashFormat($seed)>>@@. <<set $cash += $seed>> <<elseif ($cash > 1000) && ($personalAttention == "business")>> diff --git a/src/uncategorized/saServeYourOtherSlaves.tw b/src/uncategorized/saServeYourOtherSlaves.tw index e2bce7d728bfa164b6ff604763618e9647859945..b09a4d414e7091f67453ee0253fc151ad82e8a6e 100644 --- a/src/uncategorized/saServeYourOtherSlaves.tw +++ b/src/uncategorized/saServeYourOtherSlaves.tw @@ -51,7 +51,7 @@ Since she's forced to crawl around, she's especially vulnerable. <</if>> <<if ($dormitoryPopulation+$roomsPopulation-$subSlaves) > 5>> - <<set _load = ($subSlave/($dormitoryPopulation+$roomsPopulation-$subSlaves))>> + <<set _load = ($subSlaves/($dormitoryPopulation+$roomsPopulation-$subSlaves))>> <<if _load <= .2>> Since there are enough other slaves servicing your stock alongside her, she sees limited action. <<elseif _load <= .5>> @@ -77,7 +77,7 @@ <<set $slaves[$i].devotion += 2>> <</if>> <<else>> - Since <<if $subSlave == 1>>she is the only slave<<else>>there are so few other slaves<</if>> servicing your stock, she is used to the @@.red;point of exhaustion.@@ + Since <<if $subSlaves == 1>>she is the only slave<<else>>there are so few other slaves<</if>> servicing your stock, she is used to the @@.red;point of exhaustion.@@ <<set $slaves[$i].tired = 1, $slaves[$i].health -= 10>> <<if $averageDick > 5>> <<if canDoVaginal($slaves[$i]) && $slaves[$i].vagina > 0 && $slaves[$i].vagina < 4>>