Skip to content
Snippets Groups Projects
Commit 16ff9967 authored by Pregmodder's avatar Pregmodder
Browse files

Merge branch 'FCTV-fix2' into 'pregmod-master'

Fctv fix2 [Ready for merge review]

Closes #1589, #1585, and #1615

See merge request !6460
parents 8422223d aa6cee1d
No related branches found
No related tags found
1 merge request!6460Fctv fix2 [Ready for merge review]
...@@ -18,8 +18,12 @@ window.FCTV = (function() { ...@@ -18,8 +18,12 @@ window.FCTV = (function() {
return { return {
channels:channels, channels:channels,
manage: manage, manage: manage,
showChannel:showChannel, showChannel: showChannel,
incrementChannel:incrementChannel, incrementChannel: incrementChannel,
incrementShow: incrementShow,
channelCount: channelCount,
showRange: showRange,
FinalTouches: FinalTouches
}; };
function channels() { function channels() {
...@@ -104,6 +108,7 @@ window.FCTV = (function() { ...@@ -104,6 +108,7 @@ window.FCTV = (function() {
if (V.minimumSlaveAge > 13) { if (V.minimumSlaveAge > 13) {
x.canSelect = -1; x.text += `<i>Actor not vintage enough, changing program.</i>`; x.canSelect = -1; x.text += `<i>Actor not vintage enough, changing program.</i>`;
} }
break;
case 16: case 16:
if (!V.seeDicks && !V.makeDicks) { if (!V.seeDicks && !V.makeDicks) {
x.canSelect = -1; x.text += `<i>Too many hot dogs detected, changing program.</i>`; x.canSelect = -1; x.text += `<i>Too many hot dogs detected, changing program.</i>`;
...@@ -111,18 +116,97 @@ window.FCTV = (function() { ...@@ -111,18 +116,97 @@ window.FCTV = (function() {
break; break;
} }
if (State.temporary.all) { x.canSelect = 1; } if (V.all) { x.canSelect = 1; }
return x; return x;
} }
function incrementChannel(i = V.FCTV.channel.selected) { function incrementChannel(i = V.FCTV.channel.selected) {
V.FCTV.channel.selected = i; V.FCTV.channel[num(i, true)]++; V.FCTV.channel.selected = i; V.FCTV.channel[num(i, true)]++;
if (i === 2 && V.FCTV.channel[num(i, true)] >= 12) {
V.FCTV.channel[num(i, true)] = 0;
}
if ( if (
[14, 15].includes(i) && V.FCTV.channel[num(i, true)] == 3 [14, 15].includes(i) && V.FCTV.channel[num(i, true)] === 3
|| [13, 16].includes(i) && V.FCTV.channel[num(i, true)] == 4 || [13, 16].includes(i) && V.FCTV.channel[num(i, true)] === 4
|| i === 12 && V.FCTV.channel[num(i, true)] == 9 || i === 12 && V.FCTV.channel[num(i, true)] === 9
) { ) {
V.FCTV.channel[num(i, true)] = 1; V.FCTV.channel[num(i, true)] = 1;
} }
} }
function incrementShow() {
V.show = V.usedRemote ? V.show + 1 : V.show;
}
function channelCount(i, operation = 'eq') {
if (operation === 'eq') {
if (V.FCTV.channel[num(V.FCTV.channel.selected, true)] === i) {
return true;
}
} else if (operation === 'gt') {
if (V.FCTV.channel[num(V.FCTV.channel.selected, true)] > i) {
return true;
}
} else if (operation === 'lt') {
if (V.FCTV.channel[num(V.FCTV.channel.selected, true)] < i) {
return true;
}
}
return false;
}
function showRange(low, max, operation = 'rand') {
if (V.usedRemote) {
V.show = !between(V.show, low, max) ? low : V.show;
} else {
V.show = operation === 'rand' ? jsRandom(low, max) : either(low, max);
}
}
function FinalTouches(i, channel) {
function applySkill(obj) {
Object.assign(i.skill, obj);
}
if (channel === 14) {
i.behavioralFlaw = "arrogant"; i.markings = "none";
if (i.weight > 130) {
i.weight -= 100; i.waist = random(-10,50);
}
i.health.condition = random(60,80);
} else if (channel === 4) {
i.pubertyXX = 1; i.career = "a slave";
i.origin = "You purchased $him from FCTV's Home Slave Shopping stream channel.";
i.health.condition = 75;
if (V.show < 3) {
i.custom.tattoo = "$He has a small stylized 'A' tattooed on the nape of $his neck marking $him as the product of the famous breeding program at Arcturus Arcology.";
applySkill({'vaginal': 0, 'entertainment': jsRandom(50, 80),
'oral': jsRandom(20, 60), 'anal': 0,
'whoring': 0});
} else if (V.show === 3) {
applySkill({'vaginal': jsRandom(50, 80),
'oral': jsRandom(40, 80), 'anal': jsRandom(20,50),
'whoring': jsRandom(0, 50)});
} else if (V.show === 4) {
applySkill({'vaginal': jsRandom(50, 100),
'oral': jsRandom(20, 50), 'anal': jsRandom(10, 20)});
i.counter.birthsTotal = jsRandom(2, 3);
} else if (V.show === 5) {
applySkill({'vaginal': jsRandom(50, 100), 'entertainment': jsRandom(20, 80),
'oral': jsRandom(50, 100), 'anal': jsRandom(20, 80),
'whoring': jsRandom(20,80)});
i.counter.birthsTotal = jsRandom(1, 3);
} else if (V.show === 6) {
applySkill({'vaginal': 15,
'oral': 15, 'anal': 15,
'whoring': 15});
} else if (V.show <= 8) {
applySkill({'oral': jsRandom(30, 60), 'anal': jsRandom(20, 50),
'whoring': jsRandom(0, 25)});
} else if (V.show === 8) {
applySkill({'oral': jsRandom(40, 80), 'anal': jsRandom(40, 80),
'whoring': jsRandom(40, 70)});
}
}
i.health.health = i.health.condition - i.health.shortDamage - i.health.longDamage;
}
})(); })();
This diff is collapsed.
:: SE FCTV Watch [nobr] :: SE FCTV Watch [nobr]
<<set $nextButton = "Continue", $nextLink = "Scheduled Event", $returnTo = "Scheduled Event", $showEncyclopedia = 1, $encyclopedia = "FCTV">> <<set $nextButton = "Continue", $nextLink = "Scheduled Event", $returnTo = "Scheduled Event", $showEncyclopedia = 1, $encyclopedia = "FCTV">>
<<set $FCTV.pcViewership.count++, _possibleChannels = [0].concat(FCTV.channels()), $usedRemote = $usedRemote || 0>> <<set $FCTV.pcViewership.count++, _possibleChannels = [0].concat(FCTV.channels())>>
Tired after a long day, you tell <<if $Concubine > 0>>your concubine: @@.pink;$Concubine.slaveName@@<<else>>$assistant.name<</if>> to turn on the TV and Tired after a long day, you tell <<if $Concubine>>your concubine: @@.pink;$Concubine.slaveName@@<<else>>$assistant.name<</if>> to turn on the TV and
<<if !$usedRemote>> <<if !$usedRemote>>
set FCTV to find a random show. Your larger-than-life screen flashes on, and is soon playing content from the popular streaming service. set FCTV to find a random show. Your larger-than-life screen flashes on, and is soon playing content from the popular streaming service.
<<if $cheatMode > 0 || $debugMode > 0 || $FCTV.remote>> <<if $cheatMode > 0 || $debugMode > 0 || $FCTV.remote>>
...@@ -52,23 +52,23 @@ Tired after a long day, you tell <<if $Concubine > 0>>your concubine: @@.pink;$C ...@@ -52,23 +52,23 @@ Tired after a long day, you tell <<if $Concubine > 0>>your concubine: @@.pink;$C
<</for>> <</for>>
<br> <br>
<<if $FCTV.channel.selected == $FCTV.channel.last>>You tuned into this channel last week, you may want choose something else.<br> <</if>> <<if $cheatMode > 0 || $debugMode > 0>>
<span id='all'> </span> <<link "Toggle inappropriate" "SE FCTV Watch">>
<<if $cheatMode > 0 || $debugMode > 0>> <br> <<if $all>>
<<link "Toggle inappropriate">> <<set $all = 0>>
<<if _all>>
<<set _all = 0>>
<<else>> <<else>>
<<set _all = 1>> <<set $all = 1>>
<</if>> <</if>>
<<replace '#all'>>
<<if _all>>
There is an audible tone from your screen, which then displays a message: <i>Showing all content, for testing purposes.</i> <br>
<</if>>
<</replace>>
<</link>> | <</link>> |
<</if>> <</if>>
[[Randomise channel selection|SE FCTV Watch][$usedRemote = 0]] [[Randomise channel selection|SE FCTV Watch][$usedRemote = 0]]
<<if $FCTV.channel.selected == $FCTV.channel.last>>
<br>You tuned into this channel last week, you may want choose something else.
<</if>>
<<if $all>>
<br>There is an audible tone from your screen, which then displays a message:
<i>Showing all content, for testing purposes.</i>
<</if>>
</center> </center>
<</if>> <</if>>
......
...@@ -271,11 +271,15 @@ ...@@ -271,11 +271,15 @@
<<set $PC.forcedFertDrugs-->> <<set $PC.forcedFertDrugs-->>
<</if>> <</if>>
<<if $FCTV.receiver > 0 && $FCTV.pcViewership.frequency != -1>> <<if $FCTV.receiver > 0>>
<<set $FCTV.pcViewership.count++>> <<if $FCTV.pcViewership.frequency != -1>>
<<if $FCTV.pcViewership.count >= $FCTV.pcViewership.frequency>> <<set $FCTV.pcViewership.count++>>
<<set $FCTV.pcViewership.count = 0>> <<if $FCTV.pcViewership.count >= $FCTV.pcViewership.frequency>>
<<set $FCTV.pcViewership.count = 0>>
<</if>>
<</if>> <</if>>
<<set $FCTV.channel.last = $FCTV.channel.selected>>
<<run delete $FCTV.channel.selected>> <<run delete $usedRemote>> <<run delete $all>> <<run delete $show>>
<</if>> <</if>>
<<set $week++>> <<set $week++>>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment