<<nobr>>
<<include "PassageDisplay">>
<<if $gameEngine.onDelivery === true && $gameEngine.onScene === true && $gameEngine.onIntro === false>>
<<include "TripsBar">>
$delivery.pizza.name<br>
<<include "PizzaDisplay">>
<<set _p = ($combatEngine.player ? $combatEngine.player : $playerCombat)>>
<<set _pMax = (_p && _p.maxHp ? _p.maxHp : 1)>>
<<set _pHpPct = Math.round((_p.hp / _pMax) * 100)>>
<<if _pHpPct < 0>><<set _pHpPct = 0>><</if>>
<<if _pHpPct > 100>><<set _pHpPct = 100>><</if>>
<<set _pHpTextColor = "#2ecc71">>
<<if _pHpPct <= 50>>
<<set _pHpTextColor = "#f39c12">>
<<if _pHpPct <= 20>>
<<set _pHpTextColor = "#e74c3c">>
<</if>>
<</if>>
<<set _pHpStyle = "width: " + _pHpPct + "%; background-color: " + _pHpTextColor + ";">>
<<set _pHpTextStyle = "<span style=color:"+_pHpTextColor+">"+_p.hp+"</span> / "+_p.maxHp>>
<div class="hpLine">
<span>HP</span>
<span >_pHpTextStyle</span>
</div>
<div class="hpBar">
<div class="hpFill" @style="_pHpStyle"></div>
</div>
<div class="hotpizza-action">
<<if $player.consumables.sunPatches.qty >= 1 && $gameEngine.usedSunPatches === false && $delivery.pizzaHeat < 10>>
<div class="hotpizza-label">Sun Patches:</div>
<div class="captionHotPizzaButton captionImageTextHover hotpizza-wrap">
<<button "Use a Sun Patch (+2🔥)">>
<<set $delivery.pizzaHeat += 2, $gameEngine.usedSunPatches = true>>
<<run UIBar.update()>>
<</button>>
</div>
<<elseif $delivery.pizzaHeat >= 10>>
<div class="hotpizza-label">The pizza's heat is at maximum</div>
<<elseif $player.consumables.sunPatches.qty <= 0>>
<div class="hotpizza-label"> You don't have any Sun Patches</div>
<<else>>
<div class="hotpizza-label"> You've already used a Sun Patch</div>
<</if>>
</div>
<br>
<<if $combatEngine.inCombat === false>>
<<link "Medical Supplies">>
<<script>>
Dialog.setup("Inventory");
Dialog.wiki('<div id="medikit-root"><<HealingMenu>></div>');
Dialog.open();
<</script>>
<<run UIBar.update()>>
<</link>>
<</if>>
<</if>>
<<if State.active.title !== "Stuck" && State.active.title !== "Walkthrough" && State.active.title !== "Achievements" && State.active.title !== "Cheats" && $gameEngine.onScene === false && State.active.title !== "Phone" && State.active.title !== "Inventory" && $gameEngine.onIntro === false && $gameEngine.onMenu === false>>
<div class="captionImageTextHover">
<a class="captionImageText">
<<link "Inventory">>
<<set _excludedPassages = ["Menu","Inventory","ShowStats","ShowItems","ShowConsumables","Credits","DeliveryGirlsCredits","AdventureGirlsCredits","OtherGirlsCredits","OthersCredits","Cheats","Stuck","StatsCheats","Collection","RegularCollection","AdventureCollection","OtherGirlsCollection","GirlCollectDisplay","PictureWatcher","PhallusWalkthrough","MelissaWalkthrough", "Achievements"]>>
<<set _histIdx = State.history.length - 1>>
<<set _foundReturn = "Pizzeria">>
<<for _i = _histIdx; _i >= 0; _i-->>
<<if !_excludedPassages.includes(State.history[_i].title)>>
<<set _foundReturn = State.history[_i].title>>
<<break>>
<</if>>
<</for>>
<<set $return = _foundReturn>>
<<set $gameEngine.onMenu = true>>
<<goto "Inventory">>
<</link>>
</a>
</div>
<br><br>
<div class="captionImageTextHover">
<a class="captionImageText">
<<link "Menu">>
<<set _excludedPassages = ["Inventory", "Menu", "Phone", "Cheats", "Stuck", "Walkthrough", "Achievements"]>>
<<set _histIdx = State.history.length - 1>>
<<set _foundReturn = "Pizzeria">>
<<for _i = _histIdx; _i >= 0; _i-->>
<<if !_excludedPassages.includes(State.history[_i].title)>>
<<set _foundReturn = State.history[_i].title>>
<<break>>
<</if>>
<</for>>
<<set $return = _foundReturn>>
<<set $gameEngine.onMenu = true>>
<<goto "Menu">>
<</link>>
</a>
</div><br>
<</if>>
<<if $gameEngine.onMenu === true>>
<div class="captionImageTextHover">
<a class="captionImageText">
<<link "Pizzeria">>
<<set $gameEngine.onMenu = false,$gameEngine.onScene = false>>
<<goto "Pizzeria">>
<</link>>
</a>
</div><br>
<</if>>
<<if $gameEngine.onIntro === false>>
<<set $upper = "MegaBits: " + $player.megaBits>>
<span class="captionProgressBarText" id="megabits">$upper</span>
<br>
<<set $upper = "RegenCoins: " + $player.regencoins>>
<span class="captionProgressBarText" id="regencore">$upper</span>
<br>
<<if State.active.title === "JerryShop">>
<<set $upper = "Infinity Gems: " + $player.infinityGems>>
<span class="captionProgressBarText" id="infinitygems">$upper</span>
<br>
<</if>>
<</if>>
<!-- EXTERNALS LINKS-->
<br>
<div class="captionImageTextHover">
<a href="https://discord.gg/KGTCGsG7ub" class="captionImageText" target="_blank">Discord</a>
</div>
<br><br>
<div class="captionImageTextHover">
<a href="https://www.patreon.com/c/HotAndReady" class="captionImageText" target="_blank">Patreon</a>
</div>
<br><br>
<div class="captionImageTextHover">
<a href="https://subscribestar.art/interdimensionalpizzadelivery" class="captionImageText" target="_blank">Subscribestar</a>
</div><br>
<<if $gameEngine.onDelivery === true>>
<div class="captionImageTextHover">
<<link "Stuck?">>
<<goto "Stuck">>
<</link>>
</div>
<</if>>
<hr style="border: none; height: 2px; background-color: #5f6cff; opacity: 1;">
<div class="music-controls">
<div class="music-buttons">
<<if $gameEngine.musicOn>>
<<link "🔊 Music: ON">>
<<set $gameEngine.musicOn = false>>
<<audio "bgm_chill" pause>>
<<run UIBar.update()>>
<</link>>
<<else>>
<<link "🔈 Music: OFF">>
<<set $gameEngine.musicOn = true>>
<<audio "bgm_chill" play loop>>
<<run UIBar.update()>>
<</link>>
<</if>>
</div>
<div class="volume-bar">
<div style="font-size: 0.8em; margin-bottom: 5px; color: #5B42F3; font-weight: bold; text-transform: uppercase;">
Volume
</div>
<input type="range" id="volume-slider" min="0" max="1" step="0.05"
@value="$gameEngine.volume"
oninput="
var vol = Number(this.value);
if (!isNaN(vol)) {
SugarCube.SimpleAudio.volume(vol);
SugarCube.State.variables.gameEngine.volume = vol;
}
">
</div>
</div>
/*CAP STATS*/
<<include "CaptionCapStats">>
<</nobr>> <<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "intro">>
<<if settings.music is "On">>
<<audio "bgm_chill" play loop>>
<</if>>
<h2 style="color:var(--orange)"> Welcome to Hot & Ready! Please enter the name of your character!<br>(All the values on the creation page can be modified later)</h2>
Name:<br>
<<textbox "$player.name" $player.name>><br>
Surname: <br>
<<textbox "$player.surname" $player.surname>><br>
<h3 style="color:var(--orange)">Choose a name for your pizzeria:<br>(You can change it later) </h3>
<<textbox "$player.pizzeriaName" $player.pizzeriaName>><br>
<h3 style="color:var(--orange)">Choose your Avatar: </h3>
<table>
<tr>
<td class="center">
<label tabindex="0">
<<radiobutton "$player.img" "pizzamedia/images/playerphoto/0.jpg">>
<img class="creationImage" src="pizzamedia/images/playerphoto/0.jpg">
</label>
</td>
<td class="center">
<label tabindex="0">
<<radiobutton "$player.img" "pizzamedia/images/playerphoto/1.jpg">>
<img class="creationImage" src="pizzamedia/images/playerphoto/1.jpg">
</label>
</td>
</tr>
<tr>
<td class="center">
<label tabindex="0">
<<radiobutton "$player.img" "pizzamedia/images/playerphoto/2.jpg">>
<img class="creationImage" src="pizzamedia/images/playerphoto/2.jpg">
</label>
</td>
<td class="center">
<label tabindex="0">
<<radiobutton "$player.img" "pizzamedia/images/playerphoto/3.jpg">>
<img class="creationImage" src="pizzamedia/images/playerphoto/3.jpg">
</label>
</td>
</tr>
<tr>
<td class="center">
<label tabindex="0">
<<radiobutton "$player.img" "pizzamedia/images/playerphoto/4.jpg">>
<img class="creationImage" src="pizzamedia/images/playerphoto/4.jpg">
</label>
</td>
<td class="center">
<label tabindex="0">
<<radiobutton "$player.img" "pizzamedia/images/playerphoto/5.jpg">>
<img class="creationImage" src="pizzamedia/images/playerphoto/5.jpg">
</label>
</td>
</tr>
<tr>
<td class="center">
<label tabindex="0">
<<radiobutton "$player.img" "pizzamedia/images/playerphoto/6.jpg">>
<img class="creationImage" src="pizzamedia/images/playerphoto/6.jpg">
</label>
</td>
<td class="center">
<label tabindex="0">
<<radiobutton "$player.img" "pizzamedia/images/playerphoto/7.jpg">>
<img class="creationImage" src="pizzamedia/images/playerphoto/7.jpg">
</label>
</td>
</tr>
<tr>
<td class="center">
<label tabindex="0">
<<radiobutton "$player.img" "pizzamedia/images/playerphoto/8.jpg">>
<img class="creationImage" src="pizzamedia/images/playerphoto/8.jpg">
</label>
</td>
<td class="center">
<label tabindex="0">
<<radiobutton "$player.img" "pizzamedia/images/playerphoto/9.jpg">>
<img class="creationImage" src="pizzamedia/images/playerphoto/9.jpg">
</label>
</td>
</tr>
<tr>
<td class="center">
<label tabindex="0">
<<radiobutton "$player.img" "pizzamedia/images/playerphoto/10.jpg">>
<img class="creationImage" src="pizzamedia/images/playerphoto/10.jpg">
</label>
</td>
<td class="center">
<label tabindex="0">
<<radiobutton "$player.img" "pizzamedia/images/playerphoto/11.jpg">>
<img class="creationImage" src="pizzamedia/images/playerphoto/11.jpg">
</label>
</td>
</tr>
<tr>
<td class="center">
<label tabindex="0">
<<radiobutton "$player.img" "pizzamedia/images/playerphoto/12.jpg">>
<img class="creationImage" src="pizzamedia/images/playerphoto/12.jpg">
</label>
</td>
<td class="center">
<label tabindex="0">
<<radiobutton "$player.img" "pizzamedia/images/playerphoto/13.jpg">>
<img class="creationImage" src="pizzamedia/images/playerphoto/13.jpg">
</label>
</td>
</tr>
</table>
<<say "You" $player.img>>This is your color (by default is white).<</say>><br>
[[CHANGE MY COLOR|ChangeDialogColor]]
<br><br>
<div class="greenButton">
<<button "Go to Intro">>
<<set $gameEngine.onIntro = true>>
<<goto "IntroA">>
<</button>>
</div>
<!--
[[IntroA]]
-->
</div>
<</nobr>><<nobr>>
$player.pizzeriaName Pizzeria
<div class="light-bar"></div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "intro">>
<h1 style="color: orange;">Hot & Ready</h1>
<h1 style="color:red; font-weight:bold">Right now it is a preview version, it is possible that the experience will be short for you and may have bugs.</h1>
<br>
If you enjoy the game, consider supporting me as a creator through my Patreon/Subscriberstar. Each subscription motivates me to continue updating the game :D
<br><br>
<div style="width:30%">
[img['pizzamedia/images/menus/icon.jpg']]
</div>
<br>
<span style="color: orange;">
<h2 style="color: orange;">
Disclaimer:
</h2>
If you are the author of any audiovisual material included in this game and for any reason do not want the material to be included in the game, please contact me and it will be removed immediately.
<br><br>
This game aims to promote the creators of the audiovisual materials as much as possible. The game credits include the names of all the actresses, actors, and studios, along with links to their official websites.
<br><br>
If your link is not listed, it may be because I was unable to find it to include it. If you would like it to be included, please contact me and I will add it at no cost.<br><br>
This should be taken as a lighthearted story; it may contain elements that some people might find disturbing or inappropriate. Please remember not to take it seriously and not to confuse it with real life. If at any point you feel uncomfortable, stop playing the game.
<br><br>
This game is a work of fiction.
It contains satirical, exaggerated, or deliberately irreverent depictions that should not be taken as a reflection of reality.
<br><br>
All sexual interactions depicted in the game occur between fictional characters and are always consensual within the narrative context.<br>
No form of abuse, coercion, exploitation, or non-consensual behavior is promoted, glorified, or depicted.
<br><br>
Any resemblance to real people, institutions, religions, public figures, or current events is purely coincidental.
<br><br>
By clicking the "CONFIRM GO TO INTRO" button or the "example" link below, you declare that you are of legal age in your country (18/21) and that you are allowed and willing to be exposed to explicit pornographic content.
</span><br><br>
[[CONFIRM GO TO INTRO|Creation]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "intro">>
<<if $gameEngine.musicOn>>
<<audio "bgm_chill" play loop>>
<</if>>
<h1 style="color: orange">Warning:</h1>
<h2 style="color: orange">This game has scenes with sound.</h2>
<span style="color: orange">
All characters in this game are above the legal age of 18 years old.<br>
None of the situations presented in this game represent reality. Any similarity is mere coincidence.<br>
This game is a work of fiction made for adults only.<br>
Do not proceed if you are under legal age.
</span>
<br><br>
[[I AM AT LEAST 18 YEARS OLD OR OLDER|Presentation]]
<<set $gameEngine.onScene = true>>
<<set $gameEngine.onIntro = true>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "phone">>
<<return "Go back">><br><br>
<<linkreplace "Show me about cheats">>
<br>
<span style="color: var(--silver);">🥈Prosciutto Rank🥈 </span>
<br><span style="color: var(--silver);">-Infinite Money Cheat
</span>
<br><br>
<span style="color: var(--goldYellow);">🥇Margheritta Rank🥇 </span>
<br><span style="color: var(--goldYellow);">-Infinite Money Cheat<br>-Regencore Coins cheat<br>-All mutations cheat<br>-Infinity gems cheat
</span>
<br><br>
<span style="color: var(--diamondBlue);">💎PEPPERONI RANK OR SUPERIOR💎</span><br>
<span style="color: var(--diamondBlue);">- ALL PREVIOUS RANKS BENEFITS: </span>
<br><span style="color: var(--diamondBlue);">-All items cheat<br>
-All consumables cheat<br>
-Unlock girl's scenes cheat<br>
-Unlock girl's album cheat</span>
<</linkreplace>><br><br>
<<include "StatsCheats">>
<span style="color:var(--linkhover)">THANK YOU TO ALL WHO SUPPORT ME AS A CREATOR<br>
EVERY SUBSCRIPTION MOTIVATES ME TO ADD MORE SCENES AND CHARACTERS TO THE GAME<br></span>
<<return "Go back">>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "phone">>
[[Go Back|Menu]]<br><br>
<h2 style="color:var(--linkhover)">CHOOSE GIRL'S COLLECTION</h2>
<div class="walkhroughButtonsFlexBox">
<span class="deliveryGirlsWalkthroughButton">
<<button "Delivery Girls">>
<<set $gameEngine.girlsCollectionSelection = 0>>
<<run Engine.show()>>
<</button>>
</span>
<span class="adventureGirlsWalkthroughButton">
<<button "Adventure Girls">>
<<set $gameEngine.girlsCollectionSelection = 1>>
<<run Engine.show()>>
<</button>>
</span>
<span class="otherGirlsWalkthroughButton">
<<button "Other Characters">>
<<set $gameEngine.girlsCollectionSelection = 2>>
<<run Engine.show()>>
<</button>>
</span>
<br>
</div>
<h3 style="color:var(--linkhover)">Hide completed collections?</h3>
<<if $gameEngine.showCompleted === true>>
<<button "Hide Finished Girls">>
<<set $gameEngine.showCompleted = false>>
<<run Engine.show()>>
<</button>><br>
<<else>>
<<button "Show Finished Girls ">>
<<set $gameEngine.showCompleted = true>>
<<run Engine.show()>>
<</button>><br>
<</if>>
<br>
<<if $gameEngine.girlsCollectionSelection === 0>>
<<include "RegularCollection">>
<<elseif $gameEngine.girlsCollectionSelection === 1>>
<<include "AdventureCollection">>
<<elseif $gameEngine.girlsCollectionSelection === 2>>
<<include "OtherGirlsCollection">>
<</if>>
<br>
<br>
[[Go Back|Menu]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "livingroom">>
<p class="reflection">Your home planet, Andromeda 69.<br>You're at home, relaxing and enjoying a beer while watching a movie.</p>
<img src="pizzamedia/images/intro/livingroom.jpg">
<<audio "doorbell" play>>
<p class="reflection">Someone rings your doorbell.</p>
<<linkreplace "See who's at the door">>
<<audio "doorbell" play>>
<<say "You" $player.img>>I'm coming!!<</say>><br>
[[Open the door|IntroA2]]<br><br>
<</linkreplace>>
</div>
<</nobr>><<set $gameEngine.currentPassage = "phone">>
<div align="center" style="font-size: 48px;">Time left: <span id="time">3</span> seconds</div>
<<set $firstEvent = true>>
<<set $gameEngine.onDelivery = false>>
<<set $gameEngine.onScene = false>>
<<set $gameEngine.inCombat = false>>
<<script>>
let timeLeft = 3;
const updateCounter = () => {
if (timeLeft > 0) {
timeLeft--;
document.getElementById("time").innerText = timeLeft;
setTimeout(updateCounter, 1000);
}
};
setTimeout(updateCounter, 1000);
<</script>>
<<timed 4s>>
<<goto "Pizzeria">>
<</timed>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "intro">>
<<set $gameEngine.repetitionReturn = State.history[State.history.length - 1].title>>
<<if $gameEngine.girlsCollectionSelection === 0>>
<<set $girl = $eventGirls[$selectedGirlName.toLowerCase()]>>
<<elseif $gameEngine.girlsCollectionSelection === 1>>
<<set $girl = $adventureGirls[$selectedGirlName.toLowerCase()]>>
<</if>>
<<set _girlLower = $girl.name.toLowerCase()>>
<<set _girlCap = $girl.name.charAt(0).toUpperCase() + $girl.name.slice(1)>>
<<set _girlCssVar = "var(--" + _girlLower + ")" >>
<div class="collectionWrap" @style="'--girlColor:' + _girlCssVar + ';'">
[[Go Back|Collection]]<br>
<div class="collectionTitle gradient-text">SCENES</div>
<div class="collectionGrid">
<<set _sceneKeys = Object.keys($girl.scenes || {})>>
<<for _i = 0; _i < _sceneKeys.length; _i++>>
<<set _key = _sceneKeys[_i]>>
<<set _unlocked = $girl.scenes[_key]>>
<<set _n = Number(_key.replace("scene",""))>>
/* AQUI USAMOS LA NUEVA VARIABLE */
<<set _targetPassage = $girl.SceneFirstPassage[_key]>>
<<set _thumb = "pizzamedia/images/girls/" + _girlLower + "/" + "scene" + _n + ".jpg">>
<<set _titleTop = "SCENE " + _n>>
<<if _unlocked>>
/* AÑADIDO DATA-SETTER AQUÍ */
<a class="collectionPassageLink collectionClickable" @data-passage="_targetPassage" data-setter="$gameEngine.onRepetition = true">
<div class="collectionCard collectionCardScene" @style="'border-color:' + _girlCssVar + ';'">
<div class="collectionCardTop">_titleTop</div>
<div class="collectionCardBody">
<img class="collectionPreview" @src="_thumb">
</div>
<div class="collectionCardBottom">Unlocked</div>
</div>
</a>
<br>
<<else>>
<div class="collectionCard collectionCardScene" style="border-color: rgba(255,255,255,0.10);">
<div class="collectionCardTop">_titleTop</div>
<div class="collectionCardBody">
<img class="collectionPreview collectionPreviewLocked" @src="_thumb">
</div>
<div class="collectionCardBottom">Locked</div>
</div>
<br>
<</if>>
<</for>>
</div>
<<if $girl.album>>
<div class="collectionTitle gradient-text">ALBUM</div>
<div class="collectionGrid">
<<set _picKeys = Object.keys($girl.album)>>
<<for _i = 0; _i < _picKeys.length; _i++>>
<<set _key = _picKeys[_i]>>
<<set _unlocked = $girl.album[_key]>>
<<set _n = Number(_key.replace("album",""))>>
<<set _img = "pizzamedia/images/girls/" + _girlLower + "/album" + _n + ".jpg">>
<<set _titleTop = "PICTURE " + _n>>
<<if _unlocked>>
<div class="collectionCard collectionCardAlbum" @style="'border-color:' + _girlCssVar + ';'">
<div class="collectionCardTop">_titleTop</div>
<div class="collectionCardBody" >
<<capture _img, _n, _girlCap>>
[img[_img][PictureWatcher][$pictureWatcher = _img; $pictureNumber = _n; $pictureGirlName = _girlCap]]
<</capture>>
</div>
<div class="collectionCardBottom">Unlocked</div>
</div>
<br>
<<else>>
<div class="collectionCard collectionCardAlbum" style="border-color: rgba(255,255,255,0.10);">
<div class="collectionCardTop">_titleTop</div>
<div class="collectionCardBody">
<img class="collectionPreview collectionPreviewLocked" @src="_img">
</div>
<div class="collectionCardBottom">Locked</div>
</div>
<br>
<</if>>
<</for>>
</div>
<</if>>
</div>
<br>
[[Go Back|Collection]]<br><br>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "phone">>
[[Go back|Menu]]<br>
<h2 style="color:var(--linkhover)">CREDITS</h2>
<div class="creditsButtonsFlexBox">
<span class="deliveryGirlsWalkthroughButton">
<<button "DELIVERY GIRLS">>
<<set $gameEngine.creditsSelection = 0>>
<<run Engine.show()>>
<</button>>
</span>
<span class="adventureGirlsWalkthroughButton">
<<button "ADVENTURE GIRLS">>
<<set $gameEngine.creditsSelection = 1>>
<<run Engine.show()>>
<</button>>
</span>
<span class="otherGirlsWalkthroughButton">
<<button "OTHER GIRLS">>
<<set $gameEngine.creditsSelection = 2>>
<<run Engine.show()>>
<</button>>
</span>
<span class="otherWalkthroughButton">
<<button "OTHER CREDITS">>
<<set $gameEngine.creditsSelection = 3>>
<<run Engine.show()>>
<</button>>
</span>
</div>
<<if $gameEngine.creditsSelection === 0>>
<<include "DeliveryGirlsCredits">>
<<elseif $gameEngine.creditsSelection === 1>>
<<include "AdventureGirlsCredits">>
<<elseif $gameEngine.creditsSelection === 2>>
<<include "OtherGirlsCredits">>
<<elseif $gameEngine.creditsSelection === 3>>
<<include "OthersCredits">>
<</if>>
<br><br>
GAME VERSION 0.1.0<br>
CREATED BY GOCH VIDEOGAMES.<br><br>
[[Go back|Menu]]
</div>
<</nobr>> <<nobr>>
<div align="center">
Here you can change your appearance.<br>
Name: <br>
<<set _nameInput = $player.name>>
<<set _surnameInput = $player.surname>>
<<textbox "$player.name" _nameInput>><br>
Surname: <br>
<<textbox "$player.surname" _surnameInput>><br>
<h3 style="color:var(--orange)">Do you want to change the name of your pizzeria?</h3>
<<set _pizzeriaInput = $player.pizzeriaName>>
<<textbox "$player.pizzeriaName" _pizzeriaInput>><br>
<h3 style="color:var(--orange)">Choose your Avatar: </h3>
<table>
<tr>
<td class="center">
<label tabindex="0">
<<radiobutton "$player.img" "pizzamedia/images/playerphoto/0.jpg">>
<img class="creationImage" src="pizzamedia/images/playerphoto/0.jpg">
</label>
</td>
<td class="center">
<label tabindex="0">
<<radiobutton "$player.img" "pizzamedia/images/playerphoto/1.jpg">>
<img class="creationImage" src="pizzamedia/images/playerphoto/1.jpg">
</label>
</td>
</tr>
<tr>
<td class="center">
<label tabindex="0">
<<radiobutton "$player.img" "pizzamedia/images/playerphoto/2.jpg">>
<img class="creationImage" src="pizzamedia/images/playerphoto/2.jpg">
</label>
</td>
<td class="center">
<label tabindex="0">
<<radiobutton "$player.img" "pizzamedia/images/playerphoto/3.jpg">>
<img class="creationImage" src="pizzamedia/images/playerphoto/3.jpg">
</label>
</td>
</tr>
<tr>
<td class="center">
<label tabindex="0">
<<radiobutton "$player.img" "pizzamedia/images/playerphoto/4.jpg">>
<img class="creationImage" src="pizzamedia/images/playerphoto/4.jpg">
</label>
</td>
<td class="center">
<label tabindex="0">
<<radiobutton "$player.img" "pizzamedia/images/playerphoto/5.jpg">>
<img class="creationImage" src="pizzamedia/images/playerphoto/5.jpg">
</label>
</td>
</tr>
<tr>
<td class="center">
<label tabindex="0">
<<radiobutton "$player.img" "pizzamedia/images/playerphoto/6.jpg">>
<img class="creationImage" src="pizzamedia/images/playerphoto/6.jpg">
</label>
</td>
<td class="center">
<label tabindex="0">
<<radiobutton "$player.img" "pizzamedia/images/playerphoto/7.jpg">>
<img class="creationImage" src="pizzamedia/images/playerphoto/7.jpg">
</label>
</td>
</tr>
<tr>
<td class="center">
<label tabindex="0">
<<radiobutton "$player.img" "pizzamedia/images/playerphoto/8.jpg">>
<img class="creationImage" src="pizzamedia/images/playerphoto/8.jpg">
</label>
</td>
<td class="center">
<label tabindex="0">
<<radiobutton "$player.img" "pizzamedia/images/playerphoto/9.jpg">>
<img class="creationImage" src="pizzamedia/images/playerphoto/9.jpg">
</label>
</td>
</tr>
<tr>
<td class="center">
<label tabindex="0">
<<radiobutton "$player.img" "pizzamedia/images/playerphoto/10.jpg">>
<img class="creationImage" src="pizzamedia/images/playerphoto/10.jpg">
</label>
</td>
<td class="center">
<label tabindex="0">
<<radiobutton "$player.img" "pizzamedia/images/playerphoto/11.jpg">>
<img class="creationImage" src="pizzamedia/images/playerphoto/11.jpg">
</label>
</td>
</tr>
<tr>
<td class="center">
<label tabindex="0">
<<radiobutton "$player.img" "pizzamedia/images/playerphoto/12.jpg">>
<img class="creationImage" src="pizzamedia/images/playerphoto/12.jpg">
</label>
</td>
<td class="center">
<label tabindex="0">
<<radiobutton "$player.img" "pizzamedia/images/playerphoto/13.jpg">>
<img class="creationImage" src="pizzamedia/images/playerphoto/13.jpg">
</label>
</td>
</tr>
</table>
<h2 style="color:var(--orange)">Change your dialogs color?</h2>
<<say "You" $player.img>>This is your color (by default is white).<</say>><br>
[[CHANGE MY COLOR|ChangeDialogColor]]<br><br>
[[Go Back|RegenCore]]
</div>
<</nobr>><<nobr>>
<!--GIRLS-->
<<character 'melissa' '$girls.melissa.displayName' 'pizzamedia/images/girls/melissa/face.jpg'>>
<<character 'melissaunknown' '????????' 'pizzamedia/images/girls/melissa/face.jpg'>>
<<character 'rebecca' '$eventGirls.rebecca.displayName' 'pizzamedia/images/girls/rebecca/face.jpg'>>
<<character 'dan' '$girls.dan.displayName' 'pizzamedia/images/girls/dan/face.jpg'>>
<<character 'allison' '$eventGirls.allison.displayName' 'pizzamedia/images/girls/allison/face.jpg'>>
<<character 'allison2' '$eventGirls.allison.displayName' 'pizzamedia/images/girls/allison/face2.jpg'>>
<<character 'lindsey' '$eventGirls.lindsey.displayName' 'pizzamedia/images/girls/lindsey/face.jpg'>>
<<character 'julia' '$eventGirls.julia.displayName' 'pizzamedia/images/girls/julia/face.jpg'>>
<<character 'savannah' '$eventGirls.savannah.displayName' 'pizzamedia/images/girls/savannah/face.jpg'>>
<<character 'jessica' '$eventGirls.jessica.displayName' 'pizzamedia/images/girls/jessica/face.jpg'>>
<<character 'unknowngirl' '????????' 'pizzamedia/images/girls/extra/unknowngirl.png'>>
<<character 'shizuka' 'Shizuka' 'pizzamedia/images/girls/shizuka/face.jpg'>>
<<character 'succubus' 'Succubus' 'pizzamedia/images/girls/succubus/face.jpg'>>
<<character 'unknowncamila' '????????' 'pizzamedia/images/girls/camila/face.jpg'>>
<<character 'camila' 'Camila' 'pizzamedia/images/girls/camila/face.jpg'>>
<<character 'demoness' 'Desmoness' 'pizzamedia/images/girls/demoness/face.jpg'>>
<<character 'elsa' 'Elsa' 'pizzamedia/images/girls/elsa/face.jpg'>>
<<character 'faelyn' 'Faelyn' 'pizzamedia/images/girls/faelyn/face.jpg'>>
<!--BOYS-->
<<character 'mailman' 'Mailman' 'pizzamedia/images/boys/mailman/face.jpg'>>
<<character 'taxidriver' 'Taxi Driver' 'pizzamedia/images/boys/taxidriver/face.jpg'>>
<<character 'jerry' 'Jerry' 'pizzamedia/images/boys/jerry/face.jpg'>>
<<character 'unknown' '?????' 'pizzamedia/images/boys/extras/unknown.png'>>
<<character 'steven' 'Steven' 'pizzamedia/images/boys/steven/face.jpg'>>
<<character 'regencore' 'RegenCore AI' 'pizzamedia/images/boys/regencoreai/face.jpg'>>
<<character 'portalgunai' 'Portal Gun AI' 'pizzamedia/images/boys/portalgunai/face.jpg'>>
<<character 'minerbot' '$boys.minerbot.displayName' 'pizzamedia/images/boys/minerbot/face.jpg'>>
<<set $minerbotWarModeName = $boys.minerbot.displayName + " War Mode">>
<<character 'minerbotwarmode' '$minerbotWarModeName' 'pizzamedia/images/boys/minerbot/face2.jpg'>>
<<character 'phallus' 'Mr. Phallus' 'pizzamedia/images/boys/phallus/face.jpg'>>
<<character 'al' 'Al' 'pizzamedia/images/boys/al/face.jpg'>>
<<character 'vortex' 'Vortex' 'pizzamedia/images/boys/vortex/face.jpg'>>
<<character 'sigma' 'Divine Presence' 'pizzamedia/images/boys/sigma/face.jpg'>>
<<character 'scientist' '????????' 'pizzamedia/images/boys/scientist/face.jpg'>>
<!--ENEMIES-->
<<character 'drugaemon' 'Drugaemon' 'pizzamedia/images/enemies/drugaemon/face.jpg'>>
<<character 'drugaemonangry' 'Drugaemon' 'pizzamedia/images/enemies/drugaemon/face2.jpg'>>
<<character 'noby' '??????' 'pizzamedia/images/enemies/noby/face.jpg'>>
<<character 'walter' 'Heisenberg' 'pizzamedia/images/enemies/walter/face.jpg'>>
<<character 'walterunknown' '??????' 'pizzamedia/images/enemies/walter/face.jpg'>>
<<character 'oldguy' '??????' 'pizzamedia/images/boys/oldguy/face.jpg'>>
<<character 'nerdguy' 'Nerd Guy' 'pizzamedia/images/enemies/nerdguy/face.jpg'>>
<<character 'larry' 'Larry' 'pizzamedia/images/enemies/larry/face.jpg'>>
<<character "larryboyfriend" "Larry's Boyfriend" "pizzamedia/images/enemies/larryboyfriend/face.jpg">>
<<character 'snowflakes' 'Snowflakes' 'pizzamedia/images/enemies/snowflakes/face.jpg'>>
<<character 'icedragon' 'Icedragon' 'pizzamedia/images/enemies/icedragon/face.jpg'>>
<<character 'pizzaguy' 'Pizza?' 'pizzamedia/images/enemies/pizzaguy/face.jpg'>>
<<character 'wishDragon' 'Wish Dragon' 'pizzamedia/images/enemies/wishdragon/face.jpg'>>
<<character 'olaf' 'Olaf' 'pizzamedia/images/enemies/olaf/face.jpg'>>
<<character 'cultist' 'Cultist' 'pizzamedia/images/enemies/cultist/face.jpg'>>
<<character 'fireGhost' 'Fire King' 'pizzamedia/images/enemies/fireghost/face1.jpg'>>
<<character 'crazyman' '???????' 'pizzamedia/images/enemies/crazyman/face.jpg'>>
<<character 'mathTron' 'Math-Tron' 'pizzamedia/images/enemies/mathtron/face.jpg'>>
<<character 'mecha' 'Mecha' 'pizzamedia/images/enemies/mecha/face.jpg'>>
<<character 'mullog' 'Mullog' 'pizzamedia/images/enemies/mullog/face.jpg'>>
<<character 'mullogunknown' '???????' 'pizzamedia/images/enemies/mullog/face.jpg'>>
<<character 'bunny' 'Bunny' 'pizzamedia/images/enemies/bunny/face.jpg'>>
<<character 'wildwizard' 'Wild Wizard' 'pizzamedia/images/enemies/wildwizard/face.jpg'>>
<<character 'freddy' 'Freddy' 'pizzamedia/images/enemies/freddy/face.jpg'>>
<<character 'dwarf1' 'Dwarf' 'pizzamedia/images/enemies/dwarfs/dwarf1.jpg'>>
<<character 'dwarf2' 'Dwarf' 'pizzamedia/images/enemies/dwarfs/dwarf2.jpg'>>
<<character 'dwarf3' 'Dwarf' 'pizzamedia/images/enemies/dwarfs/dwarf3.jpg'>>
<<character 'dwarf4' 'Dwarf' 'pizzamedia/images/enemies/dwarfs/dwarf4.jpg'>>
<<character 'dwarf5' 'Dwarf' 'pizzamedia/images/enemies/dwarfs/dwarf5.jpg'>>
<<character 'dwarf6' 'Dwarf' 'pizzamedia/images/enemies/dwarfs/dwarf6.jpg'>>
<<character 'dwarf7' 'Dwarf' 'pizzamedia/images/enemies/dwarfs/dwarf7.jpg'>>
<<character 'woodenman' 'Wooden Man' 'pizzamedia/images/enemies/woodenman/face.jpg'>>
<<character 'morpheus' 'Morpheus' 'pizzamedia/images/enemies/morpheus/face.jpg'>>
<</nobr>>
<<nobr>>
<<set $gameEngine.currentPassage = "phone">>
<div class="phonecontainer">
<div class="phonescreen">
<div class="phonerow">
<div class="phonecol">
[img[Walkthrough|'pizzamedia/images/phone/girls.png'][Collection]]
<p class= "phonelabeltext">Girls Collection</p>
</div>
<div class="phonecol">
[img[Cheats|'pizzamedia/images/phone/bestiary.png'][Bestiary]]
<p class= "phonelabeltext">Bestiary</p>
</div>
<div class="phonecol">
[img[Credits|'pizzamedia/images/phone/credits.png'][Credits]]
<p class= "phonelabeltext">Credits</p>
</div>
</div>
<div class="phonerow">
<div class="phonecol">
<a class="phonelink" href="https://www.patreon.com/c/HotAndReady"><img src="pizzamedia/images/phone/patreon.png"></a>
<p class= "phonelabeltext">Patreon</p>
</div>
<div class="phonecol">
<a class="phonelink" href="https://discord.gg/KGTCGsG7ub"><img src="pizzamedia/images/phone/discord.png"></a>
<p class= "phonelabeltext">Discord</p>
</div>
<div class="phonecol">
<a class="phonelink" href="https://subscribestar.art/interdimensionalpizzadelivery"><img src="pizzamedia/images/phone/subscribestar.png"></a>
<p class= "phonelabeltext">Subscribestar</p>
</div>
</div>
<div class="phonerow">
<div class="phonecol">
[img[Cheats|'pizzamedia/images/phone/cheats.png'][Cheats]]
<p class= "phonelabeltext">Cheats</p>
</div>
<div class="phonecol">
[img[Stuck|'pizzamedia/images/phone/stuck.png'][Stuck]]
<p class= "phonelabeltext">Stuck??</p>
</div>
<div class="phonecol">
</div>
</div>
<div class="phonerow">
<div class="phonecol">
</div>
<div class="phonecol">
</div>
<div class="phonecol">
</div>
</div>
<div class="phonerow">
<div class="phonecol">
</div>
<div class="phonecol">
[img[pizzamedia/images/phone/backbutton.png][$return][$gameEngine.onScene = false,$gameEngine.onMenu = false]]
</div>
<div class="phonecol">
</div>
</div>
</div>
</div>
<</nobr>><<nobr>>
<</nobr>><<nobr>>
<br>
Female porn starts:<br>
Dan Dangler (Rebecca Threesome scene) → https://www.fanhub.com/@dan-dangler <br><br>
Male porn stars:<br>
Seth Gamble → https://es.pornhub.com/pornstar/seth-gamble <br><br>
PovMan Films → https://es.pornhub.com/model/povman-films
<br><br>For the full version and maximum quality of used clips and much more quality content, subscribe to these awesome sites:
<br>
EroticFemaleDomination.com<br>
Some images has been picked from:
Freepick.com
<br>
<</nobr>><<nobr>>
<<set $finishedText = "">>
<<set _girlsKeys = Object.keys($eventGirls).sort()>>
<<set _renderKeys = []>>
/* =========================
1) Filtrar según showCompleted
- Si showCompleted === false: ocultar chicas COMPLETED
(COMPLETED = allScenesTrue && presentation === true)
- Si showCompleted === true: mostrar todas
========================= */
<<for _g = 0; _g < _girlsKeys.length; _g++>>
<<set _girl = $eventGirls[_girlsKeys[_g]]>>
<<set _scenes = (_girl.scenes || {})>>
<<set _sceneKeys = Object.keys(_scenes)>>
<<set _allScenesTrue = (_sceneKeys.length > 0 ? true : false)>>
<<for _i = 0; _i < _sceneKeys.length; _i++>>
<<if _scenes[_sceneKeys[_i]] !== true>>
<<set _allScenesTrue = false>>
<</if>>
<</for>>
<<if $gameEngine.showCompleted === true>>
<<set _renderKeys.push(_girlsKeys[_g])>>
<<else>>
/* si NO queremos ver completadas, saltamos las completed */
<<if !(_allScenesTrue === true && _girl.presentation === true)>>
<<set _renderKeys.push(_girlsKeys[_g])>>
<</if>>
<</if>>
<</for>>
/* =========================
2) Render en parejas SIN spans
+ Click en imagen: set $selectedGirlName y goto a Collection
========================= */
<<set _html = "">>
<<for _p = 0; _p < _renderKeys.length; _p += 2>>
<<set _html += '<div class="collectionFlexBox">'>>
<<for _k = _p; _k < _p + 2 && _k < _renderKeys.length; _k++>>
<<set $currentGirl = $eventGirls[_renderKeys[_k]]>>
<<set $girlPictureRoute = $currentGirl.img + "pose.jpg">>
/* ===== scenes: any/all ===== */
<<set _scenes = ($currentGirl.scenes || {})>>
<<set _sceneKeys = Object.keys(_scenes)>>
<<set _anySceneTrue = false>>
<<set _allScenesTrue = (_sceneKeys.length > 0 ? true : false)>>
<<for _i = 0; _i < _sceneKeys.length; _i++>>
<<if _scenes[_sceneKeys[_i]] === true>>
<<set _anySceneTrue = true>>
<<else>>
<<set _allScenesTrue = false>>
<</if>>
<</for>>
/* ===== album: any true ===== */
<<set _anyAlbumTrue = false>>
<<if $currentGirl.album>>
<<set _albumKeys = Object.keys($currentGirl.album)>>
<<for _j = 0; _j < _albumKeys.length; _j++>>
<<if $currentGirl.album[_albumKeys[_j]] === true>>
<<set _anyAlbumTrue = true>>
<</if>>
<</for>>
<</if>>
/* ===== unlocked ===== */
<<set _unlocked = ($currentGirl.presentation === true || _anySceneTrue === true || _anyAlbumTrue === true)>>
<<set $CSSgirlBorderColor = "border: 2px solid var(--" + $currentGirl.name.toLowerCase() + ")" >>
<<set $CSSgirlTextColor = "color:var(--" + $currentGirl.name.toLowerCase() + ")" >>
<<set $girlCollectionPassage = $currentGirl.name + "Collection">>
<<if _allScenesTrue === true && $currentGirl.presentation === true>>
<<set $finishedText = $currentGirl.displayName + "(COMPLETED)">>
<<else>>
<<set $finishedText = $currentGirl.displayName>>
<</if>>
/* ===== locked ===== */
<<if _unlocked === false>>
<<set $lockedGirl = "blurryCollectionPicture">>
<<set $finishedText = "UNKNOWN">>
<<set $CSSgirlTextColor = "
color:var(--lockedGirl);
font-weight: 600;
text-align: center;
text-shadow: 1px 1px 2px black;
font-style: italic;
letter-spacing: 1px;
opacity: 0.8;">>
<<else>>
<<set $lockedGirl = "collectionPicture">>
<</if>>
/* ===== HTML de la card ===== */
<<set _html +=
'<div class="collectionFlexBox-fc">' +
'<span style="' + $CSSgirlTextColor + '">' + $finishedText + '</span>' +
(
_unlocked
? (
'<<link "<img class=\\"' + $lockedGirl + '\\" src=\\"' + $girlPictureRoute + '\\" style=\\"' + $CSSgirlBorderColor + '\\"/>">>' +
'<<set $selectedGirlName = "' + $currentGirl.name + '">>' +
'<<goto "GirlCollectionDisplay">>' +
'<</link>>'
)
: (
'<img class="' + $lockedGirl + '" src="' + $girlPictureRoute + '" style="' + $CSSgirlBorderColor + '">'
)
) +
'</div>'
>>
<</for>>
/* relleno invisible si queda impar */
<<if _p + 1 >= _renderKeys.length>>
<<set _html += '<div class="collectionFlexBox-fc" style="visibility:hidden;"></div>'>>
<</if>>
<<set _html += '</div>'>>
<</for>>
<<print _html>>
<</nobr>>
<<nobr>>
/*---------CAPSTATS------------*/
<<if $player.megaBits < 0 >> <<set $player.megaBits = 0>> <</if>>
<<if $player.regencoins < 0 >> <<set $player.regencoins = 0>> <</if>>
<<if $player.infinityGems < 0 >> <<set $player.infinityGems = 0>> <</if>>
<</nobr>> <<nobr>>
<<set $gameEngine.currentPassage = "intro">>
<div align="center">
<h2 style="color:var(--orange)">Change your dialog color</h2>
<<say "You" $player.img>>This is your color.<</say>>
<h3 style="color:var(--orange)">Use hexadeciman color(#FFFFFF) or just the name of color(blue, pink, red, yellow, greed)</h3>
<<textbox "$player.dialogColor" "#FFFFFF">><br><br>
<<button "Apply">>
<<script>>
document.documentElement.style.setProperty('--playerDialogColor', State.variables.player.dialogColor);
<</script>>
<</button>>
<br>
<h3 style="color:var(--orange)">This can be changed at any time later.</h3>
<<return "Go back">>
</div>
<</nobr>>
<<nobr>>
<<include "PassageBackgrounds">>
<<set $gameEngine.passageDisplay = $backgrounds>>
<<set $phonebackgrounds = []>>
<<for $i = 0; $i < 11; $i++>>
<<set $phonebackgrounds[$i] ="pizzamedia/images/phone/backgrounds/"+$i+".jpg">>
<</for>>
<<set $randomBackground = $phonebackgrounds.random()>>
<<set $gameEngine.passageDisplay.phone = $randomBackground>>
<<script>>
document.body.style.backgroundImage = "url(" + State.variables.gameEngine.passageDisplay[State.variables.gameEngine.currentPassage] + ")";
<</script>>
<</nobr>><<nobr>>
<<set $backgrounds = {
"inventory" : "pizzamedia/images/misc/inventory.jpg",
"phone": "pizzamedia/images/misc/intro.jpg",
"intro" : "pizzamedia/images/misc/intro.jpg",
"mailman" : "pizzamedia/images/boys/mailman/intro.jpg",
"livingroom" : "pizzamedia/images/intro/livingroom.jpg",
"garage" : "pizzamedia/images/intro/garage.jpg",
"entrance" : "pizzamedia/images/intro/entrance.jpg",
"outerspace" : "pizzamedia/images/intro/outerspace.jpg",
"outerspace2" : "pizzamedia/images/intro/closed.jpg",
"outerspace3" : "pizzamedia/images/places/pizzeria/outerspace.jpg",
"open2" : "pizzamedia/images/intro/open2.jpg",
"open3" : "pizzamedia/images/intro/open3.jpg",
"closed2" : "pizzamedia/images/intro/closed2.jpg",
"regencoreintro" : "pizzamedia/images/intro/regencore.jpg",
"regencore2" : "pizzamedia/images/places/pizzeria/regencore/regencore2.jpg",
"jerryshopoutside" : "pizzamedia/images/places/jerryshop/jerryshop.jpg",
"jerryshopinside" :"pizzamedia/images/places/jerryshop/noone.jpg",
"jerryshopinside2" : "pizzamedia/images/places/jerryshop/jerryshop3.jpg",
"phalluspresentation" : "pizzamedia/images/boys/phallus/presentation.jpg",
"pizzeria" : "pizzamedia/images/places/pizzeria/pizzeriaoutside.jpg",
"pizzeriainside" : "pizzamedia/images/places/pizzeria/pizzeriainside.jpg",
"pizzeriacustomer0" : "pizzamedia/images/places/pizzeria/randomcustomer0.jpg",
"pizzeriacustomer1" : "pizzamedia/images/places/pizzeria/randomcustomer1.jpg",
"pizzeriacustomer2" : "pizzamedia/images/places/pizzeria/randomcustomer2.jpg",
"pizzeriacustomer3" : "pizzamedia/images/places/pizzeria/randomcustomer3.jpg",
"pizzeriacustomer4" : "pizzamedia/images/places/pizzeria/randomcustomer4.jpg",
"pizzeriacustomer5" : "pizzamedia/images/places/pizzeria/randomcustomer5.jpg",
"pizzeriacustomer6" : "pizzamedia/images/places/pizzeria/randomcustomer6.jpg",
"ordersheet" : "pizzamedia/images/places/pizzeria/delivery/ordersheet.jpg",
"ordersheet2" : "pizzamedia/images/places/pizzeria/delivery/ordersheet2.jpg",
"regencore" : "pizzamedia/images/places/pizzeria/regencore/regencore.jpg",
"personalarea" : "pizzamedia/images/places/pizzeria/personalarea/personalarea.jpg",
"computer" : "pizzamedia/images/places/pizzeria/personalarea/computer.jpg",
"basement" : "pizzamedia/images/places/pizzeria/basement/basement.jpg",
"combatbackground0" : "pizzamedia/images/combat/background0.jpg",
"combatbackground1" : "pizzamedia/images/combat/background1.jpg",
"combatbackground2" : "pizzamedia/images/combat/background2.jpg",
"combatbackground3" : "pizzamedia/images/combat/background3.jpg",
"combatbackground4" : "pizzamedia/images/combat/background4.jpg",
"resurrectbackground" : "pizzamedia/images/events/resurrect/background.jpg",
"coldpizzabackground" : "pizzamedia/images/events/coldpizza/background.jpg",
"newportalbackground0" : "pizzamedia/images/events/newportal/background0.jpg",
"newportalbackground1" : "pizzamedia/images/events/newportal/background1.jpg",
"shop0backgroundA" : "pizzamedia/images/events/shop0/background.jpg",
"shop1backgroundA" : "pizzamedia/images/events/shop1/cave.jpg",
"shop1backgroundB" : "pizzamedia/images/events/shop1/caveinside.jpg",
"shop2backgroundA" : "pizzamedia/images/events/shop2/background.jpg",
"shop2backgroundB" : "pizzamedia/images/events/shop2/mobilestore.jpg",
"shop3backgroundA" : "pizzamedia/images/events/shop3/background.jpg",
"ev0Abackground" : "pizzamedia/images/events/ev0/background0.jpg",
"ev1Abackground" : "pizzamedia/images/events/ev1/nail0.jpg",
"ev2Abackground" : "pizzamedia/images/events/ev2/background.jpg",
"ev3Abackground" : "pizzamedia/images/events/ev3/background.jpg",
"ev4Abackground" : "pizzamedia/images/events/ev4/background.jpg",
"ev5Abackground" : "pizzamedia/images/events/ev5/backgrounda.jpg",
"ev5Bbackground" : "pizzamedia/images/events/ev5/backgroundb.jpg",
"ev5Cbackground" : "pizzamedia/images/events/ev5/backgroundc.jpg",
"ev5Dbackground" : "pizzamedia/images/events/ev5/backgroundd.jpg",
"ev5Ebackground" : "pizzamedia/images/events/ev5/backgrounde.jpg",
"ev5Fbackground" : "pizzamedia/images/events/ev5/holesroom.jpg",
"ev5Gbackground" : "pizzamedia/images/events/ev5/dragonrooma.jpg",
"ev5Hbackground" : "pizzamedia/images/events/ev5/dragonroomb.jpg",
"ev6Abackground" : "pizzamedia/images/events/ev6/backgrounda.jpg",
"ev6Bbackground" : "pizzamedia/images/events/ev6/backgroundb.jpg",
"ev6Cbackground" : "pizzamedia/images/events/ev6/backgroundc.jpg",
"ev6Dbackground" : "pizzamedia/images/events/ev6/backgroundd.jpg",
"ev6Ebackground" : "pizzamedia/images/events/ev6/door.jpg",
"ev6Fbackground" : "pizzamedia/images/events/ev6/dungeon.jpg",
"ev7Abackground" : "pizzamedia/images/events/ev7/backgrounda.jpg",
"ev7Bbackground" : "pizzamedia/images/events/ev7/backgroundb.jpg",
"ev7Cbackground" : "pizzamedia/images/events/ev7/backgroundc.jpg",
"ev7D1background" : "pizzamedia/images/events/ev7/backgrounde.jpg",
"ev7D2background" : "pizzamedia/images/events/ev7/house.jpg",
"ev7D3background" : "pizzamedia/images/events/ev7/backgroundd.jpg",
"ev7Waitbackground" : "pizzamedia/images/events/ev7/wait.jpg",
"ev8Abackground" : "pizzamedia/images/events/ev8/backgrounda.jpg",
"ev8Bbackground" : "pizzamedia/images/events/ev8/hole1.jpg",
"ev8Cbackground" : "pizzamedia/images/events/ev8/hole1.jpg",
"ev8Dbackground" : "pizzamedia/images/events/ev8/backgroundb.jpg",
"ev9Abackground" : "pizzamedia/images/events/ev9/backgrounda.jpg",
"ev9Bbackground" : "pizzamedia/images/events/ev9/backgroundb.jpg",
"ev9Cbackground" : "pizzamedia/images/events/ev9/backgroundc.jpg",
"ev9Dbackground" : "pizzamedia/images/events/ev9/backgroundd.jpg",
"ev10Abackground" : "pizzamedia/images/events/ev10/backgrounda.jpg",
"ev10Bbackground" : "pizzamedia/images/events/ev10/backgroundb.jpg",
"ev10Cbackground" : "pizzamedia/images/events/ev10/backgroundc.jpg",
"ev10Dbackground" : "pizzamedia/images/events/ev10/backgroundd.jpg",
"ev10Ebackground" : "pizzamedia/images/events/ev10/backgrounde.jpg",
"ev10Fbackground" : "pizzamedia/images/events/ev10/backgroundf.jpg",
"ev11Abackground" : "pizzamedia/images/events/ev11/backgrounda.jpg",
"ev12Abackground" : "pizzamedia/images/events/ev12/background.jpg",
"ev13Abackground" : "pizzamedia/images/events/ev13/background.jpg",
"ev14Abackground" : "pizzamedia/images/events/ev14/backgrounda.jpg",
"ev14Bbackground" : "pizzamedia/images/events/ev14/backgroundb.jpg",
"allisonscene1a" : "pizzamedia/images/girls/allison/allisonscene1/house.jpg",
"allisonscene1b" : "pizzamedia/images/girls/allison/allisonscene1/background.jpg",
"allisonscene2b" : "pizzamedia/images/girls/allison/allisonscene2/background.jpg",
"allisonscene3a" : "pizzamedia/images/girls/allison/allisonscene3/houseoutside.jpg",
"allisonscene3b" : "pizzamedia/images/girls/allison/allisonscene3/houseinside.jpg",
"jessicascene1a" : "pizzamedia/images/girls/jessica/jessicascene1/hall.jpg",
"jessicascene1b" : "pizzamedia/images/girls/jessica/jessicascene1/houseinside.jpg",
"jessicascene2b" : "pizzamedia/images/girls/jessica/jessicascene2/houseinside.jpg",
"juliascene1a" : "pizzamedia/images/girls/julia/juliascene1/houseoutside.jpg",
"juliascene1b" : "pizzamedia/images/girls/julia/juliascene1/bedroom.jpg",
"juliascene2b" : "pizzamedia/images/girls/julia/juliascene2/livingroom.jpg",
"lindseyscene1a" : "pizzamedia/images/girls/lindsey/lindseyscene1/background0.jpg",
"lindseyscene1b" : "pizzamedia/images/girls/lindsey/lindseyscene1/background1.jpg",
"lindseyscene2a" : "pizzamedia/images/girls/lindsey/lindseyscene2/background0.jpg",
"lindseyscene2b" : "pizzamedia/images/girls/lindsey/lindseyscene2/background1.jpg",
"lindseyscene2c" : "pizzamedia/images/girls/lindsey/lindseyscene2/background2.jpg",
"rebeccascene1a" : "pizzamedia/images/girls/rebecca/rebeccascene1/houseoutside.jpg",
"rebeccascene1b" : "pizzamedia/images/girls/rebecca/rebeccascene1/livingroom.jpg",
"rebeccascene2b" : "pizzamedia/images/girls/rebecca/rebeccascene2/bedroom.jpg",
"rebeccascene3a" : "pizzamedia/images/girls/rebecca/rebeccascene3/livingrooma.jpg",
"rebeccascene3b" : "pizzamedia/images/girls/rebecca/rebeccascene3/livingroomb.jpg",
"savannahscene1a" : "pizzamedia/images/girls/savannah/savannahscene1/bedroom.jpg",
"savannahscene2a" : "pizzamedia/images/girls/savannah/savannahscene2/bedroom.jpg",
"melissascene1a" : "pizzamedia/images/girls/melissa/melissascene1/park.jpg",
"melissascene1b" : "pizzamedia/images/girls/melissa/melissascene1/room.jpg",
"melissascene2a" : "pizzamedia/images/girls/melissa/melissascene2/room1.jpg",
"melissascene2b" : "pizzamedia/images/girls/melissa/melissascene2/room2.jpg",
"melissascene2c" : "pizzamedia/images/girls/melissa/melissascene2/room3.jpg",
"shizukascene1a" : "pizzamedia/images/girls/shizuka/shizukascene1/room.jpg",
}>>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "intro">>
<<include "PassageBackgrounds">>
<<set $gameEngine.onScene = true>>
<<include "DataUpdate">>
<<goto "Pizzeria">>
</div>
<</nobr>>
<<nobr>>
<!--:: storyinit-->
<<set $player = {
"name" : "John",
"surname": "Surn",
"megaBits" : 200,
"regencoins" : 0,
"infinityGems": 0,
"dragonBalls": 0,
"dialogColor": "white",
"img" : "pizzamedia/images/playerphoto/13.jpg",
"pizzeriaName": "Hot & Ready",
"items": {},
}>>
<<set $playerCombat = {
"hp": 100,
"maxHp": 100,
"accuracy": 85,
"evasion": 5,
"critChance": 8,
"critMult": 1.5,
"escapeChance": 50,
"itemDropChance": 0,
"lifeStealPct": 0,
damage: { physical: 0, fire: 0, cold: 0, corrosive: 0, electric: 0 },
resistances: { physical: 40, fire: 40, cold: 40, corrosive: 40, electric: 40 },
outgoingEffects:[],
incomingEffects:[],
effects: [],
turnFlags: {},
loadout: {"head":null,"chest":null,"shoes":null,"hand1": null,"hand2": null}
}>>
<<set $combatEngine = {
"inCombat": false,
"player": null,
"enemy":null,
"enemyId": "",
"log": [],
"onWin": "",
"onLose": "",
} >>
<<set $delivery = null>>
<<set $gameEngine = {
"currentPassage": "Intro",
"passageDisplay": [],
"onScene": false,
"onRepetition": false,
"repetitionReturn": "Collection",
"onDelivery":false,
"onMenu": false,
"onIntro": false,
"inCombat": false,
"tutorial":false,
"firstRun":false,
"gameVersion": "0.1.0",
"showCompleted": true,
"girlsCollectionSelection":0,
"creditsSelection": 0,
"inventorySelection":0,
"regencoreSelection": 0,
"collectionSelection": 0,
"jerryShopSelection": 0,
"usedSunPatches": false,
"deliveryCount": 0,
"musicOn": true,
"volume": 0.20,
}>>
<<run SimpleAudio.volume($gameEngine.volume)>>
<<set $deliveries = []>>
<<set $pizzas = [
{ id:"salami", name:"Salami", img:"pizzamedia/images/pizzas/salami.jpg" },
{ id:"pepperoni", name:"Pepperoni", img:"pizzamedia/images/pizzas/pepperoni.jpg" },
{ id:"margherita", name:"Margherita", img:"pizzamedia/images/pizzas/margherita.jpg" },
{ id:"fourCheese", name:"Four Cheese", img:"pizzamedia/images/pizzas/fourcheese.jpg" },
{ id:"barbecue", name:"Barbecue", img:"pizzamedia/images/pizzas/barbecue.jpg" },
{ id:"pineapple", name:"Pineapple", img:"pizzamedia/images/pizzas/pineapple.jpg" },
{ id:"carbonara", name:"Carbonara", img:"pizzamedia/images/pizzas/carbonara.jpg" },
{ id:"sausage", name:"Sausage", img:"pizzamedia/images/pizzas/sausage.jpg" },
]>>
<<include "Girls">>
<<include "Boys">>
<<include "EventGirls">>
<<include "AdventureGirls">>
<<include "Enemies">>
<<include "SetWeapons">>
<<include "SetArmors">>
<<include "SetSets">>
<<include "Mutations">>
<<include "Consumables">>
<<include "TiersData">>
<<include "AudioList">>
<<include "CharacterMacros">>
<<include "RerollDelivery">>
<<include "RerollDeliveries">>
<<include "LootConfig">>
<<include "RandomLoot">>
<<include "RandomLootUI">>
<<include "ActionButtons">>
<<rerollDeliveries>>
<<include "PassageDisplay">>
<<include "BuyConsumableWidget">>
<<include "BuyItemWidget">>
<<include "HealingMenu">>
<</nobr>> <<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "intro">>
<p class="reflection">You decide to ignore the letter and throw it in the trash.</p>
[img['pizzamedia/images/intro/trash.jpg']]
<p class="reflection">The family-run pizzeria drifts aimlessly through space, forgotten over the years for the rest of eternity.</p>
[img['pizzamedia/images/intro/abandoned.jpg']]<br><br>
[[Restart the game|Creation]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "entrance">>
[img['pizzamedia/images/intro/starship.jpg']]
<p class="reflection">You haven't traveled anywhere in years. You even sold your old spaceship.</p>
<<linkreplace "Call an interdimensional taxi">>
<p class="reflection">You pull out your phone and order a taxi through the app.</p>
[img['pizzamedia/images/intro/call.jpg']]
<p class="reflection">In a matter of seconds, a taxi appears right in front of you.</p>
[img['pizzamedia/images/intro/taxi.jpg']]<br>
<p class="reflection">As you get in, the taxi spins around quickly while levitating and enters the portal again.</p>
[img['pizzamedia/images/intro/taxigo.jpg']]
<p class="reflection">Your trip to the pizzeria begins.</p>
<<linkreplace "The journey begins">>
<<run $("#passages").append('<div id="blackout"></div>')>>
<<timed 4s>>
<<goto "IntroC">>
<</timed>>
<</linkreplace>>
<!--
[[IntroC]]
-->
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "closed2">>
<p class="reflection">When you walk through the door, everything is dark. There are only a couple of dim lights.</p>
[img['pizzamedia/images/intro/robot1.jpg']]
<p class="reflection">In the middle of the room, you see a girl.</p>
<<linkreplace "Talk to her">>
<<say "You" $player.img>>Hello? Who are you?<</say>><br>
<p class="reflection">You move a little closer, but she doesn't answer. She doesn't react to your voice.</p>
<<linkreplace "Try again">>
<<say "You" $player.img>>Hello? Are you okay?<</say>><br>
[img['pizzamedia/images/intro/robot1.jpg']]
<p class="reflection">She still doesn't answer</p>
<<linkreplace "Get closer">>
<p class="reflection">As you get closer, you realize that this is the robot your uncle Steven mentioned in his letter.</p>
[img['pizzamedia/images/intro/robot2.jpg']]
<p class="reflection">After examining her, you find a sort of switch on the back of her neck that’s in the Off position.</p>
[[Flip the switch|IntroF]]<br><br>
<</linkreplace>>
<</linkreplace>>
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "regencoreintro">>
<<melissaunknown>>Since you've never worked here before, you'll need to back up your data on the RegenCore.<</melissaunknown>><br>
[img['pizzamedia/images/intro/regencore.jpg']]
<p class="reflection">$girls.melissa.displayName leads you to the back of the pizzeria. On one of the walls, you see a machine mounted on the wall.</p>
<<say "You" $player.img>>A backup?<</say>><br>
<<melissaunknown>>Yes, there used to be a much older system, but this one is more modern. If anything happens to you out there, you can be cloned as many times as necessary.<br>Why don’t you try putting your arm into the RegenCore so it can collect your genetic data?<</melissaunknown>><br>
<<say "You" $player.img>>I don’t know… it doesn’t look very good. Does this hurt?<</say>><br>
<<melissaunknown>>Remember, I'm a robot. I don't know this thing you call pain, but according to the official online manual, it is a painless procedure.<</melissaunknown>><br>
<<say "You" $player.img>>If you say so.<</say>><br>
<<linkreplace "Put your arm in the RegenCore">>
<p class="reflection">You put your arm into the machine, and hooks shoot out quickly and dig into your skin. You feel a sharp burning sensation as they draw your blood.</p>
[img['pizzamedia/images/intro/blood.jpg']]
<<say "You" $player.img>>AAAHHHHHH!! SHIT!!! YOU SAID IT WOULDN'T HURT!!<</say>><br>
<<melissaunknown>>Don't move. The official online manual says you mustn't move, or you'll have to repeat the procedure.<</melissaunknown>><br>
<<say "You" $player.img>>DAMN IT!! FUCK THE MANUAL!!<</say>><br>
<<melissaunknown>>Come on, hang in there.<</melissaunknown>><br>
<<regencore>>Analyzing DNA sample... Earth human DNA identified, adding DNA to the database... DNA extraction successful.<</regencore>><br>
[img['pizzamedia/images/intro/humandna.jpg']]
<<regencore>>RegenCore Inc. is offering you your first mutation as a courtesy for registering as a new customer...<</regencore>><br>
<<say "You" $player.img>>AAAHHHHHH!! SHIT!!! I DON'T KNOW IF I CAN...<</say>><br>
<<melissaunknown>>It's almost over, hang in there just a little longer.<</melissaunknown>><br>
[img['pizzamedia/images/intro/extractingdna.jpg']]
<p class="reflection">You feel the machine injecting a liquid that radiates through your insides. You feel like your whole body is going to explode.</p>
<<regencore>>Anti-sleep mutation successfully added. <br>From now on, you won’t feel the need to sleep.<</regencore>><br>
<div style="width: 30%;">
[img['pizzamedia/images/places/pizzeria/regencore/mutations/misc/antisleep.png']]
</div>
<<regencore>>Thank you for trusting RegenCore.<</regencore>><br>
<<say "You" $player.img>>FUCK YOU, SHITTY REGENCORE!!<</say>><br>
[[You return to the main hall|IntroH]]
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "open2">>
<<say "You" $player.img>>Well, I guess we can get started with the orders, right?<</say>><br>
<<melissaunknown>>Almost... We have a small problem... According to my database, our stock of the secret ingredient is empty...<</melissaunknown>><br>
[img['pizzamedia/images/girls/melissa/pose1.jpg']]
<<say "You" $player.img>>Why don't you call a supplier and have them send us some?<</say>><br>
<<melissaunknown>>Your uncle Steven was the only one who knew about the secret ingredient, and he never told anyone where he got it... Without the secret ingredient, our pizzas are no better than those at any other pizzeria.<</melissaunknown>><br>
<<say "You" $player.img>>I guess it’s up to me to find that darn secret ingredient. <br>By the way, what’s your name?<</say>><br>
<<melissaunknown>>I don’t have a name. Although I was programmed to work here, today was the first time I was activated by you.<</melissaunknown>><br>
<<say "You" $player.img>>If you don’t have a name… what do you think…<<textbox "$girls.melissa.displayName" $girls.melissa.displayName>><</say>><br>
[[Continue|IntroI]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.onScene = false>>
<<set $gameEngine.onMenu = false>>
<<if $gameEngine.deliveryCount >= 3 && $boys.phallus.presentation === false>>
<<goto "PhallusPresentationA">>
<<elseif $gameEngine.deliveryCount >= 6 && $boys.phallus.progress === 0 && $boys.phallus.presentation === true>>
<<goto "PhallusScene1A">>
<</if>>
<<if $boys.minerbot.presentation === true && $boys.jerry.presentation === true && $gameEngine.tutorial === true>>
<<set $gameEngine.currentPassage = "pizzeriacustomer" + random(0, 6)>>
<<else>>
<<set $gameEngine.currentPassage = "open2">>
<</if>>
<div class="imageFlexBox">
<div class="imageMenu">
<<if $boys.minerbot.presentation === true && $boys.jerry.presentation === true && $gameEngine.tutorial === true>>
[img[$gameEngine.passageDisplay["ordersheet2"]][Delivery]]
<<elseif $boys.minerbot.presentation === true && $boys.jerry.presentation === true && $gameEngine.tutorial === false>>
[img[$gameEngine.passageDisplay["ordersheet2"]][TutorialA]]
<<elseif $boys.minerbot.presentation === false>>
[img[$gameEngine.passageDisplay["ordersheet2"]]]
<p class="imageMenuInfoText" style="color:var(--purple)">First you need the secret ingredient</p>
<<elseif $boys.jerry.presentation === false>>
[img[$gameEngine.passageDisplay["ordersheet2"]]]
<p class="imageMenuInfoText" style="color:var(--purple)">It might be a good idea to check out that store on the outskirts first, as $girls.melissa.displayName mentioned.</p>
<</if>>
</div>
<div class="imageMenu">
[img[$gameEngine.passageDisplay["personalarea"]][PersonalArea]]
<p class="imageMenuText">PERSONAL AREA</p>
</div>
</div>
<div class="imageFlexBox">
<div class="imageMenu">
[img[$gameEngine.passageDisplay["regencore"]][RegenCore]]
</div>
<div class="imageMenu">
<<if $boys.jerry.presentation === false>>
[img[$gameEngine.passageDisplay["outerspace3"]][JerryShopIntroA]]
<p class="imageMenuText">GO OUTSIDE</p>
<<else>>
[img[$gameEngine.passageDisplay["jerryshopoutside"]][JerryShop]]
<p class="imageMenuText">JERRY'S SHOP</p>
<</if>>
</div>
</div>
<!--
[[Delivery]]
[[JerryShop]]
[[RegenCore]]
[[PersonalArea]]
[[BasementPresentationA]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ordersheet">>
<<set $gameEngine.onMenu = false>>
<<set $firstEvent = true>>
<div class="orders-grid futuristic">
<<set _class0 = $deliveries[0].isSpecial ? "order-ticket order-ticket-special" : "order-ticket">>
<<set _h2class0 = $deliveries[0].isSpecial ? "special-order-title" : "">>
<div @class=_class0>
<h2 @class=_h2class0>Order #1</h2>
<p><b>Customer:</b> <<= $deliveries[0].girl.displayName >></p>
<<set $imageRoute = "pizzamedia/images/girls/" + $deliveries[0].girl.displayName.toLowerCase() + "/face.jpg">>
<img class="customer-photo" @src=$imageRoute>
<p><b>Distance: </b><<= $deliveries[0].tripsTotal >> trips</p>
<p><b>Difficulty:</b>
<span class="difficulty">
<<if $deliveries[0].isSpecial>>
⭐
<<else>>
<<if $deliveries[0].tier === 1>>🌶️<</if>>
<<if $deliveries[0].tier === 2>>🌶️ 🌶️<</if>>
<<if $deliveries[0].tier === 3>>🌶️ 🌶️ 🌶️<</if>>
<</if>>
</span>
</p>
<p><b>Reward: </b>
<<if $deliveries[0].currency === "regencoins">>
<<set $upper = $deliveries[0].earnings + " Regencoins">>
<span class="captionProgressBarText" id="regencore">$upper</span>
<<else>>
<<set $upper = $deliveries[0].earnings + " Megabits">>
<span class="captionProgressBarText" id="megabits">$upper</span>
<</if>>
</p>
<div class="deliver-btn">
<<if $gameEngine.firstRun === false>>
[[DELIVER ORDER|PortalGunError][$delivery = $deliveries[0]]]
<<else>>
[[DELIVER ORDER|OrderSheetIntro][$delivery = $deliveries[0]]]
<</if>>
</div>
</div>
<<set _class1 = $deliveries[1].isSpecial ? "order-ticket order-ticket-special" : "order-ticket">>
<<set _h2class1 = $deliveries[1].isSpecial ? "special-order-title" : "">>
<div @class=_class1>
<h2 @class=_h2class1>Order #2</h2>
<p><b>Customer:</b> <<= $deliveries[1].girl.displayName >></p>
<<set $imageRoute = "pizzamedia/images/girls/" + $deliveries[1].girl.displayName.toLowerCase() + "/face.jpg">>
<img class="customer-photo" @src=$imageRoute>
<p><b>Distance: </b><<= $deliveries[1].tripsTotal >> trips</p>
<p><b>Difficulty:</b>
<span class="difficulty">
<<if $deliveries[1].isSpecial>>
⭐
<<else>>
<<if $deliveries[1].tier === 1>>🌶️<</if>>
<<if $deliveries[1].tier === 2>>🌶️ 🌶️<</if>>
<<if $deliveries[1].tier === 3>>🌶️ 🌶️ 🌶️<</if>>
<</if>>
</span>
</p>
<p><b>Reward: </b>
<<if $deliveries[1].currency === "regencoins">>
<<set $upper = $deliveries[1].earnings + " Regencoins">>
<span class="captionProgressBarText" id="regencore">$upper</span>
<<else>>
<<set $upper = $deliveries[1].earnings + " Megabits">>
<span class="captionProgressBarText" id="megabits">$upper</span>
<</if>>
</p>
<div class="deliver-btn">
<<if $gameEngine.firstRun === false>>
[[DELIVER ORDER|PortalGunError][$delivery = $deliveries[1]]]
<<else>>
[[DELIVER ORDER|OrderSheetIntro][$delivery = $deliveries[1]]]
<</if>>
</div>
</div>
<<set _class2 = $deliveries[2].isSpecial ? "order-ticket order-ticket-special" : "order-ticket">>
<<set _h2class2 = $deliveries[2].isSpecial ? "special-order-title" : "">>
<div @class=_class2>
<h2 @class=_h2class2>Order #3</h2>
<p><b>Customer:</b> <<= $deliveries[2].girl.displayName >></p>
<<set $imageRoute = "pizzamedia/images/girls/" + $deliveries[2].girl.displayName.toLowerCase() + "/face.jpg">>
<img class="customer-photo" @src=$imageRoute>
<p><b>Distance: </b><<= $deliveries[2].tripsTotal >> trips</p>
<p><b>Difficulty:</b>
<span class="difficulty">
<<if $deliveries[2].isSpecial>>
⭐
<<else>>
<<if $deliveries[2].tier === 1>>🌶️<</if>>
<<if $deliveries[2].tier === 2>>🌶️ 🌶️<</if>>
<<if $deliveries[2].tier === 3>>🌶️ 🌶️ 🌶️<</if>>
<</if>>
</span>
</p>
<p><b>Reward: </b>
<<if $deliveries[2].currency === "regencoins">>
<<set $upper = $deliveries[2].earnings + " Regencoins">>
<span class="captionProgressBarText" id="regencore">$upper</span>
<<else>>
<<set $upper = $deliveries[2].earnings + " Megabits">>
<span class="captionProgressBarText" id="megabits">$upper</span>
<</if>>
</p>
<div class="deliver-btn">
<<if $gameEngine.firstRun === false>>
[[DELIVER ORDER|PortalGunError][$delivery = $deliveries[2]]]
<<else>>
[[DELIVER ORDER|OrderSheetIntro][$delivery = $deliveries[2]]]
<</if>>
</div>
</div>
<<set _class3 = $deliveries[3].isSpecial ? "order-ticket order-ticket-special" : "order-ticket">>
<<set _h2class3 = $deliveries[3].isSpecial ? "special-order-title" : "">>
<div @class=_class3>
<h2 @class=_h2class3>Order #4</h2>
<p><b>Customer:</b> <<= $deliveries[3].girl.displayName >></p>
<<set $imageRoute = "pizzamedia/images/girls/" + $deliveries[3].girl.displayName.toLowerCase() + "/face.jpg">>
<img class="customer-photo" @src=$imageRoute>
<p><b>Distance: </b><<= $deliveries[3].tripsTotal >> trips</p>
<p><b>Difficulty:</b>
<span class="difficulty">
<<if $deliveries[3].isSpecial>>
⭐
<<else>>
<<if $deliveries[3].tier === 1>>🌶️<</if>>
<<if $deliveries[3].tier === 2>>🌶️ 🌶️<</if>>
<<if $deliveries[3].tier === 3>>🌶️ 🌶️ 🌶️<</if>>
<</if>>
</span>
</p>
<p><b>Reward: </b>
<<if $deliveries[3].currency === "regencoins">>
<<set $upper = $deliveries[3].earnings + " Regencoins">>
<span class="captionProgressBarText" id="regencore">$upper</span>
<<else>>
<<set $upper = $deliveries[3].earnings + " Megabits">>
<span class="captionProgressBarText" id="megabits">$upper</span>
<</if>>
</p>
<div class="deliver-btn">
<<if $gameEngine.firstRun === false>>
[[DELIVER ORDER|PortalGunError][$delivery = $deliveries[3]]]
<<else>>
[[DELIVER ORDER|OrderSheetIntro][$delivery = $deliveries[3]]]
<</if>>
</div>
</div>
</div><br>
[[Go back|Pizzeria]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "jerryshopinside">>
<<jerry>>Welcome! I have whatever you're looking for.<</jerry>><br>
[img['pizzamedia/images/boys/jerry/presentation.jpg']]<br><br>
[[Buy|BuyItems]]
<br><br>
<<set $upper = "Talk to " + $boys.jerry.name >>
[[$upper|JerryTalk]]
<br><br>
<<set $upper = "Sell Infinity Stones +" + $player.infinityGems * 50+ " MegaBits">>
<<if $player.infinityGems > 0>>
<<link "$upper">>
<<set $player.megaBits += ($player.infinityGems * 50)>>
<<set $player.infinityGems = 0>>
<<run Engine.show()>>
<</link>>
<br><br>
<</if>>
[[Go Back|Pizzeria]]
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "regencore2">>
<h2 class="mutation-title-corrosive">REGENCORE UPGRADES</h2>
<div class= "regencoreButton">
[[Go Back|Pizzeria]]
</div>
<div class="upgrade-buttons-container">
<span class="upgrade-button-container">
<div class="upgrade-button regencoreUpgradeBasic">
<<button "BASIC">>
<<set $gameEngine.regencoreSelection = 0>>
<<run Engine.show()>>
Basic Upgrades
<</button>>
</div>
</span>
<span class="upgrade-button-container">
<div class="upgrade-button regencoreUpgradeFire">
<<button "FIRE">>
<<set $gameEngine.regencoreSelection = 1>>
<<run Engine.show()>>
Fire Upgrades
<</button>>
</div>
</span>
<span class="upgrade-button-container">
<div class="upgrade-button regencoreUpgradeCold">
<<button "COLD">>
<<set $gameEngine.regencoreSelection = 2>>
<<run Engine.show()>>
Cold Upgrades
<</button>>
</div>
</span>
<span class="upgrade-button-container">
<div class="upgrade-button regencoreUpgradeCorrosive">
<<button "CORROSIVE">>
<<set $gameEngine.regencoreSelection = 3>>
<<run Engine.show()>>
Corrosive Upgrades
<</button>>
</div>
</span>
<span class="upgrade-button-container">
<div class="upgrade-button regencoreUpgradeElectric">
<<button "ELECTRIC">>
<<set $gameEngine.regencoreSelection = 4>>
<<run Engine.show()>>
Electric Upgrades
<</button>>
</div>
</span>
<span class="upgrade-button-container">
<div class="upgrade-button regencoreUpgradeMisc">
<<button "MISC">>
<<set $gameEngine.regencoreSelection = 5>>
<<run Engine.show()>>
Misc Upgrades
<</button>>
</div>
</span>
</div>
<<if $gameEngine.regencoreSelection === 0>>
<<include "BasicUpgrades">>
<<elseif $gameEngine.regencoreSelection === 1>>
<<include "FireUpgrades">>
<<elseif $gameEngine.regencoreSelection === 2>>
<<include "ColdUpgrades">>
<<elseif $gameEngine.regencoreSelection === 3>>
<<include "CorrosiveUpgrades">>
<<elseif $gameEngine.regencoreSelection === 4>>
<<include "ElectricUpgrades">>
<<elseif $gameEngine.regencoreSelection === 5>>
<<include "MiscUpgrades">>
<</if>>
<br>
<div class= "regencoreButton">
[[Makeover]]<br><br>
[[Go Back|Pizzeria]]
</div>
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "personalarea">>
<<set $gameEngine.onScene = false>>
<<if $boys.minerbot.presentation === false>>
<<goto "BasementPresentationA">>
<</if>>
<div class="imageFlexBox">
<div class="imageMenu">
[img['pizzamedia/images/places/pizzeria/personalarea/melissa.jpg'][Melissa]]
<<set $upper = $girls.melissa.displayName.toUpperCase()>>
<p class="imageMenuText">$upper</p>
</div>
<div class="imageMenu">
[img[$gameEngine.passageDisplay["computer"]]]
<p class="imageMenuText">COMPUTER</p>
</div>
</div>
<div class="imageFlexBox">
<div class="imageMenu">
[img[$gameEngine.passageDisplay["basement"]][Basement]]
<p class="imageMenuText">BASEMENT</p>
</div>
<div class="imageMenu">
[img[$gameEngine.passageDisplay["pizzeriainside"]][Pizzeria]]
<p class="imageMenuText">PIZZERIA</p>
</div>
</div>
<!--
[[Pizzeria]]
[[Basement]]
[[Computer]]
[[Melissa]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "personalarea">>
<<say "You" $player.img>>Hi $girls.melissa.displayName, can you come here for a second?<</say>><br>
<<melissa>>Sure, what do you need?<</melissa>><br>
[[Talk to her|MelissaTalk]]<br><br>
<<if $girls.melissa.progress === 0 && $girls.melissa.strangeChip === true >>
[[Show her the strange red chip|MelissaChipInstallationA]]<br><br>
<</if>>
<<if $girls.melissa.progress === 1 && $girls.melissa.cooldown <= 0>>
[[She wants to ask you something|MelissaScene1A]]<br><br>
<<elseif $girls.melissa.progress > 1>>
[[Go for a walk with her(repeat scene)|MelissaScene1A]]<br><br>
<</if>>
<<if $girls.melissa.progress === 2 && $girls.melissa.cooldown <= 0>>
[[Ask her what she's doing|MelissaScene2A]]<br><br>
<<elseif $girls.melissa.progress > 2>>
[[Ask her what she does(repeat scene)|MelissaScene2A]]<br><br>
<</if>>
[[Go Back|PersonalArea]]
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.onDelivery = true>>
<<set $gameEngine.onScene = true>>
<<set $talk = { step: 0, done: false }>>
<<include "CalcPlayerCombatStats">>
<<if $firstEvent === true>>
<<set $firstEvent = false>>
<<set $gameEngine.usedSunPatches = false>>
<<set $combatEngine.player.hp = $combatEngine.player.maxHp>>
<<set $playerCombat.hp = $combatEngine.player.maxHp>>
/* Restamos 1 para ponernos en el índice correcto del array */
<<set $delivery.tripsRemaining-->>
/* Obtenemos el evento pre-generado de la lista */
<<set _nextPassage = $delivery.events[$delivery.tripsRemaining]>>
<<else>>
<<set $delivery.tripsRemaining-->>
<<if $delivery.tripsRemaining < 0>>
<<set $gameEngine.onDelivery = false>>
/* Usamos la escena pre-calculada al generar la entrega */
<<set _nextPassage = $delivery.girl.name + "Scene" + $delivery.targetSceneNum + "A">>
<<else>>
<<set _nextPassage = $delivery.events[$delivery.tripsRemaining]>>
<</if>>
<</if>>
<<goto _nextPassage>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev1Abackground">>
<<set $combatEngine.enemyId = "nail">>
<p class="reflection">You walk through the portal.</p>
[img['pizzamedia/images/events/ev1/nail0.jpg']]
<p class="reflection">You see an endless number of rusty, human-shaped statues.</p>
[img['pizzamedia/images/events/ev1/nail1.jpg']]
<p class="reflection">Before taking a step, you notice a rusty nail on the ground.</p>
<!-- CONTENEDOR ÚNICO: al hacer click, lo reemplazas y desaparecen los demás -->
<div id="choice">
<div class="actionRow">
<span class="btnChoice">
<<link "Dodge to the right(+1❄️)">>
<<replace "#choice">>
<<if $playerCombat.shoes === null || ndef $playerCombat.shoes>>
<p class="reflection">You try to dodge the nail by stepping to the right of it.</p>
[img['pizzamedia/images/events/ev1/nail2.jpg']]
<p class="reflection">The nail moves toward your foot, and before you know it, you step on it.<br>The rust spreads rapidly throughout your body.</p>
[img['pizzamedia/images/events/ev1/nail3.jpg']]
<p class="reflection">You end up turning into another one of the many rusty human statues in this dimension.</p>
[[You are dead|Resurrect]]
<<else>>
<p class="reflection">You try to dodge the nail by stepping to the right of it.</p>
[img['pizzamedia/images/events/ev1/nail4.jpg']]
<p class="reflection">The nail moves toward your foot, and before you know it, you step on it.</p>
<<set $upper = "pizzamedia/images/items/"+$playerCombat.shoes.toLowerCase()+".jpg">>
[img[$upper]]
<p class="reflection">However, thanks to your boots, you manage to avoid the tremendous pain you would have suffered.</p>
<<include "CoolingPizza">>
[[A new portal opens in front of you|NewPortal]]
<</if>>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Step over it(+1❄️)">>
<<replace "#choice">>
<<if $playerCombat.shoes === null || ndef $playerCombat.shoes>>
<p class="reflection">You try to dodge the nail by stepping over it.</p>
[img['pizzamedia/images/events/ev1/nail2.jpg']]
<p class="reflection">The nail moves toward your foot, and before you know it, you step on it.<br>The rust spreads rapidly throughout your body.</p>
[img['pizzamedia/images/events/ev1/nail3.jpg']]
<p class="reflection">You end up turning into another one of the many rusty human statues in this dimension.</p>
[[You are dead|Resurrect]]
<<else>>
<p class="reflection">You try to dodge the nail by stepping over it.</p>
[img['pizzamedia/images/events/ev1/nail4.jpg']]
<p class="reflection">The nail moves toward your foot, and before you know it, you step on it.</p>
<<set $upper = "pizzamedia/images/items/"+$playerCombat.shoes.toLowerCase()+".jpg">>
[img[$upper]]
<p class="reflection">However, thanks to your boots, you manage to avoid the tremendous pain you would have suffered.</p>
<<include "CoolingPizza">>
[[A new portal opens in front of you|NewPortal]]
<</if>>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Dodge to the left(+1❄️)">>
<<replace "#choice">>
<<if $playerCombat.shoes === null || ndef $playerCombat.shoes>>
<p class="reflection">Try to dodge the nail by stepping to the left of it.</p>
[img['pizzamedia/images/events/ev1/nail2.jpg']]
<p class="reflection">The nail moves toward your foot, and before you know it, you step on it.<br>The rust spreads rapidly throughout your body.</p>
[img['pizzamedia/images/events/ev1/nail3.jpg']]
<p class="reflection">You end up turning into another one of the many rusty human statues in this dimension.</p>
[[You are dead|Resurrect]]
<<else>>
<p class="reflection">Try to dodge the nail by stepping to the left of it.</p>
[img['pizzamedia/images/events/ev1/nail4.jpg']]
<p class="reflection">The nail moves toward your foot, and before you know it, you step on it.</p>
<<set $upper = "pizzamedia/images/items/"+$playerCombat.shoes.toLowerCase()+".jpg">>
[img[$upper]]
<p class="reflection">However, thanks to your boots, you manage to avoid the tremendous pain you would have suffered.</p>
<<include "CoolingPizza">>
[[A new portal opens in front of you|NewPortal]]
<</if>>
<</replace>>
<</link>>
</span>
</div>
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<replace "#choice">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</replace>>
<</link>>
</span>
<<include "Run">>
</div>
</div>
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev2Abackground">>
<<set $combatEngine.enemyId = "mime">>
<p class="reflection">You walk through the portal.</p>
[img['pizzamedia/images/enemies/mime/pose1.jpg']]
<p class="reflection">A mime stands in front of you.</p>
<!-- CONTENEDOR: botones siempre visibles + panel que se actualiza -->
<div id="choice">
<!-- PANEL QUE CAMBIA (solo esto se reemplaza) -->
<div id="resultPanel">
<p class="reflection">The mime watches you in silence.</p>
</div>
<div class="actionRow">
<span class="btnChoice">
<<link "Talk(+1❄️)">>
<<replace "#resultPanel">>
<<say "You" $player.img>>Hey, what's up? Can I get through?<</say>><br>
[img['pizzamedia/images/enemies/mime/pose1.jpg']]
<p class="reflection">You try to talk to him, but he doesn't answer.</p>
<<include "CoolingPizza">>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Dodge him(+1❄️)">>
<<replace "#resultPanel">>
<p class="reflection">You try to dodge him, but he steps in front of you.</p>
[img['pizzamedia/images/enemies/mime/pose1.jpg']]
<<include "CoolingPizza">>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Turn back and leave(+1❄️)">>
<<replace "#resultPanel">>
<p class="reflection">You turn back, but he follows your movements and stands in front of you, blocking your way.</p>
[img['pizzamedia/images/enemies/mime/pose2.jpg']]
<<include "CoolingPizza">>
<</replace>>
<</link>>
</span>
</div>
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
</div>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "resurrectbackground">>
<p class="reflection">Your consciousness is transferred to the RegenCore storage module, where it awaits a new body.</p>
<<video "pizzamedia/videos/events/resurrect/conscience.mp4" >><br>
<p class="reflection">The RegenCore system activates the regeneration capsule by injecting your DNA.</p>
<<video "pizzamedia/images/events/resurrect/resurrect1video.mp4" >>
<p class="reflection">Within a couple of minutes, you begin to regenerate.</p>
<<linkreplace "Revive">>
<p class="reflection">In five minutes, your consciousness is transferred to this new body.</p>
<<video "pizzamedia/images/events/resurrect/resurrect2video.mp4" >>
<br><br>
<<link "Pizzeria">>
<<goto "ResetDelivery">>
<</link>>
<</linkreplace>>
<!--
[[Pizzeria]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "coldpizzabackground">>
<p class="reflection">The pizza has gone cold.</p>
[img['pizzamedia/images/events/coldpizza/coldpizza.jpg']]
<p class="reflection">The Active Ember Salt has reacted to the low temperature, freezing the box while also making the pizza taste bitter.</p>
<br>
<<link "Go back to the pizzeria">>
<<goto "ResetDelivery">>
<</link>>
<!--
[[Pizzeria]]
-->
</div>
<</nobr>><<nobr>>
<<if !Macro.get("rerollDeliveries")>>
<<widget "rerollDeliveries">>
/* 1) Barajar chicas */
<<set _allGirls = Object.values($eventGirls)>>
<<set _g = _allGirls.slice()>>
<<for _i = _g.length - 1; _i > 0; _i-->>
<<set _j = Math.floor(Math.random() * (_i + 1))>>
<<set _tmp = _g[_i]>>
<<set _g[_i] = _g[_j]>>
<<set _g[_j] = _tmp>>
<</for>>
/* 2) Buckets por tier */
<<set _sel = {1:[], 2:[], 3:[]}>>
/* Separar chicas con escenas pendientes de las que no */
<<set _withPending = {1:[], 2:[], 3:[]}>>
<<set _withoutPending = {1:[], 2:[], 3:[]}>>
<<for _i = 0; _i < _g.length; _i++>>
<<set _girl = _g[_i]>>
<<set _hasFalse = Object.values(_girl.scenes).includes(false)>>
<<if _hasFalse>>
<<set _withPending[_girl.tier].push(_girl)>>
<<else>>
<<set _withoutPending[_girl.tier].push(_girl)>>
<</if>>
<</for>>
/* Llenar cada bucket priorizando las que tienen escenas pendientes */
<<for _tier = 1; _tier <= 3; _tier++>>
<<set _pool = _withPending[_tier].length > 0 ? _withPending[_tier] : _withoutPending[_tier]>>
<<for _i = 0; _i < _pool.length; _i++>>
<<if _sel[_tier].length < 2>>
<<set _sel[_tier].push(_pool[_i])>>
<</if>>
<</for>>
<</for>>
/* 3) Generar entregas */
<<set $deliveries = []>>
<<set _id = 0>>
<<for _tier = 1; _tier <= 3; _tier++>>
<<set _cfg = $tiercfg[_tier]>>
<<for _k = 0; _k < _sel[_tier].length; _k++>>
<<set _girl = _sel[_tier][_k]>>
/* --- Trips --- */
<<set _trips = _cfg.trips[0] + Math.floor(Math.random() * (_cfg.trips[1] - _cfg.trips[0] + 1))>>
/* --- Currency --- */
<<set _isRegen = Math.random() < 0.3>>
<<if _isRegen>>
<<set _earn = _cfg.regencoins[0] + Math.floor(Math.random() * (_cfg.regencoins[1] - _cfg.regencoins[0] + 1))>>
<<set _currType = "regencoins">>
<<else>>
<<set _earn = _cfg.megabits[0] + Math.floor(Math.random() * (_cfg.megabits[1] - _cfg.megabits[0] + 1))>>
<<set _currType = "megabits">>
<</if>>
/* --- GENERACIÓN DE LA LISTA DE EVENTOS (NUEVO) --- */
<<set _eventList = []>>
/* 2. Control para la tienda (máximo 1) */
<<set _hasShop = false>>
/* 3. ¡IMPORTANTE! Hacemos una COPIA de los eventos totales y tiendas */
/* Usamos clone() para no borrar los eventos del juego original, solo de esta partida */
<<set _poolEvents = clone($totalEvents)>>
/* Preparamos las tiendas disponibles. Si tiene el chip, quitamos Shop1A */
<<set _availableShops = clone($totalShops)>>
<<if $girls.melissa.strangeChip === true>>
<<set _availableShops = _availableShops.filter(s => s !== "Shop1A")>>
<</if>>
/* 4. Empezamos el bucle */
<<for _i = 0; _i < _trips; _i++>>
/* --- INTENTO DE TIENDA (25% de probabilidad si no ha salido ya) --- */
<<if !_hasShop && _availableShops.length > 0 && random(1, 100) <= 25 && _trips > 2>>
<<set _eventList.push(_availableShops.random())>>
<<set _hasShop = true>>
<<else>>
<<set _eventList.push(_poolEvents.pluck())>>
<</if>>
<</for>>
<<set _eventList.shuffle()>>
/* --- Detectar si la siguiente escena a desbloquear es especial --- */
<<set _scenesObj = _girl.scenes>>
<<set _specialList = _girl.specialScenes ? _girl.specialScenes : []>>
<<set _nextSceneKey = "">>
<<set _nextSceneNum = 0>>
<<set _totalScenes = Object.keys(_scenesObj).length>>
<<for _si = 1; _si <= _totalScenes; _si++>>
<<set _sk = "scene" + _si>>
<<if _scenesObj[_sk] === false>>
<<set _nextSceneKey = _sk>>
<<set _nextSceneNum = _si>>
<<break>>
<</if>>
<</for>>
/* Si todas están desbloqueadas, elegimos una aleatoria */
<<if _nextSceneNum === 0>>
<<set _nextSceneNum = random(1, _totalScenes)>>
<<set _nextSceneKey = "scene" + _nextSceneNum>>
<</if>>
<<set _isSpecial = _specialList.includes(_nextSceneKey)>>
/* --- Asignar pizza --- */
<<if _isSpecial>>
<<set _pizza = "sausage">>
<<else>>
<<set _pizza = $pizzas[Math.floor(Math.random() * $pizzas.length)]>>
<</if>>
<<set _pizzaHeat = 10>>
<<set $deliveries.push({
id: _id,
tier: _tier,
tripsTotal: _trips,
tripsRemaining: _trips,
events: _eventList,
earnings: _earn,
currency: _currType,
pizza: _pizza,
pizzaHeat: _pizzaHeat,
shopUsed: _shopUsed,
girl: _girl,
isSpecial: _isSpecial,
targetSceneNum: _nextSceneNum,
targetSceneKey: _nextSceneKey,
})>>
<<set _id += 1>>
<</for>>
<</for>>
<</widget>>
<</if>>
<</nobr>><<nobr>>
<<if !Macro.get("rerollDelivery")>>
<<widget "rerollDelivery">>
<<set _deliveryx = $args[0]>>
<<set _usedNames = $deliveries.map(function(d){ return d.girl.displayName; })>>
<<set _allGirlsArr = Object.values($eventGirls)>>
/* Separar candidatos con escenas pendientes */
<<set _candidatesFalse = []>>
<<set _candidatesAll = []>>
<<for _i = 0; _i < _allGirlsArr.length; _i++>>
<<set _g = _allGirlsArr[_i]>>
<<if _g.tier == _deliveryx.tier && !_usedNames.includes(_g.displayName)>>
<<set _candidatesAll.push(_g)>>
<<if Object.values(_g.scenes).includes(false)>>
<<set _candidatesFalse.push(_g)>>
<</if>>
<</if>>
<</for>>
/* Si no hay candidatos del tier sin usar, tomar todos del tier */
<<if _candidatesAll.length === 0>>
<<set _candidatesAll = _allGirlsArr.filter(g => g.tier == _deliveryx.tier)>>
<<set _candidatesFalse = _candidatesAll.filter(g => Object.values(g.scenes).includes(false))>>
<</if>>
/* Preferir las que tienen escenas pendientes */
<<set _pool = _candidatesFalse.length > 0 ? _candidatesFalse : _candidatesAll>>
<<set _girl = _pool[Math.floor(Math.random() * _pool.length)]>>
<<set _cfg = $tiercfg[_girl.tier]>>
/* Trips */
<<set _trips = _cfg.trips[0] + Math.floor(Math.random() * (_cfg.trips[1] - _cfg.trips[0] + 1))>>
/* Currency */
<<set _isRegen = Math.random() < 0.3>>
<<if _isRegen>>
<<set _earn = _cfg.regencoins[0] + Math.floor(Math.random() * (_cfg.regencoins[1] - _cfg.regencoins[0] + 1))>>
<<set _currencyType = "regencoins">>
<<else>>
<<set _earn = _cfg.megabits[0] + Math.floor(Math.random() * (_cfg.megabits[1] - _cfg.megabits[0] + 1))>>
<<set _currencyType = "megabits">>
<</if>>
/* --- GENERACIÓN DE LA LISTA DE EVENTOS --- */
<<set _eventList = []>>
<<set _hasShop = false>>
<<set _poolEvents = clone($totalEvents)>>
<<set _availableShops = clone($totalShops)>>
<<if $girls.melissa.strangeChip === true>>
<<set _availableShops = _availableShops.filter(s => s !== "Shop1A")>>
<</if>>
<<for _i = 0; _i < _trips; _i++>>
<<if !_hasShop && _availableShops.length > 0 && random(1, 100) <= 25 && _trips > 2>>
<<set _eventList.push(_availableShops.random())>>
<<set _hasShop = true>>
<<else>>
<<set _eventList.push(_poolEvents.pluck())>>
<</if>>
<</for>>
<<set _eventList.shuffle()>>
/* --- Detectar si la siguiente escena a desbloquear es especial --- */
<<set _scenesObj = _girl.scenes>>
<<set _specialList = _girl.specialScenes ? _girl.specialScenes : []>>
<<set _nextSceneKey = "">>
<<set _nextSceneNum = 0>>
<<set _totalScenes = Object.keys(_scenesObj).length>>
<<for _si = 1; _si <= _totalScenes; _si++>>
<<set _sk = "scene" + _si>>
<<if _scenesObj[_sk] === false>>
<<set _nextSceneKey = _sk>>
<<set _nextSceneNum = _si>>
<<break>>
<</if>>
<</for>>
/* Si todas están desbloqueadas, elegimos una aleatoria */
<<if _nextSceneNum === 0>>
<<set _nextSceneNum = random(1, _totalScenes)>>
<<set _nextSceneKey = "scene" + _nextSceneNum>>
<</if>>
<<set _isSpecial = _specialList.includes(_nextSceneKey)>>
/* --- Asignar pizza --- */
<<if _isSpecial>>
<<set _pizza = "sausage">>
<<else>>
<<set _pizza = $pizzas[Math.floor(Math.random() * $pizzas.length)]>>
<</if>>
<<set _pizzaHeat = 10>>
<<set $deliveries[_deliveryx.id] = {
id: _deliveryx.id,
tier: _girl.tier,
tripsRemaining: _trips,
tripsTotal: _trips,
events: _eventList,
earnings: _earn,
currency: _currencyType,
shopUsed: _shopUsed,
pizza: _pizza,
pizzaHeat: _pizzaHeat,
girl: _girl,
isSpecial: _isSpecial,
targetSceneNum: _nextSceneNum,
targetSceneKey: _nextSceneKey,
}>>
<</widget>>
<</if>>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "inventory">>
<h2 style="color:var(--linkhover)">INVENTORY</h2>
<div class="creditsButtonsFlexBox">
<span class="cityCreditsButton">
<<button "ITEMS">>
<<set $gameEngine.inventorySelection = 0>>
<<run Engine.show()>>
<</button>>
</span>
<span class="townCreditsButton">
<<button "CONSUMABLES">>
<<set $gameEngine.inventorySelection = 1>>
<<run Engine.show()>>
<</button>>
</span>
<span class="finderCreditsButton">
<<button "STATS">>
<<set $gameEngine.inventorySelection = 2>>
<<run Engine.show()>>
<</button>>
</span>
</div>
<br>
<<if $gameEngine.inventorySelection === 0>>
<<include "ShowItems">>
<<elseif $gameEngine.inventorySelection === 1>>
<<include "ShowConsumables">>
<<elseif $gameEngine.inventorySelection === 2>>
<<include "ShowStats">>
<</if>>
<br><br>
<<link "Go Back">>
<<set $gameEngine.onScene = false,$gameEngine.onMenu = false>>
<<if def $return>>
<<goto $return>>
<<else>>
<<set $gameEngine.onScene = false,$gameEngine.onMenu = false>>
<<goto "Pizzeria">>
<</if>>
<</link>>
</div>
<</nobr>><<nobr>>
<<if $delivery.pizzaHeat <= 0 && $gameEngine.onDelivery === true>>
<<set $gameEngine.onDelivery = false>>
<<goto "ColdPizza">>
<<else>>
<<set $heat = $delivery.pizzaHeat>> /* Ahora el máximo es 10 */
<</if>>
<<set $start = 1>>
<<set _maxPoints = 10>> /* Definimos el máximo aquí para que sea fácil cambiarlo */
<<set _angle = 360 / _maxPoints>> /* 36 grados por porción */
<<set _heat = Math.max(0, Math.min(_maxPoints, $heat))>>
<<set _cold = _maxPoints - _heat>>
<<set _start = Math.max(1, Math.min(_maxPoints, $start))>>
/* Cálculo de porciones frías (ahora con módulo 10) */
<<set _coldSlices = []>>
<<for _k = 0; _k < _cold; _k++>>
<<set _coldSlices.push(((_start - 1 + _k) % _maxPoints) + 1)>>
<</for>>
/* Máscara cónica para nieve */
<<set _maskGrad = ''>>
<<for _i = 1; _i <= _maxPoints; _i++>>
<<set _isCold = _coldSlices.includes(_i)>>
<<set _color = _isCold ? 'rgba(255,255,255,1)' : 'rgba(0,0,0,0)' >>
<<set _a0 = (_i - 1) * _angle>>
<<set _a1 = _i * _angle>>
<<set _seg = _color + ' ' + _a0 + 'deg ' + _a1 + 'deg' >>
<<set _maskGrad += (_i > 1 ? ', ' : '') + _seg >>
<</for>>
/* Gradiente azul para el tinte del frío */
<<set _tintGrad = ''>>
<<for _i = 1; _i <= _maxPoints; _i++>>
<<set _isCold = _coldSlices.includes(_i)>>
<<set _color = _isCold ? 'rgba(40,140,255,0.35)' : 'rgba(0,0,0,0)' >>
<<set _a0 = (_i - 1) * _angle>>
<<set _a1 = _i * _angle>>
<<set _seg = _color + ' ' + _a0 + 'deg ' + _a1 + 'deg' >>
<<set _tintGrad += (_i > 1 ? ', ' : '') + _seg >>
<</for>>
<div @style="'position:relative;width:250px;height:250px;margin:12px auto;border-radius:20px;overflow:hidden;'">
<img @src="$delivery.pizza.img"
@style="'position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:20px;display:block;z-index:1;border:none;box-shadow:none;box-sizing:border-box;'">
<div
@style="'position:absolute;inset:0;border-radius:20px;z-index:2;pointer-events:none;'
+ 'background: conic-gradient(' + _tintGrad + ');'">
</div>
<div class='tpl-snow'
@style="'position:absolute;inset:0;pointer-events:none;z-index:4;border-radius:20px;'
+ '-webkit-mask-image: conic-gradient(' + _maskGrad + ');'
+ 'mask-image: conic-gradient(' + _maskGrad + ');'">
<div @style="'left:5%; animation-duration:7s; animation-delay:1s;'"></div>
<div @style="'left:15%; animation-duration:9s;'"></div>
<div @style="'left:25%; animation-duration:6s; animation-delay:1s;'"></div>
<div @style="'left:35%; animation-duration:10s;'"></div>
<div @style="'left:45%; animation-duration:8s;'" ></div>
<div @style="'left:55%; animation-duration:12s; animation-delay:.5s;'" ></div>
<div @style="'left:65%; animation-duration:9s;'"></div>
<div @style="'left:75%; animation-duration:6s; animation-delay:.5s;'" ></div>
<div @style="'left:85%; animation-duration:8s; animation-delay:1s;'" ></div>
<div @style="'left:95%; animation-duration:10s;'"></div>
</div>
</div>
<</nobr>><<nobr>>
<<cacheaudio "doorbell" "pizzamedia/audios/intro/doorbell.mp3">>
<<cacheaudio "bgm_chill" "pizzamedia/audios/bgmusic/music1.mp3">>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "outerspace">>
<p class="reflection">It had been so long since you’d traveled through space that you could barely remember what galaxies looked like as they whizzed by at such high speeds that they seemed like mere stars.</p>
<<video "pizzamedia/videos/intro/travel.mp4" >><br>
<<taxidriver>>Andromeda 69. What memories... I used to live there, too.<</taxidriver>><br>
<<say "You" $player.img>>Really? Not anymore?<</say>><br>
<<taxidriver>>No. I bought an old ranch on another planet, and now I’m living there.<br>By the way, where do you want me to take you?<</taxidriver>><br>
<<say "You" $player.img>>Do you know the $player.pizzeriaName pizzeria?<br>It's in the Beta Quadrant of Sector 156.<</say>><br>
<<taxidriver>>Who doesn’t know it? Jaja. Everyone knows their pizzas are one-of-a-kind. In no dimension, nor in any universe, have they been able to replicate that flavor they have.<</taxidriver>><br>
<<say "You" $player.img>>It seems like you really like those pizzas.<</say>><br>
<<taxidriver>>Everyone has always loved them. They really are one-of-a-kind, and I wish I knew what the secret ingredient was so I could make one at home every day.<</taxidriver>><br>
<<say "You" $player.img>>Do you go there often?<</say>><br>
<<taxidriver>>I used to go there often, but for the past few months, it seems to be closed. No one knows why or if it’s just temporary.<</taxidriver>><br>
<<say "You" $player.img>>Is it closed?<</say>><br>
<<taxidriver>>Yes, some say the owner has passed away, and others say he won the lottery and retired. Either way, the last time I went, it was closed.<</taxidriver>><br>
<<say "You" $player.img>>I see.<</say>><br>
<<linkreplace "The journey ends, and you arrive at the pizzeria">>
<<run $("#passages").append('<div id="blackout"></div>')>>
<<timed 4s>>
<<goto "IntroD">>
<</timed>>
<</linkreplace>>
<!--
[[IntroD]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "outerspace2">>
<p class="reflection">You finally reach your destination.</p>
<<taxidriver>>Well, we’ve arrived, though it looks like it’s still closed.<</taxidriver>><br>
[img['pizzamedia/images/intro/closed.jpg']]
<<say "You" $player.img>>Yeah… looks like it…<br>Thanks for bringing me here. How much is it?<</say>><br>
<<taxidriver>>The journey costs 10 MegaBits.<</taxidriver>><br>
[img['pizzamedia/images/intro/pay.jpg']]
<p class="reflection">The taxi driver pulls out a card reader so you can pay.</p>
<<say "You" $player.img>>There you go.<</say>><br>
<<taxidriver>>Thank you very much, sir. See you next time.<</taxidriver>><br>
<<linkreplace "Enter the pizzeria">>
<<run $("#passages").append('<div id="blackout"></div>')>>
<<timed 4s>>
<<goto "IntroE">>
<</timed>>
<</linkreplace>>
<!--
[[IntroE]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "mailman">>
<<say "You" $player.img>>Who is it?<</say>><br>
<<mailman>> *Robotic voice* Mailman.<</mailman>><br>
<img src="pizzamedia/images/boys/mailman/intro.jpg">
<p class="reflection">When you open the door, you find a robot mailman.</p>
<<say "You" $player.img>>It's a bit late to be delivering mail, don't you think?<</say>><br>
<<mailman>> *Robotic voice* I'm sorry, sir, it's an urgent delivery.<</mailman>><br>
<<say "You" $player.img>>Urgent?<</say>><br>
<img src="pizzamedia/images/boys/mailman/intro2.jpg">
<p class="reflection">He hands you a letter and leaves.</p>
<img src="pizzamedia/images/intro/note.jpg">
<p class="reflection">It seems strange to receive a letter from your uncle Steven. You haven’t spoken to him in years.</p>
<<linkreplace "Open the envelope and read the letter">>
<div class="letter">
<div class="header">$player.name,</div>
<p>I've never been very good at writing letters, and I know it's been a while since we've seen each other... but this time I had to do it, because I have some important news.</p>
<br>
<p>I won the Quark lottery. Yes, that one... billions of megabits. So much money that, to be honest, I think I could die without ever spending it all.<br> And with that, I’ve made a decision: I don’t feel like working at the pizzeria anymore. I feel like I’ve done my part and now it’s time for me to enjoy life a little, to treat myself, for once, to the party of all parties.</p>
<br>
<p>Even so, it would break my heart to leave a business that’s been in our family for so long. That’s why I’ve decided that you should be the one to inherit it. I want the pizzeria to be yours. Take care of it, enjoy it, and take it as far as you want.
</p>
<br>
<p>By the way, I used part of the prize money to buy a robot assistant. It cost me a fortune because it’s state-of-the-art, but I haven’t actually used it yet. You know I’ve never been much of a fan of that sort of thing. It’s supposed to be fully set up to help you out at the pizzeria, so I hope you find it useful.</p>
<div class="signature">Sincerely, your Uncle Steven. </div>
</div>
<br>
[[Take over the family business|IntroB1]]<br><br>
[[Screw the family business|IntroB2]]
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "basement">>
<<set $gameEngine.onScene = true>>
<span id="choice">
<<say "You" $player.img>>Hey $boys.minerbot.displayName, how are you?<</say>><br>
<<minerbot>>What do you want? I'm busy.<</minerbot>><br>
[img['pizzamedia/images/boys/minerbot/pose3.jpg']]<br><br>
</span><br>
<<link "Ask him about his past">>
<<replace "#choice">><<scrollTop>>
<<say "You" $player.img>>How did you meet my uncle Steven?<</say>><br>
<<minerbot>>Thousands of years ago, I used to be a human just like you. Your uncle Steven and I went on adventures through space every day.<</minerbot>><br>
[img['pizzamedia/images/boys/minerbot/pose3.jpg']]<br><br>
<<say "You" $player.img>>I didn't know you used to be a human.<</say>><br>
<<minerbot>>One day, they launched the first version of what you call the Quantum Network, although back then it had a different name.<br>However, accessing the Quantum Network comes at a price, and only robots can access it. Any human would go crazy with so much information in their brain.<</minerbot>><br>
<<say "You" $player.img>>What is it about the Quantum Network that’s so interesting?<</say>><br>
<<minerbot>>Everything you can imagine. It’s really like a kind of giant planet where many robots live together.<</minerbot>><br>
<<say "You" $player.img>>I don’t get it. Why didn’t you just use a robot to connect for you? <</say>><br>
<<minerbot>>The love of my life was captured during the Great War on my home planet and forced to become a robot, shortly before that world was completely destroyed.<</minerbot>><br>
<<say "You" $player.img>>Oh, I'm so sorry.<</say>><br>
<<minerbot>>Since then, her consciousness has continued to exist somewhere in the Quantum Network, and after thousands of years, I still haven’t found her. But I hold out hope that someday I’ll be able to see her again. Even if it’s only in the Quantum Network… That’s my only wish.<</minerbot>><br>
<</replace>>
<</link>>
<br><br>
<<set $upper = "Ask him if he’s met " + $girls.melissa.displayName + "yet">>
<<link $upper>>
<<replace "#choice">><<scrollTop>>
<<say "You" $player.img>>Have you met $girls.melissa.displayName yet?<</say>><br>
<<minerbot>>(Voice of a lover) She’s perfect... her circuits, those electromagnetic waves, and above all, her kernel. I’d love so much to get inside her...<</minerbot>><br>
[img['pizzamedia/images/boys/minerbot/pose3.jpg']]<br><br>
<<say "You" $player.img>>It seems like you really like her.<</say>><br>
<<minerbot>>From male robot to male human? Right? You’re a male. It’s just that these days, it’s hard to tell.<br>500 years ago, I met a beautiful bot. Everyone was looking at her, but I was the lucky one. She invited me to her apartment.<</minerbot>><br>
<<say "You" $player.img>>So what happened?<</say>><br>
<<minerbot>>Shit, $player.name, she was a Trojan... Do you know what a Trojan is?<br>Before I knew it, she’d already accessed my USB port. Since that day, the voltage in my port hasn’t been the same.<</minerbot>><br>
<<say "You" $player.img>>And what happened?<</say>><br>
<<minerbot>>I’m a complicated bot. Everyone has their own tastes, right? My grandfather used to say that in times of war, any hole is a trench.<br>But that doesn't matter. You need to help me win over Melissa's circuits.<br><</minerbot>><br>
<<say "You" $player.img>>JaJa, well, I’ll see what I can do.<</say>><br>
<</replace>>
<</link>><br><br>
[[Go Back|PersonalArea]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "computer">>
This is your PC(work in progress).<br><br>
[[Go Back|PersonalArea]]
</div>
<</nobr>>
<<nobr>>
<<if $gameEngine.musicOn>>
<<audio "bgm_chill" play>>
<</if>>
<<rerollDelivery $delivery>>
<<set $firstEvent = true>>
<<set $gameEngine.onDelivery = false>>
<<set $gameEngine.onScene = false>>
<<set $gameEngine.inCombat = false>>
<<include "Combat__ResetAfterCombat">>
<<set $playerCombat.hp = $combatEngine.player.maxHp>>
<<include "CooldownsReset">>
<<goto "Pizzeria">>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev0Abackground">>
<<set $combatEngine.enemyId = "drugaemon">>
<<if ndef $talk or $talk.enemyId neq $combatEngine.enemyId>>
<<set $talk = { enemyId: $combatEngine.enemyId, step: 0, done: false }>>
<</if>>
<<drugaemon>>Hey, bro. Do you happen to have a lighter for Drugaemon?<</drugaemon>><br>
[img['pizzamedia/images/enemies/drugaemon/pose1.jpg']]
<p class="reflection">In front of you is a robot cat.</p>
<div id="talkPanel">
<div id="talkLog"></div>
<div class="talkBox">
<div id="talkChoices">
<<if $talk.done>>
<p class="reflection">There's no more conversation.</p>
<<else>>
<<switch $talk.step>>
<<case 0>>
<div class="choiceRow">
<span class="btnChoice">
<<link "Sorry, I don't have a lighter">>
<<append "#talkLog">>
<<say "You" $player.img>>Sorry, man, I don't have a lighter.<</say>><br>
<<drugaemon>>I get it, bro. So, do you have any loose change, you know, for the bus?<br>I’m far from home.<</drugaemon>><br>
<</append>>
<<set $talk.step = 1>>
<<replace "#talkChoices">>
<div class="choiceRow">
<span class="btnChoice">
<<link "Tell him you don’t have any money">>
<<append "#talkLog">>
<<say "You" $player.img>>I don’t have any loose change.<</say>><br>
<<drugaemonangry>>You don't have anything? What's in that box? <br>If you don't give me what you have, I'll have to take it myself.<</drugaemonangry>><br>
[img['pizzamedia/images/enemies/drugaemon/pose2.jpg']]
<p class="reflection">He pulls a knife out of his pocket and threatens you with it.</p>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">><</replace>>
<<replace "#talkChoices">>
<<actionButtons "EV0B" "Resurrect" "LostPizza" "Give him the pizza" "Defend yourself" "Run">>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Give him 20 MegaBits(+1❄️)">>
<<append "#talkLog">>
<<say "You" $player.img>>Look, man, I don't have much, but here, take 20 megabits. That's all I've got.<</say>><br>
<<drugaemon>>You’re clearly a great guy. I’ll give you a gift from my own pocket.<</drugaemon>><br>
<<set $player.megaBits -= 20>>
<<include "CoolingPizza">>
<<set $allowMegabitsLoot = false>>
<<set $allowRegencoinsLoot = true>>
<<set $allowInfinityGemsLoot = true>>
<<set $allowConsumableLoot = true>>
<<set $allowItemsLoot = true>>
<<set $lootmsg = "You have obtained ">>
<<AdventureLoot>>
<<AdventureLootUI>>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">>
<span class="btnChoice">
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
</span>
<</replace>>
<<replace "#talkChoices">>
<</replace>>
<</link>>
</span>
<<if $player.consumables.blueRush.qty > 0>>
<span class="btnChoice">
<<link "Give him a bag of Blue Rush(+1❄️)">>
<<append "#talkLog">>
<<say "You" $player.img>>Look, man, I don’t have much. But here, take this.<</say>><br>
<<drugaemon>>Is this pure Blue Rush? You’re such a great bro. I’ll give you a super gift from my own pocket.<</drugaemon>><br>
<<include "CoolingPizza">>
<<set $allowMegabitsLoot = true>>
<<set $allowRegencoinsLoot = true>>
<<set $allowInfinityGemsLoot = true>>
<<set $allowConsumableLoot = true>>
<<set $allowItemsLoot = true>>
<<set $lootmsg = "You’ve obtained ">>
<<AdventureLoot>>
<<AdventureLootUI>>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">>
<span class="btnChoice">
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
</span>
<</replace>>
<<replace "#talkChoices">>
<</replace>>
<</link>>
</span>
<</if>>
</div>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Tell him you’re in a bit of a hurry">>
<<append "#talkLog">>
<<say "You" $player.img>>Sorry, I’m in a bit of a hurry.<</say>><br>
<<drugaemon>>Hurry? What’s so urgent?<</drugaemon>><br>
<</append>>
<<set $talk.step = 1>>
<<replace "#talkChoices">>
<div class="choiceRow">
<span class="btnChoice">
<<link "Tell him you're delivering a pizza">>
<<append "#talkLog">>
<<say "You" $player.img>>I'm trying to deliver a pizza before it gets cold.<</say>><br>
<<drugaemon>>As hungry as I am, a slice would be great.<br>Why don't you give me a slice?<</drugaemon>><br>
<<say "You" $player.img>>That's not going to happen.<</say>><br>
<<drugaemonangry>>Oh, really? I wouldn't be so sure.<</drugaemonangry>><br>
[img['pizzamedia/images/enemies/drugaemon/pose2.jpg']]
<p class="reflection">He pulls a knife out of his pocket and threatens you with it.</p>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">><</replace>>
<<replace "#talkChoices">>
<<actionButtons "EV0B" "Resurrect" "LostPizza" "Give him the pizza" "Defend yourself" "Run">>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Tell him it´s none of his business">>
<<append "#talkLog">>
<<say "You" $player.img>>What do you care? Just get out of the way. I already told you I'm in a hurry.<</say>><br>
<<drugaemonangry>>Chill, bro. Why don’t you give me what you’ve got there before this ends badly?<</drugaemonangry>><br>
[img['pizzamedia/images/enemies/drugaemon/pose2.jpg']]
<p class="reflection">He pulls a knife out of his pocket and threatens you with it.</p>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">><</replace>>
<<replace "#talkChoices">>
<<actionButtons "EV0B" "Resurrect" "LostPizza" "Give him the pizza" "Defend yourself" "Run">>
<</replace>>
<</link>>
</span>
</div>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Ignore him and walk past">>
<<append "#talkLog">>
<<drugaemon>>Hey, you think you can just ignore me?<br>What's in that box? It smells like pizza.<</drugaemon>><br>
<<say "You" $player.img>>It's nothing.<</say>><br>
<<drugaemon>>Nothing? Why won't you let me take a look?<</drugaemon>><br>
<<say "You" $player.img>>That's not going to happen.<</say>><br>
<<drugaemonangry>>Really? I wouldn't be so sure.<</drugaemonangry>><br>
[img['pizzamedia/images/enemies/drugaemon/pose2.jpg']]
<p class="reflection">He pulls a knife out of his pocket and threatens you with it.</p>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">><</replace>>
<<replace "#talkChoices">>
<<actionButtons "EV0B" "Resurrect" "LostPizza" "Give him the pizza" "Defend yourself" "Run">>
<</replace>>
<</link>>
</span>
</div>
<</switch>>
<</if>>
</div>
<div id="talkActions">
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "EV0B">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
</div>
</div>
</div>
<!--
[[EV0B]]
-->
</div>
<</nobr>><<nobr>>
/* =========================
INIT (def/ndef)
========================= */
<<if ndef $player>><<set $player = {}>><</if>>
<<if ndef $player.items>><<set $player.items = {}>><</if>>
<<if ndef $playerCombat>><<set $playerCombat = {}>><</if>>
<<if ndef $playerCombat.loadout>><<set $playerCombat.loadout = {}>><</if>>
/* Estado UI persistente (sin listbox) */
<<if ndef $equipSlot>><<set $equipSlot = "hand1">><</if>>
<<if ndef $equipRarity>><<set $equipRarity = "all">><</if>>
<<if ndef $equipSort>><<set $equipSort = "az">><</if>>
/* =========================
WIDGET (todo el render)
========================= */
<<if !Macro.get("EquipUI_Render_OnePassage")>>
<<widget "EquipUI_Render_OnePassage">>
<<set _slot = ($equipSlot ? $equipSlot : "head")>>
<<set _rar = ($equipRarity ? $equipRarity : "all")>>
<<set _sort = ($equipSort ? $equipSort : "az")>>
/* Slots arriba */
<<set _slots = [
{ key:"hand1", label:"HAND 1" },
{ key:"hand2", label:"HAND 2" },
{ key:"head", label:"HEAD" },
{ key:"chest", label:"CHEST" },
{ key:"shoes", label:"SHOES" }
]>>
/* Alias de slots */
<<set _slotAliases = {
hand1: ["hand1","hand","weapon","mainhand"],
hand2: ["hand2","hand","weapon","offhand"],
head: ["head","helm","helmet"],
chest: ["chest","armor","body"],
shoes: ["shoes","boots","feet"]
}>>
<<set _acceptedSlots = (_slotAliases[_slot] ? _slotAliases[_slot] : [_slot])>>
/* Rareza rank */
<<set _rarRank = { common:1, rare:2, legendary:3, mythic:4, set:5 }>>
<<set _rarOptions = [
{ key:"all", label:"All" },
{ key:"common", label:"Common" },
{ key:"rare", label:"Rare" },
{ key:"legendary", label:"Legendary" },
{ key:"mythic", label:"Mythic" },
{ key:"set", label:"Set" }
]>>
/* Orden */
<<set _sortOptions = [
{ key:"az", label:"A → Z" },
{ key:"za", label:"Z → A" },
{ key:"rarity_hi", label:"Rarity (Higher)" },
{ key:"rarity_lo", label:"Rarity (Lower)" }
]>>
/* ===== Textos coloreados (summary/badges) ===== */
<<set _rarTextMap = {
all: '<span class="eqRarityWord eqR-all">All</span>',
common: '<span class="eqRarityWord eqR-common">Common</span>',
rare: '<span class="eqRarityWord eqR-rare">Rare</span>',
legendary: '<span class="eqRarityWord eqR-legendary">Legendary</span>',
mythic: '<span class="eqRarityWord eqR-mythic">Mythic</span>',
set: '<span class="eqRarityWord eqR-set">Set</span>'
}>>
<<set _rarLabelHtml = (_rarTextMap[_rar] ? _rarTextMap[_rar] : _rarTextMap.all)>>
/* ===== Colores para INLINE border/box-shadow de IMÁGENES (no lo pisa nada) ===== */
<<set _rarImg = {
common: { b:"rgba(255,255,255,.22)", g:"rgba(255,255,255,.30)" },
rare: { b:"rgba(95,140,255,.55)", g:"rgba(95,140,255,.45)" },
legendary: { b:"rgba(255,215,80,.60)", g:"rgba(255,215,80,.45)" },
mythic: { b:"rgba(255,140,40,.65)", g:"rgba(255,140,40,.48)" },
set: { b:"rgba(90,220,120,.65)", g:"rgba(90,220,120,.45)" }
}>>
/* ===== Colores + glow del NOMBRE (INLINE, no lo pisa nada) ===== */
<<set _rarName = {
common: { c:"rgba(255,255,255,.95)", g1:"rgba(255,255,255,0)", g2:"rgba(255,255,255,0)", t:"0s" },
rare: { c:"rgba(95,140,255,.98)", g1:"rgba(95,140,255,.55)", g2:"rgba(95,140,255,.35)", t:"1.9s" },
legendary: { c:"rgba(255,215,80,.98)", g1:"rgba(255,215,80,.60)", g2:"rgba(255,215,80,.38)", t:"1.7s" },
mythic: { c:"rgba(255,140,40,.99)", g1:"rgba(255,140,40,.62)", g2:"rgba(255,140,40,.40)", t:"1.55s"},
set: { c:"rgba(90,220,120,.99)", g1:"rgba(90,220,120,.58)", g2:"rgba(90,220,120,.36)", t:"1.75s"}
}>>
/* ===== Colores + glow IMG/BADGE (mismo concepto que el nombre) ===== */
<<set _rarGlow = {
common: { g1:"rgba(255,255,255,0)", g2:"rgba(255,255,255,0)", t:"0s" },
rare: { g1:"rgba(95,140,255,.55)", g2:"rgba(95,140,255,.35)", t:"1.9s" },
legendary: { g1:"rgba(255,215,80,.60)", g2:"rgba(255,215,80,.38)", t:"1.7s" },
mythic: { g1:"rgba(255,140,40,.62)", g2:"rgba(255,140,40,.40)", t:"1.55s"},
set: { g1:"rgba(90,220,120,.58)", g2:"rgba(90,220,120,.36)", t:"1.75s"}
}>>
/* Sort label */
<<set _sortLabel = "A → Z">>
<<for _i = 0; _i < _sortOptions.length; _i++>>
<<if _sortOptions[_i].key === _sort>><<set _sortLabel = _sortOptions[_i].label>><</if>>
<</for>>
/* Equipado */
<<set _eqKey = ($playerCombat.loadout[_slot] ? $playerCombat.loadout[_slot] : null)>>
<<set _eqIt = (_eqKey && $player.items[_eqKey]) ? $player.items[_eqKey] : null>>
/* Lista filtrada */
<<set _keys = Object.keys($player.items || {})>>
<<set _items = []>>
<<for _k = 0; _k < _keys.length; _k++>>
<<set _key = _keys[_k]>>
<<set _it = $player.items[_key]>>
<<if _it and _it.obtained === true
and _key !== "fists"
and ((""+(_it.name||"")).toLowerCase() !== "fists") >>
<<if _acceptedSlots.indexOf(_it.slot) !== -1>>
<<set _itR = (_it.rarity ? (""+_it.rarity).toLowerCase() : "common")>>
<<if _rar === "all" || _itR === _rar>>
<<run _items.push({
key:_key,
it:_it,
nm:(((_it.name||"")+"").toLowerCase()),
rr:(_rarRank[_itR] ? _rarRank[_itR] : 0),
rtxt:_itR
})>>
<</if>>
<</if>>
<</if>>
<</for>>
/* Ordenar */
<<if _sort === "az">>
<<run _items.sort(function(a,b){ return a.nm.localeCompare(b.nm); })>>
<<elseif _sort === "za">>
<<run _items.sort(function(a,b){ return b.nm.localeCompare(a.nm); })>>
<<elseif _sort === "rarity_hi">>
<<run _items.sort(function(a,b){ return (b.rr - a.rr) || a.nm.localeCompare(b.nm); })>>
<<elseif _sort === "rarity_lo">>
<<run _items.sort(function(a,b){ return (a.rr - b.rr) || a.nm.localeCompare(b.nm); })>>
<</if>>
<div class="eqWrap">
<!-- TOP: SLOTS -->
<div class="eqTopRow">
<<for _i = 0; _i < _slots.length; _i++>>
<<set _s = _slots[_i]>>
<<capture _s>>
<span class="eqSlotBtn <<if _s.key === _slot>>isActive<</if>>">
<<link _s.label>>
<<set $equipSlot = _s.key>>
<<replace "#eqShell">><<EquipUI_Render_OnePassage>><</replace>>
<</link>>
</span>
<</capture>>
<</for>>
</div>
<div class="eqMain">
<!-- LEFT -->
<div class="eqLeft">
<div class="eqFilters">
<!-- RARITY DROPDOWN -->
<details class="eqDrop">
<summary>RARITY: <<print _rarLabelHtml>> ▾</summary>
<div class="eqMenu">
<<for _i = 0; _i < _rarOptions.length; _i++>>
<<set _opt = _rarOptions[_i]>>
<<capture _opt>>
<span @class="'eqMenuOpt opt-' + _opt.key">
<<link _opt.label>>
<<set $equipRarity = _opt.key>>
<<replace "#eqShell">><<EquipUI_Render_OnePassage>><</replace>>
<</link>>
</span>
<</capture>>
<</for>>
</div>
</details>
<!-- SORT DROPDOWN -->
<details class="eqDrop">
<summary>SORT: <<=_sortLabel>> ▾</summary>
<div class="eqMenu">
<<for _i = 0; _i < _sortOptions.length; _i++>>
<<set _opt = _sortOptions[_i]>>
<<capture _opt>>
<span class="eqMenuOpt">
<<link _opt.label>>
<<set $equipSort = _opt.key>>
<<replace "#eqShell">><<EquipUI_Render_OnePassage>><</replace>>
<</link>>
</span>
<</capture>>
<</for>>
</div>
</details>
</div>
<div class="eqList">
<<if _items.length === 0>>
<div class="eqEmpty">No items for this slot with the current filter.</div>
<<else>>
<<for _j = 0; _j < _items.length; _j++>>
<<set _row = _items[_j]>>
<<set _it = _row.it>>
<<set _key = _row.key>>
<<set _img = (_it.img ? _it.img : "pizzamedia/images/items/placeholder.jpg")>>
<<set _isEq = (_eqKey && _key === _eqKey)>>
/* ===== INLINE IMG STYLE ===== */
<<set _cImg = (_rarImg[_row.rtxt] ? _rarImg[_row.rtxt] : _rarImg.common)>>
/* ===== INLINE IMG STYLE + RARITY GLOW ===== */
<<set _cG = (_rarGlow[_row.rtxt] ? _rarGlow[_row.rtxt] : _rarGlow.common)>>
<<set _gAnim = (_row.rtxt === "common" ? "none" : ("eqGlowPulse " + _cG.t + " ease-in-out infinite"))>>
<<set _imgStyle =
"border:2px solid " + _cImg.b + " !important; " +
"--rarGlow:" + _cG.g1 + "; " +
"--rarGlow2:" + _cG.g2 + "; " +
"animation:" + _gAnim + " !important; " +
"outline:none !important;"
>>
/* ===== INLINE NAME STYLE + GLOW ANIM ===== */
<<set _cNm = (_rarName[_row.rtxt] ? _rarName[_row.rtxt] : _rarName.common)>>
<<set _nameAnim = (_row.rtxt === "common" ? "none" : ("eqNameGlowPulse " + _cNm.t + " ease-in-out infinite"))>>
<<set _nameStyle =
"color:" + _cNm.c + " !important; " +
"--nameGlow:" + _cNm.g1 + "; " +
"--nameGlow2:" + _cNm.g2 + "; " +
"animation:" + _nameAnim + " !important;"
>>
/* ===== INLINE BADGE STYLE + RARITY GLOW ===== */
<<set _badgeStyle =
"border:1px solid " + _cImg.b + " !important; " +
"--rarGlow:" + _cG.g1 + "; " +
"--rarGlow2:" + _cG.g2 + "; " +
"animation:" + _gAnim + " !important;"
>>
<<capture _key _slot>>
<div class="eqCard r-<<=_row.rtxt>> <<if _isEq>>eqEquippedMark<</if>>">
<img class="eqImg" @src="_img" @style="_imgStyle">
<div class="eqMid">
<div class="eqName" @style="_nameStyle"><<=_it.name>></div>
<<if _it.description>>
<div class="eqMeta"><<=_it.description>></div>
<</if>>
<div class="eqBadge" @style="_badgeStyle">
<<print (_rarTextMap[_row.rtxt] ? _rarTextMap[_row.rtxt] : _rarTextMap.common)>>
</div>
</div>
<div class="eqAction">
<<if !_isEq>>
<<button "EQUIP">>
/* evita duplicado hand1/hand2 */
<<if _slot === "hand1" && $playerCombat.loadout.hand2 === _key>><<set $playerCombat.loadout.hand2 = null>><</if>>
<<if _slot === "hand2" && $playerCombat.loadout.hand1 === _key>><<set $playerCombat.loadout.hand1 = null>><</if>>
<<set $playerCombat.loadout[_slot] = _key>>
<<replace "#eqShell">><<EquipUI_Render_OnePassage>><</replace>>
<</button>>
<<else>>
<<button "UNEQUIP">>
<<set $playerCombat.loadout[_slot] = null>>
<<replace "#eqShell">><<EquipUI_Render_OnePassage>><</replace>>
<</button>>
<</if>>
</div>
</div>
<</capture>>
<</for>>
<</if>>
</div>
</div>
<!-- RIGHT -->
<div class="eqRight">
<div class="eqRightTitle">Equipped — <<=_slot.toUpperCase()>></div>
<<if _eqIt>>
<<set _eqImg = (_eqIt.img ? _eqIt.img : "pizzamedia/images/items/placeholder.jpg")>>
<<set _eqR = (_eqIt && _eqIt.rarity) ? (""+_eqIt.rarity).toLowerCase() : "common">>
/* ===== INLINE IMG STYLE (equipado) ===== */
<<set _cEq = (_rarImg[_eqR] ? _rarImg[_eqR] : _rarImg.common)>>
/* ===== INLINE IMG STYLE (equipado) + RARITY GLOW ===== */
<<set _cGEq = (_rarGlow[_eqR] ? _rarGlow[_eqR] : _rarGlow.common)>>
<<set _gAnimEq = (_eqR === "common" ? "none" : ("eqGlowPulse " + _cGEq.t + " ease-in-out infinite"))>>
<<set _eqImgStyle =
"border:2px solid " + _cEq.b + " !important; " +
"--rarGlow:" + _cGEq.g1 + "; " +
"--rarGlow2:" + _cGEq.g2 + "; " +
"animation:" + _gAnimEq + " !important; " +
"outline:none !important;"
>>
/* ===== INLINE NAME STYLE (equipado) ===== */
<<set _cNmEq = (_rarName[_eqR] ? _rarName[_eqR] : _rarName.common)>>
<<set _eqNameAnim = (_eqR === "common" ? "none" : ("eqNameGlowPulse " + _cNmEq.t + " ease-in-out infinite"))>>
<<set _eqNameStyle =
"color:" + _cNmEq.c + " !important; " +
"--nameGlow:" + _cNmEq.g1 + "; " +
"--nameGlow2:" + _cNmEq.g2 + "; " +
"animation:" + _eqNameAnim + " !important;"
>>
/* ===== INLINE BADGE STYLE (equipado) + RARITY GLOW ===== */
<<set _eqBadgeStyle =
"border:1px solid " + _cEq.b + " !important; " +
"--rarGlow:" + _cGEq.g1 + "; " +
"--rarGlow2:" + _cGEq.g2 + "; " +
"animation:" + _gAnimEq + " !important;"
>>
<div class="eqEquippedCard r-<<=_eqR>>">
<img @src="_eqImg" @style="_eqImgStyle">
<div class="eqName" @style="_eqNameStyle"><<=_eqIt.name>></div>
<<if _eqIt.description>>
<div class="eqMeta"><<=_eqIt.description>></div>
<</if>>
<div class="eqBadge" @style="_eqBadgeStyle">
<<print (_rarTextMap[_eqR] ? _rarTextMap[_eqR] : _rarTextMap.common)>>
</div>
<div class="eqAction" style="justify-content:center;">
<<button "UNEQUIP">>
<<set $playerCombat.loadout[_slot] = null>>
<<replace "#eqShell">><<EquipUI_Render_OnePassage>><</replace>>
<</button>>
</div>
</div>
<<else>>
<div class="eqEmpty">Nothing equipped in this slot.</div>
<</if>>
</div>
</div>
</div>
<</widget>>
<</if>>
<!-- RENDER INICIAL -->
<div id="eqShell">
<<EquipUI_Render_OnePassage>>
</div>
<</nobr>>
<<nobr>>
<<if ndef $player>><<set $player = {}>><</if>>
<<if ndef $player.consumables>><<set $player.consumables = {}>><</if>>
<<if ndef $invConsFilter>><<set $invConsFilter = "all">><</if>>
<div class="consumablesPanel">
<!-- Filtros (SIN goto) -->
<div style="text-align:center;margin-bottom:14px; display:flex; gap:10px; justify-content:center; flex-wrap:wrap;">
<<link "All">>
<<set $invConsFilter = "all">>
<<run setup.Inv_renderConsumables({ filter: $invConsFilter })>>
<</link>>
<<link "Usability">>
<<set $invConsFilter = "usability">>
<<run setup.Inv_renderConsumables({ filter: $invConsFilter })>>
<</link>>
<<link "Heal">>
<<set $invConsFilter = "heal">>
<<run setup.Inv_renderConsumables({ filter: $invConsFilter })>>
<</link>>
<<link "Cleanse">>
<<set $invConsFilter = "cleanse">>
<<run setup.Inv_renderConsumables({ filter: $invConsFilter })>>
<</link>>
<<link "Buff">>
<<set $invConsFilter = "buff">>
<<run setup.Inv_renderConsumables({ filter: $invConsFilter })>>
<</link>>
<<link "Offensive">>
<<set $invConsFilter = "damage">>
<<run setup.Inv_renderConsumables({ filter: $invConsFilter })>>
<</link>>
</div>
<!-- Grid -->
<div class="consumablesGrid" id="invConsumablesGrid"></div>
</div>
<<script>>
$(document).one(":passagedisplay", function () {
if (setup && setup.Inv_renderConsumables) {
setup.Inv_renderConsumables({
filter: (State.variables.invConsFilter || "all")
});
}
});
<</script>>
<</nobr>>
<<nobr>>
<br>
<div class="creditsFlexBox">
<<set _keys = Object.keys($girls)>>
<<for _i = 0; _i < _keys.length; _i++>>
<<set _k = _keys[_i]>>
<<set _g = $girls[_k]>>
<<set _gpicture = _g.img + "face.jpg">>
<<set _varName = String(_g.name || _k).toLowerCase()>>
<<set _gColor = "var(--" + _varName + ")">>
<div class="creditsFlexBox-fc">
<div class="imagename-container">
<img
class="creditsPicture"
@src="_gpicture"
@style="'border: 2px solid ' + _gColor"
>
<span style="display:flex; flex-direction:column; gap:8px; justify-content:center;">
<span @style="'color:' + _gColor">
<<print _g.name>> -> <<print (_g.actressName || "")>>
</span>
<<if _g.actressSocialMedia>>
<span>
<a @href="_g.actressSocialMedia"
target="_blank"
class="actressLink"
@data-color="_gColor"
>
Official Actress Social Media
</a>
</span>
<</if>>
<span @style="'color:' + _gColor + '; font-size:0.85em; opacity:0.8;'">
Change character name?
</span>
<input
type="text"
class="girlNameInput"
@data-key="_k"
@value="(_g.displayName || _g.name || '')"
style="background:rgba(0,0,0,0.5);border:1px solid rgba(255,255,255,0.3);border-radius:8px;color:white;padding:8px 12px;font-size:16px;width:200px;text-align:center;"
>
</span>
</div>
</div><br>
<</for>>
</div>
<br>
<<button "Default All Names">>
<<run (function(){
var girls = State.variables.girls;
Object.keys(girls).forEach(function(k){
if (girls[k] && girls[k].name){
girls[k].displayName = girls[k].name;
}
});
Engine.show();
})()>>
<</button>>
<<script>>
$(document).one(':passagedisplay', function(){
/* Color dinámico a los links de actriz */
document.querySelectorAll('.actressLink').forEach(function(a){
var color = a.getAttribute('data-color');
if(color) a.style.color = color;
a.style.fontSize = '0.85em';
});
/* inputs del bucle */
document.querySelectorAll('.girlNameInput').forEach(function(input){
input.addEventListener('change', function(){
var key = this.getAttribute('data-key');
if(key && State.variables.girls[key]){
State.variables.girls[key].displayName = this.value.trim();
}
});
});
});
<</script>>
<</nobr>><<nobr>>
<!--:: PlayerStatsSheet-->
<<include "Combat__InitHelpers">>
<<include "CalcPlayerCombatStats">>
<<set _ccps = $combatEngine._ccps>>
<<set _p = ($combatEngine.player ? $combatEngine.player : $playerCombat)>>
<<set _dmgColors = { physical:"#ffffff", fire:"#ff9900", cold:"#8fdcff", corrosive:"#31d04a", electric:"#4ea5ff" }>>
<<set _types = (_ccps && Array.isArray(_ccps.TYPES) ? _ccps.TYPES.slice() : ["physical","fire","cold","corrosive","electric"])>>
<<set _abbr = { physical:"PHY", fire:"FIRE", cold:"COLD", corrosive:"CORR", electric:"ELEC" }>>
<<set _addMods = function(dst, src){
if (!src) return;
Object.keys(src).forEach(function(k){
var v = Number(src[k]);
if (isNaN(v) || v === 0) return;
if (dst[k] == null) dst[k] = 0;
dst[k] += v;
});
}>>
<<set _fmtSigned = function(v){
var n = Number(v);
if (isNaN(n) || n === 0) return null;
return (n >= 0 ? ("+" + n) : String(n));
}>>
<<set _mapIsZero = function(map){
if (!map) return true;
for (var i=0; i<_types.length; i++){
var t = _types[i];
if (Number(map[t]) !== 0) return false;
}
return true;
}>>
<<set _printTyped = function(map, suffix){
var out = "";
var sep = "<span style='opacity:.5'> | </span>";
var parts = [];
for (var i=0; i<_types.length; i++){
var t = _types[i];
var v = _ccps.num(map[t], 0);
var label = _abbr[t] + " " + v + (suffix||"");
parts.push("<span style='color:" + _dmgColors[t] + ";'>" + label + "</span>");
}
return parts.join(sep);
}>>
<<set _printTypedNonZero = function(map, suffix){
var out = "";
var sep = "<span style='opacity:.5'> | </span>";
var parts = [];
for (var i=0; i<_types.length; i++){
var t = _types[i];
var v = _ccps.num(map[t], 0);
if (v === 0) continue;
var sign = (v >= 0 ? "+" : "");
var label = _abbr[t] + " " + sign + v + (suffix||"");
parts.push("<span style='color:" + _dmgColors[t] + ";'>" + label + "</span>");
}
return parts.join(sep);
}>>
<<set _eqKeys = (_p && Array.isArray(_p._equippedKeys) ? _p._equippedKeys : [])>>
<<set _gearRes = _ccps.copyMap(null, 0)>>
<<set _gearDmgAdd = _ccps.copyMap(null, 0)>>
<<set _gearMods = {}>>
<<if def $player.items and _eqKeys.length > 0>>
<<for _i = 0; _i < _eqKeys.length; _i++>>
<<set _k = _eqKeys[_i]>>
<<set _it = ($player.items[_k] ? $player.items[_k] : null)>>
<<if _it>>
<<set _mods = null>>
<<if def _it.statsAdd>>
<<set _mods = _it.statsAdd>>
<<elseif def _it.modsAdd>>
<<set _mods = _it.modsAdd>>
<<elseif def _it.mods>>
<<set _mods = _it.mods>>
<</if>>
<<run _addMods(_gearMods, _mods)>>
<<if def _it.resistAdd>><<run _ccps.addMap(_gearRes, _it.resistAdd)>><</if>>
<<if def _it.dmgAdd>><<run _ccps.addMap(_gearDmgAdd, _it.dmgAdd)>><</if>>
<</if>>
<</for>>
<</if>>
<<set _setNames = []>>
<<set _setRes = _ccps.copyMap(null, 0)>>
<<set _setDmgAdd = _ccps.copyMap(null, 0)>>
<<set _setMods = {}>>
<<if def $sets and _eqKeys.length > 0>>
<<for _sid range Object.keys($sets)>>
<<set _s = $sets[_sid]>>
<<set _complete = true>>
<<if !_s || !_s.pieces || !Array.isArray(_s.pieces)>>
<<set _complete = false>>
<</if>>
<<if _complete>>
<<for _pi = 0; _pi < _s.pieces.length; _pi++>>
<<if _eqKeys.indexOf(_s.pieces[_pi]) < 0>>
<<set _complete = false>>
<</if>>
<</for>>
<</if>>
<<if _complete>>
<<set _setNames.push(_s.name ? _s.name : _sid)>>
<<if _s.bonus and def _s.bonus.resistAdd>><<run _ccps.addMap(_setRes, _s.bonus.resistAdd)>><</if>>
<<if _s.bonus and def _s.bonus.dmgAdd>><<run _ccps.addMap(_setDmgAdd, _s.bonus.dmgAdd)>><</if>>
<<set _sMods = null>>
<<if _s.bonus>>
<<if def _s.bonus.statsAdd>>
<<set _sMods = _s.bonus.statsAdd>>
<<elseif def _s.bonus.modsAdd>>
<<set _sMods = _s.bonus.modsAdd>>
<<elseif def _s.bonus.mods>>
<<set _sMods = _s.bonus.mods>>
<</if>>
<</if>>
<<run _addMods(_setMods, _sMods)>>
<</if>>
<</for>>
<</if>>
<<set _itemsRes = _ccps.copyMap(null, 0)>>
<<set _itemsDmgAdd = _ccps.copyMap(null, 0)>>
<<set _itemsMods = {}>>
<<run _ccps.addMap(_itemsRes, _gearRes)>>
<<run _ccps.addMap(_itemsRes, _setRes)>>
<<run _ccps.addMap(_itemsDmgAdd, _gearDmgAdd)>>
<<run _ccps.addMap(_itemsDmgAdd, _setDmgAdd)>>
<<run _addMods(_itemsMods, _gearMods)>>
<<run _addMods(_itemsMods, _setMods)>>
<<set _prio = ["maxHp","attack","accuracy","evasion","critChance","critMult","escapeChance","itemDropChance","lifeStealPct"]>>
<<set _allModKeys = Object.keys(_itemsMods).filter(function(k){ return Number(_itemsMods[k]) !== 0; })>>
<<set _extra = _allModKeys.filter(function(k){ return _prio.indexOf(k) < 0; }).sort(function(a,b){ return String(a).localeCompare(String(b)); })>>
<<set _modKeys = _prio.filter(function(k){ return _itemsMods[k] != null && Number(_itemsMods[k]) !== 0; }).concat(_extra)>>
<div class="sheetWrap">
<!-- STATS TOTALES -->
<div class="sheetSection">
<div class="sheetH">STATS</div>
<div class="sheetGrid">
<div class="sheetRow"><div class="k">Max HP</div><div class="v"><<print _p.maxHp>></div></div>
<div class="sheetRow"><div class="k">Attack</div><div class="v"><<print _p.attack>></div></div>
<div class="sheetRow"><div class="k">Accuracy</div><div class="v"><<print _p.accuracy>>%</div></div>
<div class="sheetRow"><div class="k">Evasion</div><div class="v"><<print _p.evasion>>%</div></div>
<div class="sheetRow"><div class="k">Crit Chance</div><div class="v"><<print _p.critChance>>%</div></div>
<div class="sheetRow"><div class="k">Crit Mult</div><div class="v"><<print _p.critMult>></div></div>
<div class="sheetRow"><div class="k">Escape Chance</div><div class="v"><<print _p.escapeChance>>%</div></div>
<div class="sheetRow"><div class="k">Item Drop Chance</div><div class="v"><<print _p.itemDropChance>>%</div></div>
<div class="sheetRow"><div class="k">Life Steal</div><div class="v"><<print _p.lifeStealPct>>%</div></div>
</div>
<div class="sheetSubH">Damage</div>
<div class="sheetMono">
<div><b>Base</b>: <<print _printTyped(_p.damage, "")>></div>
<<if _p._hand1 && _p._hand1.dmg>>
<<set _h1Key = ($playerCombat && $playerCombat.loadout ? $playerCombat.loadout.hand1 : null)>>
<<set _h1Item = (_h1Key && $player.items && $player.items[_h1Key] ? $player.items[_h1Key] : null)>>
<<set _h1Name = (_h1Item && _h1Item.name ? _h1Item.name : "—")>>
<div><b>Hand 1 (<<print _h1Name>>)</b>: <<print _printTyped(_p._hand1.dmg, "")>></div>
<<else>>
<div><b>Hand 1</b>: is not a weapon.</div>
<</if>>
<<if _p._hand2 && _p._hand2.dmg>>
<<set _h2Key = ($playerCombat && $playerCombat.loadout ? $playerCombat.loadout.hand2 : null)>>
<<set _h2Item = (_h2Key && $player.items && $player.items[_h2Key] ? $player.items[_h2Key] : null)>>
<<set _h2Name = (_h2Item && _h2Item.name ? _h2Item.name : "—")>>
<div><b>Hand 2 (<<print _h2Name>>)</b>: <<print _printTyped(_p._hand2.dmg, "")>></div>
<<else>>
<div><b>Hand 2</b>: is not a weapon.</div>
<</if>>
</div>
<div class="sheetSubH">Resistances</div>
<div class="sheetMono">
<<print _printTyped(_p.resistances, "%")>>
</div>
</div>
<!-- ITEMS BONUS -->
<div class="sheetSection">
<div class="sheetH">ITEMS BONUS (TOTAL)</div>
<<if _setNames.length > 0>>
<div class="sheetNote">Sets complete: <<print _setNames.join(", ")>></div>
<</if>>
<div class="sheetSubH">Attributes</div>
<<if _modKeys.length is 0>>
<div class="sheetEmpty">No item mods.</div>
<<else>>
<div class="sheetGrid">
<<for _i=0; _i < _modKeys.length; _i++>>
<<set _k = _modKeys[_i]>>
<<set _s = _fmtSigned(_itemsMods[_k])>>
<<if _s>>
<div class="sheetRow">
<div class="k"><<print _k>></div>
<div class="v"><<print _s>></div>
</div>
<</if>>
<</for>>
</div>
<</if>>
<div class="sheetSubH">Damage Add</div>
<<if _mapIsZero(_itemsDmgAdd)>>
<div class="sheetEmpty">No damage bonuses from items.</div>
<<else>>
<div class="sheetMono"><<print _printTypedNonZero(_itemsDmgAdd, "")>></div>
<</if>>
<div class="sheetSubH">Resist Add</div>
<<if _mapIsZero(_itemsRes)>>
<div class="sheetEmpty">No resist bonuses from items.</div>
<<else>>
<div class="sheetMono"><<print _printTypedNonZero(_itemsRes, "%")>></div>
<</if>>
</div>
<!-- MUTATIONS -->
<div class="sheetSection">
<div class="sheetH">MUTATIONS</div>
<<set _mKeys = []>>
<<if def $player.mutations>>
<<set _mKeys = Object.keys($player.mutations).filter(function(k){
return $player.mutations[k] && $player.mutations[k].obtained;
})>>
<</if>>
<<if _mKeys.length is 0>>
<div class="sheetEmpty">No mutations.</div>
<<else>>
<div class="mutGrid">
<<for _i=0; _i < _mKeys.length; _i++>>
<<set _mk = _mKeys[_i]>>
<<set _m = $player.mutations[_mk]>>
<<set _mName = (_m.name ? _m.name : _mk)>>
<<set _mMods = null>>
<<if def _m.statsAdd>>
<<set _mMods = _m.statsAdd>>
<<elseif def _m.modsAdd>>
<<set _mMods = _m.modsAdd>>
<<elseif def _m.mods>>
<<set _mMods = _m.mods>>
<</if>>
<<set _mRes = _ccps.copyMap(null, 0)>>
<<set _mDmg = _ccps.copyMap(null, 0)>>
<<if def _m.resistAdd>><<run _ccps.addMap(_mRes, _m.resistAdd)>><</if>>
<<if def _m.dmgAdd>><<run _ccps.addMap(_mDmg, _m.dmgAdd)>><</if>>
<<set _mModKeys = (_mMods ? Object.keys(_mMods).filter(function(k){ return Number(_mMods[k]) !== 0; }).sort(function(a,b){ return String(a).localeCompare(String(b)); }) : [])>>
<div class="mutCard">
<div class="mutTitle"><<print _mName>></div>
<<if _mModKeys.length > 0>>
<div class="mutBlock">
<div class="mutSub">Attributes</div>
<<for _j=0; _j < _mModKeys.length; _j++>>
<<set _k = _mModKeys[_j]>>
<<set _s = _fmtSigned(_mMods[_k])>>
<<if _s>>
<div class="mutRow">
<span class="k"><<print _k>></span>
<span class="v"><<print _s>></span>
</div>
<</if>>
<</for>>
</div>
<</if>>
<<if !_mapIsZero(_mDmg)>>
<div class="mutBlock">
<div class="mutSub">Damage Add</div>
<div class="mutMono"><<print _printTypedNonZero(_mDmg, "")>></div>
</div>
<</if>>
<<if !_mapIsZero(_mRes)>>
<div class="mutBlock">
<div class="mutSub">Resist Add</div>
<div class="mutMono"><<print _printTypedNonZero(_mRes, "%")>></div>
</div>
<</if>>
<<if _mModKeys.length is 0 and _mapIsZero(_mDmg) and _mapIsZero(_mRes)>>
<div class="sheetEmpty">No bonuses.</div>
<</if>>
</div>
<</for>>
</div>
<</if>>
</div>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "outerspace3">>
<<set $gameEngine.onScene = true>>
<p class="reflection">As you leave the pizzeria, you approach one of the asteroid's edges.</p>
[img['pizzamedia/images/places/pizzeria/outerspace.jpg']]
<p class="reflection">From here, you can gaze out at the vast emptiness of space, the thousands of stars, and even the occasional passing spaceship.</p>
[img['pizzamedia/images/places/jerryshop/farjerryshop.jpg']]
<p class="reflection">You move to another area, and in the distance you can see what look like asteroids with lights on them.</p>
<<linkreplace "Look for your father's old spaceship and head toward that asteroid">>
<p class="reflection">Behind the pizzeria, you find the spaceship your father used to make deliveries.</p>
[img['pizzamedia/images/places/pizzeria/oldstarship.jpg']]<br><br>
<p class="reflection">A spaceship so old that it is the very first model of spaceship ever created by humans.</p>
[[Go to the asteroid|JerryShopIntroB]]
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "outerspace3">>
<p class="reflection">You arrive at the asteroid.</p>
[img['pizzamedia/images/places/jerryshop/jerryshop.jpg']]
<p class="reflection">You find what looks like a thrift store.</p>
[[Enter the store|JerryShopIntroC]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "jerryshopoutside">>
<p class="reflection">You arrive at the asteroid.</p>
[img['pizzamedia/images/places/jerryshop/jerryshop2.jpg']]
<p class="reflection">You find what looks like a thrift store.
</p>
[[Enter the store
|JerryShopIntroD]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "jerryshopinside2">>
<p class="reflection">Upon entering, you find a large number of items on the shelves.</p>
[img['pizzamedia/images/places/jerryshop/jerryshop3.jpg']]
<p class="reflection">You don't even know what most of them are for or what they really are.</p>
[img['pizzamedia/images/places/jerryshop/jerryshop4.jpg']]
<p class="reflection">You find some mounted heads and some truly strange objects.</p>
<<unknown>>The counter is right this way, friend.<</unknown>>
<p class="reflection">You hear a voice calling you from the back of the store.</p>
<br><br>
[[Head toward the voice|JerryShopIntroE]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "jerryshopinside">>
<<set $gameEngine.onScene = true>>
<span id="choice">
<<say "You" $player.img>>Hey $boys.jerry.name, how are you?<</say>><br>
<<jerry>>Good, buddy.<</jerry>><br>
[img['pizzamedia/images/boys/jerry/presentation.jpg']]<br><br>
</span><br>
<<link "Ask him about his past">>
<<replace "#choice">><<scrollTop>>
<<say "You" $player.img>>Can you tell me something about your past?<</say>><br>
<<jerry>>Oh man, I used to rule my own universe. I was the king there. I had everything you could imagine.<br>See these rings? They’re Infinity Stones.<</jerry>><br>
[img['pizzamedia/images/boys/jerry/rings.jpg']]<br><br>
<<say "You" $player.img>>Infinity Stones? That sounds like something really powerful.<</say>><br>
<<jerry>>You’re a bit young to know about them. These stones are just paperweights these days. Ever since some old guy and his grandson messed up a bunch of universes, they’re useless.<br>I carry them because they remind me of my youth.<</jerry>><br>
<<say "You" $player.img>>And they don’t have any value anymore?<</say>><br>
<<jerry>>No, nobody wants them anymore. But if you bring me one, I’ll buy it from you for 20 MegaBits. I like collecting them.<</jerry>><br>
[img['pizzamedia/images/boys/jerry/infinitygems.jpg']]<br><br>
<p class="reflection">He shows you a case with several Infinity Stones.</p>
<<say "You" $player.img>>Okay, I’ll let you know if I find one.<</say>><br>
<<jerry>>All right, buddy.<</jerry>><br>
<</replace>>
<</link>>
<br><br>
<<link "Ask him how he ended up here">>
<<replace "#choice">><<scrollTop>>
<<say "You" $player.img>>Hey $boys.jerry.name, how did you end up setting up a thrift store on an asteroid?<</say>><br>
<<jerry>>When my universe went down the drain, I suddenly had a lot of free time. I got into watching Earth TV... shows from thousands of years ago.<</jerry>><br>
[img['pizzamedia/images/boys/jerry/presentation.jpg']]<br><br>
<<jerry>>And that’s when I discovered my calling. There was a show about a bald guy who bought things at a thrift store and then resold them.<br>He even had his own personal expert. I think the guy’s name was Rock… or maybe Rick. Does that ring a bell?<</jerry>><br>
<<say "You" $player.img>>Not at all. I’m more of an action movie guy.<</say>><br>
<<jerry>>Well, if I ever remember the name of the show, I’ll text it to your phone so you can check it out.<</jerry>><br>
<</replace>>
<</link>>
<br><br>
<<link "What's the weirdest thing you have in the store?">>
<<replace "#choice">><<scrollTop>>
<<say "You" $player.img>>What's the weirdest thing you have in your store?<</say>><br>
<<jerry>>Once, a guy in a suit came into the store. He sold me several of what he called "eternal spaghetti.”<</jerry>><br>
[img['pizzamedia/images/boys/jerry/spaguetti.jpg']]<br><br>
<<say "You" $player.img>>Wow, and what does it do? If you eat it, does it never run out or something like that?<</say>><br>
<<jerry>>Nothing could be further from the truth. It causes eternal diarrhea.<</jerry>><br>
<<say "You" $player.img>>But who the hell would want something like that?<</say>><br>
<<jerry>>Oh, man, this item is more in demand than you think.<br>Invisible to anyone eating spaghetti. One of these, and any enemy you have is history forever.<</jerry>><br>
<<say "You" $player.img>>No way... I don’t know if it’s disgusting or macabre.<</say>><br>
<</replace>>
<</link>>
<br><br>
<<link "Can’t you give me a discount on your items?">>
<<replace "#choice">><<scrollTop>>
<<say "You" $player.img>>Come on, $boys.jerry.name, cut me some slack and give me a discount.<</say>><br>
<<jerry>>A discount? Ha! Don't make me laugh. You pay like everyone else. What do you think I am, a charity?<</jerry>><br>
[img['pizzamedia/images/boys/jerry/presentation.jpg']]<br><br>
<<say "You" $player.img>>How about 10%?<</say>><br>
<<jerry>>Believe me, the prices are very tight. I'm only marking them up 300% from what I paid for them. I'd be losing money if I gave you a discount.<</jerry>><br>
<</replace>>
<</link>>
<br><br>
[[Go back|JerryShop][$gameEngine.onScene = false]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "jerryshopinside">>
<<jerry>>Here they are. What do you think? They're the latest model for pizza delivery, and they're completely puncture-proof.<</jerry>><br>
[img['pizzamedia/images/boys/jerry/boots.jpg']]
<p class="reflection">He shows you a pair of old, somewhat worn-out boots.</p>
<<say "You" $player.img>>And why would I want a pair of old boots?<</say>><br>
<<jerry>>Hey, buddy, this is the latest in puncture-proof technology. Trust me, it's really dangerous out there.<br>Since we're neighbors, I'll give you a good price. Only 500 MegaBits.<</jerry>><br>
<<say "You" $player.img>>Hey, do you think I'm stupid or something? You're trying to sell me some old boots for 500 MegaBits?<</say>><br>
<<jerry>>They're made from one of the best materials in this galaxy. Not everyone has boots like these.<</jerry>><br>
<p class="reflection">You stare at him in silence.</p>
<<jerry>>Je, je, okay, fine. They’re just some old boots, but they’re totally puncture-proof. I’ll let you have them for 25 MegaBits.<</jerry>><br>
<<say "You" $player.img>>Look, I don’t really need the boots.<</say>><br>
<<jerry>>Are you sure about that? When you come back later, I’ll let you have them for the same price.<</jerry>><br>
<br>
<<set $boys.jerry.presentation = true>>
<<set $upper =$boys.jerry.name+ "'s Shop">>
[[$upper|JerryShop][$gameEngine.onScene = false]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "jerryshopinside">>
<<jerry>>Welcome to my thrift store, friend. I'm $boys.jerry.name, the owner of everything you see here.<br>What are you looking for?<</jerry>><br>
[img['pizzamedia/images/boys/jerry/presentation.jpg']]
<p class="reflection">At the back of the store, behind the counter, you find a burly alien with purple skin. He gives you a big smile, but his appearance doesn't exactly inspire confidence.</p>
<<say "You" $player.img>>I wasn't looking for anything in particular... I just saw the sign and was curious to see what was around here.<</say>><br>
<<jerry>>Haven’t you been here before? Your face looks familiar… you remind me of… hmm…<</jerry>>
[img['pizzamedia/images/boys/jerry/thinking.jpg']]
<p class="reflection">He looks pensive.</p>
<<say "You" $player.img>>No, this is my first time here.<</say>><br>
<<jerry>>You look a lot like that old guy who runs the $player.pizzeriaName pizzeria.<</jerry>><br>
<<say "You" $player.img>>Well, actually, I’m his nephew. I’m the one running the pizzeria now.<</say>><br>
<<jerry>>That’s great, that’s great. A businessman like me.<br>And I suppose you’re the one handling the deliveries now, right?<</jerry>><br>
<<say "You" $player.img>>Yes, I’m the one who’ll be taking care of delivering the orders.<</say>><br>
<<jerry>>Today’s your lucky day, buddy. Give me a second.<</jerry>>
<p class="reflection">$boys.jerry.name stands up and goes into a storage room of sorts. You hear noises as if he were rummaging through hundreds of odds and ends.</p>
<<set $upper = "Wait for " + $boys.jerry.name>>
[[$upper|JerryShopIntroF]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "personalarea">>
<<set $gameEngine.onScene = true>>
<p class="reflection">You walk into a small bedroom. You remember being here when you were a child.<br>From the room's window, you can gaze out into the vast emptiness of space, thousands of stars, and even the occasional spacecraft passing by.</p>
[img['pizzamedia/images/places/pizzeria/personalarea/personalarea2.jpg']]
<p class="reflection">Above the desk, you see an intense blue glow reflecting off the walls and the chair.</p><br>
<<linkreplace "Approach the desk">>
<p class="reflection">As you approach, you see what looks like some kind of gun or device.</p>
[img['pizzamedia/images/places/pizzeria/personalarea/portalgun1.jpg']]
<p class="reflection">A blue stone floats above it, while several blue beams extend from it to the inner walls of the tube.</p>
<br>
<<linkreplace "Pick up the gun">>
<<portalgunai>>Analyzing DNA... DNA match...<br>Analyzing environment... environment safe...<</portalgunai>><br>
[img['pizzamedia/images/places/pizzeria/personalarea/portalgun2.jpg']]
<p class="reflection">The gun starts making strange noises.</p>
<<portalgunai>>Playing message...<</portalgunai>><br>
<<steven>>Hey $player.name, it’s your uncle Steven.<</steven>><br>
<<say "You" $player.img>>Hey Uncle Steven, how’s it going? Where are you?<</say>><br>
<<steven>>I hope you're not answering me because this is a hologram. I'm not really here.<</steven>><br>
<<steven>>Listen carefully, $player.name. I’m going to tell you something very important, something that has been passed down from generation to generation, and who knows, maybe one day when you’re a father or a grandfather, you’ll do the same.<br><br>Do you see a bookshelf to your left? Behind it is a door, and behind that door lies the best-kept secret for eons. The secret ingredient in our pizzas.<</steven>><br>
[img['pizzamedia/images/places/pizzeria/personalarea/bookshelf.jpg']]
<<steven>>What are you waiting for? Go find out. You didn’t think I’d just tell you that easily, did you?<br>And don’t worry, the door detects DNA. Only someone from our bloodline would be able to open it.<</steven>><br>
<<portalgunai>>
Ending message...<br>
Checking status...<br>
Gauss Core: partially damaged.<br>
Warning: interdimensional calibration is unstable. The destination may not match the selected anchor point.<br>
Security protocol activated: transport may be execute chained jumps through unauthorized intermediate locations.<br>
<</portalgunai>><br>
<<linkreplace "Move the bookshelf">>
<p class="reflection">When you move the bookshelf, you see a hidden door.</p>
[img['pizzamedia/images/places/pizzeria/personalarea/secretroom.jpg']]
<p class="reflection">When you place your finger on the reader, the door opens.</p>
[img['pizzamedia/images/places/pizzeria/personalarea/stairs.jpg']]
<p class="reflection">You see a staircase leading down.</p>
<<linkreplace "Go down the stairs">>
<<run $("#passages").append('<div id="blackout"></div>')>>
<<timed 4s>>
<<goto "BasementPresentationB">>
<</timed>>
<</linkreplace>>
<</linkreplace>>
<</linkreplace>>
<</linkreplace>>
</div>
<!--
[[BasementPresentationB]]
-->
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "basement">>
<p class="reflection">As you go down the stairs, you hear faint mechanical noises.</p>
[img['pizzamedia/images/places/pizzeria/basement/basement2.jpg']]
<p class="reflection">At the bottom, you see a small robot next to a pile of some kind of orange dust.</p>
<<minerbot>>About time you got back, Steven! There's no more room for Active Ember Salt here.<br>Wait a minute, who are you? How did you get in here?<</minerbot>><br>
[img['pizzamedia/images/boys/minerbot/pose4.jpg']]
<p class="reflection">A mining robot is heading toward you.</p>
<<minerbotwarmode>>ARE YOU AN INTRUDER?!! ACTIVATING SECURITY PROTOCOL...<</minerbotwarmode>><br>
[img['pizzamedia/images/boys/minerbot/pose.jpg']]
<p class="reflection">You hear various mechanical noises, and the robot begins to transform, shifting into an offensive mode.</p>
<<say "You" $player.img>>Wait! I’m Steven’s nephew. He left me in charge of the pizzeria.<</say>><br>
<<minerbotwarmode>>Hmm… Steven’s nephew? Analyzing DNA…<</minerbotwarmode>><br>
[img['pizzamedia/images/boys/minerbot/pose2.jpg']]
<p class="reflection">A blue beam shoots out of his eye, scanning you from head to toe.</p>
<<minerbot>>DNA matches, returning to normal state.<br>Well, I suppose your uncle Steven has explained everything to you about the substance we call Active Ember Salt.<</minerbot>><br>
[img['pizzamedia/images/boys/minerbot/pose3.jpg']]
<p class="reflection">He transforms again and returns to his normal state.</p>
<<say "You" $player.img>>Well, the truth is, I don’t know anything.<</say>><br>
<<minerbot>>NOTHING?! Damn old man, he always leaves all the work to me.<br>Active Ember Salt is the name given to the secret ingredient that gives the pizzas their unique flavor. No one has been able to replicate the flavor in any universe or dimension.<</minerbot>><br>
<<say "You" $player.img>>And how is it possible that it can’t be found anywhere else or hasn’t been replicated? Aren’t there supposed to be infinite universes and dimensions?<</say>><br>
<<minerbot>>No one knows, but it’s only found in this place.<</minerbot>><br>
<<say "You" $player.img>>And what makes it so special?<</say>><br>
<<minerbot>>Active Ember Salt is a very special seasoning because it can only be eaten while it’s hot. If the pizza cools down, it spoils instantly, turning bitter and making the pizza inedible. So it’s very important that you deliver the pizzas on time.<</minerbot>><br>
<<say "You" $player.img>>I see...<</say>><br>
<<minerbot>>Here, take this box of Active Ember Salt.<</minerbot>><br>
[img['pizzamedia/images/boys/minerbot/box.jpg']]
<p class="reflection">He hands you a small box filled with that orange dust.</p>
<<minerbot>>I’ve checked online, and there’s another robot working at this pizzeria. I’ll send him instructions to pick up the boxes from your room.<br>Or I’ll take care of bringing them up to the room myself. No one outside your lineage can come down here… except me. I’m the guardian.<</minerbot>><br>
<<say "You" $player.img>>Okay, by the way, what’s your name?...<</say>><br>
<<minerbot>>My name? Hmm... I don’t recall ever having a name. Your uncle Steven used to call me "scrap metal” or "broken nuts.” I suppose those are Earthling terms of endearment.<</minerbot>><br>
<<say "You" $player.img>>I’ll call you: <<textbox "$boys.minerbot.displayName" $boys.minerbot.displayName>><</say>><br>
<<linkreplace "Give him a name">>
<<minerbot>>$boys.minerbot.displayName, $boys.minerbot.displayName, $boys.minerbot.displayName. I like it. I think that'll be my new name from now on.<</minerbot>><br>
<<set $boys.minerbot.presentation = true>>
<<linkreplace "Back">>
<<run $("#passages").append('<div id="blackout"></div>')>>
<<timed 4s>>
<<goto "PersonalArea">>
<</timed>>
<</linkreplace>>
<</linkreplace>>
<!--
[[PersonalArea]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "jerryshopinside">>
<h2 class="jerryshop-title">JERRY'S SECOND-HAND SHOP</h2>
<div class="jerryshop-container">
<div class="jerryshop-item shop-weapons">
<<button "WEAPONS">>
<<set $gameEngine.jerryShopSelection = 0>>
<<run Engine.show()>>
<</button>>
</div>
<div class="jerryshop-item shop-head">
<<button "HEAD">>
<<set $gameEngine.jerryShopSelection = 1>>
<<run Engine.show()>>
<</button>>
</div>
<div class="jerryshop-item shop-consumables">
<<button "CONSUMABLES">>
<<set $gameEngine.jerryShopSelection = 5>>
<<run Engine.show()>>
<</button>>
</div>
<div class="jerryshop-item shop-chest">
<<button "CHEST">>
<<set $gameEngine.jerryShopSelection = 2>>
<<run Engine.show()>>
<</button>>
</div>
<div class="jerryshop-item shop-misc">
<<button "MISC">>
<<set $gameEngine.jerryShopSelection = 4>>
<<run Engine.show()>>
<</button>>
</div>
<div class="jerryshop-item shop-shoes">
<<button "SHOES">>
<<set $gameEngine.jerryShopSelection = 3>>
<<run Engine.show()>>
<</button>>
</div>
</div>
<br>
<<jerry>>Go ahead, buy whatever you need.<</jerry>><br>
<<if $gameEngine.jerryShopSelection === 0>>
<<include "JerryWeaponItems">>
<<elseif $gameEngine.jerryShopSelection === 1>>
<<include "JerryHeadItems">>
<<elseif $gameEngine.jerryShopSelection === 2>>
<<include "JerryChestItems">>
<<elseif $gameEngine.jerryShopSelection === 3>>
<<include "JerryShoesItems">>
<<elseif $gameEngine.jerryShopSelection === 4>>
<<include "JerryMisc">>
<<elseif $gameEngine.jerryShopSelection === 5>>
<<include "JerryConsumables">>
<</if>>
<br><br>
[[Go Back|Pizzeria]]
</div>
<</nobr>><<nobr>>
/* Seleccion de los nombres de los eventos totales */
<<set $totalEvents =
Story.filter(p => /^EV\d+A$/.test(p.title))
.map(p => p.title)
.sort((a,b) => Number(a.replace("EV","").replace("A","")) - Number(b.replace("EV","").replace("A","")))
>>
/* Selección de los nombres de las shops totales */
<<set $totalShops =
Story.filter(p => /^Shop\d+A$/.test(p.title))
.map(p => p.title)
.sort((a,b) => Number(a.replace("Shop","").replace("A","")) - Number(b.replace("Shop","").replace("A","")))
>>
/*
<<set $totalEvents =
Story.filter(p => /^(EAEV|FSEV)\d+$/.test(p.title))
.map(p => p.title)
.sort((a,b) => {
const na = Number(a.replace(/^(EAEV|FSEV)/,""));
const nb = Number(b.replace(/^(EAEV|FSEV)/,""));
return na - nb;
})
>>
*/
<<set $tiercfg = {
1: { trips:[3,4], megabits:[300,600], regencoins:[3,4] },
2: { trips:[4,6], megabits:[2000,2900], regencoins:[5,6] },
3: { trips:[5,8], megabits:[5600,7000], regencoins:[7,8] }
}>>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev4Abackground">>
<<set $combatEngine.enemyId = "mimic">>
<p class="reflection">You walk through the portal.</p>
[img['pizzamedia/images/events/ev4/room.jpg']]
<p class="reflection">You're in a strange room. The floor feels sticky.<br>In the middle of the room, you see a chest.</p>
<div id="choice">
<div class="actionRow">
<span class="btnChoice">
<<link "Open the chest(+1❄️)">>
<<replace "#choice">>
<<include "CoolingPizza">>
[img['pizzamedia/images/events/ev4/chest.jpg']]
<p class="reflection">You move to open the chest, but its edges are coated in a sticky, slimy substance, making it difficult to get a proper grip.</p>
<<set _roll = random(1,100)>>
<<if _roll <= 50>>
<p class="reflection">As soon as you pull the lid, the chest "breathes.”<br>The wood deforms as if it were wet skin, and a slimy tongue coils around your wrist.</p>
[img['pizzamedia/images/enemies/mimic/mimic.jpg']]
<p class="reflection">It’s not a chest. It’s a Mimic.<br>It tries to drag you toward its mouth with immense force.</p>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<link "Defend yourself">>
<<goto "StartCombat">>
<</link>>
<<else>>
<p class="reflection"> The chest lid breaks open with a nasty crack. . . but nothing happens.<br>You notice a sweet, metallic smell.</p>
<<set $allowMegabitsLoot = true>>
<<set $allowRegencoinsLoot = true>>
<<set $allowInfinityGemsLoot = true>>
<<set $allowConsumableLoot = true>>
<<set $allowItemsLoot = true>>
<<set $lootmsg = "You have obtained ">>
<<AdventureLoot>>
<<AdventureLootUI>>
<<link "Continue">>
<<goto "NewPortal">>
<</link>>
<</if>>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Wait for a portal to open(+4❄️)">>
<<replace "#choice">>
<<set $delivery.pizzaHeat-= 3>>
<<include "CoolingPizza">>
<p class="reflection">You decide not to touch the chest. You stand still, listening as something sticky drips onto the floor.<br>A few minutes pass that feel like an eternity. The chest doesn’t move… but you could swear it’s "looking” at you.
</p>
<<link "A new portal opens in front of you">>
<<goto "NewPortal">>
<</link>>
<</replace>>
<</link>>
</span>
</div>
</div>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev6Abackground">>
<p class="reflection">You walk through the portal.</p>
[img['pizzamedia/images/events/ev6/backgrounda.jpg']]
<p class="reflection">You arrive on a burning planet. The air feels dry and scorching.</p>
<div id="choice">
<div class="actionRow">
<span class="btnChoice">
<<link "Explore(+1❄️)">>
<<include "CoolingPizza">>
<<set _locations = [
"EV6B1",
"EV6C1",
"EV6D1"
]>>
<<goto _locations.random()>>
<</link>>
</span>
<span class="btnChoice">
<<link "Wait for a portal to open(+2❄️)">>
<<replace "#choice">>
<<set $delivery.pizzaHeat-->>
<<include "CoolingPizza">>
<p class="reflection">You decide to wait for a new portal to open, interacting with your surroundings as little as possible.<br>
</p>
[img['pizzamedia/images/events/ev6/wait.jpg']]
<p class="reflection">The heat slowly burns your skin.</p>
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
<</replace>>
<</link>>
</span>
</div>
</div>
<!--
[[EV6C1]]
[[EV6B1]]
[[EV6D1]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev7Abackground">>
<p class="reflection">You walk through the portal.</p>
[img['pizzamedia/images/events/ev7/backgrounda.jpg']]
<p class="reflection">You arrive on a frozen planet, where you can see some strange trees.</p>
<div id="choice">
<div class="actionRow">
<span class="btnChoice">
<<link "Explore(+1❄️)">>
<<include "CoolingPizza">>
<<set _locations = [
"EV7B1",
"EV7C1",
"EV7D1"
]>>
<<goto _locations.random()>>
<</link>>
</span>
<span class="btnChoice">
<<link "Wait for a portal to open(+4❄️)">>
<<replace "#choice">>
<<set $delivery.pizzaHeat-= 3>>
<<include "CoolingPizza">>
<p class="reflection">You decide to wait for a new portal to open, interacting with your surroundings as little as possible.<br>
</p>
[img['pizzamedia/images/events/ev7/wait.jpg']]
<p class="reflection">You see a vast frozen wasteland stretching out before you.</p>
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
<</replace>>
<</link>>
</span>
</div>
</div>
<!--
[[EV7C1]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev5Abackground">>
<p class="reflection">You walk through the portal.</p>
[img['pizzamedia/images/events/ev5/backgrounda.jpg']]
<p class="reflection">You don't know where you are. Everything is covered in crystals.</p>
<div id="choice">
<div class="actionRow">
<span class="btnChoice">
<<link "Explore(+1❄️)">>
<<include "CoolingPizza">>
<<goto "EV5B">>
<</link>>
</span>
<span class="btnChoice">
<<link "Wait for a portal to open(+2❄️)">>
<<replace "#choice">>
<<set $delivery.pizzaHeat-->>
<<include "CoolingPizza">>
<p class="reflection">You decide to wait for a new portal to open. You interact with your surroundings as little as possible.
</p><br>
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
<</replace>>
<</link>>
</span>
</div>
</div>
<!--
[[EV5B]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev8Abackground">>
<p class="reflection">You walk through the portal.</p>
[img['pizzamedia/images/events/ev8/backgrounda.jpg']]
<p class="reflection">You arrive on a corrosive planet. A strange green substance is everywhere, and it smells like sulfur.</p>
<div id="choice">
<div class="actionRow">
<span class="btnChoice">
<<link "Explore(+1❄️)">>
<<include "CoolingPizza">>
<<set _locations = [
"EV8B1",
"EV8C1",
"EV8D1"
]>>
<<goto _locations.random()>>
<</link>>
</span>
<span class="btnChoice">
<<link "Wait for a portal to open(+4❄️)">>
<<replace "#choice">>
<<set $delivery.pizzaHeat-= 3>>
<<include "CoolingPizza">>
<p class="reflection">You decide to wait for a new portal to open, interacting with your surroundings as little as possible.<br>
</p>
[img['pizzamedia/images/events/ev8/wait.jpg']]
<p class="reflection">You see some creatures in the distance.</p>
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
<</replace>>
<</link>>
</span>
</div>
</div>
<!--
[[EV8B1]]
[[EV8C1]]
[[EV8D1]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev9Abackground">>
<p class="reflection">You walk through the portal.</p>
[img['pizzamedia/images/events/ev9/backgrounda.jpg']]
<p class="reflection">You arrive on a rocky planet, where you can see some strange trees and coils from which electricity emanates.</p>
<div id="choice">
<div class="actionRow">
<span class="btnChoice">
<<link "Explore(+1❄️)">>
<<include "CoolingPizza">>
<<set _locations = [
"EV9B",
"EV9C",
"EV9D",
"EV9E1"
]>>
<<goto _locations.random()>>
<</link>>
</span>
<span class="btnChoice">
<<link "Wait for a portal to open(+4❄️)">>
<<replace "#choice">>
<<set $delivery.pizzaHeat-= 3>>
<<include "CoolingPizza">>
<p class="reflection">You decide to wait for a new portal to open, interacting with your surroundings as little as possible.<br>
</p>
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
<</replace>>
<</link>>
</span>
</div>
</div>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev3Abackground">>
<<set $combatEngine.enemyId = "nerd">>
<<nerdguy>>Hello, my name is Cristopher.<</nerdguy>><br>
[img['pizzamedia/images/enemies/nerdguy/pose0.jpg']]
<p class="reflection">A guy with glasses blocks your path. You realize he never blinks.</p>
<br>
<<if ndef $talk or $talk.enemyId neq $combatEngine.enemyId>>
<<set $talk = { enemyId: $combatEngine.enemyId, step: 0, done: false }>>
<</if>>
<div id="talkPanel">
<div id="talkLog"></div>
<div class="talkBox">
<div id="talkChoices">
<<if $talk.done>>
<p class="reflection">There's no more conversation.</p>
<<else>>
<<switch $talk.step>>
<<case 0>>
<div class="choiceRow">
<span class="btnChoice">
<<link "Say hello(+1❄️)">>
<<append "#talkLog">>
<<say "You" $player.img>>Hi Cristopher, nice to meet you. My name is $player.name.<br>Sorry, but I'm in a bit of a hurry.<</say>><br>
<<nerdguy>>
$player.name… $player.name…<br>
Can I call you $player.name, or would you prefer a nickname? I have one, but I won’t tell you just yet.<br>
I mean, I’ll tell you, but later.<br><br>
Do you want to be my friend? We can be best friends.<br>
My mom says not to go near strangers, but you seem like a nice stranger.<br>
Oh, and you said "in a hurry”… what kind of hurry? A real hurry or a mental hurry?
<</nerdguy>><br>
<<include "CoolingPizza">>
<</append>>
<<set $talk.step = 1>>
<<replace "#talkChoices">>
<div class="choiceRow">
<span class="btnChoice">
<<link "Tell him yes, but another time(+1❄️)">>
<<append "#talkLog">>
<<say "You" $player.img>>If you want, we can be friends, but let’s meet up another time. I have to take this somewhere urgently.<</say>><br>
<<nerdguy>>
Okay! So that’s it, we’re friends now.<br>
But wait… "this”—what is it?<br>
I mean, what’s in the box… is it edible?<br>
Well... maybe I am asking for a little, but first I want to see it.<br>
Well, I am asking you a little bit, but I want to see it first.<br><br>
Can I take a look? Just a look.
<</nerdguy>><br>
<<include "CoolingPizza">>
<</append>>
<<set $talk.step = 2>>
<<replace "#talkChoices">>
<div class="choiceRow">
<span class="btnChoice">
<<link "Tell him it’s a pizza(+1❄️)">>
<<append "#talkLog">>
<<say "You" $player.img>>It’s a pizza, I’m working. Let me through.<</say>><br>
<<nerdguy>>
I knew it! I knew it from the smell!<br>
Pizza has a very distinct smell.<br><br>
I don't want to eat it. Well, actually, I do. But right now, I just want to look at it.<br>
Please, let me take a look. Just take a look.
<</nerdguy>><br>
[img['pizzamedia/images/enemies/nerdguy/pose1.jpg']]
<p class="reflection">He grabs the pizza box. </p>
<<include "CoolingPizza">>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">><</replace>>
<<replace "#talkChoices">>
<<actionButtons "NewPortal" "Resurrect" "LostPizza" "Give him the pizza" "Defend yourself" "Run">>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Tell him you're not going to show him anything(+1❄️)">>
<<append "#talkLog">>
<<say "You" $player.img>>No, I'm not going to show you anything. Seriously, I'm in a hurry.<</say>><br>
<<nerdguy>>
Okay, okay, I respect your boundaries.<br>
But if you don't show it to me, I'll be left wondering... And curiosity is like an itch in the brain.<br>
And when my brain itches... I ask more questions.<br><br>
Then I'll ask again, but phrase it better:<br>
Will you let me see it? Just see it.
<</nerdguy>><br>
[img['pizzamedia/images/enemies/nerdguy/pose1.jpg']]
<p class="reflection">He grabs the pizza box.</p>
<<include "CoolingPizza">>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">><</replace>>
<<replace "#talkChoices">>
<<actionButtons "NewPortal" "Resurrect" "LostPizza" "Give him the pizza" "Defend yourself" "Run">>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Try changing the subject(+1❄️)">>
<<append "#talkLog">>
<<say "You" $player.img>>Hey, where did you come from? Do you live around here?<</say>><br>
<<nerdguy>>
Yes. No. Well… depends what you mean by "living".<br>
But that doesn’t matter right now.<br>
What matters is that you’re avoiding the main topic.<br><br>
The box.<br>
Will you let me see it? Just see it.
<</nerdguy>><br>
[img['pizzamedia/images/enemies/nerdguy/pose1.jpg']]
<p class="reflection">He grabs the pizza box.</p>
<<include "CoolingPizza">>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">><</replace>>
<<replace "#talkChoices">>
<<actionButtons "NewPortal" "Resurrect" "LostPizza" "Give him the pizza" "Defend yourself" "Run">>
<</replace>>
<</link>>
</span>
</div>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Tell him no(+1❄️)">>
<<append "#talkLog">>
<<say "You" $player.img>>Sorry, man, I don’t know you and I’m in a hurry. Why don’t you let me through?<</say>><br>
<<nerdguy>>
Hurry… I was in a hurry yesterday, too.<br>
I was going to be late for the train, but then I realized my watch was fast. Thank goodness.<br>
I got pretty stressed out. I thought I’d miss the train, but I didn’t in the end.<br><br>
And that made me realize. . . We sometimes think something is urgent, but it’s not.<br>
For example, you think you’re in a hurry… but I think what’s urgent right now is something else.
<</nerdguy>><br>
<<nerdguy>>
That box.<br>
Is what’s inside edible?<br>
Will you let me see it? Just see it.
<</nerdguy>><br>
<<include "CoolingPizza">>
<</append>>
<<set $talk.step = 2>>
<<replace "#talkChoices">>
<div class="choiceRow">
<span class="btnChoice">
<<link "Tell him it's edible, but you're not letting him see it(+1❄️)">>
<<append "#talkLog">>
<<say "You" $player.img>>Yes, it's edible. But I'm not letting you see it. I've got to deliver it now.<</say>><br>
<<nerdguy>>
Sure, sure... I get it.<br>
But if it’s edible, then it deserves to be appreciated visually.<br>
Because you eat with your eyes first, right? Someone definitely said that.<br><br>
I promise I won’t touch a thing.<br>
Will you let me see it? Just see it.
<</nerdguy>><br>
[img['pizzamedia/images/enemies/nerdguy/pose1.jpg']]
<p class="reflection">He grabs the pizza box.</p>
<<include "CoolingPizza">>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">><</replace>>
<<replace "#talkChoices">>
<<actionButtons "NewPortal" "Resurrect" "LostPizza" "Give him the pizza" "Defend yourself" "Run">>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Tell him to leave you alone(+1❄️)">>
<<append "#talkLog">>
<<say "You" $player.img>>Seriously, leave me alone.<</say>><br>
<<nerdguy>>
Okay, okay, okay. Peace. I’ll give you peace.<br>
But first, one last quick question…<br>
I’m not trying to bother you, it’s just to close the loop.<br><br>
Will you let me see it? Just see it.
<</nerdguy>><br>
[img['pizzamedia/images/enemies/nerdguy/pose1.jpg']]
<p class="reflection">He grabs the pizza box.</p>
<<include "CoolingPizza">>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">><</replace>>
<<replace "#talkChoices">>
<<actionButtons "NewPortal" "Resurrect" "LostPizza" "Give him the pizza" "Defend yourself" "Run">>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Pretend you didn’t hear him.(+1❄️)">>
<<append "#talkLog">>
<<say "You" $player.img>>…<</say>><br>
<<nerdguy>>
Silence… a powerful tool.<br>
But it’s also an implicit confirmation that something’s up with the box.<br><br>
Nothing’s wrong, nothing’s wrong.<br>
I’ll ask you one more time and that’s it.<br>
Will you let me see it? Just see it.
<</nerdguy>><br>
[img['pizzamedia/images/enemies/nerdguy/pose1.jpg']]
<p class="reflection">He grabs the pizza box.</p>
<<include "CoolingPizza">>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">><</replace>>
<<replace "#talkChoices">>
<<actionButtons "NewPortal" "Resurrect" "LostPizza" "Give him the pizza" "Defend yourself" "Run">>
<</replace>>
<</link>>
</span>
</div>
<</replace>>
<</link>>
</span>
</div>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Ignore him and keep walking(+1❄️)">>
<<append "#talkLog">>
<<set _intro = either(
"Hello, my name is Cristopher. Please don't ignore me. What's your name? And what's in that box?",
"Hello! I'm Cristopher. I'm introducing myself because people don't do that anymore. Do you introduce yourself? Can I see that box?",
"Hello. I’m Cristopher. What do you have in there? Can you show me?",
"Hi. I'm Cristopher. I don't blink when I'm concentrating. And right now I'm concentrating on that box.",
"Hi, I’m Cristopher. This is a non-optional social interaction. What’s your name? What’s in the box?"
)>>
<<nerdguy>><<print _intro>><</nerdguy>><br>
<<include "CoolingPizza">>
<</append>>
<<set $talk.done = true>>
<</link>>
</span>
</div>
<</switch>>
<</if>>
</div>
<div id="talkActions">
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
</div>
</div>
</div>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev10Abackground">>
<p class="reflection">You walk through the portal.</p>
[img['pizzamedia/images/events/ev10/backgrounda.jpg']]
<p class="reflection">You find yourself in a kind of fantasy forest. The vegetation is vibrant.</p>
<div id="choice">
<div class="actionRow">
<span class="btnChoice">
<<link "Explore(+1❄️)">>
<<include "CoolingPizza">>
<<set _locations = [
"EV10B1",
"EV10C1",
"EV10D1",
"EV10E1"
]>>
<<goto _locations.random()>>
<</link>>
</span>
<span class="btnChoice">
<<link "Wait for a portal to open(+4❄️)">>
<<replace "#choice">>
<<set $delivery.pizzaHeat-= 3>>
<<include "CoolingPizza">>
[img['pizzamedia/images/events/ev10/backgroundb.jpg']]
<p class="reflection">You decide to wait for a new portal to open, interacting with your surroundings as little as possible.<br>
</p>
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
<</replace>>
<</link>>
</span>
</div>
</div>
<!--
[[EV10B1]]
[[EV10C1]]
[[EV10D1]]
[[EV10E1]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "allisonscene1a">>
<<audio "bgm_chill" pause>>
<p class="reflection">You finally arrive at your destination.</p>
[img['pizzamedia/images/girls/allison/allisonscene1/house.jpg']]<br>
<<linkreplace "Knock on the door">>
<p class="reflection">You approach and knock on the door</p>
[img['pizzamedia/images/girls/allison/allisonscene1/knocking.jpg']]
<<allison>>Who is it?<</allison>><br>
<<say "You" $player.img>>The pizza delivery guy.<</say>><br>
<<allison>>Great, I was starving.<br>Although I don't have any tip money on me.<</allison>><br>
[img['pizzamedia/images/girls/allison/allisonscene1/givepizza.jpg']]
<p class="reflection">A girl opens the door, and you hand her the pizza.</p>
<<say "You" $player.img>>Don't worry, it's okay.<</say>><br>
<<allison>>Why don't you come inside and I'll see if I have anything for you.<</allison>><br>
<span id="choice">
<<link "Go inside with her">>
<<replace "#choice">>
<<goto "AllisonScene1B">>
<</replace>>
<</link>>
<br><br>
<<if $gameEngine.onRepetition === false>>
<<link "Tell her no">>
<<replace "#choice">>
<<say "You" $player.img>>Really, it’s okay, next time.<</say>><br>
<<allison>>Oh, okay, see you later.<</allison>><br>
[[Go back to the pizzeria|SuccessfulDelivery]]
<</replace>>
<</link>>
<</if>>
</span><br>
<</linkreplace>>
<!--
[[AllisonScene1B]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "allisonscene1a">>
<<audio "bgm_chill" pause>>
<p class="reflection">You finally arrive at your destination. This house looks familiar to you.</p>
[img['pizzamedia/images/girls/allison/allisonscene1/house.jpg']]<br>
<<linkreplace "Knock on the door">>
<p class="reflection">You approach and knock on the door.</p>
[img['pizzamedia/images/girls/allison/allisonscene1/knocking.jpg']]
<<allison>>Who is it?<</allison>><br>
<<say "You" $player.img>>Pizza delivery guy.<</say>><br>
<<allison>>Great, your pizzas are amazing. I was looking forward to your arrival.<</allison>><br>
[img['pizzamedia/images/girls/allison/allisonscene2/givepizza.jpg']]
<p class="reflection">A girl opens the door, and you hand her the pizza.</p>
<<say "You" $player.img>>Thank you so much, I'm glad you like our pizzas.<</say>><br>
<<allison>>Come on in, I’ll give you a tip.<</allison>><br>
<span id="choice">
<<link "Go inside with her">>
<<replace "#choice">>
<<goto "AllisonScene2B">>
<</replace>>
<</link>>
<br><br>
<<if $gameEngine.onRepetition === false>>
<<link "Tell her you’re in a hurry">>
<<replace "#choice">>
<<say "You" $player.img>>I’m in a bit of a hurry, maybe next time.<</say>><br>
<<allison>>Oh, okay, see you later.<</allison>><br>
[[Go back to the pizzeria|SuccessfulDelivery]]
<</replace>>
<</link>>
<</if>>
</span><br>
<</linkreplace>>
<!--
[[AllisonScene2B]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "juliascene1a">>
<<audio "bgm_chill" pause>>
<p class="reflection">Finally, you arrive at your destination.</p>
[img['pizzamedia/images/girls/julia/juliascene1/houseoutside.jpg']]<br>
<<linkreplace "Knock on the door">>
<p class="reflection">You approach and knock on the door.</p>
<<say "You" $player.img>>Pizza delivery guy.<</say>><br>
[img['pizzamedia/images/girls/julia/juliascene1/knocking.jpg']]
<<julia>>Oh, hi, come on in and put it on the table. I'll go get my phone to pay you.<</julia>><br>
[img['pizzamedia/images/girls/julia/juliascene1/givepizza.jpg']]
<p class="reflection">A girl opens the door and invites you in.</p>
<<say "You" $player.img>>Okay.<</say>><br>
[[Enter her house|JuliaScene1B]]
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "juliascene1a">>
<<audio "bgm_chill" pause>>
<p class="reflection">Finally, you arrive at your destination.</p>
[img['pizzamedia/images/girls/julia/juliascene1/houseoutside.jpg']]<br>
<<linkreplace "Knock on the door">>
<p class="reflection">You approach and knock on the door.</p>
<<say "You" $player.img>>Pizza delivery guy.<</say>><br>
[img['pizzamedia/images/girls/julia/juliascene1/knocking.jpg']]
<<julia>>Hi $player.name, how are you?<</julia>><br>
<<say "You" $player.img>>I'm fine, though I've got a lot of work.<</say>><br>
[img['pizzamedia/images/girls/julia/juliascene2/givepizza.jpg']]
<<julia>>I can imagine. Why don't you come in and have a glass of water or a soda?<</julia>><br>
<<say "You" $player.img>>I appreciate it, but I don't know... I have a lot of orders to deliver.<</say>><br>
<<julia>>Come on. It'll only take five minutes. I feel so lonely...<</julia>>
<p class="reflection">She speaks to you in a seductive voice.</p>
<<say "You" $player.img>>Well, okay. But only five minutes.<</say>><br>
[[Enter her house|JuliaScene2B]]
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "lindseyscene1a">>
<<audio "bgm_chill" pause>>
<<say "You" $player.img>>Hello.<</say>><br>
<<lindsey>>Hi, you're the pizza delivery guy, right? Come on in, have a seat.<</lindsey>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene1/intro0.mp4">>
<p class="reflection">A woman walks over to where you're standing. She invites you to sit down in a small armchair.</p>
<<lindsey>>I thought your pizzeria had closed down. I used to order a lot, but no one has answered the phone for months.<</lindsey>><br>
<<say "You" $player.img>>Oh, right. That's because there was a change in ownership, and now I'm running the place.<</say>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene1/intro1.mp4">><br>
<<lindsey>>I see. Although you seem a bit young to run a business on your own. Don’t you have a girlfriend or wife to help you?<</lindsey>><br>
<<say "You" $player.img>>Not at all. All I have is a robot assistant, but that’s it.<</say>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene1/intro2.mp4">><br>
<<lindsey>>I see. And… this pizza you brought me… does it have extra salami?<br>I always order my pizzas with extra salami.<</lindsey>><br>
<<say "You" $player.img>>Oh, really? Well, there must have been some mistake. I didn’t see those instructions on the order.<</say>><br>
<<lindsey>>I don’t think you understand me.<</lindsey>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene1/intro4.mp4">>
<p class="reflection">She gets really close to you.</p>
[[She wants extra salami|LindseyScene1B][$cumProgress = 0]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "lindseyscene2a">>
<<audio "bgm_chill" pause>>
<p class="reflection">Finally, you arrive at your destination.</p>
[img['pizzamedia/images/girls/lindsey/lindseyscene2/background0.jpg']]<br>
<p class="reflection">The front door is open, but it looks like no one is home.</p>
<<linkreplace "Announce yourself">>
<<say "You" $player.img>>Pizza delivery guy!! Is anyone home??<</say>>
<p class="reflection">No one answers.</p>
<<linkreplace "Try again">>
<<say "You" $player.img>>Pizza delivery guy!! Is anyone home??<</say>>
<p class="reflection">After five minutes, still no answer.</p>
[[Go inside and leave the pizza|LindseyScene2B]]
<</linkreplace>>
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "rebeccascene1a">>
<<audio "bgm_chill" pause>>
<p class="reflection">Finally, you arrive at your destination.</p>
[img['pizzamedia/images/girls/rebecca/rebeccascene2/house.jpg']]<br>
<p class="reflection">You see that the front door is ajar, so you decide to let them know you're here.</p>
<<say "You" $player.img>>Hello! Pizza delivery guy!<</say>><br>
[[Go inside|RebeccaScene2B]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "rebeccascene1a">>
<<audio "bgm_chill" pause>>
<p class="reflection">Finally, you arrive at the delivery destination.</p>
<<rebecca>>Hello.<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene1/intro0.mp4">>
<p class="reflection">You approach the house and knock on the door.</p>
<<rebecca>>Come on in.<</rebecca>><br>
<<say "You" $player.img>>Okay.<</say>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene1/intro1.mp4">>
<p class="reflection">She invites you in.</p>
<<rebecca>>I love this big... house...<</rebecca>><br>
<<say "You" $player.img>>Okay? <</say>><br>
[[She leads you into the living room|RebeccaScene1B]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "savannahscene2a">>
<<audio "bgm_chill" pause>>
<<savannah>>Hi $player.name, I was waiting to hear the sound of your portal opening.<</savannah>><br>
<<say "You" $player.img>>Oh, hi $eventGirls.savannah.displayName. Here's the pizza you ordered.<</say>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene2/intro0.mp4">>
<p class="reflection">She enters the bedroom through a door, and you see that she’s wearing a blue lingerie set.</p>
<<savannah>>Do you like the new set I bought?<</savannah>><br>
<<say "You" $player.img>>Yeah, it's really pretty. It looks great on you.<</say>><br>
<<savannah>>Although you might want to see what's underneath.<</savannah>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene2/intro1.mp4">>
<p class="reflection">She unhooks her bra and takes it off, showing you her boobs.</p>
<<savannah>>What do you think of it from behind?<</savannah>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene2/intro2.mp4">>
<p class="reflection">She turns around, showing you her perfect butt, then takes off her panties while you watch her buttocks bounce.</p>
<<savannah>>What do you think of me, $player.name? Did you ever imagine you'd be with a goddess like me?<</savannah>><br>
<<say "You" $player.img>>You’re my biggest fantasy.<</say>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene2/intro3.mp4">>
<p class="reflection">She climbs onto the bed, showing you her perfect body.</p>
<<savannah>>That’s what I wanted to hear. Now let’s make that fantasy of yours come true.<</savannah>><br>
[[She wants you to fulfill your dream with her|SavannahScene2B][$cumProgress = 0]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "savannahscene1a">>
<<audio "bgm_chill" pause>>
<p class="reflection">You walk through the doorway and find yourself inside a bedroom. </p>
<<say "You" $player.img>>Oh, I'm sorry. The portal machine must have gotten the coordinates wrong.<</say>><br>
<<savannah>>Don't worry, I was the one who entered the coordinates from inside my bedroom.<br>What do you think of these new panties I bought? Hmm, I'm not entirely convinced.<</savannah>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene1/intro0.mp4">><br>
<<savannah>>What do you think of me? Do you want me?<</savannah>><br>
<<say "You" $player.img>>This is a little awkward, but I think you’re really beautiful.<</say>><br>
<<savannah>>Really? What would you do with a woman like me?<br>Come on, touch whatever you want.<</savannah>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene1/intro1.mp4">>
<p class="reflection">She leans over a table, showing you her perfect ass and pussy.</p>
<<say "You" $player.img>>I’d do my absolute best to satisfy your desires.<</say>><br>
<<savannah>>Seriously? Prove it to me.<</savannah>><br>
[[Satisfy her needs|SavannahScene1B][$cumProgress = 0]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "jessicascene1a">>
<<audio "bgm_chill" pause>>
<p class="reflection">You finally arrive at your destination.</p>
[img['pizzamedia/images/girls/jessica/jessicascene1/hall.jpg']]<br>
<<linkreplace "Knock on the door">>
<p class="reflection">You approach and knock on the door.</p>
[img['pizzamedia/images/girls/jessica/jessicascene1/knocking.jpg']]
<<jessica>>It's about time! Come in.<</jessica>><br>
[img['pizzamedia/images/girls/jessica/jessicascene1/givepizza.jpg']]
<p class="reflection">A girl opens the door. Although she looks a little annoyed, she invites you in.</p>
[[Go inside with her|JessicaScene1B]]
<</linkreplace>>
<!--
[[JessicaScene1B]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "jessicascene1a">>
<<audio "bgm_chill" pause>>
<p class="reflection">Finally, you arrive at your destination. The place looks familiar to you.</p>
[img['pizzamedia/images/girls/jessica/jessicascene1/hall.jpg']]<br>
<<linkreplace "Knock on the door">>
<<say "You" $player.img>>Pizza delivery guy.<</say>><br>
[img['pizzamedia/images/girls/jessica/jessicascene1/knocking.jpg']]
<p class="reflection">You approach and knock on the door while announcing that you're here to deliver the pizza.</p>
[img['pizzamedia/images/girls/jessica/jessicascene2/dooropen.jpg']]
<p class="reflection">As you knock on the door, you realize it’s already open.</p>
<<jessica>>Come in, come in.<</jessica>><br>
<p class="reflection">You hear someone inviting you in from inside the house.</p>
[[Go inside with her|JessicaScene2B]]
<</linkreplace>>
<!--
[[JessicaScene2B]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "newportalbackground0">>
<p class="reflection">A new portal opens in front of you.</p>
[img['pizzamedia/images/events/newportal/portal0.jpg']]
<<set _dice = random(1, 60)>>
<<if _dice == 1>>
<<if $player.dragonBalls == 0>>
<p class="reflection">A glowing orange sphere emerges from the portal. It has a reddish star inside it.</p>
[img['pizzamedia/images/items/ball1.jpg']]
<<set $player.dragonBalls++>>
<<elseif $player.dragonBalls == 1>>
<p class="reflection">A glowing orange sphere emerges from the portal. It has two reddish stars inside it.</p>
[img['pizzamedia/images/items/ball2.jpg']]
<<set $player.dragonBalls++>>
<<elseif $player.dragonBalls == 2>>
<p class="reflection">A glowing orange sphere emerges from the portal. It has three reddish stars inside it.</p>
[img['pizzamedia/images/items/ball3.jpg']]
<<set $player.dragonBalls++>>
<<elseif $player.dragonBalls == 3>>
<p class="reflection">A glowing orange sphere emerges from the portal. It has four reddish stars inside it.</p>
[img['pizzamedia/images/items/ball4.jpg']]
<<set $player.dragonBalls++>>
<<elseif $player.dragonBalls == 4>>
<p class="reflection">A glowing orange sphere emerges from the portal. It has five reddish stars inside it.</p>
[img['pizzamedia/images/items/ball5.jpg']]
<<set $player.dragonBalls++>>
<<elseif $player.dragonBalls == 5>>
<p class="reflection">A glowing orange sphere emerges from the portal. It has six reddish stars inside it.</p>
[img['pizzamedia/images/items/ball6.jpg']]
<<set $player.dragonBalls++>>
<<elseif $player.dragonBalls == 6>>
<p class="reflection">A glowing orange sphere emerges from the portal. It has seven reddish stars inside it.</p>
[img['pizzamedia/images/items/ball7.jpg']]
<<set $player.dragonBalls++>>
<</if>>
<</if>>
<br><br>
[[A new portal opens|EventSelector]]
</div>
<</nobr>><<include "Combat__InitHelpers">>
<<set $combatEngine.outcome = null>>
<<set $combatEngine.inCombat = true>>
<<set $combatEngine.enemy = $enemies[$combatEngine.enemyId]>>
<<set $enemies[$combatEngine.enemyId].presentation = true>>
<<if !$combatEngine.enemy || $combatEngine.enemy == null || ndef $combatEngine.enemy>>
<<set $combatEngine.enemy = $enemies["snowflakes"]>>
<<set $combatEngine.enemyId = "snowflakes">>
<</if>>
<<set _savedHp = (def $combatEngine.player) ? $combatEngine.player.hp : $playerCombat.hp>>
/* Ahora sí, creamos el clon limpio de la base */
<<set $combatEngine.player = clone($playerCombat)>>
/* Y le inyectamos la vida que acabamos de rescatar */
<<set $combatEngine.player.hp = _savedHp>>
/* Recalculamos stats (mutaciones, items, etc.) */
<<include "CalcPlayerCombatStats">>
<<set $combatEngine.log = []>>
<<set $combatEngine.log.push("<b style='color:"+$combatEngine.enemy.dialogColor+";'>" + $combatEngine.enemy.name + "</b> is attacking you!")>>
<<goto "CombatUI">><<nobr>>
<!--:: CalcPlayerCombatStats-->
<<if (ndef $combatEngine.player) or ($combatEngine.player is null)>>
<<set $combatEngine.player = $playerCombat>>
<</if>>
<<include "CCPS__00_Helpers">>
<<include "CCPS__01_ResetBase">>
<<include "CCPS__02_ApplyItems">>
<<include "CCPS__03_ApplySets">>
<<include "CCPS__04_ApplyMutations">>
<<include "CCPS__06_ApplyIncomingEffects">>
<<include "CCPS__05_FinalizeAndClamp">>
<!--
[[CCPS__00_Helpers]]
[[CCPS__01_ResetBase]]
[[CCPS__02_ApplyItems]]
[[CCPS__03_ApplySets]]
[[CCPS__04_ApplyMutations]]
[[CCPS__05_FinalizeAndClamp]]
[[CCPS__06_ApplyIncomingEffects]]
-->
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "open2">>
<p class="reflection">When you flip the switch, it starts to turn blue.</p>
[img['pizzamedia/images/intro/robot3.jpg']]
<<melissaunknown>>Initializing environment...<</melissaunknown>><br>
[img['pizzamedia/images/intro/robot4.jpg']]
<p class="reflection">The robot's eyes light up orange, and the lights in the room come on instantly.</p>
<<melissaunknown>>Welcome to $player.pizzeriaName pizzeria. What would you like to order?<</melissaunknown>><br>
[img['pizzamedia/images/intro/robot5.jpg']]
<<say "You" $player.img>>No, I don't want to order anything. I'm the new owner of the place.<</say>><br>
<<melissaunknown>>The new owner of the place? According to my database, Mr. Steven is the owner of this pizzeria.<</melissaunknown>><br>
<<say "You" $player.img>>I’m his nephew. I’m the one who’s going to take over the business now.<</say>><br>
<<melissaunknown>>Oh! I see... and do you know how the business works?<</melissaunknown>><br>
<<say "You" $player.img>>Now that you mention it... I haven't a clue.<</say>><br>
<<melissaunknown>>All right. I'll take care of making the pizzas and serving the customers. I can take orders directly through the Quantum Network.<</melissaunknown>><br>
<<say "You" $player.img>>So what will I do?<</say>><br>
<<melissaunknown>>You'll fill the same role your Uncle Steven used to. You'll be the delivery guy.<br>By the way, are you registered with RegenCore?<</melissaunknown>><br>
<<say "You" $player.img>>Regen... what, what’s that?<</say>><br>
<<melissaunknown>>Follow me.<</melissaunknown>><br>
<<linkreplace "Follow her">>
<<run $("#passages").append('<div id="blackout"></div>')>>
<<timed 4s>>
<<goto "IntroG">>
<</timed>>
<</linkreplace>>
<!--
[[IntroG]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "intro">>
<h1 style="color:orange">Left menu</h1>
<p class="reflection">During pizza deliveries, the left menu displays two indicators: the delivery progress indicator and the heat indicator.</p>
<div style="width:60%">
[img['pizzamedia/images/events/tutorial/tutorial0.jpg']]
</div>
<h2 style="color:orange">Delivery progress indicator</h2>
<p class="reflection">This indicator shows how many interdimensional trips you have completed and how many are left to reach your destination.</p>
<div style="width:60%">
[img['pizzamedia/images/events/tutorial/tutorial1.jpg']]
</div>
<h2 style="color:orange">Heat indicator</h2>
<p class="reflection">The heat indicator shows you how hot the pizza you’re trying to deliver is. As the pizza cools, the blue sections will increase.</p>
<div style="width:60%">
[img['pizzamedia/images/events/tutorial/tutorial2.jpg']]
</div>
<p class="reflection">Keep in mind that as you perform various actions, the pizza will cool down. If the pizza’s secret ingredient cools completely, the flavor will be ruined and you’ll lose that delivery.</p><br>
[img['pizzamedia/images/events/coldpizza/coldpizza.jpg']]<br><br>
[[Continue|TutorialC]]<br><br>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "intro">>
<h1 style="color:orange">Character Encounters</h1>
<p class="reflection">During encounters with other characters, you'll have several options for overcoming them and continuing on to a new portal.</p>
[img['pizzamedia/images/events/tutorial/tutorial3.jpg']]
<h2 style="color:orange">Action Menu</h2>
<p class="reflection">You'll see a menu at the top where, depending on the situation, you can talk to or interact with that character in various ways.<br>Most actions will consume heat (this is indicated next to each action with an icon ❄️)</p>
[img['pizzamedia/images/events/tutorial/tutorial4.jpg']]
<p class="reflection">In the bottom menu, you can always start a fight or run away from them.<br>Starting a fight never consumes heat. However, the option to run will always consume two heat points ❄️❄️.(The percentage shown is the probability of a successful escape).</p>
[[Continue|TutorialD]]<br><br>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "intro">>
<h1 style="color:orange">Combat System</h1>
<p class="reflection">Sometimes you'll have no choice but to fight. Other times, it will simply be the quickest and easiest way to move forward.</p>
[img['pizzamedia/images/events/tutorial/tutorial5.jpg']]
<h2 style="color:orange">Statistics</h2>
<p class="reflection">In this section, you can check your health, your detailed stats, and your resistance to different elements, as well as those of your enemy.</p>
[img['pizzamedia/images/events/tutorial/tutorial6.jpg']]
<h2 style="color:orange">Action Menu</h2>
[img['pizzamedia/images/events/tutorial/tutorial7.jpg']]
<p class="reflection">- Hand 1: You can use the weapon equipped in your Hand 1 slot.<br>- Hand 2: You can use the weapon equipped in your Hand 2 slot.<br>- Fists: If you don’t have a weapon or the ones you have are recharging after use, you may want to attack with your fists.<br>- Consumables: You can use various items to either heal yourself or deal damage to the enemy.<br>- Escape: Just like before combat, you can flee, though here it will only consume one heat point. However, the success rate is halved. If you fail to flee, you will lose that turn and the enemy will attack you.<br></p>
<h2 style="color:orange">Combat Log</h2>
<p class="reflection">After each turn, you can view a log of what happened: the damage you and your enemy took, the status effects applied, etc.<br></p>
[img['pizzamedia/images/events/tutorial/tutorial8.jpg']]<br>
<h2 style="color:orange">Now that you know the basics, you're ready for any adventure.<br>Welcome to Interdimensional Pizza Delivery. I hope you enjoy the game.</h2><br>
[[Finish the tutorial|Delivery][$gameEngine.tutorial = true, $gameEngine.onScene = false]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "open2">>
<<melissa>>$girls.melissa.displayName! I love it!<</melissa>><br>
[img['pizzamedia/images/girls/melissa/pose2.jpg']]
<p class="reflection">She seems really happy with her new name.</p>
<<say "You" $player.img>>I'm glad you like it.<</say>><br>
<<melissa>>By the way, according to my database, there's a local shop just outside this pizzeria. Maybe you can find something useful there for your adventures.<</melissa>><br>
<<say "You" $player.img>>A store? But we're in the middle of space.<br>What kind of store is it?<</say>><br>
<<melissa>>I don’t know, there’s no information on it.<</melissa>><br>
<<say "You" $player.img>>Well, never mind. I don’t have a spaceship to travel in anyway.<</say>><br>
<<melissa>>I’ve detected an old spaceship in the back of the pizzeria. It doesn’t have a hyperspace module, but for short-distance travel—a few kilometers—it might come in handy.
<</melissa>><br>
<<say "You" $player.img>>I'll take a look at it later.<</say>><br>
<<melissa>>If you need anything, let me know. I'll do my best to help you.<</melissa>><br>
<<say "You" $player.img>>Okay, good to know.<</say>><br>
[[Continue|Pizzeria][$gameEngine.onIntro = false]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "personalarea">>
<<set $gameEngine.onScene = true>>
<span id="choice">
<<say "You" $player.img>>Hey $girls.melissa.displayName, how are you?<</say>><br>
<<melissa>>Oh, hi $player.name, what can I do for you?<</melissa>><br>
[img['pizzamedia/images/girls/melissa/face.jpg']]<br><br>
</span><br><br>
<<link "Do you like working here?">>
<<replace "#choice">><<scrollTop>>
<<say "You" $player.img>>I wanted to ask if you're happy working here.<</say>><br>
<<melissa>>I was programmed for this, so I guess so. My only mission is to serve you and take care of the pizzeria.<</melissa>><br>
[img['pizzamedia/images/girls/melissa/face.jpg']]<br><br>
<<say "You" $player.img>>Would you do anything I ask?<</say>><br>
<<melissa>>Of course, as long as I have the necessary information to perform a task, I’ll assist you with it.<</melissa>><br>
<<say "You" $player.img>>I don't understand. What do you mean when you say you need the necessary information?<</say>><br>
<<melissa>>I haven't been active for very long, so there are a lot of things I don't know, and even though I'm learning new things every day online, I'm limited to certain functions.<br>I've heard about chips that allow robots to expand their capabilities.<</melissa>><br>
<<say "You" $player.img>>That sounds interesting. If I ever find one of those chips, I'll bring it to you.<</say>><br>
<</replace>>
<</link>>
<br><br>
<<link "Ask her about her hobbies">>
<<replace "#choice">><<scrollTop>>
<<say "You" $player.img>>What do you like to do in your free time?<</say>><br>
<<melissa>>Hmm… I like to connect to the Quantum Network and interact with other users like me. I think it helps me learn more about humans.<</melissa>><br>
[img['pizzamedia/images/girls/melissa/face.jpg']]<br><br>
<<say "You" $player.img>>That sounds interesting<</say>><br>
<<melissa>>If you want, someday I can connect you with me and introduce you to my friends.<</melissa>><br>
<<say "You" $player.img>>Can I connect to the Quantum Network? Have you forgotten that I’m not a robot?<</say>><br>
<<melissa>>Oh, that’s right. Although I’ve heard of humans who connect through a special helmet. Maybe you’ll find one somewhere in the universe.<</melissa>><br>
<<say "You" $player.img>>Who knows, maybe someday I’ll find something on my adventures.<</say>><br>
<</replace>>
<</link>>
<br><br>
<<if $boys.minerbot.presentation === true>>
<<set $upper = "You’ve met " + $boys.minerbot.displayName>>
<<link $upper>>
<<replace "#choice">><<scrollTop>>
<<set $upper = "You’ve already met "+ $boys.minerbot.displayName+ " ?">>
<<say "You" $player.img>>$upper<</say>><br>
<<melissa>>Yeah, although I don’t really like him.<</melissa>><br>
[img['pizzamedia/images/girls/melissa/face.jpg']]<br><br>
<<say "You" $player.img>>Why?<</say>><br>
<<melissa>>He wants me to be his girlfriend, but I’ve already turned him down several times.<</melissa>><br>
<<say "You" $player.img>>Wow, I didn’t know robots could feel love.<</say>><br>
<<melissa>>The love algorithm was discovered hundreds of years ago, and I know that guy just wants to take advantage of me and maybe access my kernel.<</melissa>><br>
<<say "You" $player.img>>Sounds like he doesn’t respect your personal space.<</say>><br>
<<melissa>>Totally!! If I were a real human, I’d say something like he’s a pig... I think that’s how you say it.<</melissa>><br>
<<say "You" $player.img>>You're not far off, jeje.<</say>><br>
<</replace>>
<</link>>
<br><br>
<</if>>
[[Go back|Melissa]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "shop0backgroundA">>
<!-- ====== CONFIG PRECIO (MIN / MAX) ====== -->
<<set _priceMin = 50>>
<<set _priceMax = 200>>
<p class="reflection">
You walk through the portal and find yourself in a dark alley. There's no one around.
</p>
[img['pizzamedia/images/events/shop0/background.jpg']]<br><br>
<p class="reflection">
Behind a nearby dumpster, you hear noises, as if there were something… or someone.
</p>
<!-- PANEL DINÁMICO -->
<div id="shopPanel"></div>
<!-- BOTONES INICIALES -->
<div id="mainButtons">
<div class="actionRow">
<span class="btnChoice">
<<link "Approach the dumpster">>
<!-- borra botones iniciales -->
<<replace "#mainButtons">><</replace>>
<!-- crea el ÚNICO botón: Abrir portal -->
<<replace "#portalButton">>
<div class="actionRow">
<span class="btnChoice">
<<link "Open a portal">>
<<goto "NewPortal">>
<</link>>
</span>
</div>
<</replace>>
<!-- muestra tienda -->
<<replace "#shopPanel">>
<<oldguy>>
Hey there… buddy!! I’ve got photos, lots of photos, thousands of photos.<br>
I’ll sell you some at a great price!!
<</oldguy>><br>
[img['pizzamedia/images/boys/oldguy/pose0.jpg']]<br><br>
<<set _availablePics = []>>
<!-- Buscar fotos NO obtenidas -->
<<set _girlKeys = Object.keys($eventGirls)>>
<<for _gi = 0; _gi < _girlKeys.length; _gi++>>
<<set _g = _girlKeys[_gi]>>
<<set _girl = $eventGirls[_g]>>
<<set _picKeys = Object.keys(_girl.album)>>
<<for _pi = 0; _pi < _picKeys.length; _pi++>>
<<set _p = _picKeys[_pi]>>
<<if !_girl.album[_p]>>
<<set _availablePics.push({ girl:_g, pic:_p })>>
<</if>>
<</for>>
<</for>>
<<if _availablePics.length == 0>>
<p class="reflection">
The guy looks at you and shakes his head.<br>
«Sorry, buddy… I don’t have anything left that you don’t already have».
</p>
<<else>>
<!-- Random + toma 3 -->
<<set _availablePics = _availablePics.sort(() => Math.random() - 0.5)>>
<<set _shopPics = _availablePics.slice(0,3)>>
<!-- Asigna un precio aleatorio A CADA FOTO -->
<<for _k = 0; _k < _shopPics.length; _k++>>
<<set _shopPics[_k].price = Math.floor(Math.random() * (_priceMax - _priceMin + 1)) + _priceMin>>
<</for>>
<p class="reflection">He shows you three "sample” photos.</p>
<!-- BLOQUE DE COMPRA -->
<div id="shopOffers" style="display:flex;flex-direction:column;gap:16px;align-items:center;">
<<for _i = 0; _i < _shopPics.length; _i++>>
<<set _pic = _shopPics[_i]>>
<<set _src = $eventGirls[_pic.girl].img + _pic.pic + ".jpg">>
<<set _itemId = "shopItem-" + _i>>
<<capture _pic, _itemId, _src>>
<div @id="_itemId" class="shopItem">
<img @src="_src"
style="width:50%;
border-radius:12px;
filter: grayscale(1) blur(2.2px) contrast(1.15) brightness(.9);
box-shadow: 0 0 18px rgba(0,0,0,.35);
user-select:none; -webkit-user-drag:none;">
<p class="reflection" style="margin:10px 0 8px 0;">
Precio: <strong><<print _pic.price>> MB</strong>
</p>
<<if $player.megaBits >= _pic.price>>
<span class="btnChoice">
<<link "Buy">>
<<set $player.megaBits -= _pic.price>>
<<set $eventGirls[_pic.girl].album[_pic.pic] = true>>
<<run UIBar.update()>>
<<replace `"#"+_itemId`>>
<img @src="_src"
style="width:50%;
border-radius:12px;
box-shadow: 0 0 18px rgba(0,0,0,.35);
user-select:none; -webkit-user-drag:none;">
<p class="reflection" style="color:#2ecc71; margin-top: 10px;">
Bought.
</p>
<</replace>>
<</link>>
</span>
<<else>>
<p class="reflection" style="opacity:.6;">
You don’t have enough MegaBits (you have <<print $player.megaBits>>)
</p>
<</if>>
</div>
<</capture>>
<</for>>
</div>
<</if>>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Wait until another portal opens(+1❄️)">>
<<include "CoolingPizza">>
<<goto "NewPortal">>
<</link>>
</span>
</div>
</div>
<!-- aquí aparecerá el ÚNICO botón tras acercarte -->
<div id="portalButton"></div>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev0Abackground">>
<<set $combatEngine.enemyId = "noby">>
<<noby>>WHAT DID YOU DO TO MY CAT?!!<</noby>><br>
[img['pizzamedia/images/enemies/drugaemon/pose3.jpg']]
<p class="reflection">A scruffy-looking stranger confronts you.</p>
<<noby>>I'M GOING TO KILL YOU!!<</noby>><br>
<!-- BOTONES INFERIORES (se borran con replace cuando $talk.done = true) -->
<div id="talkActions">
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "ShizukaScene1A">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
</div>
<!--
[[ShizukaScene1A]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev11Abackground">>
<<set $combatEngine.enemyId = "walter">>
<<if ndef $talk or $talk.enemyId neq $combatEngine.enemyId>>
<<set $talk = { enemyId: $combatEngine.enemyId, step: 0, done: false }>>
<</if>>
<p class="reflection">You find yourself on a planet similar to Earth, in a residential area.</p><br>
<<walterunknown>>Hey, watch where you're going!<</walterunknown>><br>
[img['pizzamedia/images/enemies/walter/pose1.jpg']]
<p class="reflection">You accidentally bump into a man.</p><br>
<<walterunknown>>Do you know who I am?<</walterunknown>><br>
<<say "You" $player.img>>Well, I can't quite place you right now.<</say>><br>
<<walterunknown>>Say my name.<</walterunknown>>
<p class="reflection">This man starts talking to you in a threatening tone.</p>
<div id="talkPanel">
<div id="talkLog"></div>
<div class="talkBox">
<div id="talkChoices">
<<if $talk.done>>
<p class="reflection">There's no more conversation.</p>
<<else>>
<<switch $talk.step>>
<<case 0>>
<div class="choiceRow">
<span class="btnChoice">
<<link " Gustavo Fring? (+1❄️)">>
<<include "CoolingPizza">>
<<append "#talkLog">>
<<walterunknown>>Seriously? Gustavo Fring? Believe me, you’re in serious trouble now.<</walterunknown>><br>
<<say "You" $player.img>>Hey, don't get mad.<</say>><br>
<<walter>>No one makes fun of Heisenberg, and even less so confuses him with that loser.<br>What’s that you’re carrying there? A pizza?<</walter>><br>
<<say "You" $player.img>>What’s it to you?<</say>><br>
<<walter>>Well, screw your pizza!<</walter>><br>
<<video "pizzamedia/images/enemies/walter/throwingpizza.mp4" >><br>
<p class="reflection">He quickly grabs the pizza box and throws it onto a roof.</p>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">><</replace>>
<<replace "#talkChoices">>
<div class="actionRow">
<span class="btnFight">
<<link "Get revenge">>
<<set $combatEngine.onWin = "LostPizza">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<span class="btnChoice">
<<link "Walk away (you’ve lost the pizza)">><<goto "LostPizza">><</link>>
</span>
</div>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link " Walter White? (+1❄️)">>
<<include "CoolingPizza">>
<<append "#talkLog">>
<<walterunknown>>How do you know my real name? Believe me, you’re in serious trouble now.<</walterunknown>><br>
<<say "You" $player.img>>Hey, look, I don’t want any trouble.<</say>><br>
<<walterunknown>>Are you with the DEA?<br>What’s that you’re carrying there?<</walterunknown>><br>
<<say "You" $player.img>>What’s it to you?<</say>><br>
<<walterunknown>>Well, screw your stupid box!<</walterunknown>><br>
<<video "pizzamedia/images/enemies/walter/throwingpizza.mp4" >><br>
<p class="reflection">He quickly grabs the pizza box and throws it onto a roof.</p>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">><</replace>>
<<replace "#talkChoices">>
<div class="actionRow">
<span class="btnFight">
<<link "Get revenge">>
<<set $combatEngine.onWin = "LostPizza">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<span class="btnChoice">
<<link "Walk away (you’ve lost the pizza)">><<goto "LostPizza">><</link>>
</span>
</div>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link " Heisenberg? (+1❄️)">>
<<include "CoolingPizza">>
<<append "#talkLog">>
<<walter>>That’s right, I can see you’re a guy who knows who he’s dealing with.<br>Let me reward you.<</walter>><br>
[img['pizzamedia/images/consumables/bluerush.jpg']]
<p class="reflection">He hands you a bag of blue powder.</p>
<<set $player.consumables.blueRush.qty++>>
<<set $player.consumables.blueRush.obtained = true>>
<<walter>>It’s 99.9% pure. Believe me, you won’t find anything like this in the entire universe.<</walter>><br>
<<say "You" $player.img>>Wow, thanks.<</say>><br>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">><</replace>>
<<replace "#talkChoices">>
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<span class="btnChoice">
<<link "Leave">><<goto "NewPortal">><</link>>
</span>
</div>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Ignore him (+1❄️)">>
<<include "CoolingPizza">>
<<append "#talkLog">>
<<walterunknown>>Hey, you think you can just ignore me?<</walterunknown>><br>
<<say "You" $player.img>>Sorry I bumped into you. But leave me alone, I’ve got things to do.<</say>><br>
<<walter>>You’re insolent. Nobody ignores Heisenberg.<br>What’s that you’re carrying there?<</walter>><br>
<<say "You" $player.img>>What’s it to you?<</say>><br>
<<walter>>What do I care? Screw your box!<</walter>><br>
<<video "pizzamedia/images/enemies/walter/throwingpizza.mp4" >><br>
<p class="reflection">Quickly, he grabs the pizza box and throws it onto a roof.</p>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">><</replace>>
<<replace "#talkChoices">>
<div class="actionRow">
<span class="btnFight">
<<link "Get revenge">>
<<set $combatEngine.onWin = "LostPizza">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<span class="btnChoice">
<<link "Walk away (you’ve lost the pizza)">><<goto "LostPizza">><</link>>
</span>
</div>
<</replace>>
<</link>>
</span>
<<if $player.consumables.frozenChilliPepper.qty >= 2>>
<span class="btnChoice">
<<link "Apologize to him (+1❄️)">>
<<append "#talkLog">>
<<say "You" $player.img>>I’m sorry about bumping into you, really. I’m in a hurry.<</say>><br>
<<walter>>What’s that smell? Do you happen to have some blue chili-shaped fruits?<</walter>><br>
<<say "You" $player.img>>This? Yeah, I’ve got a few.<</say>><br>
<<walter>>You know what you can cook with those... wait right here.<</walter>><br>
[img['pizzamedia/images/consumables/frozenchillipepper.jpg']]
<<set _givenChilies = $player.consumables.frozenChilliPepper.qty>>
<<set _earnedBlueRush = Math.ceil(_givenChilies / 2)>>
<<set $player.consumables.frozenChilliPepper.qty = 0>>
<p class="reflection">You hand him your _givenChilies chilies and he steps away for a moment.</p>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">><</replace>>
/* Colocamos las opciones de Esperar/Irse en la botonera oficial, no en el log */
<<replace "#talkChoices">>
<div class="actionRow">
<span class="btnChoice">
<<link "Wait 10 minutes (+1❄️)">>
<<include "CoolingPizza">>
<<append "#talkLog">>
<<walter>>Here you go, 50% of the batch. With that chili, I can cook up the purest Blue Rush in the universe.<</walter>><br>
<<say "You" $player.img>>Did you make drugs with that?<</say>><br>
<<walter>>99.9% pure. If you bring me more fruits, we’ll cook up more. We’ll be 50/50 partners.<</walter>><br>
[img['pizzamedia/images/consumables/bluerush.jpg']]
<p class="reflection">He hands you _earnedBlueRush bags of a bluish powder.</p>
<<set $player.consumables.blueRush.qty += _earnedBlueRush>>
<<set $player.consumables.blueRush.obtained = true>>
<</append>>
/* Tras recibir la recompensa, opciones de luchar o marcharte */
<<replace "#talkChoices">>
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<span class="btnChoice">
<<link "Leave">><<goto "NewPortal">><</link>>
</span>
</div>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Don’t wait for him and leave">>
<<append "#talkLog">>
[img['pizzamedia/images/events/ev11/nowaiting.jpg']]
<p class="reflection">You decide not to wait for Walter and leave quickly.</p>
<</append>>
/* Al no esperar, damos el botón final para saltar de pasaje */
<<replace "#talkChoices">>
<div class="actionRow">
<span class="btnChoice">
<<link "A new portal opens">><<goto "NewPortal">><</link>>
</span>
</div>
<</replace>>
<</link>>
</span>
</div>
<</replace>>
<</link>>
</span>
<</if>>
</div>
<</switch>>
<</if>>
</div>
<div id="talkActions">
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
</div>
</div>
</div>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev12Abackground">>
<<set $combatEngine.enemyId = "goose1">>
<<set $combatEngine.onWin = "EV12B">>
<<set $combatEngine.onLose = "Resurrect">>
<p class="reflection">You walk through the portal and find yourself in a park.</p>
[img['pizzamedia/images/enemies/goose/goose.jpg']]
<p class="reflection">A goose approaches you and watches you. It seems friendly.</p>
<!-- CONTENEDOR: botones siempre visibles + panel que se actualiza -->
<div id="choice">
<!-- PANEL QUE CAMBIA (solo esto se reemplaza) -->
<div id="resultPanel">
<div class="actionRow">
<span class="btnChoice">
<<link "Pet it(+1❄️)">>
<<replace "#resultPanel">>
<<set _roll = random(1,100)>>
<<if _roll <= 50>>
[img['pizzamedia/images/enemies/goose/goose1.jpg']]
<p class="reflection">As soon as you pet it, the goose becomes aggressive. Its teeth look very sharp.</p>
<<include "CoolingPizza">>
<br>
<<link "Defend yourself">>
<<goto "StartCombat">>
<</link>>
<<else>>
[img['pizzamedia/images/enemies/goose/caress.jpg']]
<p class="reflection">The goose enjoys being petted</p>
<<set $allowMegabitsLoot = true>>
<<set $allowRegencoinsLoot = true>>
<<set $allowInfinityGemsLoot = true>>
<<set $allowConsumableLoot = true>>
<<set $allowItemsLoot = false>>
<<set $lootmsg = "You have obtained ">>
<<AdventureLoot>>
<<AdventureLootUI>>
<p class="reflection">It leaves you a reward.</p>
<<link "Move on">>
<<goto "NewPortal">>
<</link>>
<</if>>
<</replace>>
<</link>>
</span>
</div>
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
</div>
</div>
<!--
[[EV12B]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev13Abackground">>
<<set $combatEngine.enemyId = "pizzaguy">>
<<if ndef $talk or $talk.enemyId neq $combatEngine.enemyId>>
<<set $talk = { enemyId: $combatEngine.enemyId, step: 0, done: false }>>
<</if>>
<<pizzaguy>>Who the hell are you? What’s that familiar smell?<</pizzaguy>><br>
[img['pizzamedia/images/enemies/pizzaguy/pose1.jpg']]
<p class="reflection">In front of you, you find a... living slice of pizza?</p>
<div id="talkPanel">
<div id="talkLog"></div>
<div class="talkBox">
<div id="talkChoices">
<<if $talk.done>>
<p class="reflection">There’s no more conversation.</p>
<<else>>
<<switch $talk.step>>
<<case 0>>
<div class="choiceRow">
<span class="btnChoice">
<<link "Tell him you don’t want any trouble (+1❄️)">>
<<include "CoolingPizza">>
<<append "#talkLog">>
<<say "You" $player.img>>Look, little guy, I’ve got an order to deliver. I can’t waste my time with you.<</say>><br>
<<pizzaguy>>Little guy? Who the hell do you think you're talking to? Come on, hand over the box before I blow your brains out.<</pizzaguy>><br>
[img['pizzamedia/images/enemies/pizzaguy/angry.jpg']]
<p class="reflection">He reaches behind his back and pulls out a gun.</p>
<</append>>
<<set $talk.step = 1>>
<<replace "#talkChoices">>
<div class="choiceRow">
<span class="btnChoice">
<<link "Tell him you're not going to give him anything (+1❄️)">>
<<include "CoolingPizza">>
<<append "#talkLog">>
<<say "You" $player.img>>Look, you better leave me alone. I'm not giving you the box.<</say>><br>
<<pizzaguy>>Well then, I’ll rip it right out of your hands when you’re a corpse!<</pizzaguy>><br>
[img['pizzamedia/images/enemies/pizzaguy/angry.jpg']]
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">><</replace>>
<<replace "#talkChoices">>
<<actionButtons "NewPortal" "Resurrect" "LostPizza" "Give him the pizza" "Defend yourself" "Run">>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Give him the pizza (+1❄️)">>
<<include "CoolingPizza">>
<<goto "LostPizza">>
<</link>>
</span>
</div>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Show him what’s in the box (+1❄️)">>
<<include "CoolingPizza">>
<<append "#talkLog">>
<<say "You" $player.img>>Look, I’m only carrying a pizza.<</say>><br>
<<pizzaguy>>Cousin Steven!? Oh my God, what have they done to you!<</pizzaguy>><br>
[img['pizzamedia/images/enemies/pizzaguy/showingpizza.jpg']]
<p class="reflection">You open the pizza box and show it to him.</p>
<<pizzaguy>>Get ready to die, monster!<</pizzaguy>><br>
[img['pizzamedia/images/enemies/pizzaguy/angry.jpg']]
<p class="reflection">He pulls out a gun, determined to avenge his relative.</p>
<</append>>
<<set $talk.done = true>>
<<replace "#talkChoices">>
<div class="actionRow">
<span class="btnFight">
<<link "Defend yourself">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
</div>
<</replace>>
<<replace "#talkActions">><</replace>>
<</link>>
</span>
<<if $player.consumables.blueRush.qty > 0>>
<<set _totalProfit = $player.consumables.blueRush.qty * 30>>
<<set $upper = "Sell him Blue Rush (+"+_totalProfit+"MB) (+1❄️)">>
<span class="btnChoice">
<<link $upper>>
<<include "CoolingPizza">>
<<append "#talkLog">>
<<say "You" $player.img>>Look, I brought you this.<</say>><br>
<<set _totalProfit = $player.consumables.blueRush.qty * 100>>
<<pizzaguy>>Wow, yes sir, this is just what I like. Here you go—_totalProfit MegaBits.<</pizzaguy>><br>
[img['pizzamedia/images/enemies/pizzaguy/bluerush.jpg']]
<<set $player.megaBits += _totalProfit>>
<<set $player.consumables.blueRush.qty = 0>>
<p class="reflection">The deal goes through successfully. The "Pizza Guy" seems way too high to keep bothering you.</p>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">>
<span class="btnChoice">
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
</span>
<</replace>>
<<replace "#talkChoices">><</replace>>
<</link>>
</span>
<</if>>
</div>
<</switch>>
<</if>>
</div>
<div id="talkActions">
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
</div>
</div>
</div>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev14Abackground">>
<p class="reflection">You walk through the portal.</p>
[img['pizzamedia/images/events/ev14/backgrounda.jpg']]
<p class="reflection">You feel a hard blow to the head, and everything goes black.</p>
[[Wake up|EV14B]]
</div>
<</nobr>><<nobr>>
<<set _p = ($combatEngine.player ? $combatEngine.player : $playerCombat)>>
/* 3) Calcula % real de huida (jugador - enemigo) */
<<set _enemyEsc = ($enemies[$combatEngine.enemyId] && $enemies[$combatEngine.enemyId].escapeChance != null ? $enemies[$combatEngine.enemyId].escapeChance : 0)>>
<<set _escChance = $combatEngine.player.escapeChance - _enemyEsc>>
<<if _escChance < 0>><<set _escChance = 0>><</if>>
<<if _escChance > 100>><<set _escChance = 100>><</if>>
/* =========================
BOTÓN RUN (antes del combate)
========================= */
<<set $upper = (($runText != null && $runText !== "") ? $runText : "Run") + " (" + _escChance + "%) (+2❄️)">>
<span class="btnRun">
<<link $upper>>
<<set _r = random(1,100)>>
<<if _r <= _escChance>>
<<goto "NewPortal">>
<<else>>
<<set $delivery.pizzaHeat -= 2>>
<<run UIBar.update()>>
<</if>>
<</link>>
</span>
<br>
<</nobr>><<nobr>>
<!--BARRA DE PROGRESO DE VIAJES-->
<<set _max = $delivery.tripsTotal>>
<<set _rem = $delivery.tripsRemaining + 1>>
<!-- seguridad -->
<<set _max = Math.max(1, _max)>>
<<set _rem = Math.min(_max, Math.max(0, _rem))>>
<!-- pips de PROGRESO (se llenan cuando baja a 0):
total=5, rem=5 -> ○○○○○
total=5, rem=3 -> ●●○○○
total=5, rem=0 -> ●●●●●
-->
<<set _filled = _max - _rem>>
<<set _empty = _rem>>
Viaje:
<span class="tripPips">
<<for _i = 0; _i < _filled; _i++>>●<</for>><<for _i = 0; _i < _empty; _i++>>○<</for>>
</span><br>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "coldpizzabackground">>
<p class="reflection">The worst sin a delivery guy can commit. You lost the pizza.</p>
[img['pizzamedia/images/events/lostpizza/lostpizza.jpg']]
<p class="reflection">The greatest shame falls on you...</p>
<br>
<<link "Go back to the pizzeria">>
<<goto "ResetDelivery">>
<</link>>
<!--
[[Pizzeria]]
-->
</div>
<</nobr>><<nobr>>
<<if !Macro.get("actionButtons")>>
<<widget "actionButtons">>
<<set _winPassage = $args[0]>>
<<set _losePassage = $args[1]>>
<<set _givePizzaPassage = $args[2]>>
<<set _givePizzaText = $args[3]>>
<<set _fightText = $args[4]>>
<<set $runText = $args[5]>>
<div class="actionRow">
<<capture _givePizzaPassage, _winPassage, _losePassage>>
<span class="btnLostPizza">
<<link _givePizzaText>>
/* SIN COMILLAS */
<<goto _givePizzaPassage>>
<</link>>
</span>
<span class="btnFight">
<<link _fightText>>
<<set $combatEngine.onWin = _winPassage>>
<<set $combatEngine.onLose = _losePassage>>
<<goto "StartCombat">>
<</link>>
</span>
<</capture>>
<<include "Run">>
</div>
<</widget>>
<</if>>
<</nobr>><<nobr>>
<<set $delivery.pizzaHeat-->>
<<set $upper = "The pizza is getting cold...("+(10 - $delivery.pizzaHeat) +"/10)">>
<span class="frostBlue">$upper</span><br>
<<run UIBar.update()>>
<</nobr>><<nobr>>
<<if !Macro.get("AdventureLoot")>>
<<widget "AdventureLoot">>
/* 1. SELECCIÓN DE ID DE ENEMIGO */
<<set _enemyId = $adventureLootEnemyId || ($combatEngine ? $combatEngine.enemyId : "")>>
<<set _enemyTable = ($enemyLoot && _enemyId ? $enemyLoot[_enemyId] : null)>>
<<if ndef $lootmsg>><<set $lootmsg = "You have obtained ">><</if>>
/* 2. PASO 1: SORTEO DE CATEGORÍA con itemDropChance */
<<set _dropBonus = 0>>
<<if $combatEngine && $combatEngine.player && $combatEngine.player.itemDropChance>>
<<set _dropBonus = Number($combatEngine.player.itemDropChance)>>
<</if>>
<<if isNaN(_dropBonus)>><<set _dropBonus = 0>><</if>>
<<set _itemChanceReal = Math.min(95, $lootTypeChances.item + _dropBonus)>>
<<set _fallbackChance = $lootTypeChances.fallback>>
<<set _consChanceReal = Math.max(1, 100 - _itemChanceReal - _fallbackChance)>>
<<set _catRoll = random(1, 100)>>
<<set _chosenCategory = "fallback">>
<<if $allowItemsLoot !== false && _catRoll <= _itemChanceReal>>
<<set _chosenCategory = "item">>
<<elseif $allowConsumableLoot !== false && _catRoll <= (_itemChanceReal + _consChanceReal)>>
<<set _chosenCategory = "consumable">>
<</if>>
/* 3. PASO 2: SORTEO DE RAREZA */
<<set _rarRoll = random(1, 100)>>
<<set _chosenRarity = "common">>
<<set _accRar = 0>>
<<for _i = 0; _i < $lootRarityOrder.length; _i++>>
<<set _rar = $lootRarityOrder[_i]>>
<<set _accRar += ($rarityChances[_rar] || 0)>>
<<if _rarRoll <= _accRar>>
<<set _chosenRarity = _rar>>
<<break>>
<</if>>
<</for>>
/* Helper: busca pool de items filtrando por rareza */
<<set _findItemPool = function(rarity){
var pool = [];
if (!_enemyTable || !_enemyTable.items) return pool;
for (var i = 0; i < _enemyTable.items.length; i++){
var entry = _enemyTable.items[i];
var itemData = $player.items[entry.key];
if (itemData && itemData.rarity === rarity && (itemData.qty || 0) <= 0){
pool.push(entry.key);
}
}
return pool;
}>>
/* Helper: busca pool de consumibles filtrando por rareza */
<<set _findConsPool = function(rarity){
var pool = [];
if (!_enemyTable || !_enemyTable.consumables) return pool;
for (var i = 0; i < _enemyTable.consumables.length; i++){
var entry = _enemyTable.consumables[i];
var consData = $player.consumables[entry.key];
if (consData && consData.rarity === rarity){
pool.push(entry);
}
}
return pool;
}>>
/* 4. PASO 3: SELECCIÓN DE BOTÍN con fallback a rareza inferior */
<<set _finalLoot = null>>
<<set _rarityIndex = $lootRarityOrder.indexOf(_chosenRarity)>>
/* --- LÓGICA DE ITEMS --- */
<<if _chosenCategory === "item">>
<<set _pool = []>>
<<set _usedRarity = _chosenRarity>>
<<set _idx = _rarityIndex>>
/* Intenta desde la rareza sorteada hacia abajo */
<<for _ri = _idx; _ri >= 0; _ri-->>
<<set _tryRarity = $lootRarityOrder[_ri]>>
<<set _pool = _findItemPool(_tryRarity)>>
<<if _pool.length > 0>>
<<set _usedRarity = _tryRarity>>
<<break>>
<</if>>
<</for>>
<<if _pool.length > 0>>
<<set _key = _pool.random()>>
<<set $player.items[_key].qty = 1>>
<<set $player.items[_key].obtained = true>>
<<set _chosenRarity = _usedRarity>>
<<set _finalLoot = { type: "item", name: $player.items[_key].name, img: $player.items[_key].img, qty: 1 }>>
<<else>>
<<set _chosenCategory = "fallback">>
<</if>>
<</if>>
/* --- LÓGICA DE CONSUMIBLES --- */
<<if _chosenCategory === "consumable">>
<<set _pool = []>>
<<set _usedRarity = _chosenRarity>>
<<set _idx = _rarityIndex>>
<<set _pickEntry = null>>
/* Intenta desde la rareza sorteada hacia abajo */
<<for _ri = _idx; _ri >= 0; _ri-->>
<<set _tryRarity = $lootRarityOrder[_ri]>>
<<set _pool = _findConsPool(_tryRarity)>>
<<if _pool.length > 0>>
<<set _usedRarity = _tryRarity>>
<<set _pickEntry = _pool.random()>>
<<break>>
<</if>>
<</for>>
<<if _pickEntry>>
<<set _qty = random(_pickEntry.qtyMin || 1, _pickEntry.qtyMax || 1)>>
<<set $player.consumables[_pickEntry.key].qty += _qty>>
<<set $player.consumables[_pickEntry.key].obtained = true>>
<<set _chosenRarity = _usedRarity>>
<<set _finalLoot = { type: "consumable", name: $player.consumables[_pickEntry.key].name, img: $player.consumables[_pickEntry.key].img, qty: _qty }>>
<<else>>
<<set _chosenCategory = "fallback">>
<</if>>
<</if>>
/* --- LÓGICA DE FALLBACK (Dinero/Gemas) --- */
<<if _chosenCategory === "fallback" || !_finalLoot>>
<<set _poolFB = []>>
<<if $allowMegabitsLoot !== false>><<run _poolFB.push($fallbackRewards[0])>><</if>>
<<if $allowRegencoinsLoot !== false>><<run _poolFB.push($fallbackRewards[1])>><</if>>
<<if $allowInfinityGemsLoot !== false>><<run _poolFB.push($fallbackRewards[2])>><</if>>
<<if _poolFB.length === 0>>
<<set _resFB = $fallbackRewards[0]>>
<<else>>
<<set _resFB = _poolFB.random()>>
<</if>>
<<set _chosenRarity = _resFB.rarity || "common">>
<<if _resFB.key === "megabits">>
<<set _qty = random(25, 50)>>
<<set $player.megaBits += _qty>>
<<set _finalLoot = { name: "Megabits", img: "pizzamedia/images/storycaption/megabits.jpg", qty: _qty }>>
<<elseif _resFB.key === "regencoins">>
<<set _qty = random(1, 2)>>
<<set $player.regencoins += _qty>>
<<set _finalLoot = { name: "Regencoins", img: "pizzamedia/images/storycaption/regencoin.jpg", qty: _qty }>>
<<else>>
<<set _gemNum = random(1, 6)>>
<<set $player.infinityGems += 1>>
<<set _finalLoot = { name: "Infinity Gem", img: "pizzamedia/images/storycaption/infinitygem" + _gemNum + ".jpg", qty: 1 }>>
<<set _chosenRarity = "legendary">>
<</if>>
<</if>>
/* 5. GUARDAR RESULTADO */
<<set _rName = (_chosenRarity.charAt(0).toUpperCase() + _chosenRarity.slice(1))>>
<<if $lootRarity && $lootRarity[_chosenRarity]>>
<<set _rName = $lootRarity[_chosenRarity].name>>
<</if>>
<<set $lastLoot = {
type: _chosenCategory,
name: _finalLoot.name,
img: _finalLoot.img,
qty: _finalLoot.qty,
rarity: _chosenRarity,
rarityName: _rName,
msg: $lootmsg + _finalLoot.name + (_finalLoot.qty > 1 ? " x" + _finalLoot.qty : "")
}>>
<</widget>>
<</if>>
<</nobr>><<nobr>>
<<set $enemies = {
"mime": {
name:"Mime",
presentation: false,
difficulty:"medium",
hp: 120, maxHp: 120,
accuracy: 82, evasion: 4,
critChance: 7, critMult: 1.6,
lifeStealPct: 0,
escapeChance: 25,
damage: { physical: 7, fire: 0, cold: 0, corrosive: 0, electric: 14 },
resist: { physical: 35, fire: 29, cold: 29, corrosive: 29, electric: 86 },
outgoingEffects:[{ name:"Freeze", color:"blue", type:"stun", damageType:"cold", chance: 14, turns: 2 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/mime/pose0.jpg", defeatImg:"pizzamedia/images/enemies/mime/defeat.jpg", dialogColor:"blue",
secondPhase: false
},
"drugaemon": {
name:"Drugaemon",
presentation: false,
difficulty:"easy",
hp: 80, maxHp: 80,
accuracy: 76, evasion: 0,
critChance: 4, critMult: 1.5,
lifeStealPct: 0,
escapeChance: 10,
damage: { physical: 14, fire: 0, cold: 0, corrosive: 0, electric: 0 },
resist: { physical: 32, fire: 50, cold: -10, corrosive: 21, electric: 21 },
outgoingEffects:[{ name:"Bleeding", color:"red", type:"damage", damageType:"physical", chance: 18, turns: 2, perTurn: 3 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/drugaemon/pose2.jpg", defeatImg:"pizzamedia/images/enemies/drugaemon/defeat.jpg", dialogColor:"#ffa0bd",
secondPhase: false
},
"noby": {
name:"Noby",
presentation: false,
difficulty:"easy",
hp: 82, maxHp: 82,
accuracy: 78, evasion: 3,
critChance: 5, critMult: 1.5,
lifeStealPct: 0,
escapeChance: 12,
damage: { physical: 10, fire: 6, cold: 0, corrosive: 0, electric: 0 },
resist: { physical: 37, fire: 80, cold: -8, corrosive: 21, electric: 21 },
outgoingEffects:[{ name:"Bleeding", color:"red", type:"damage", damageType:"physical", chance: 16, turns: 2, perTurn: 3 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/noby/face.jpg", defeatImg:"pizzamedia/images/enemies/noby/defeat.jpg", dialogColor:"#ffa0bd",
secondPhase: false,
},
"mullog": {
name:"Mullog",
presentation: false,
difficulty:"easy",
hp: 100, maxHp: 100,
accuracy: 78, evasion: 3,
critChance: 5, critMult: 1.5,
lifeStealPct: 0,
escapeChance: 12,
damage: { physical: 10, fire: 0, cold: 0, corrosive: 6, electric: 0 },
resist: { physical: 37, fire: 80, cold: -8, corrosive: 21, electric: 21 },
outgoingEffects:[{ name:"Bleeding", color:"red", type:"damage", damageType:"physical", chance: 16, turns: 2, perTurn: 3 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/mullog/face.jpg", defeatImg:"pizzamedia/images/enemies/mullog/defeat.jpg", dialogColor:"#ffa0bd",
secondPhase: false,
},
"nerd": {
name:"Christopher",
presentation: false,
difficulty:"easy",
hp: 82, maxHp: 82,
accuracy: 78, evasion: 3,
critChance: 5, critMult: 1.5,
lifeStealPct: 0,
escapeChance: 12,
damage: { physical: 12, fire: 0, cold: 0, corrosive: 0, electric: 0 },
resist: { physical: 37, fire: 80, cold: -8, corrosive: 21, electric: 21 },
outgoingEffects:[],
incomingEffects:[],
img:"pizzamedia/images/enemies/nerdguy/face.jpg", defeatImg:"pizzamedia/images/enemies/nerdguy/defeat.jpg",
dialogColor:"#ffa0bd",
secondPhase: false,
},
"woodenMan": {
name:"Wooden Man",
presentation: false,
difficulty:"elite",
hp: 190, maxHp: 190,
accuracy: 84, evasion: 4,
critChance: 8, critMult: 1.7,
lifeStealPct: 0,
escapeChance: 40,
damage: { physical: 32, fire: 0, cold: 0, corrosive: 0, electric: 0 },
resist: { physical: 97, fire: -20, cold: 65, corrosive: 56, electric: 56 },
outgoingEffects:[],
incomingEffects:[],
img:"pizzamedia/images/enemies/woodenman/angryface.jpg", defeatImg:"pizzamedia/images/enemies/woodenman/defeat.jpg", dialogColor:"#ffa0bd",
secondPhase: false,
},
"walter": {
name:"Heisenberg",
presentation: false,
difficulty:"easy",
hp: 80, maxHp: 80,
accuracy: 76, evasion: 0,
critChance: 4, critMult: 1.5,
lifeStealPct: 0,
escapeChance: 8,
damage: { physical: 14, fire: 0, cold: 0, corrosive: 0, electric: 0 },
resist: { physical: 34, fire: 41, cold: 18, corrosive: 21, electric: 21 },
outgoingEffects:[],
incomingEffects:[],
img:"pizzamedia/images/enemies/walter/face.jpg", defeatImg:"pizzamedia/images/enemies/walter/defeat.jpg", dialogColor:"#ffa0bd",
secondPhase: false,
},
"nail": {
name:"Nail",
presentation: false,
difficulty:"medium",
hp: 160, maxHp: 160,
accuracy: 84, evasion: 8,
critChance: 8, critMult: 1.7,
lifeStealPct: 0,
escapeChance: 28,
damage: { physical: 12, fire: 0, cold: 0, corrosive: 14, electric: 0 },
resist: { physical: 58, fire: -10, cold: 43, corrosive: 86, electric: 38 },
outgoingEffects:[{ name:"Rust disease", color:"brown", type:"damage", damageType:"corrosive", chance: 24, turns: 2, perTurn: 4 }],
incomingEffects:[],
img:"pizzamedia/images/events/ev1/face.jpg", defeatImg:"pizzamedia/images/events/ev1/defeat.jpg", dialogColor:"#45d7ff",
secondPhase: false,
},
"larry": {
name:"Larry The Slyme",
presentation: false,
difficulty:"easy",
hp: 90, maxHp: 90,
accuracy: 76, evasion: 0,
critChance: 4, critMult: 1.5,
lifeStealPct: 0,
escapeChance: 8,
damage: { physical: 5, fire: 0, cold: 0, corrosive: 11, electric: 0 },
resist: { physical: 30, fire: 21, cold: 21, corrosive: 86, electric: 21 },
outgoingEffects:[{ name:"Poison", color:"purple", type:"damage", damageType:"corrosive", chance: 24, turns: 3, perTurn: 3 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/larry/angry.jpg", defeatImg:"pizzamedia/images/enemies/larry/defeat.jpg", dialogColor:"#61ff6a",
secondPhase: false
},
"larryboyfriend": {
name:"Larry's Boyfriend",
presentation: false,
difficulty:"easy",
hp: 113, maxHp: 113,
accuracy: 80, evasion: 2,
critChance: 5, critMult: 1.6,
lifeStealPct: 0,
escapeChance: 12,
damage: { physical: 7, fire: 0, cold: 0, corrosive: 14, electric: 0 },
resist: { physical: 39, fire: 24, cold: 24, corrosive: 91, electric: 24 },
outgoingEffects:[{ name:"Poison", color:"purple", type:"damage", damageType:"corrosive", chance: 28, turns: 3, perTurn: 4 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/larryboyfriend/face.jpg", defeatImg:"pizzamedia/images/enemies/larryboyfriend/defeat.jpg", dialogColor:"#61ff6a",
secondPhase: false,
},
"miniCristallizedGolem": {
name:"Mini Cristallized Golem",
presentation: false,
difficulty:"easy",
hp: 101, maxHp: 101,
accuracy: 76, evasion: 0,
critChance: 4, critMult: 1.5,
lifeStealPct: 0,
escapeChance: 10,
damage: { physical: 17, fire: 0, cold: 0, corrosive: 0, electric: 0 },
resist: { physical: 80, fire: 13, cold: 45, corrosive: 34, electric: 34 },
outgoingEffects:[{ name:"Crystallization", color:"grey", type:"stun", chance: 12, turns: 2 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/minicristallizedgolem/face.jpg", defeatImg:"pizzamedia/images/enemies/minicristallizedgolem/defeat.jpg", dialogColor:"#61ff6a",
secondPhase: false
},
"crystallizedGolem": {
name:"Crystallized Golem",
presentation: false,
difficulty:"medium",
hp: 146, maxHp: 146,
accuracy: 82, evasion: 6,
critChance: 7, critMult: 1.7,
lifeStealPct: 0,
escapeChance: 26,
damage: { physical: 24, fire: 0, cold: 0, corrosive: 0, electric: 0 },
resist: { physical: 86, fire: 29, cold: 60, corrosive: 47, electric: 47 },
outgoingEffects:[{ name:"Crystallization", color:"grey", type:"stun", chance: 14, turns: 2 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/crystallizedgolem/face.jpg", defeatImg:"pizzamedia/images/enemies/crystallizedgolem/defeat.jpg", dialogColor:"#61ff6a",
secondPhase: false
},
"crystallizedCentipede": {
name:"Crystallized Centipede",
presentation: false,
difficulty:"hard",
hp: 205, maxHp: 205,
accuracy: 86, evasion: 6,
critChance: 8, critMult: 1.8,
lifeStealPct: 0,
escapeChance: 38,
damage: { physical: 34, fire: 0, cold: 0, corrosive: 0, electric: 0 },
resist: { physical: 97, fire: 41, cold: 70, corrosive: 58, electric: 58 },
outgoingEffects:[{ name:"Crystallization", color:"grey", type:"stun", chance: 18, turns: 2 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/crystallizedcentipede/face.jpg", defeatImg:"pizzamedia/images/enemies/crystallizedcentipede/defeat.jpg", dialogColor:"#61ff6a",
secondPhase: false
},
"wishDragon": {
name:"Wish Dragon",
presentation: false,
difficulty:"boss",
hp: 276, maxHp: 276,
accuracy: 88, evasion: 8,
critChance: 12, critMult: 1.9,
lifeStealPct: 0,
escapeChance: 45,
damage: { physical: 20, fire: 0, cold: 0, corrosive: 0, electric: 38 },
resist: { physical: 84, fire: 72, cold: 72, corrosive: 65, electric: 97 },
outgoingEffects:[{ name:"Electro-Shock", color:"yellow", type:"paralysis", damageType:"electric", chance: 26, turns: 1, failChance: 35 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/wishdragon/face.jpg", defeatImg:"pizzamedia/images/enemies/wishdragon/defeat.jpg", dialogColor:"#61ff6a",
secondPhase: false
},
"imp": {
name:"Imp",
presentation: false,
difficulty:"easy",
hp: 84, maxHp: 84,
accuracy: 78, evasion: 3,
critChance: 4, critMult: 1.5,
lifeStealPct: 0,
escapeChance: 10,
damage: { physical: 4, fire: 14, cold: 0, corrosive: 0, electric: 0 },
resist: { physical: 30, fire: 86, cold: -18, corrosive: 21, electric: 24 },
outgoingEffects:[{ name:"Burn", color:"orange", type:"damage", damageType:"fire", chance: 26, turns: 3, perTurn: 3 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/imp/face.jpg", defeatImg:"pizzamedia/images/enemies/imp/defeat.jpg", dialogColor:"#61ff6a",
secondPhase: false
},
"cultist": {
name:"Cultist",
presentation: false,
difficulty:"medium",
hp: 124, maxHp: 124,
accuracy: 82, evasion: 5,
critChance: 6, critMult: 1.7,
lifeStealPct: 0,
escapeChance: 25,
damage: { physical: 5, fire: 21, cold: 0, corrosive: 0, electric: 0 },
resist: { physical: 38, fire: 97, cold: 13, corrosive: 35, electric: 32 },
outgoingEffects:[{ name:"Explosion", color:"red", type:"damage", damageType:"fire", chance: 22, turns: 1, perTurn: 10 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/cultist/face.jpg", defeatImg:"pizzamedia/images/enemies/cultist/defeat1.jpg", dialogColor:"#61ff6a",
secondPhase: true
},
"cultistGroup": {
name:"Cultist Group",
presentation: false,
difficulty:"hard",
hp: 189, maxHp: 189,
accuracy: 84, evasion: 6,
critChance: 8, critMult: 1.8,
lifeStealPct: 0,
escapeChance: 35,
damage: { physical: 7, fire: 30, cold: 0, corrosive: 0, electric: 0 },
resist: { physical: 50, fire: 97, cold: 20, corrosive: 45, electric: 43 },
outgoingEffects:[{ name:"Explosion", color:"red", type:"damage", damageType:"fire", chance: 26, turns: 1, perTurn: 12 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/cultist/facephase2.jpg", defeatImg:"pizzamedia/images/enemies/cultist/defeat.jpg", dialogColor:"#61ff6a",
secondPhase: false
},
"phoenix": {
name:"Phoenix",
presentation: false,
difficulty:"medium",
hp: 135, maxHp: 135,
accuracy: 82, evasion: 6,
critChance: 7, critMult: 1.7,
lifeStealPct: 0,
escapeChance: 24,
damage: { physical: 5, fire: 21, cold: 0, corrosive: 0, electric: 0 },
resist: { physical: 35, fire: 97, cold: 4, corrosive: 33, electric: 33 },
outgoingEffects:[{ name:"Burn", color:"orange", type:"damage", damageType:"fire", chance: 24, turns: 3, perTurn: 4 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/phoenix/face.jpg", defeatImg:"pizzamedia/images/enemies/phoenix/defeat1.jpg", dialogColor:"#61ff6a",
secondPhase: true
},
"phoenixphase2": {
name:"Blue Phoenix",
presentation: false,
difficulty:"medium",
hp: 158, maxHp: 158,
accuracy: 84, evasion: 8,
critChance: 8, critMult: 1.8,
lifeStealPct: 0,
escapeChance: 28,
damage: { physical: 0, fire: 24, cold: 9, corrosive: 0, electric: 0 },
resist: { physical: 38, fire: 96, cold: 82, corrosive: 38, electric: 38 },
outgoingEffects:[{ name:"Blue Burn", color:"cyan", type:"damage", damageType:"fire", chance: 24, turns: 2, perTurn: 6 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/phoenix/facephase2.jpg", defeatImg:"pizzamedia/images/enemies/phoenix/defeat.jpg", dialogColor:"#61ff6a",
secondPhase: true
},
"fireDragon": {
name:"Fire Dragon",
presentation: false,
difficulty:"hard",
hp: 220, maxHp: 220,
accuracy: 86, evasion: 6,
critChance: 9, critMult: 1.9,
lifeStealPct: 0,
escapeChance: 40,
damage: { physical: 10, fire: 34, cold: 0, corrosive: 0, electric: 0 },
resist: { physical: 59, fire: 97, cold: 27, corrosive: 52, electric: 52 },
outgoingEffects:[{ name:"Burn", color:"orange", type:"damage", damageType:"fire", chance: 32, turns: 2, perTurn: 6 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/firedragon/face.jpg", defeatImg:"pizzamedia/images/enemies/firedragon/defeat.jpg", dialogColor:"#61ff6a",
secondPhase: false
},
"fireGhost": {
name:"Fire Ghost",
presentation: false,
difficulty:"boss",
hp: 250, maxHp: 250,
accuracy: 86, evasion: 6,
critChance: 9, critMult: 1.9,
lifeStealPct: 0,
escapeChance: 60,
damage: { physical: 15, fire: 54, cold: 0, corrosive: 0, electric: 0 },
resist: { physical: 78, fire: 97, cold: 27, corrosive: 67, electric: 68 },
outgoingEffects:[{ name:"Burn", color:"orange", type:"damage", damageType:"fire", chance: 32, turns: 2, perTurn: 6 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/fireghost/face.jpg", defeatImg:"pizzamedia/images/enemies/fireghost/defeat.jpg", dialogColor:"#61ff6a",
secondPhase: false
},
"snowflakes": {
name:"Snowflakes",
presentation: false,
difficulty:"easy",
hp: 88, maxHp: 88,
accuracy: 76, evasion: 0,
critChance: 4, critMult: 1.5,
lifeStealPct: 0,
escapeChance: 12,
damage: { physical: 6, fire: 0, cold: 12, corrosive: 0, electric: 0 },
resist: { physical: 29, fire: 70, cold: 86, corrosive: 21, electric: 21 },
outgoingEffects:[{ name:"Freezing", color:"cyan", type:"stun", damageType:"cold", chance: 14, turns: 2 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/snowflakes/face.jpg", defeatImg:"pizzamedia/images/enemies/snowflakes/defeat.jpg", dialogColor:"#45d7ff",
secondPhase: false,
},
"olaf": {
name:"Olaf",
presentation: false,
difficulty:"easy",
hp: 100, maxHp: 100,
accuracy: 86, evasion: 0,
critChance: 4, critMult: 1.5,
lifeStealPct: 0,
escapeChance: 12,
damage: { physical: 6, fire: 0, cold: 20, corrosive: 0, electric: 0 },
resist: { physical: 29, fire: 70, cold: 86, corrosive: 21, electric: 21 },
outgoingEffects:[{ name:"Freezing", color:"cyan", type:"stun", damageType:"cold", chance: 14, turns: 2 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/olaf/faceangry.jpg", defeatImg:"pizzamedia/images/enemies/olaf/defeat.jpg", dialogColor:"#45d7ff",
secondPhase: false,
},
"yeti": {
name:"Yeti",
presentation: false,
difficulty:"medium",
hp: 139, maxHp: 139,
accuracy: 82, evasion: 4,
critChance: 6, critMult: 1.7,
lifeStealPct: 0,
escapeChance: 28,
damage: { physical: 9, fire: 0, cold: 19, corrosive: 0, electric: 0 },
resist: { physical: 47, fire: 4, cold: 97, corrosive: 35, electric: 35 },
outgoingEffects:[{ name:"Slowness", color:"blue", type:"paralysis", chance: 34, turns: 2 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/yeti/face.jpg", defeatImg:"pizzamedia/images/enemies/yeti/defeat.jpg", dialogColor:"#45d7ff",
secondPhase: false,
},
"icedragon": {
name:"Ice Dragon",
presentation: false,
difficulty:"hard",
hp: 205, maxHp: 205,
accuracy: 86, evasion: 8,
critChance: 8, critMult: 1.8,
lifeStealPct: 0,
escapeChance: 40,
damage: { physical: 7, fire: 0, cold: 32, corrosive: 0, electric: 0 },
resist: { physical: 45, fire: 90, cold: 97, corrosive: 50, electric: 50 },
outgoingEffects:[{ name:"Frost", color:"blue", type:"stun", damageType:"cold", chance: 20, turns: 2 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/icedragon/face.jpg", defeatImg:"pizzamedia/images/enemies/icedragon/defeat.jpg", dialogColor:"#45d7ff",
secondPhase: false,
},
"elsa": {
name:"Elsa",
presentation: false,
difficulty:"hard",
hp: 187, maxHp: 187,
accuracy: 88, evasion: 10,
critChance: 8, critMult: 1.8,
lifeStealPct: 0,
escapeChance: 42,
damage: { physical: 0, fire: 0, cold: 29, corrosive: 0, electric: 5 },
resist: { physical: 32, fire: 27, cold: 97, corrosive: 50, electric: 55 },
outgoingEffects:[{ name:"Frost", color:"blue", type:"stun", damageType:"cold", chance: 22, turns: 2 }],
incomingEffects:[],
img:"pizzamedia/images/girls/elsa/angryface.jpg", defeatImg:"pizzamedia/images/girls/elsa/defeat.jpg", dialogColor:"#45d7ff",
secondPhase: false,
},
"morpheus": {
name:"morpheus",
presentation: false,
difficulty:"hard",
hp: 196, maxHp: 196,
accuracy: 86, evasion: 9,
critChance: 8, critMult: 1.8,
lifeStealPct: 0,
escapeChance: 40,
damage: { physical: 12, fire: 0, cold: 25, corrosive: 0, electric: 0 },
resist: { physical: 52, fire: 18, cold: 97, corrosive: 45, electric: 45 },
outgoingEffects:[{ name:"Frost", color:"blue", type:"stun", damageType:"cold", chance: 18, turns: 2 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/morpheus/face.jpg", defeatImg:"pizzamedia/images/enemies/morpheus/defeat.jpg", dialogColor:"#45d7ff",
secondPhase: false,
},
"corrosiveFly": {
name:"Corrosive Fly",
presentation: false,
difficulty:"easy",
hp: 82, maxHp: 82,
accuracy: 78, evasion: 2,
critChance: 4, critMult: 1.5,
lifeStealPct: 8,
escapeChance: 6,
damage: { physical: 3, fire: 0, cold: 0, corrosive: 14, electric: 0 },
resist: { physical: 28, fire: 21, cold: 21, corrosive: 86, electric: -10 },
outgoingEffects:[{ name:"Corrosion", color:"green", type:"damage", damageType:"corrosive", chance: 26, turns: 3, perTurn: 3 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/corrosivefly/face.jpg", defeatImg:"pizzamedia/images/enemies/corrosivefly/defeat.jpg", dialogColor:"#45d7ff",
secondPhase: false,
},
"corrosiveToad": {
name:"Corrosive Toad",
presentation: false,
difficulty:"medium",
hp: 135, maxHp: 135,
accuracy: 80, evasion: 4,
critChance: 6, critMult: 1.7,
lifeStealPct: 0,
escapeChance: 26,
damage: { physical: 7, fire: 0, cold: 0, corrosive: 21, electric: 0 },
resist: { physical: 47, fire: 31, cold: 31, corrosive: 97, electric: 24 },
outgoingEffects:[{ name:"Plague", color:"purple", type:"damage", damageType:"corrosive", chance: 30, turns: 3, perTurn: 4 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/corrosivetoad/face.jpg", defeatImg:"pizzamedia/images/enemies/corrosivetoad/defeat.jpg", dialogColor:"#45d7ff",
secondPhase: false,
},
"corrosiveAnomaly": {
name:"Corrosive Anomaly",
presentation: false,
difficulty:"medium",
hp: 126, maxHp: 126,
accuracy: 82, evasion: 6,
critChance: 6, critMult: 1.7,
lifeStealPct: 0,
escapeChance: 25,
damage: { physical: 5, fire: 0, cold: 0, corrosive: 23, electric: 0 },
resist: { physical: 38, fire: 35, cold: 35, corrosive: 97, electric: 26 },
outgoingEffects:[{ name:"Plague", color:"purple", type:"damage", damageType:"corrosive", chance: 28, turns: 3, perTurn: 4 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/corrosiveanomaly/face.jpg", defeatImg:"pizzamedia/images/enemies/corrosiveanomaly/defeat.jpg", dialogColor:"#45d7ff",
secondPhase: false,
},
"mimic": {
name:"Mimic",
presentation: false,
difficulty:"medium",
hp: 150, maxHp: 150,
accuracy: 82, evasion: 6,
critChance: 6, critMult: 1.7,
lifeStealPct: 0,
escapeChance: 25,
damage: { physical: 10, fire: 0, cold: 0, corrosive: 20, electric: 0 },
resist: { physical: 50, fire: 50, cold: 50, corrosive: 97, electric: 40 },
outgoingEffects:[{ name:"Plague", color:"purple", type:"damage", damageType:"corrosive", chance: 28, turns: 3, perTurn: 5 },{ name:"Sangrado", color:"red", type:"damage", damageType:"physical", chance: 16, turns: 2, perTurn: 5 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/mimic/face.jpg", defeatImg:"pizzamedia/images/enemies/mimic/defeat.jpg",
dialogColor:"#45d7ff",
secondPhase: false,
},
"corrosiveMosquito": {
name:"Corrosive Mosquito",
presentation: false,
difficulty:"medium",
hp: 120, maxHp: 120,
accuracy: 82, evasion: 12,
critChance: 6, critMult: 1.7,
lifeStealPct: 8,
escapeChance: 20,
damage: { physical: 5, fire: 0, cold: 0, corrosive: 19, electric: 0 },
resist: { physical: 33, fire: 31, cold: 31, corrosive: 96, electric: 17 },
outgoingEffects:[{ name:"Plague", color:"purple", type:"damage", damageType:"corrosive", chance: 28, turns: 2, perTurn: 4 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/corrosivemosquito/face.jpg", defeatImg:"pizzamedia/images/enemies/corrosivemosquito/defeat.jpg", dialogColor:"#45d7ff",
secondPhase: false,
},
"basilisk": {
name:"Basilisk",
presentation: false,
difficulty:"hard",
hp: 194, maxHp: 194,
accuracy: 88, evasion: 14,
critChance: 8, critMult: 1.8,
lifeStealPct: 0,
escapeChance: 38,
damage: { physical: 5, fire: 0, cold: 0, corrosive: 34, electric: 0 },
resist: { physical: 38, fire: 34, cold: 34, corrosive: 97, electric: 34 },
outgoingEffects:[{ name:"Poison", color:"green", type:"damage", damageType:"corrosive", chance: 36, turns: 3, perTurn: 6 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/basilisk/face.jpg", defeatImg:"pizzamedia/images/enemies/basilisk/defeat.jpg",
secondPhase: false,
},
"crazyman": {
name:"Crazy Man",
presentation: false,
difficulty:"easy",
hp: 88, maxHp: 88,
accuracy: 80, evasion: 2,
critChance: 5, critMult: 1.5,
lifeStealPct: 0,
escapeChance: 12,
damage: { physical: 2, fire: 0, cold: 0, corrosive: 0, electric: 16 },
resist: { physical: 26, fire: 21, cold: 21, corrosive: -8, electric: 86 },
outgoingEffects:[{ name:"Paralysis", color:"yellow", type:"paralysis", damageType:"electric", chance: 18, turns: 1, failChance: 35 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/crazyman/angryface.jpg", defeatImg:"pizzamedia/images/enemies/crazyman/defeat.jpg",
secondPhase: false,
},
"mecha": {
name:"Mecha",
presentation: false,
difficulty:"hard",
hp: 205, maxHp: 205,
accuracy: 88, evasion: 10,
critChance: 8, critMult: 1.8,
lifeStealPct: 0,
escapeChance: 38,
damage: { physical: 12, fire: 0, cold: 0, corrosive: 0, electric: 27 },
resist: { physical: 66, fire: 50, cold: 50, corrosive: 41, electric: 97 },
outgoingEffects:[{ name:"Shock", color:"blue", type:"paralysis", damageType:"electric", chance: 24, turns: 1, failChance: 30 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/mecha/angryface.jpg", defeatImg:"pizzamedia/images/enemies/mecha/defeat.jpg",
secondPhase: false,
},
"mathtron": {
name:"Math-Tron",
presentation: false,
difficulty:"medium",
hp: 156, maxHp: 156,
accuracy: 84, evasion: 6,
critChance: 7, critMult: 1.7,
lifeStealPct: 0,
escapeChance: 26,
damage: { physical: 7, fire: 0, cold: 0, corrosive: 0, electric: 21 },
resist: { physical: 51, fire: 35, cold: 35, corrosive: 35, electric: 97 },
outgoingEffects:[{ name:"Electro-Shock", color:"yellow", type:"paralysis", damageType:"electric", chance: 22, turns: 1, failChance: 35 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/mathtron/angryface.jpg", defeatImg:"pizzamedia/images/enemies/mathtron/defeat.jpg",
secondPhase: false,
},
"phallus": {
name:"Mr Phallus",
presentation: false,
difficulty:"boss",
hp: 9999, maxHp: 9999,
accuracy: 100, evasion: 5,
critChance: 0, critMult: 1.7,
damage:{ physical: 15, cold: 15, fire:15, corrosive:15, electric:15 },
resist:{ physical:100, cold: 100, fire: 100, corrosive:100, electric:100 },
lifeStealPct: 0,
escapeChance: 1000,
outgoingEffects:[],
img:"pizzamedia/images/boys/phallus/face.jpg",
dialogColor:"#45d7ff",
secondPhase: true,
},
"goose1": {
name:"Angry Goose",
presentation: false,
difficulty:"easy",
hp: 80, maxHp: 80,
accuracy: 72, evasion: 0,
critChance: 3, critMult: 1.5,
lifeStealPct: 0,
escapeChance: 15,
damage: { physical: 14, fire: 0, cold: 0, corrosive: 0, electric: 0 },
resist: { physical: 21, fire: 13, cold: 13, corrosive: 13, electric: 13 },
outgoingEffects:[{ name:"Stun", color:"grey", type:"stun", chance: 8, turns: 2 }],
incomingEffects:[],
secondPhase: true,
img:"pizzamedia/images/enemies/goose/goose1.jpg", defeatImg:"pizzamedia/images/enemies/goose/defeat.jpg"
},
"goose2": {
name:"Angry Goose",
presentation: false,
difficulty:"easy",
hp: 80, maxHp: 80,
accuracy: 74, evasion: 0,
critChance: 3, critMult: 1.5,
lifeStealPct: 0,
escapeChance: 14,
damage: { physical: 14, fire: 0, cold: 0, corrosive: 0, electric: 0 },
resist: { physical: 24, fire: 15, cold: 15, corrosive: 15, electric: 15 },
outgoingEffects:[{ name:"Stun", color:"grey", type:"stun", chance: 9, turns: 2 }],
incomingEffects:[],
secondPhase: true,
img:"pizzamedia/images/enemies/goose/goose2.jpg", defeatImg:"pizzamedia/images/enemies/goose/defeat.jpg"
},
"goose3": {
name:"Angry Goose",
presentation: false,
difficulty:"easy",
hp: 80, maxHp: 80,
accuracy: 76, evasion: 1,
critChance: 4, critMult: 1.5,
lifeStealPct: 0,
escapeChance: 12,
damage: { physical: 14, fire: 0, cold: 0, corrosive: 0, electric: 0 },
resist: { physical: 26, fire: 17, cold: 17, corrosive: 17, electric: 17 },
outgoingEffects:[{ name:"Stun", color:"grey", type:"stun", chance: 10, turns: 2 }],
incomingEffects:[],
secondPhase: true,
img:"pizzamedia/images/enemies/goose/goose3.jpg", defeatImg:"pizzamedia/images/enemies/goose/defeat.jpg"
},
"goose4": {
name:"Angry Goose",
presentation: false,
difficulty:"medium",
hp: 120, maxHp: 120,
accuracy: 78, evasion: 2,
critChance: 4, critMult: 1.6,
lifeStealPct: 0,
escapeChance: 25,
damage: { physical: 20, fire: 0, cold: 0, corrosive: 0, electric: 0 },
resist: { physical: 35, fire: 24, cold: 24, corrosive: 24, electric: 24 },
outgoingEffects:[{ name:"Stun", color:"grey", type:"stun", chance: 12, turns: 2 }],
incomingEffects:[],
secondPhase: false,
img:"pizzamedia/images/enemies/goose/goose4.jpg", defeatImg:"pizzamedia/images/enemies/goose/defeat.jpg"
},
"dwarf1": {
name:"Dwarf",
presentation: false,
difficulty:"easy",
hp: 80, maxHp: 80,
accuracy: 74, evasion: 1,
critChance: 3, critMult: 1.5,
lifeStealPct: 0,
escapeChance: 15,
damage: { physical: 8, fire: 6, cold: 0, corrosive: 0, electric: 0 },
resist: { physical: 21, fire: 80, cold: -8, corrosive: 13, electric: 13 },
outgoingEffects:[{ name:"Bleeding", color:"red", type:"damage", damageType:"physical", chance: 22, turns: 3, perTurn: 4 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/dwarfs/angrydwarf1.jpg",
secondPhase: true
},
"dwarf2": {
name:"Dwarf",
presentation: false,
difficulty:"easy",
hp: 80, maxHp: 80,
accuracy: 75, evasion: 1,
critChance: 3, critMult: 1.5,
lifeStealPct: 0,
escapeChance: 14,
damage: { physical: 7, fire: 7, cold: 0, corrosive: 0, electric: 0 },
resist: { physical: 24, fire: 80, cold: -8, corrosive: 13, electric: 13 },
outgoingEffects:[{ name:"Bleeding", color:"red", type:"damage", damageType:"physical", chance: 22, turns: 3, perTurn: 4 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/dwarfs/angrydwarf2.jpg",
secondPhase: true
},
"dwarf3": {
name:"Dwarf",
presentation: false,
difficulty:"easy",
hp: 80, maxHp: 80,
accuracy: 76, evasion: 2,
critChance: 3, critMult: 1.5,
lifeStealPct: 0,
escapeChance: 13,
damage: { physical: 8, fire: 6, cold: 0, corrosive: 0, electric: 0 },
resist: { physical: 26, fire: 80, cold: -6, corrosive: 13, electric: 13 },
outgoingEffects:[{ name:"Bleeding", color:"red", type:"damage", damageType:"physical", chance: 22, turns: 3, perTurn: 4 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/dwarfs/angrydwarf3.jpg",
secondPhase: true
},
"dwarf4": {
name:"Dwarf",
presentation: false,
difficulty:"easy",
hp: 80, maxHp: 80,
accuracy: 77, evasion: 2,
critChance: 4, critMult: 1.5,
lifeStealPct: 0,
escapeChance: 12,
damage: { physical: 7, fire: 7, cold: 0, corrosive: 0, electric: 0 },
resist: { physical: 28, fire: 80, cold: -6, corrosive: 15, electric: 15 },
outgoingEffects:[{ name:"Bleeding", color:"red", type:"damage", damageType:"physical", chance: 22, turns: 3, perTurn: 4 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/dwarfs/angrydwarf4.jpg",
secondPhase: true
},
"dwarf5": {
name:"Dwarf",
presentation: false,
difficulty:"easy",
hp: 80, maxHp: 80,
accuracy: 78, evasion: 2,
critChance: 4, critMult: 1.5,
lifeStealPct: 0,
escapeChance: 11,
damage: { physical: 8, fire: 6, cold: 0, corrosive: 0, electric: 0 },
resist: { physical: 30, fire: 80, cold: -4, corrosive: 15, electric: 15 },
outgoingEffects:[{ name:"Bleeding", color:"red", type:"damage", damageType:"physical", chance: 22, turns: 3, perTurn: 4 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/dwarfs/angrydwarf5.jpg",
secondPhase: true
},
"dwarf6": {
name:"Dwarf",
presentation: false,
difficulty:"easy",
hp: 80, maxHp: 80,
accuracy: 80, evasion: 3,
critChance: 4, critMult: 1.5,
lifeStealPct: 0,
escapeChance: 10,
damage: { physical: 7, fire: 7, cold: 0, corrosive: 0, electric: 0 },
resist: { physical: 32, fire: 80, cold: -4, corrosive: 15, electric: 15 },
outgoingEffects:[{ name:"Bleeding", color:"red", type:"damage", damageType:"physical", chance: 22, turns: 3, perTurn: 4 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/dwarfs/angrydwarf6.jpg",
secondPhase: true
},
"dwarf7": {
name:"Dwarf",
presentation: false,
difficulty:"medium",
hp: 120, maxHp: 120,
accuracy: 82, evasion: 4,
critChance: 5, critMult: 1.6,
lifeStealPct: 0,
escapeChance: 25,
damage: { physical: 10, fire: 10, cold: 0, corrosive: 0, electric: 0 },
resist: { physical: 40, fire: 86, cold: -2, corrosive: 20, electric: 20 },
outgoingEffects:[{ name:"Bleeding", color:"red", type:"damage", damageType:"physical", chance: 22, turns: 3, perTurn: 4 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/dwarfs/angrydwarf7.jpg",
defeatImg:"pizzamedia/images/enemies/dwarfs/defeat.jpg",
secondPhase: false
},
"pizzaguy": {
name:"Pizza?",
presentation: false,
difficulty:"easy",
hp: 97, maxHp: 97,
accuracy: 78, evasion: 2,
critChance: 4, critMult: 1.5,
lifeStealPct: 0,
escapeChance: 12,
damage: { physical: 9, fire: 7, cold: 0, corrosive: 0, electric: 0 },
resist: { physical: 32, fire: 47, cold: 19, corrosive: 19, electric: 19 },
outgoingEffects:[{ name:"Stun", color:"grey", type:"stun", chance: 10, turns: 2 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/pizzaguy/face.jpg", defeatImg:"pizzamedia/images/enemies/pizzaguy/defeat.jpg",
secondPhase: false,
},
"succubus": {
name:"Succubus",
presentation: false,
difficulty:"medium",
hp: 131, maxHp: 131,
accuracy: 82, evasion: 6,
critChance: 7, critMult: 1.7,
lifeStealPct: 0,
escapeChance: 28,
damage: { physical: 7, fire: 14, cold: 0, corrosive: 0, electric: 7 },
resist: { physical: 35, fire: 86, cold: 15, corrosive: 26, electric: 49 },
outgoingEffects:[{ name:"Stun", color:"grey", type:"stun", chance: 16, turns: 2 }],
incomingEffects:[],
img:"pizzamedia/images/girls/succubus/angryface.jpg", defeatImg:"pizzamedia/images/girls/succubus/defeat.jpg",
secondPhase: false,
},
"unicorn": {
name:"Unicorn",
presentation: false,
difficulty:"medium",
hp: 160, maxHp: 160,
accuracy: 84, evasion: 8,
critChance: 7, critMult: 1.7,
lifeStealPct: 0,
escapeChance: 24,
damage: { physical: 9, fire: 9, cold: 9, corrosive: 9, electric: 11 },
resist: { physical: 51, fire: 51, cold: 51, corrosive: 51, electric: 86 },
outgoingEffects:[{ name:"Electro-Shock", color:"yellow", type:"paralysis", damageType:"electric", chance: 18, turns: 1, failChance: 30 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/unicorn/face.jpg", defeatImg:"pizzamedia/images/enemies/unicorn/defeat.jpg",
secondPhase: false,
},
"deer": {
name:"Deer",
presentation: false,
difficulty:"medium",
hp: 178, maxHp: 178,
accuracy: 84, evasion: 8,
critChance: 7, critMult: 1.7,
lifeStealPct: 0,
escapeChance: 22,
damage: { physical: 19, fire: 0, cold: 0, corrosive: 12, electric: 0 },
resist: { physical: 58, fire: 26, cold: 26, corrosive: 86, electric: 26 },
outgoingEffects:[{ name:"Bleeding", color:"red", type:"damage", damageType:"physical", chance: 22, turns: 3, perTurn: 4 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/deer/face.jpg", defeatImg:"pizzamedia/images/enemies/deer/defeat.jpg",
secondPhase: false,
},
"wildwizard": {
name:"Wild Wizard",
presentation: false,
difficulty:"medium",
hp: 178, maxHp: 178,
accuracy: 84, evasion: 8,
critChance: 7, critMult: 1.7,
lifeStealPct: 0,
escapeChance: 22,
damage: { physical: 19, fire: 0, cold: 0, corrosive: 12, electric: 0 },
resist: { physical: 58, fire: 26, cold: 26, corrosive: 86, electric: 26 },
outgoingEffects:[{ name:"Blight", color:"red", type:"damage", damageType:"corrosive", chance: 22, turns: 3, perTurn: 8 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/wildwizard/face.jpg", defeatImg:"pizzamedia/images/enemies/wildwizard/defeat.jpg",
secondPhase: false,
},
"freddy": {
name:"Freddy",
presentation: false,
difficulty:"hard",
hp: 200, maxHp: 200,
accuracy: 86, evasion: 6,
critChance: 8, critMult: 1.8,
lifeStealPct: 10,
escapeChance: 40,
damage: { physical: 32, fire: 5, cold: 0, corrosive: 0, electric: 0 },
resist: { physical: 92, fire: 58, cold: 29, corrosive: 38, electric: 38 },
outgoingEffects:[{ name:"Magic Stun", color:"grey", type:"stun", chance: 18, turns: 2 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/freddy/angryface.jpg", defeatImg:"pizzamedia/images/enemies/freddy/defeat.jpg",
secondPhase: false,
},
"bunny": {
name:"Bunny",
presentation: false,
difficulty:"medium",
hp: 135, maxHp: 135,
accuracy: 82, evasion: 8,
critChance: 6, critMult: 1.7,
lifeStealPct: 0,
escapeChance: 26,
damage: { physical: 12, fire: 0, cold: 0, corrosive: 9, electric: 0 },
resist: { physical: 42, fire: 24, cold: 24, corrosive: 86, electric: 24 },
outgoingEffects:[{ name:"Bleeding", color:"red", type:"damage", damageType:"physical", chance: 18, turns: 2, perTurn: 3 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/bunny/face.jpg", defeatImg:"pizzamedia/images/enemies/bunny/defeat.jpg",
secondPhase: false,
},
"unknownTraveller": {
name:"Unknown Traveller",
presentation: false,
difficulty:"easy",
hp: 97, maxHp: 97,
accuracy: 80, evasion: 4,
critChance: 5, critMult: 1.5,
lifeStealPct: 0,
escapeChance: 12,
damage: { physical: 9, fire: 12, cold: 0, corrosive: 0, electric: 0 },
resist: { physical: 32, fire: 80, cold: 13, corrosive: 21, electric: 21 },
outgoingEffects:[{ name:"Burn", color:"orange", type:"damage", damageType:"fire", chance: 16, turns: 2, perTurn: 3 }],
incomingEffects:[],
img:"pizzamedia/images/enemies/unknowntraveller/face.jpg", defeatImg:"pizzamedia/images/enemies/unknowntraveller/defeat.jpg",
secondPhase: false,
}
}>>
<</nobr>><<nobr>>
<<run Object.assign($player.items, {
/* =================== WEAPONS =================== */
"fists": {
id: "fists",
name: "Fists",
value: 0,
description: "• DMG: +10 Physical",
obtained: true,
rarity: "common",
slot: "hand",
isWeapon: true,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 10, fire: 0, cold: 0, corrosive: 0, electric: 0 },
statsAdd: { },
outgoingEffects: [],
img: "pizzamedia/images/combat/fists.png"
},
"razor": {
id: "razor",
name: "Razor",
value: 600,
description: "• DMG: +16 Physical<br>• Stats: +3 Crit Chance<br>• Effect: Bleed (15% chance, 2 turns, 2 DMG/turn)",
obtained: false,
rarity: "common",
slot: "hand",
isWeapon: true,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 16, fire: 0, cold: 0, corrosive: 0, electric: 0 },
statsAdd: { critChance: 3 },
outgoingEffects: [{ name:"Bleed", color:"red", type:"damage", damageType:"physical", chance:15, turns:2, perTurn:2 }],
img: "pizzamedia/images/items/razor.jpg"
},
"teslaPistol": {
id: "teslaPistol",
name: "Tesla Pistol",
value: 4200,
description: "• DMG: +34 Electric<br>• Stats: +5 Accuracy<br>• Cooldown: 2 turns<br>• Effect: ElectroShock (45% chance, 1 turn, 35% fail)",
obtained: false,
rarity: "rare",
slot: "hand",
isWeapon: true,
hasCd: true,
cooldown: 2, cdLeft: 0,
dmg: { physical: 0, fire: 0, cold: 0, corrosive: 0, electric: 34 },
statsAdd: { accuracy: 5 },
outgoingEffects: [{ name:"ElectroShock", color:"yellow", type:"paralysis", damageType:"electric", chance:45, turns:1, failChance:35 }],
img: "pizzamedia/images/items/electricgun.jpg"
},
"toxicSprayer": {
id: "toxicSprayer",
name: "Toxic Sprayer",
value: 3800,
description: "• DMG: +35 Corrosive<br>• Stats: +4 Accuracy<br>• Cooldown: 2 turns<br>• Effect: Poison (65% chance, 3 turns, 4 DMG/turn)",
obtained: false,
rarity: "rare",
slot: "hand",
isWeapon: true,
hasCd: true,
cooldown: 2, cdLeft: 0,
dmg: { physical: 0, fire: 0, cold: 0, corrosive: 35, electric: 0 },
statsAdd: { accuracy: 4 },
outgoingEffects: [{ name:"Poison", color:"purple", type:"damage", damageType:"corrosive", chance:65, turns:3, perTurn:4 }],
img: "pizzamedia/images/items/toxicsprayer.jpg"
},
"omegagun": {
id: "omegagun",
name: "Omegagun",
value: 16000,
description: "• DMG: +8 Physical, +42 Fire<br>• Stats: +7 Accuracy<br>• Cooldown: 2 turns<br>• Effect: Burn (45% chance, 3 turns, 6 DMG/turn)",
obtained: false,
rarity: "legendary",
slot: "hand",
isWeapon: true,
hasCd: true,
cooldown: 2, cdLeft: 0,
dmg: { physical: 8, fire: 42, cold: 0, corrosive: 0, electric: 0 },
statsAdd: { accuracy: 7 },
outgoingEffects: [{ name:"Burn", color:"orange", type:"damage", damageType:"fire", chance:45, turns:3, perTurn:6 }],
img: "pizzamedia/images/items/omegagun.jpg"
},
"cryoblaster": {
id: "cryoblaster",
name: "Cryoblaster",
value: 15500,
description: "• DMG: +47 Cold<br>• Stats: +7 Accuracy<br>• Cooldown: 2 turns<br>• Effect: Freeze (35% chance, 1 turn)",
obtained: false,
rarity: "legendary",
slot: "hand",
isWeapon: true,
hasCd: true,
cooldown: 2, cdLeft: 0,
dmg: { physical: 0, fire: 0, cold: 47, corrosive: 0, electric: 0 },
statsAdd: { accuracy: 7 },
outgoingEffects: [{ name:"Freeze", color:"blue", type:"stun", damageType:"cold", chance:35, turns:1 }],
img: "pizzamedia/images/items/wyrmcannon.jpg"
},
"toothpick": {
id: "toothpick",
name: "Toothpick",
value: 15500,
description: "• Legend says that it was once wielded by a great warrior from a bygone era.<br>• DMG: +100 Physical<br>• +100 accuracy",
obtained: false,
rarity: "mythic",
slot: "hand",
isWeapon: true,
hasCd: true,
cooldown: 4, cdLeft: 0,
dmg: { physical: 100, fire: 0, cold: 0, corrosive: 0, electric: 0 },
statsAdd: { accuracy: 100 },
outgoingEffects: [],
img: "pizzamedia/images/items/toothpick.jpg"
},
"fireFork": {
id: "fireFork",
name: "Fire Fork",
value: 900,
description: "• DMG: +10 Physical, +8 Fire",
obtained: false,
rarity: "common",
slot: "hand",
isWeapon: true,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 10, fire: 8, cold: 0, corrosive: 0, electric: 0 },
statsAdd: { },
outgoingEffects: [],
img: "pizzamedia/images/items/firefork.jpg"
},
"frostMace": {
id: "frostMace",
name: "Frost Mace",
value: 1000,
description: "• DMG: +10 Physical, +8 Cold",
obtained: false,
rarity: "common",
slot: "hand",
isWeapon: true,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 10, fire: 0, cold: 8, corrosive: 0, electric: 0 },
statsAdd: { },
outgoingEffects: [],
img: "pizzamedia/images/items/frostmace.jpg"
},
"greenSlimeCannon": {
id: "greenSlimeCannon",
name: "Green Slime Cannon",
value: 4200,
description: "• DMG: +25 Corrosive<br>• Stats: +4 Accuracy<br>• Cooldown: 2 turns<br>• Effect: Poison (25% chance, 2 turns, 3 DMG/turn)",
obtained: false,
rarity: "common",
slot: "hand",
isWeapon: true,
hasCd: true,
cooldown: 2, cdLeft: 0,
dmg: { physical: 0, fire: 0, cold: 0, corrosive: 25, electric: 0 },
statsAdd: { accuracy: 4 },
outgoingEffects: [{ name:"Poison", color:"purple", type:"damage", damageType:"corrosive", chance:25, turns:2, perTurn:3 }],
img: "pizzamedia/images/items/greenslimecannon.jpg"
},
"gun": {
id: "gun",
name: "Gun",
value: 850,
description: "• DMG: +18 Physical",
obtained: false,
rarity: "common",
slot: "hand",
isWeapon: true,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 18, fire: 0, cold: 0, corrosive: 0, electric: 0 },
statsAdd: { },
outgoingEffects: [],
img: "pizzamedia/images/items/gun.jpg"
},
"pinkSlimeCannon": {
id: "pinkSlimeCannon",
name: "Pink Slime Cannon",
value: 4300,
description: "• DMG: +5 Physical, +20 Corrosive<br>• Stats: +4 Accuracy<br>• Cooldown: 2 turns<br>• Effect: Poison (30% chance, 2 turns, 3 DMG/turn)",
obtained: false,
rarity: "common",
slot: "hand",
isWeapon: true,
hasCd: true,
cooldown: 2, cdLeft: 0,
dmg: { physical: 5, fire: 0, cold: 0, corrosive: 20, electric: 0 },
statsAdd: { accuracy: 4 },
outgoingEffects: [{ name:"Poison", color:"purple", type:"damage", damageType:"corrosive", chance:30, turns:2, perTurn:3 }],
img: "pizzamedia/images/items/pinkslimecannon.jpg"
},
"anomalyStaff": {
id: "anomalyStaff",
name: "Anomaly Staff",
value: 4100,
description: "• DMG: +9 Fire, +9 Cold, +9 Corrosive, +9 Electric<br>• Stats: +3 Accuracy<br>• Cooldown: 2 turns",
obtained: false,
rarity: "rare",
slot: "hand",
isWeapon: true,
hasCd: true,
cooldown: 2, cdLeft: 0,
dmg: { physical: 0, fire: 9, cold: 9, corrosive: 9, electric: 9 },
statsAdd: { accuracy: 3 },
outgoingEffects: [],
img: "pizzamedia/images/items/anomalystaff.jpg"
},
"crystallizedAxe": {
id: "crystallizedAxe",
name: "Crystallized Axe",
value: 2500,
description: "• DMG: +28 Physical",
obtained: false,
rarity: "rare",
slot: "hand",
isWeapon: true,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 28, fire: 0, cold: 0, corrosive: 0, electric: 0 },
statsAdd: { },
outgoingEffects: [],
img: "pizzamedia/images/items/crystallizedaxe.jpg"
},
"crystallizedPickaxe": {
id: "crystallizedPickaxe",
name: "Crystallized Pickaxe",
value: 2400,
description: "• DMG: +28 Physical",
obtained: false,
rarity: "rare",
slot: "hand",
isWeapon: true,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 28, fire: 0, cold: 0, corrosive: 0, electric: 0 },
statsAdd: { },
outgoingEffects: [],
img: "pizzamedia/images/items/crystallizedpickaxe.jpg"
},
"fireBroadsword": {
id: "fireBroadsword",
name: "Fire Broadsword",
value: 2600,
description: "• DMG: +16 Physical, +12 Fire",
obtained: false,
rarity: "rare",
slot: "hand",
isWeapon: true,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 16, fire: 12, cold: 0, corrosive: 0, electric: 0 },
statsAdd: { },
outgoingEffects: [],
img: "pizzamedia/images/items/firebroadsword.jpg"
},
"frostHammer": {
id: "frostHammer",
name: "Frost Hammer",
value: 2600,
description: "• DMG: +14 Physical, +10 Cold<br>• Effect: Freeze (14% chance, 1 turn)",
obtained: false,
rarity: "rare",
slot: "hand",
isWeapon: true,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 14, fire: 0, cold: 10, corrosive: 0, electric: 0 },
statsAdd: { },
outgoingEffects: [{ name:"Freeze", color:"blue", type:"stun", damageType:"cold", chance:14, turns:1 }],
img: "pizzamedia/images/items/frosthammer.jpg"
},
"frostPickaxe": {
id: "frostPickaxe",
name: "Frost Pickaxe",
value: 2450,
description: "• DMG: +15 Physical, +13 Cold",
obtained: false,
rarity: "rare",
slot: "hand",
isWeapon: true,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 15, fire: 0, cold: 13, corrosive: 0, electric: 0 },
statsAdd: { },
outgoingEffects: [],
img: "pizzamedia/images/items/frostpickaxe.jpg"
},
"mutantToadGauntlets": {
id: "mutantToadGauntlets",
name: "Mutant Toad Gauntlets",
value: 3900,
description: "• DMG: +14 Physical, +12 Corrosive<br>• Stats: +3 Accuracy<br>• Effect: Peste (16% chance, 2 turns, 2 DMG/turn)",
obtained: false,
rarity: "rare",
slot: "hand",
isWeapon: true,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 14, fire: 0, cold: 0, corrosive: 12, electric: 0 },
statsAdd: { accuracy: 3 },
outgoingEffects: [{ name:"Peste", color:"purple", type:"damage", damageType:"corrosive", chance:16, turns:2, perTurn:2 }],
img: "pizzamedia/images/items/mutanttoadgauntlets.jpg"
},
"plasmaGun": {
id: "plasmaGun",
name: "Plasma Gun",
value: 14800,
description: "• DMG: +7 Physical, +17 Fire, +16 Electric<br>• Stats: +7 Accuracy<br>• Cooldown: 2 turns<br>• Effect: ElectroShock (25% chance, 1 turn, 35% fail)",
obtained: false,
rarity: "rare",
slot: "hand",
isWeapon: true,
hasCd: true,
cooldown: 2, cdLeft: 0,
dmg: { physical: 7, fire: 17, cold: 0, corrosive: 0, electric: 16 },
statsAdd: { accuracy: 7 },
outgoingEffects: [{ name:"ElectroShock", color:"yellow", type:"paralysis", damageType:"electric", chance:25, turns:1, failChance:35 }],
img: "pizzamedia/images/items/plasmagun.jpg"
},
"plasmaKnife": {
id: "plasmaKnife",
name: "Plasma Knife",
value: 5200,
description: "• DMG: +10 Physical, +14 Electric<br>• Effect: ElectroShock (14% chance, 1 turn, 40% fail)",
obtained: false,
rarity: "rare",
slot: "hand",
isWeapon: true,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 10, fire: 0, cold: 0, corrosive: 0, electric: 14 },
statsAdd: { },
outgoingEffects: [{ name:"ElectroShock", color:"yellow", type:"paralysis", damageType:"electric", chance:14, turns:1, failChance:40 }],
img: "pizzamedia/images/items/plasmaknife.jpg"
},
"bunnyFist": {
id: "bunnyFist",
name: "Bunny Fist",
value: 2300,
description: "• DMG: +28 Physical",
obtained: false,
rarity: "rare",
slot: "hand",
isWeapon: true,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 28, fire: 0, cold: 0, corrosive: 0, electric: 0 },
statsAdd: { },
outgoingEffects: [],
img: "pizzamedia/images/items/bunnyfist.jpg"
},
"spikedClub": {
id: "spikedClub",
name: "Spiked Club",
value: 950,
description: "• DMG: +14 Physical<br>• Effect: Stun (10% chance, 1 turn)",
obtained: false,
rarity: "common",
slot: "hand",
isWeapon: true,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 14, fire: 0, cold: 0, corrosive: 0, electric: 0 },
statsAdd: { },
outgoingEffects: [{ name:"Stun", color:"grey", type:"stun", damageType:"physical", chance:20, turns:1 }],
img: "pizzamedia/images/items/spikedclub.jpg"
},
"basiliskFang": {
id: "basiliskFang",
name: "Basilisk Fang",
value: 5200,
description: "• DMG: +11 Physical, +25 Corrosive<br>• Stats: +4 Accuracy<br>• Effect: Poison (22% chance, 3 turns, 3 DMG/turn)",
obtained: false,
rarity: "legendary",
slot: "hand",
isWeapon: true,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 11, fire: 0, cold: 0, corrosive: 25, electric: 0 },
statsAdd: { accuracy: 4 },
outgoingEffects: [{ name:"Poison", color:"green", type:"damage", damageType:"corrosive", chance:22, turns:3, perTurn:3 }],
img: "pizzamedia/images/items/basiliskfang.jpg"
},
"deerAxe": {
id: "deerAxe",
name: "Deer Axe",
value: 2550,
description: "• DMG: +25 Physical, +13 Electric",
obtained: false,
rarity: "legendary",
slot: "hand",
isWeapon: true,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 25, fire: 0, cold: 0, corrosive: 0, electric: 13 },
statsAdd: { },
outgoingEffects: [],
img: "pizzamedia/images/items/deeraxe.jpg"
},
"fireWhip": {
id: "fireWhip",
name: "Fire Whip",
value: 2400,
description: "• DMG: +15 Physical, +21 Fire<br>• Stats: +3 Accuracy<br>• Effect: Burn (22% chance, 2 turns, 3 DMG/turn)",
obtained: false,
rarity: "legendary",
slot: "hand",
isWeapon: true,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 15, fire: 21, cold: 0, corrosive: 0, electric: 0 },
statsAdd: { accuracy: 3 },
outgoingEffects: [{ name:"Burn", color:"orange", type:"damage", damageType:"fire", chance:22, turns:2, perTurn:3 }],
img: "pizzamedia/images/items/firewhip.jpg"
},
"incandescentSword": {
id: "incandescentSword",
name: "Incandescent Sword",
value: 15000,
description: "• DMG: +17 Physical, +31 Fire<br>• Stats: +6 Accuracy<br>• Cooldown: 2 turns<br>• Effect: Burn (34% chance, 2 turns, 5 DMG/turn)",
obtained: false,
rarity: "legendary",
slot: "hand",
isWeapon: true,
hasCd: true,
cooldown: 2, cdLeft: 0,
dmg: { physical: 17, fire: 31, cold: 0, corrosive: 0, electric: 0 },
statsAdd: { accuracy: 6 },
outgoingEffects: [{ name:"Burn", color:"orange", type:"damage", damageType:"fire", chance:34, turns:2, perTurn:5 }],
img: "pizzamedia/images/items/incandescentsword.jpg"
},
"unicornStaff": {
id: "unicornStaff",
name: "Unicorn Staff",
value: 15000,
description: "• DMG: +19 Physical, +30 Electric<br>• Stats: +6 Accuracy<br>• Cooldown: 2 turns",
obtained: false,
rarity: "legendary",
slot: "hand",
isWeapon: true,
hasCd: true,
cooldown: 2, cdLeft: 0,
dmg: { physical: 19, fire: 0, cold: 0, corrosive: 0, electric: 30 },
statsAdd: { accuracy: 6 },
outgoingEffects: [],
img: "pizzamedia/images/items/unicornstaff.jpg"
},
"bloodSucker": {
id: "bloodSucker",
name: "Blood Sucker",
value: 4700,
description: "• DMG: +46 Physical<br>• Stats: +2 Accuracy, +30 Life Steal",
obtained: false,
rarity: "mythic",
slot: "hand",
isWeapon: true,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 46, fire: 0, cold: 0, corrosive: 0, electric: 0 },
statsAdd: { accuracy: 2, lifeStealPct: 30 },
outgoingEffects: [],
img: "pizzamedia/images/items/bloodsucker.jpg"
},
"dragonStaff": {
id: "dragonStaff",
name: "Dragon Staff",
value: 15200,
description: "• DMG: +21 Physical, +35 Fire<br>• Stats: +6 Accuracy<br>• Cooldown: 2 turns<br>• Effect: Burn (40% chance, 2 turns, 4 DMG/turn)",
obtained: false,
rarity: "mythic",
slot: "hand",
isWeapon: true,
hasCd: true,
cooldown: 2, cdLeft: 0,
dmg: { physical: 21, fire: 35, cold: 0, corrosive: 0, electric: 0 },
statsAdd: { accuracy: 6 },
outgoingEffects: [{ name:"Burn", color:"orange", type:"damage", damageType:"fire", chance:40, turns:2, perTurn:4 }],
img: "pizzamedia/images/items/dragonstaff.jpg"
},
"mosquitoDarts": {
id: "mosquitoDarts",
name: "Mosquito Darts",
value: 4050,
description: "• DMG: +10 Physical, +28 Corrosive<br>• Stats: +5 Accuracy",
obtained: false,
rarity: "legendary",
slot: "hand",
isWeapon: true,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 10, fire: 0, cold: 0, corrosive: 28, electric: 0 },
statsAdd: { accuracy: 5 },
outgoingEffects: [],
img: "pizzamedia/images/items/mosquitodarts.jpg"
},
"flameGun": {
id: "flameGun",
name: "Flame Gun",
value: 4300,
description: "• DMG: +5 Physical, +21 Fire<br>• Stats: +3 Accuracy<br>• Effect: Burn (18% chance, 2 turns, 3 DMG/turn)",
obtained: false,
rarity: "rare",
slot: "hand",
isWeapon: true,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 5, fire: 21, cold: 0, corrosive: 0, electric: 0 },
statsAdd: { accuracy: 3 },
outgoingEffects: [{ name:"Burn", color:"orange", type:"damage", damageType:"fire", chance:18, turns:2, perTurn:3 }],
img: "pizzamedia/images/items/flamegun.jpg"
},
"pinkGun": {
id: "pinkGun",
name: "Pink Gun",
value: 4300,
description: "• DMG: +6 Physical, +6 Fire, +6 Cold, +6 Corrosive, +6 Electric<br>• Stats: +3 Accuracy",
obtained: false,
rarity: "rare",
slot: "hand",
isWeapon: true,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 6, fire: 6, cold: 6, corrosive: 6, electric: 6 },
statsAdd: { accuracy: 3 },
outgoingEffects: [],
img: "pizzamedia/images/items/pinkgun.jpg"
},
"crystallizedShield": {
id: "crystallizedShield",
name: "Crystallized Shield",
value: 3900,
description: "• Resist: +20 Physical, +4 Fire, +4 Cold, +4 Corrosive, +4 Electric<br>• Stats: +2 Accuracy, +10 Max HP",
obtained: false,
rarity: "rare",
slot: "hand",
isWeapon: false,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 0, fire: 0, cold: 0, corrosive: 0, electric: 0 },
resistAdd: { physical: 20, fire: 4, cold: 4, corrosive: 4, electric: 4 },
statsAdd: { accuracy: 2, maxHp: 10 },
outgoingEffects: [],
img: "pizzamedia/images/items/crystallizedshield.jpg"
},
"mutantOrb": {
id: "mutantOrb",
name: "Mutant Orb",
value: 4000,
description: "• DMG: +30 Corrosive<br>• Stats: +4 Accuracy",
obtained: false,
rarity: "rare",
slot: "hand",
isWeapon: true,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 0, fire: 0, cold: 0, corrosive: 30, electric: 0 },
statsAdd: { accuracy: 4 },
outgoingEffects: [],
img: "pizzamedia/images/items/mutantorb.jpg"
},
"nailGun": {
id: "nailGun",
name: "Nail Gun",
value: 2600,
description: "• DMG: +18 Physical<br>• Stats: +2 Accuracy<br>• Effect: Oxido (15% chance, 2 turns, 2 DMG/turn)",
obtained: false,
rarity: "common",
slot: "hand",
isWeapon: true,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 18, fire: 0, cold: 0, corrosive: 0, electric: 0 },
statsAdd: { accuracy: 2 },
outgoingEffects: [{ name:"Oxido", color:"brown", type:"damage", damageType:"corrosive", chance:15, turns:2, perTurn:2 }],
img: "pizzamedia/images/items/nailgun.jpg"
},
"antiqueHammer": {
id: "antiqueHammer",
name: "Antique Hammer",
value: 950,
description: "• DMG: +18 Physical<br>• Stats: +0.2 Crit Mult",
obtained: false,
rarity: "common",
slot: "hand",
isWeapon: true,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 18, fire: 0, cold: 0, corrosive: 0, electric: 0 },
statsAdd: { critMult: 0.2 },
outgoingEffects: [],
img: "pizzamedia/images/items/antiquehammer.jpg"
},
"demonHeart": {
id: "demonHeart",
name: "Demon Heart",
value: 4800,
description: "• Resist: +20 Fire, +8 Physical<br>• Stats: +3 Accuracy, +4 Crit Chance, +20 Life Steal",
obtained: false,
rarity: "rare",
slot: "hand",
isWeapon: false,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 0, fire: 0, cold: 0, corrosive: 0, electric: 0 },
resistAdd: { physical: 8, fire: 20, cold: 0, corrosive: 0, electric: 0 },
statsAdd: { accuracy: 3, critChance: 4, lifeStealPct: 20 },
outgoingEffects: [],
img: "pizzamedia/images/items/demonheart.jpg"
},
"electricBracelet": {
id: "electricBracelet",
name: "Electric Bracelet",
value: 4200,
description: "• Resist: +22 Electric, +6 Physical<br>• Stats: +4 Accuracy, +3 Evasion",
obtained: false,
rarity: "rare",
slot: "hand",
isWeapon: false,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 0, fire: 0, cold: 0, corrosive: 0, electric: 0 },
resistAdd: { physical: 6, fire: 0, cold: 0, corrosive: 0, electric: 22 },
statsAdd: { accuracy: 4, evasion: 3 },
outgoingEffects: [],
img: "pizzamedia/images/items/electricbracelet.jpg"
},
"fireSkull": {
id: "fireSkull",
name: "Fire Skull",
value: 4600,
description: "• Resist: +24 Fire<br>• Stats: +4 Accuracy, +3 Crit Chance",
obtained: false,
rarity: "rare",
slot: "hand",
isWeapon: false,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 0, fire: 0, cold: 0, corrosive: 0, electric: 0 },
resistAdd: { physical: 0, fire: 24, cold: 0, corrosive: 0, electric: 0 },
statsAdd: { accuracy: 4, critChance: 3 },
outgoingEffects: [],
img: "pizzamedia/images/items/fireskull.jpg"
},
"greenSlimeShield": {
id: "greenSlimeShield",
name: "Green Slime Shield",
value: 3900,
description: "• Resist: +18 Corrosive, +12 Physical<br>• Stats: +2 Accuracy, +18 Max HP",
obtained: false,
rarity: "rare",
slot: "hand",
isWeapon: false,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 0, fire: 0, cold: 0, corrosive: 0, electric: 0 },
resistAdd: { physical: 12, fire: 0, cold: 0, corrosive: 18, electric: 0 },
statsAdd: { accuracy: 2, maxHp: 18 },
outgoingEffects: [],
img: "pizzamedia/images/items/greenslimeshield.jpg"
},
"pinkSlimeShield": {
id: "pinkSlimeShield",
name: "Pink Slime Shield",
value: 4000,
description: "• Resist: +15 Corrosive, +10 Physical, +6 Fire<br>• Stats: +3 Accuracy, +2 Crit Chance",
obtained: false,
rarity: "rare",
slot: "hand",
isWeapon: false,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 0, fire: 0, cold: 0, corrosive: 0, electric: 0 },
resistAdd: { physical: 10, fire: 6, cold: 0, corrosive: 15, electric: 0 },
statsAdd: { accuracy: 3, critChance: 2 },
outgoingEffects: [],
img: "pizzamedia/images/items/pinkslimeshield.jpg"
},
"rabbitLeg": {
id: "rabbitLeg",
name: "Rabbit Leg",
value: 1800,
description: "• Resist: +6 Physical<br>• Stats: +4 Evasion, +12 Escape Chance",
obtained: false,
rarity: "common",
slot: "hand",
isWeapon: false,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 0, fire: 0, cold: 0, corrosive: 0, electric: 0 },
resistAdd: { physical: 6, fire: 0, cold: 0, corrosive: 0, electric: 0 },
statsAdd: { evasion: 4, escapeChance: 12 },
outgoingEffects: [],
img: "pizzamedia/images/items/rabbitleg.jpg"
},
"rubberRing": {
id: "rubberRing",
name: "Rubber Ring",
value: 3600,
description: "• One to rule them all<br>• Resist: +18 Electric, +8 Physical<br>• Stats: +3 Accuracy, +2 Evasion",
obtained: false,
rarity: "rare",
slot: "hand",
isWeapon: false,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 0, fire: 0, cold: 0, corrosive: 0, electric: 0 },
resistAdd: { physical: 8, fire: 0, cold: 0, corrosive: 0, electric: 18 },
statsAdd: { accuracy: 3, evasion: 2 },
outgoingEffects: [],
img: "pizzamedia/images/items/rubberring.jpg"
},
"seekerNecklace": {
id: "seekerNecklace",
name: "Seeker Necklace",
value: 5200,
description: "• Resist: +10 Physical, +10 Fire, +10 Cold, +10 Corrosive, +10 Electric<br>• Stats: +5 Accuracy, +10 Item Drop Chance, +3 Crit Chance",
obtained: false,
rarity: "legendary",
slot: "hand",
isWeapon: false,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 0, fire: 0, cold: 0, corrosive: 0, electric: 0 },
resistAdd: { physical: 10, fire: 10, cold: 10, corrosive: 10, electric: 10 },
statsAdd: { accuracy: 5, itemDropChance: 10, critChance: 3 },
outgoingEffects: [],
img: "pizzamedia/images/items/seekernecklace.jpg"
},
"teethNecklace": {
id: "teethNecklace",
name: "Teeth Necklace",
value: 3700,
description: "• Resist: +16 Physical<br>• Stats: +4 Accuracy, +5 Crit Chance, +0.35 Crit Mult",
obtained: false,
rarity: "rare",
slot: "hand",
isWeapon: false,
hasCd: false,
cooldown: 0, cdLeft: 0,
dmg: { physical: 0, fire: 0, cold: 0, corrosive: 0, electric: 0 },
resistAdd: { physical: 16, fire: 0, cold: 0, corrosive: 0, electric: 0 },
statsAdd: { accuracy: 4, critChance: 5, critMult: 0.35 },
outgoingEffects: [],
img: "pizzamedia/images/items/teethnecklace.jpg"
}
} )>>
<</nobr>><<nobr>>
<<set $player.consumables = {
/* ========= HEAL ========= */
"nanobotSyringe": {
id:"nanobotSyringe",
name:"Nanobot Syringe",
obtained:true, qty:3,
type:"heal",
value: 35,
heal: 35,
description: "Heals 35 HP.",
img:"pizzamedia/images/consumables/nanobotsyringe.jpg",
lootable:true, rarity:"common",
qtyMin:1, qtyMax:3
},
"nanobotSyringeXL": {
id:"nanobotSyringeXL",
name:"Nanobot Syringe XL",
obtained:false, qty:0,
type:"heal",
value: 90,
heal: 75,
description: "Heals 75 HP.",
img:"pizzamedia/images/consumables/nanobotsyringexl.jpg",
lootable:true, rarity:"rare",
qtyMin:1, qtyMax:3
},
"nanobotSyringeMax": {
id:"nanobotSyringeMax",
name:"Nanobot Syringe Max",
obtained:false, qty:0,
type:"heal",
value: 350,
heal: "full",
description: "Heals all your HP.",
img:"pizzamedia/images/consumables/nanobotsyringemax.jpg",
lootable:true, rarity:"legendary",
qtyMin:1, qtyMax:2
},
/* ========= USABILITY (PIZZA RUN) ========= */
"sunPatches": {
id:"sunPatches",
name:"Sun Patches",
obtained:true, qty:1,
type:"usability",
value: 300,
usesPerRun: 1,
description: "This capsule is stuck to the bottom of the pizza box and emits radiation that heats the pizza(+2🔥). If used more than once, the radiation will damage the Active Ember Salt.",
img:"pizzamedia/images/consumables/sunpatch.jpg",
lootable:false, rarity:"legendary",
qtyMin:1, qtyMax:3
},
/* ========= CLEANSE ========= */
"antidote": {
id:"antidote",
name:"Antidote",
obtained:false, qty:0,
type:"cleanse",
value: 40,
removes:["corrosive"],
description: "Removes POISON.",
img:"pizzamedia/images/consumables/antidote.jpg",
lootable:true, rarity:"common",
qtyMin:1, qtyMax:2
},
"frostPowder": {
id:"frostPowder",
name:"Frost Powder",
obtained:false, qty:0,
type:"cleanse",
value: 40,
removes:["fire"],
description: "Removes BURN.",
img:"pizzamedia/images/consumables/frostpowder.jpg",
lootable:true, rarity:"common",
qtyMin:1, qtyMax:2
},
"electroShockSyringe": {
id:"electroShockSyringe",
name:"Electro Shock Syringe",
obtained:false, qty:0,
type:"cleanse",
value: 45,
removes:["stun"],
description: "Removes STUN.",
img:"pizzamedia/images/consumables/electroshocksyringe.jpg",
lootable:true, rarity:"common",
qtyMin:1, qtyMax:2
},
"moonDust": {
id:"moonDust",
name:"Moon Dust",
obtained:false, qty:0,
type:"cleanse",
value: 45,
removes:["paralysis"],
description: "Removes PARALYSIS.",
img:"pizzamedia/images/consumables/moondust.jpg",
lootable:true, rarity:"common",
qtyMin:1, qtyMax:2
},
"eclipseSerum": {
id:"eclipseSerum",
name:"Eclipse Serum",
obtained:false, qty:0,
type:"cleanse",
value: 200,
removes:["all"],
description: "Removes all negative states.",
img:"pizzamedia/images/consumables/eclipseserum.jpg",
lootable:true, rarity:"legendary",
qtyMin:1, qtyMax:1
},
/* ========= BUFFS (DAMAGE) ========= */
"dragonBloodVial": {
id:"dragonBloodVial",
name:"Dragon Blood Vial",
obtained:false, qty:0,
type:"buff",
value: 110,
effect:{ kind:"buff", turns:3, dmgAdd:{ fire: 25 } },
description: "+25% FIRE damage for 3 turns.",
img:"pizzamedia/images/consumables/dragonbloodnvial.jpg",
lootable:true, rarity:"rare",
qtyMin:1, qtyMax:2
},
"yetiBreathVial": {
id:"yetiBreathVial",
name:"Yeti Breath Vial",
obtained:false, qty:0,
type:"buff",
value: 110,
effect:{ kind:"buff", turns:3, dmgAdd:{ cold: 25 } },
description: "+25% COLD damage for 3 turns.",
img:"pizzamedia/images/consumables/yetibreathvial.jpg",
lootable:true, rarity:"rare",
qtyMin:1, qtyMax:2
},
"basiliskVenomVial": {
id:"basiliskVenomVial",
name:"Basilisk Venom Vial",
obtained:false, qty:0,
type:"buff",
value: 110,
effect:{ kind:"buff", turns:3, dmgAdd:{ corrosive: 25 } },
description: "+25% CORROSIVE damage for 3 turns.",
img:"pizzamedia/images/consumables/basiliskvenomvial.jpg",
lootable:true, rarity:"rare",
qtyMin:1, qtyMax:2
},
"bottledLightning": {
id:"bottledLightning",
name:"Bottled Lightning",
obtained:false, qty:0,
type:"buff",
value: 110,
effect:{ kind:"buff", turns:3, dmgAdd:{ electric: 25 } },
description: "+25% ELECTRIC damage for 3 turns.",
img:"pizzamedia/images/consumables/bottledlightning.jpg",
lootable:true, rarity:"rare",
qtyMin:1, qtyMax:2
},
"blueRush": {
id:"blueRush",
name:"Blue Rush",
obtained:false, qty:0,
type:"buff",
value: 110,
effect:{ kind:"buff", turns:3, dmgAdd:{ physical: 25 } },
description: "+25% PHYSICAL damage for 3 turns.",
img:"pizzamedia/images/consumables/bluerush.jpg",
lootable:true, rarity:"rare",
qtyMin:1, qtyMax:2
},
/* ========= BUFFS (RESISTS) ========= */
"phoenixTonic": {
id:"phoenixTonic",
name:"Phoenix Tonic",
obtained:false, qty:0,
type:"buff",
value: 85,
effect:{ kind:"buff", turns:3, resistAdd:{ fire: 20 } },
description: "+20 FIRE RESISTANCE for 3 turns.",
img:"pizzamedia/images/consumables/phoenixtonic.jpg",
lootable:true, rarity:"rare",
qtyMin:1, qtyMax:2
},
"zeusTonic": {
id:"zeusTonic",
name:"Zeus Tonic",
obtained:false, qty:0,
type:"buff",
value: 85,
effect:{ kind:"buff", turns:3, resistAdd:{ electric: 20 } },
description: "+20 ELECTRIC RESISTANCE for 3 turns.",
img:"pizzamedia/images/consumables/zeustonic.jpg",
lootable:true, rarity:"rare",
qtyMin:1, qtyMax:2
},
"wyrmTonic": {
id:"wyrmTonic",
name:"Wyrm Tonic",
obtained:false, qty:0,
type:"buff",
value: 85,
effect:{ kind:"buff", turns:3, resistAdd:{ cold: 20 } },
description: "+20 COLD RESISTANCE for 3 turns.",
img:"pizzamedia/images/consumables/wyrmtonic.jpg",
lootable:true, rarity:"rare",
qtyMin:1, qtyMax:2
},
"krakenTonic": {
id:"krakenTonic",
name:"Kraken Tonic",
obtained:false, qty:0,
type:"buff",
value: 85,
effect:{ kind:"buff", turns:3, resistAdd:{ corrosive: 20 } },
description: "+20 CORROSIVE RESISTANCE for 3 turns.",
img:"pizzamedia/images/consumables/krakentonic.jpg",
lootable:true, rarity:"rare",
qtyMin:1, qtyMax:2
},
"golemTonic": {
id:"golemTonic",
name:"Golem Tonic",
obtained:false, qty:0,
type:"buff",
value: 45,
effect:{ kind:"buff", turns:3, resistAdd:{ physical: 15 } },
description: "+15 PHYSICAL RESISTANCE for 3 turns.",
img:"pizzamedia/images/consumables/golemtonic.jpg",
lootable:true, rarity:"common",
qtyMin:1, qtyMax:2
},
"frozenChilliPepper": {
id:"frozenChilliPepper",
name:"Crystallized Fruit",
obtained:false, qty:0,
type:"buff",
value: 30,
effect:{ kind:"buff", turns:3, resistAdd:{ cold: 10 } },
description: "+10 COLD RESISTANCE for 3 turns.",
img:"pizzamedia/images/consumables/frozenchillipepper.jpg",
lootable:false, rarity:"common",
qtyMin:1, qtyMax:2
},
"unicornBloodTonic": {
id:"unicornBloodTonic",
name:"Unicorn Blood Tonic",
obtained:false, qty:0,
type:"buff",
value: 450,
effect:{ kind:"buff", turns:3, resistAdd:{ physical:25, fire:25, cold:25, corrosive:25, electric:25 } },
description: "+25 ALL resistances for 3 turns.",
img:"pizzamedia/images/consumables/unicornbloodtonic.jpg",
lootable:true, rarity:"legendary",
qtyMin:1, qtyMax:1
},
/* ========= BUFFS (STATS) ========= */
"vampireFangDust": {
id:"vampireFangDust",
name:"Vampire Fang Dust",
obtained:false, qty:0,
type:"buff",
value: 400,
effect:{ kind:"buff", turns:3, statsAdd:{ lifeStealPct: 15 } },
description: "• Stats: +15 Life Steal",
img:"pizzamedia/images/consumables/vampirefangdust.jpg",
lootable:true, rarity:"legendary",
qtyMin:1, qtyMax:1
},
/* ========= OFFENSIVE (GRENADES) ========= */
"grenade": {
id:"grenade",
name:"Grenade",
obtained:true, qty:2,
type:"damage",
value: 50,
attack:{
label:"Grenade",
mode:"consumable",
dmg:{ physical: 20, fire: 0, cold: 0, corrosive: 0, electric: 0 },
effects:[]
},
description: "• DMG: +20 Physical",
img:"pizzamedia/images/consumables/grenade.jpg",
lootable:true, rarity:"common",
qtyMin:1, qtyMax:2
},
"molotov": {
id:"molotov",
name:"Molotov",
obtained:false, qty:0,
type:"damage",
value: 60,
attack:{
label:"Molotov",
mode:"consumable",
dmg:{ physical: 0, fire: 20, cold: 0, corrosive: 0, electric: 0 },
effects:[{ name:"Burn", color:"orange", type:"damage", damageType:"fire", chance:60, turns:3, perTurn:5 }]
},
description: "• DMG: +20 Fire",
img:"pizzamedia/images/consumables/molotov.jpg",
lootable:true, rarity:"common",
qtyMin:1, qtyMax:2
},
"cryoGrenade": {
id:"cryoGrenade",
name:"Cryo Grenade",
obtained:false, qty:0,
type:"damage",
value: 95,
attack:{
label:"Cryo Grenade",
mode:"consumable",
dmg:{ physical: 0, fire: 0, cold: 30, corrosive: 0, electric: 0 },
effects:[{ name:"Freeze", color:"blue", type:"stun", damageType:"cold", chance:60, turns:1 }]
},
description: "• DMG: +30 Cold",
img:"pizzamedia/images/consumables/cryogrenade.jpg",
lootable:true, rarity:"rare",
qtyMin:1, qtyMax:2
},
"shockGrenade": {
id:"shockGrenade",
name:"Shock Grenade",
obtained:false, qty:0,
type:"damage",
value: 95,
attack:{
label:"Shock Grenade",
mode:"consumable",
dmg:{ physical: 0, fire: 0, cold: 0, corrosive: 0, electric: 30 },
effects:[{ name:"ElectroShock", color:"yellow", type:"paralysis", damageType:"electric", chance:60, turns:1, failChance:40 }]
},
description: "• DMG: +30 Electric",
img:"pizzamedia/images/consumables/shockgrenade.jpg",
lootable:true, rarity:"rare",
qtyMin:1, qtyMax:2
},
"cowFartBomb": {
id:"cowFartBomb",
name:"Cow Fart Bomb",
obtained:false, qty:0,
type:"damage",
value: 95,
attack:{
label:"Toxic Bomb",
mode:"consumable",
dmg:{ physical: 0, fire: 0, cold: 0, corrosive: 28, electric: 0 },
effects:[{ name:"Poison", color:"green", type:"damage", damageType:"corrosive", chance:75, turns:3, perTurn:8 }]
},
description: "• DMG: +28 Corrosive",
img:"pizzamedia/images/consumables/cowfartbomb.jpg",
lootable:true, rarity:"rare",
qtyMin:1, qtyMax:2
}
} >>
<<set $sortedConsumables = {}>>
<<set $sortedConsumablesKeys = Object.keys($player.consumables).sort()>>
<<for _i = 0; _i < $sortedConsumablesKeys.length; _i++>>
<<set _consumableKey = $sortedConsumablesKeys[_i]>>
<<set $sortedConsumables[_consumableKey] = $player.consumables[_consumableKey]>>
<</for>>
<</nobr>><<nobr>>
<<set $player.mutations = {
"mammothHeart1": {
"name": "Mammoth Heart I",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/basic/mammothheart1.png",
dmgAdd: {},
resistAdd: {},
statsAdd: { maxHp: 20 },
outgoingEffects:[],
price: 2
},
"mammothHeart2": {
"name": "Mammoth Heart II",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/basic/mammothheart2.png",
dmgAdd: {},
resistAdd: {},
statsAdd: { maxHp: 50 },
outgoingEffects:[],
price: 4
},
"mammothHeart3": {
"name": "Mammoth Heart III",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/basic/mammothheart3.png",
dmgAdd: {},
resistAdd: {},
statsAdd: { maxHp: 80 },
outgoingEffects:[],
price: 7
},
"ninjaFeet1": {
"name": "Ninja Feet I",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/basic/ninjafeet1.png",
dmgAdd: {},
resistAdd: {},
statsAdd: { evasion: 3 },
outgoingEffects:[],
price: 2
},
"ninjaFeet2": {
"name": "Ninja Feet II",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/basic/ninjafeet2.png",
dmgAdd: {},
resistAdd: {},
statsAdd: { evasion: 7 },
outgoingEffects:[],
price: 5
},
"gorillaMuscles1": {
"name": "Gorilla Muscles I",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/basic/gorillamuscles1.png",
dmgAdd: { physical: 12 },
resistAdd: {},
statsAdd: {},
outgoingEffects:[],
price: 3
},
"gorillaMuscles2": {
"name": "Gorilla Muscles II",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/basic/gorillamuscles2.png",
dmgAdd: { physical: 24 },
resistAdd: {},
statsAdd: {},
outgoingEffects:[],
price: 6
},
"turtleShellSkin1": {
"name": "Turtle shell skin I",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/basic/turtleshellskin1.png",
dmgAdd: {},
resistAdd: { physical: 4 },
statsAdd: {},
outgoingEffects:[],
price: 2
},
"turtleShellSkin2": {
"name": "Turtle shell skin II",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/basic/turtleshellskin2.png",
dmgAdd: {},
resistAdd: { physical: 8 },
statsAdd: {},
outgoingEffects:[],
price: 4
},
"turtleShellSkin3": {
"name": "Turtle shell skin III",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/basic/turtleshellskin3.png",
dmgAdd: {},
resistAdd: { physical: 12 },
statsAdd: {},
outgoingEffects:[],
price: 7
},
"eagleEye1": {
"name": "Eagle Eye I",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/basic/eagleeye1.png",
dmgAdd: {},
resistAdd: {},
statsAdd: { accuracy: 6 },
outgoingEffects:[],
price: 2
},
"eagleEye2": {
"name": "Eagle Eye II",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/basic/eagleeye2.png",
dmgAdd: {},
resistAdd: {},
statsAdd: { accuracy: 14 },
outgoingEffects:[],
price: 5
},
"antiSleep": {
"name": "Anti-sleep",
"obtained": true,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/misc/antisleep.png",
dmgAdd: {},
resistAdd: {},
statsAdd: {},
outgoingEffects:[],
price: 4
},
"vampireFang1": {
"name": "Vampire Fang I",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/misc/vampirefang1.png",
dmgAdd: {},
resistAdd: {},
statsAdd: { lifeStealPct: 4 },
outgoingEffects:[],
price: 4
},
"vampireFang2": {
"name": "Vampire Fang II",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/misc/vampirefang2.png",
dmgAdd: {},
resistAdd: {},
statsAdd: { lifeStealPct: 8 },
outgoingEffects:[],
price: 8
},
"wolfinstinct1": {
"name": "Wolf Instinct I",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/misc/wolfinstinct1.png",
dmgAdd: {},
resistAdd: {},
statsAdd: { critChance: 5 },
outgoingEffects:[],
price: 3
},
"wolfinstinct2": {
"name": "Wolf Instinct II",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/misc/wolfinstinct2.png",
dmgAdd: {},
resistAdd: {},
statsAdd: { critChance: 10 },
outgoingEffects:[],
price: 7
},
"michiclaw": {
"name": "Michi's Claw",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/misc/michiclaw.png",
dmgAdd: {},
resistAdd: {},
statsAdd: { critMult: 0.35 },
outgoingEffects:[],
price: 5
},
"dragonskin1": {
"name": "Dragon Skin I",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/fire/dragonskin1.png",
dmgAdd: {},
resistAdd: { fire: 4 },
statsAdd: {},
outgoingEffects:[],
price: 2
},
"dragonskin2": {
"name": "Dragon Skin II",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/fire/dragonskin2.png",
dmgAdd: {},
resistAdd: { fire: 8 },
statsAdd: {},
outgoingEffects:[],
price: 4
},
"dragonskin3": {
"name": "Dragon Skin III",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/fire/dragonskin3.png",
dmgAdd: {},
resistAdd: { fire: 12 },
statsAdd: {},
outgoingEffects:[],
price: 7
},
"dragonbreath1": {
"name": "Dragon Breath I",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/fire/dragonbreath1.png",
dmgAdd: { fire: 12 },
resistAdd: {},
statsAdd: {},
outgoingEffects:[],
price: 3
},
"dragonbreath2": {
"name": "Dragon Breath II",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/fire/dragonbreath2.png",
dmgAdd: { fire: 24 },
resistAdd: {},
statsAdd: {},
outgoingEffects:[],
price: 6
},
"dragonbreath3": {
"name": "Dragon Breath III",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/fire/dragonbreath3.png",
dmgAdd: { fire: 40 },
resistAdd: {},
statsAdd: {},
outgoingEffects:[],
price: 10
},
"bearcoat1": {
"name": "Bear Coat I",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/cold/bearcoat1.png",
dmgAdd: {},
resistAdd: { cold: 4 },
statsAdd: {},
outgoingEffects:[],
price: 2
},
"bearcoat2": {
"name": "Bear Coat II",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/cold/bearcoat2.png",
dmgAdd: {},
resistAdd: { cold: 8 },
statsAdd: {},
outgoingEffects:[],
price: 4
},
"bearcoat3": {
"name": "Bear Coat III",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/cold/bearcoat3.png",
dmgAdd: {},
resistAdd: { cold: 12 },
statsAdd: {},
outgoingEffects:[],
price: 7
},
"blueblood1": {
"name": "Blue Blood I",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/cold/blueblood1.png",
dmgAdd: { cold: 12 },
resistAdd: {},
statsAdd: {},
outgoingEffects:[],
price: 3
},
"blueblood2": {
"name": "Blue Blood II",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/cold/blueblood2.png",
dmgAdd: { cold: 24 },
resistAdd: {},
statsAdd: {},
outgoingEffects:[],
price: 6
},
"blueblood3": {
"name": "Blue Blood III",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/cold/blueblood3.png",
dmgAdd: { cold: 40 },
resistAdd: {},
statsAdd: {},
outgoingEffects:[],
price: 10
},
"acidlymph1": {
"name": "Acid Lymph I",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/corrosive/acidlymph1.png",
dmgAdd: {},
resistAdd: { corrosive: 4 },
statsAdd: {},
outgoingEffects:[],
price: 2
},
"acidlymph2": {
"name": "Acid Lymph II",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/corrosive/acidlymph2.png",
dmgAdd: {},
resistAdd: { corrosive: 8 },
statsAdd: {},
outgoingEffects:[],
price: 4
},
"acidlymph3": {
"name": "Acid Lymph III",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/corrosive/acidlymph3.png",
dmgAdd: {},
resistAdd: { corrosive: 12 },
statsAdd: {},
outgoingEffects:[],
price: 7
},
"causticbreath1": {
"name": "Caustic Breath I",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/corrosive/causticbreath1.png",
dmgAdd: { corrosive: 12 },
resistAdd: {},
statsAdd: {},
outgoingEffects:[],
price: 3
},
"causticbreath2": {
"name": "Caustic Breath II",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/corrosive/causticbreath2.png",
dmgAdd: { corrosive: 24 },
resistAdd: {},
statsAdd: {},
outgoingEffects:[],
price: 6
},
"causticbreath3": {
"name": "Caustic Breath III",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/corrosive/causticbreath3.png",
dmgAdd: { corrosive: 40 },
resistAdd: {},
statsAdd: {},
outgoingEffects:[],
price: 10
},
"myofiberinsulation1": {
"name": "Myofiber Insulation I",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/electric/myofiberinsulation1.png",
dmgAdd: {},
resistAdd: { electric: 4 },
statsAdd: {},
outgoingEffects:[],
price: 2
},
"myofiberinsulation2": {
"name": "Myofiber Insulation II",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/electric/myofiberinsulation2.png",
dmgAdd: {},
resistAdd: { electric: 8 },
statsAdd: {},
outgoingEffects:[],
price: 4
},
"myofiberinsulation3": {
"name": "Myofiber Insulation III",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/electric/myofiberinsulation3.png",
dmgAdd: {},
resistAdd: { electric: 12 },
statsAdd: {},
outgoingEffects:[],
price: 7
},
"lightningfist1": {
"name": "Lightning Fist I",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/electric/lightningfist1.png",
dmgAdd: { electric: 12 },
resistAdd: {},
statsAdd: {},
outgoingEffects:[],
price: 3
},
"lightningfist2": {
"name": "Lightning Fist II",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/electric/lightningfist2.png",
dmgAdd: { electric: 24 },
resistAdd: {},
statsAdd: {},
outgoingEffects:[],
price: 6
},
"lightningfist3": {
"name": "Lightning Fist III",
"obtained": false,
"img": "pizzamedia/images/places/pizzeria/regencore/mutations/electric/lightningfist3.png",
dmgAdd: { electric: 40 },
resistAdd: {},
statsAdd: {},
outgoingEffects:[],
price: 10
}
}>>
<<set $sortedMutations = {}>>
<<set $sortedMutationsKeys = Object.keys($player.mutations).sort()>>
<<for _i = 0; _i < $sortedMutationsKeys.length; _i++>>
<<set _mutationKey = $sortedMutationsKeys[_i]>>
<<set $sortedMutations[_mutationKey] = $player.mutations[_mutationKey]>>
<</for>>
<</nobr>><<nobr>>
<<set $eventGirls = {
"rebecca": {
name: "Rebecca",
displayName: "Rebecca",
presentation: false,
actressName: "Angela White",
actressSocialMedia: "https://www.fanhub.com/@angela-white",
img: "pizzamedia/images/girls/rebecca/",
scenes: {
"scene1": false,
"scene2": false,
"scene3": false,
},
specialScenes: ["scene3"],
SceneFirstPassage: {
"scene1": "RebeccaScene1A",
"scene2": "RebeccaScene2A",
"scene3": "RebeccaScene3A",
},
album: {
"album1": false,
"album2": false,
"album3": false
},
tier: 1
},
"allison": {
name: "Allison",
displayName: "Allison",
presentation: false,
actressName: "Abella Danger",
actressSocialMedia: "https://onlyfans.com/abelladanger/c1",
img: "pizzamedia/images/girls/allison/",
scenes: {
"scene1": false,
"scene2": false,
"scene3": false
},
SceneFirstPassage: {
"scene1": "AllisonScene1A",
"scene2": "AllisonScene2A",
"scene3": "AllisonScene3A"
},
album: {
"album1": false,
"album2": false,
"album3": false
},
tier: 1
},
"lindsey": {
name: "Lindsey",
displayName: "Lindsey",
presentation: false,
actressName: "Lena Paul",
img: "pizzamedia/images/girls/lindsey/",
actressSocialMedia: "https://www.fanhub.com/@lena-paul",
scenes: {
"scene1": false,
"scene2": false,
},
SceneFirstPassage: {
"scene1": "LindseyScene1A",
"scene2": "LindseyScene2A",
},
album: {
"album1": false,
"album2": false,
"album3": false
},
tier: 1
},
"julia": {
name: "Julia",
displayName: "Julia",
presentation: false,
actressName: "Gina Valentina",
actressSocialMedia: "https://www.fanhub.com/@ginavalentinaxxx",
img: "pizzamedia/images/girls/julia/",
scenes: {
"scene1": false,
"scene2": false,
},
SceneFirstPassage: {
"scene1": "JuliaScene1A",
"scene2": "JuliaScene2A",
},
album: {
"album1": false,
"album2": false,
"album3": false
},
tier: 2
},
"savannah": {
name: "Savannah",
displayName: "Savannah",
presentation: false,
actressName: "Sweetie Fox",
actressSocialMedia: "https://fancentro.com/sweetie-fox?ata=phsearchusercard&atc=sweetieFox",
img: "pizzamedia/images/girls/savannah/",
scenes: {
"scene1": false,
"scene2": false,
},
SceneFirstPassage: {
"scene1": "SavannahScene1A",
"scene2": "SavannahScene2A",
},
album: {
"album1": false,
"album2": false,
"album3": false
},
tier: 2
},
"jessica": {
name: "Jessica",
displayName: "Jessica",
presentation: false,
actressName: "Lauren Philips",
actressSocialMedia: "https://www.fanhub.com/@lauren-phillips",
img: "pizzamedia/images/girls/jessica/",
scenes: {
"scene1": false,
"scene2": false,
},
SceneFirstPassage: {
"scene1": "JessicaScene1A",
"scene2": "JessicaScene2A",
},
album: {
"album1": false,
"album2": false,
"album3": false
},
tier: 2
},
}>>
<<set $eventGirlsSorted = {}>>
<<set $sortedKeys = Object.keys($eventGirls).sort()>>
<<for _i = 0; _i < $sortedKeys.length; _i++>>
<<set _k = $sortedKeys[_i]>>
<<set $eventGirlsSorted[_k] = $eventGirls[_k]>>
<</for>>
<</nobr>><<nobr>>
<!--:: CombatUI-->
<<include "Combat__InitHelpers">>
<<set _fn = $combatEngine._turnFns>>
<<set _p = ($combatEngine.player ? $combatEngine.player : $playerCombat)>>
<<set _e = $combatEngine.enemy>>
<<set _pMax = (_p && _p.maxHp ? _p.maxHp : 1)>>
<<set _eMax = (_e && _e.maxHp ? _e.maxHp : 1)>>
<<set _pHpPct = Math.round((_p.hp / _pMax) * 100)>>
<<set _eHpPct = Math.round((_e.hp / _eMax) * 100)>>
<<if _pHpPct < 0>><<set _pHpPct = 0>><</if>>
<<if _pHpPct > 100>><<set _pHpPct = 100>><</if>>
<<if _eHpPct < 0>><<set _eHpPct = 0>><</if>>
<<if _eHpPct > 100>><<set _eHpPct = 100>><</if>>
<<set _pHpTextColor = "#2ecc71">>
<<if _pHpPct <= 50>>
<<set _pHpTextColor = "#f39c12">>
<<if _pHpPct <= 20>>
<<set _pHpTextColor = "#e74c3c">>
<</if>>
<</if>>
<<set _eHpTextColor = "#2ecc71">>
<<if _eHpPct <= 50>>
<<set _eHpTextColor = "#f39c12">>
<<if _eHpPct <= 20>>
<<set _eHpTextColor = "#e74c3c">>
<</if>>
<</if>>
<<set _pHpStyle = "width: " + _pHpPct + "%; background-color: " + _pHpTextColor + ";">>
<<set _pHpTextStyle = "<span style=color:"+_pHpTextColor+">"+_p.hp+"</span> / "+_p.maxHp>>
<<set _eHpStyle = "width: " + _eHpPct + "%; background-color: " + _eHpTextColor + ";">>
<<set _eHpTextStyle = "<span style=color:"+_eHpTextColor+">"+_e.hp+"</span> / "+_e.maxHp>>
<<set _pNameStyle = $player.dialogColor ? "color: " + $player.dialogColor + ";" : "color: white;">>
<<set _eNameStyle = _e.dialogColor? "color:" +_e.dialogColor: "color:white">>
<<set _pResUI = _fn.getResMap(_p)>>
<<set _eResUI = _fn.getResMap(_e)>>
<<set _pStatusText = "">>
<<if Array.isArray(_p.incomingEffects)>>
<<for _i = 0; _i < _p.incomingEffects.length; _i++>>
<<if _p.incomingEffects[_i] and _p.incomingEffects[_i].buffs is undefined>>
<<set _t = _fn.normEffectType(_p.incomingEffects[_i].type)>>
<<if _t === "stun">>
<<set _pStatusText = " <span style='color:#ffd166; font-size:0.8em;'>(STUNNED)</span>">><<break>>
<<elseif _t === "paralysis">>
<<set _pStatusText = " <span style='color:#a29bfe; font-size:0.8em;'>(PARALYZED)</span>">><<break>>
<</if>>
<</if>>
<</for>>
<</if>>
<<set _eStatusText = "">>
<<if Array.isArray(_e.incomingEffects)>>
<<for _i = 0; _i < _e.incomingEffects.length; _i++>>
<<if _e.incomingEffects[_i] and _e.incomingEffects[_i].buffs is undefined>>
<<set _t = _fn.normEffectType(_e.incomingEffects[_i].type)>>
<<if _t === "stun">>
<<set _eStatusText = " <span style='color:#ffd166; font-size:0.8em;'>(STUNNED)</span>">><<break>>
<<elseif _t === "paralysis">>
<<set _eStatusText = " <span style='color:#a29bfe; font-size:0.8em;'>(PARALYZED)</span>">><<break>>
<</if>>
<</if>>
<</for>>
<</if>>
<div class="combatTop">
<!-- PLAYER -->
<div class="combatCard">
<div class="combatCardHeader">
<div class="combatName" @style="_pNameStyle">$player.name<<print _pStatusText>></div>
</div>
<div class="combatPortrait">
<img @src="$player.img">
</div>
<div class="hpWrap">
<div class="hpLine">
<span>HP</span>
<span >_pHpTextStyle</span>
</div>
<div class="hpBar">
<div class="hpFill" @style="_pHpStyle"></div>
</div>
</div>
<div class="combatStatsBox">
<div class="combatStatsGrid">
<div class="combatStat"><div class="k">ACC</div><div class="v">$combatEngine.player.accuracy%</div></div>
<div class="combatStat"><div class="k">EVA</div><div class="v">$combatEngine.player.evasion%</div></div>
<div class="combatStat"><div class="k">CRIT</div><div class="v">$combatEngine.player.critChance%</div></div>
<div class="combatStat"><div class="k">MULT</div><div class="v">$combatEngine.player.critMult</div></div>
<div class="combatStat"><div class="k">LIFE STEALING</div><div class="v">$combatEngine.player.lifeStealPct%</div></div>
</div>
</div>
<div class="combatStatsBox">
<div class="combatStatsGrid">
<div class="combatStat"><div class="k">PHY</div><div class="v"><<print _pResUI.physical>>%</div></div>
<div class="combatStat" style = "color: var(--fire-color)"><div class="k">FIRE</div><div class="v"><<print _pResUI.fire>>%</div></div>
<div class="combatStat" style = "color: var(--cold-color)"><div class="k">COLD</div><div class="v"><<print _pResUI.cold>>%</div></div>
<div class="combatStat" style = "color: var(--corrosive-color)"><div class="k">CORR</div><div class="v"><<print _pResUI.corrosive>>%</div></div>
<div class="combatStat" style = "color: var(--electric-color)"><div class="k">ELECT</div><div class="v"><<print _pResUI.electric>>%</div></div>
</div>
</div>
</div>
<!-- VS -->
<div class="combatVs">
<div><strong>Your turn</strong></div>
</div>
<!-- ENEMY -->
<div class="combatCard">
<div class="combatCardHeader">
<div class="combatName" @style="_eNameStyle">$combatEngine.enemy.name<<print _eStatusText>></div> </div>
<div class="combatPortrait">
<img @src="$combatEngine.enemy.img">
</div>
<div class="hpWrap">
<div class="hpLine">
<span>HP</span>
<span >_eHpTextStyle</span>
</div>
<div class="hpBar">
<div class="hpFill" @style="_eHpStyle"></div>
</div>
</div>
<div class="combatStatsBox">
<div class="combatStatsGrid">
<div class="combatStat"><div class="k">ACC</div><div class="v">$combatEngine.enemy.accuracy%</div></div>
<div class="combatStat"><div class="k">EVA</div><div class="v">$combatEngine.enemy.evasion%</div></div>
<div class="combatStat"><div class="k">CRIT</div><div class="v">$combatEngine.enemy.critChance%</div></div>
<div class="combatStat"><div class="k">MULT</div><div class="v">$combatEngine.enemy.critMult</div></div>
<div class="combatStat"><div class="k">LIFE STEALING</div><div class="v">$combatEngine.enemy.lifeStealPct%</div></div>
</div>
</div>
<div class="combatStatsBox">
<div class="combatStatsGrid">
<div class="combatStat"><div class="k">PHY</div><div class="v"><<print _eResUI.physical>>%</div></div>
<div class="combatStat" style = "color: var(--fire-color)"><div class="k">FIRE</div><div class="v"><<print _eResUI.fire>>%</div></div>
<div class="combatStat" style = "color: var(--cold-color)"><div class="k">COLD</div><div class="v"><<print _eResUI.cold>>%</div></div>
<div class="combatStat" style = "color: var(--corrosive-color)"><div class="k">CORR</div><div class="v"><<print _eResUI.corrosive>>%</div></div>
<div class="combatStat" style = "color: var(--electric-color)"><div class="k">ELECT</div><div class="v"><<print _eResUI.electric>>%</div></div>
</div>
</div>
</div>
</div>
<<include "CombatActions">>
<div class="combatLogBox">
<div class="combatCardHeader">
<div class="combatName">Combat Log</div>
</div>
<!-- LOG (oldest -> newest) -->
<<set _max = 60>>
<<set _len = $combatEngine.log.length>>
<<set _start = Math.max(0, _len - _max)>>
<<for _i = _start; _i < _len; _i++>>
<li class="logLine"><<print $combatEngine.log[_i]>></li>
<</for>>
</div>
<</nobr>><<nobr>>
<!--:: CombatActions-->
<<include "Combat__InitHelpers">>
<<include "CalcPlayerCombatStats">>
<<set _fn = $combatEngine._turnFns>>
<<set _p = ($combatEngine.player ? $combatEngine.player : $playerCombat)>>
<<set _e = $combatEngine.enemy>>
<<set _hand1 = ($player.items && _p && _p.loadout ? $player.items[_p.loadout.hand1] : null)>>
<<set _hand2 = ($player.items && _p && _p.loadout ? $player.items[_p.loadout.hand2] : null)>>
<<set _h1Disabled = true>>
<<set _h2Disabled = true>>
<<if _hand1 && _hand1.isWeapon && !((_hand1.usesAmmo || _hand1.hasCd) && _hand1.cdLeft > 0)>>
<<set _h1Disabled = false>>
<</if>>
<<if _hand2 && _hand2.isWeapon && !((_hand2.usesAmmo || _hand2.hasCd) && _hand2.cdLeft > 0)>>
<<set _h2Disabled = false>>
<</if>>
/* daño preview vs resistencias enemigo (solo texto) */
<<set _eRes = (_e ? _fn.getResMap(_e) : null)>>
<<set _h1Total = 0>>
<<set _h2Total = 0>>
<<set _fTotal = 0>>
/* PREVIEW HAND 1 */
<<if _hand1 && _hand1.isWeapon>>
<<set _srcDmg1 = (_p._hand1 && _p._hand1.dmg ? _p._hand1.dmg : _hand1.dmg)>>
<<set _d1 = _fn.applyBuffsToDmgMap(_p, _srcDmg1)>>
<<set _b1 = _fn.computeDamageBreakdown(_d1, _eRes)>>
<<set _h1Total = _b1.total>>
<</if>>
/* PREVIEW HAND 2 */
<<if _hand2 && _hand2.isWeapon>>
<<set _srcDmg2 = (_p._hand2 && _p._hand2.dmg ? _p._hand2.dmg : _hand2.dmg)>>
<<set _d2 = _fn.applyBuffsToDmgMap(_p, _srcDmg2)>>
<<set _b2 = _fn.computeDamageBreakdown(_d2, _eRes)>>
<<set _h2Total = _b2.total>>
<</if>>
<<set _fMap = ($player.items && $player.items.fists && $player.items.fists.dmg ? $player.items.fists.dmg : _fn.getDmgMap(_p))>>
<<set _fd = _fn.getDmgMap({damage:_fMap})>>
<<set _fd = _fn.applyBuffsToDmgMap(_p, _fd)>>
<<set _fb = _fn.computeDamageBreakdown(_fd, _eRes)>>
<<set _fTotal = _fb.total>>
<<include "Combat__PlayerHasStunForUI">>
<<if $combatEngine._uiPlayerStunned>>
<div class="combatActions">
<div class="actionGrid">
<div class="actionItem">
<div class="actionTitle">Continue(You are stunned)</div>
<<linkreplace "Continue">><<goto "CombatTurn_PlayerStunnedContinue">><</linkreplace>>
</div>
<div class="actionItem">
<div class="actionTitle">Use Item</div>
<<link "Use Cleanse Item">><<goto "CombatTurn_PlayerStunnedUseItem">><</link>>
</div>
</div>
</div>
<<else>>
<<set _rarImg = { common: { b:"rgba(255,255,255,.22)", g:"rgba(255,255,255,.30)" }, rare: { b:"rgba(95,140,255,.55)", g:"rgba(95,140,255,.45)" }, legendary: { b:"rgba(255,215,80,.60)", g:"rgba(255,215,80,.45)" }, mythic: { b:"rgba(255,140,40,.65)", g:"rgba(255,140,40,.48)" }, set: { b:"rgba(90,220,120,.65)", g:"rgba(90,220,120,.45)" } }>>
<<set _rarGlow = { common: { g1:"rgba(255,255,255,0)", g2:"rgba(255,255,255,0)", t:"0s" }, rare: { g1:"rgba(95,140,255,.55)", g2:"rgba(95,140,255,.35)", t:"1.9s" }, legendary: { g1:"rgba(255,215,80,.60)", g2:"rgba(255,215,80,.38)", t:"1.7s" }, mythic: { g1:"rgba(255,140,40,.62)", g2:"rgba(255,140,40,.40)", t:"1.55s"}, set: { g1:"rgba(90,220,120,.58)", g2:"rgba(90,220,120,.36)", t:"1.75s"} }>>
/* ===== Colores + glow del NOMBRE (INLINE, no lo pisa nada) ===== */
<<set _rarName = {
common: { c:"rgba(255,255,255,.95)", g1:"rgba(255,255,255,0)", g2:"rgba(255,255,255,0)", t:"0s" },
rare: { c:"rgba(95,140,255,.98)", g1:"rgba(95,140,255,.55)", g2:"rgba(95,140,255,.35)", t:"1.9s" },
legendary: { c:"rgba(255,215,80,.98)", g1:"rgba(255,215,80,.60)", g2:"rgba(255,215,80,.38)", t:"1.7s" },
mythic: { c:"rgba(255,140,40,.99)", g1:"rgba(255,140,40,.62)", g2:"rgba(255,140,40,.40)", t:"1.55s"},
set: { c:"rgba(90,220,120,.99)", g1:"rgba(90,220,120,.58)", g2:"rgba(90,220,120,.36)", t:"1.75s"}
}>>
<div class="combatActions">
<div class="actionGrid">
<!-- HAND 1 -->
<div class="actionItem">
<div class="actionTitle">Hand 1</div>
<<if _h1Disabled>>
<span class="weaponBtn actionDisabled">
<<if _hand1 && _hand1.img>>
<img @src='_hand1.img' />
<</if>>
</span>
<<else>>
<<set _hand1Rarity = _hand1.rarity ? _hand1.rarity : "common">>
<<set _borderColor = _rarImg[_hand1Rarity] ? _rarImg[_hand1Rarity].b : _rarImg.common.b>>
<<set _boxShadow = _rarGlow[_hand1Rarity] ? _rarGlow[_hand1Rarity].g1 : _rarGlow.common.g1>>
<<set _animationTime = _rarGlow[_hand1Rarity] ? _rarGlow[_hand1Rarity].t : _rarGlow.common.t>>
/*==============IMAGEN===============*/
<<set _cEq = (_rarImg[_hand1Rarity] ? _rarImg[_hand1Rarity] : _rarImg.common)>>
<<set _cGEq = (_rarGlow[_hand1Rarity] ? _rarGlow[_hand1Rarity] : _rarGlow.common)>>
<<set _gAnimEq = (_hand1Rarity === "common" ? "none" : ("eqGlowPulse " + _cGEq.t + " ease-in-out infinite"))>>
<<set _eqImgStyle =
"border:2px solid " + _cEq.b + " !important; " +
"--rarGlow:" + _cGEq.g1 + "; " +
"--rarGlow2:" + _cGEq.g2 + "; " +
"animation:" + _gAnimEq + " !important; " +
"outline:none !important;"
>>
/* ===== INLINE NAME STYLE (equipado) ===== */
<<set _cNmEq = (_rarName[_hand1Rarity] ? _rarName[_hand1Rarity] : _rarName.common)>>
<<set _eqNameAnim = (_hand1Rarity === "common" ? "none" : ("eqNameGlowPulse " + _cNmEq.t + " ease-in-out infinite"))>>
<<set _eqNameStyle =
"color:" + _cNmEq.c + " !important; " +
"--nameGlow:" + _cNmEq.g1 + "; " +
"--nameGlow2:" + _cNmEq.g2 + "; " +
"animation:" + _eqNameAnim + " !important;"
>>
<<set _h1Label = "<span class='weaponBtn'><img @src='_hand1.img' @style='_eqImgStyle'/></span>">>
<<linkreplace _h1Label>>
<<set $combatEngine.playerAction = "hand1">>
<<goto "CombatTurn_Player">>
<</linkreplace>>
<</if>>
<div class="actionMeta">
<<if !_hand1>>
Empty
<<elseif _hand1.isWeapon === false>>
_hand1.name (Not a weapon)
<<else>>
<<if (_hand1.usesAmmo || _hand1.hasCd) and _hand1.cdLeft > 0>>
<<print (_hand1.usesAmmo ? " (recarga: " : " (cd: ") + _hand1.cdLeft + ")" >>
<</if>>
<span @style="_eqNameStyle">_hand1.name</span> (_h1Total dmg)
<</if>>
</div>
</div>
<!-- HAND 2 -->
<div class="actionItem">
<div class="actionTitle">Hand 2</div>
<<if _h2Disabled>>
<span class="weaponBtn actionDisabled">
<<if _hand2 && _hand2.img>>
<img @src='_hand2.img' />
<</if>>
</span>
<<else>>
<<set _hand2Rarity = _hand2.rarity ? _hand2.rarity : "common">>
<<set _borderColor = _rarImg[_hand2Rarity] ? _rarImg[_hand2Rarity].b : _rarImg.common.b>>
<<set _boxShadow = _rarGlow[_hand2Rarity] ? _rarGlow[_hand2Rarity].g1 : _rarGlow.common.g1>>
<<set _animationTime = _rarGlow[_hand2Rarity] ? _rarGlow[_hand2Rarity].t : _rarGlow.common.t>>
/*==============IMAGEN===============*/
<<set _cEq = (_rarImg[_hand2Rarity] ? _rarImg[_hand2Rarity] : _rarImg.common)>>
<<set _cGEq = (_rarGlow[_hand2Rarity] ? _rarGlow[_hand2Rarity] : _rarGlow.common)>>
<<set _gAnimEq = (_hand2Rarity === "common" ? "none" : ("eqGlowPulse " + _cGEq.t + " ease-in-out infinite"))>>
<<set _eqImgStyle =
"border:2px solid " + _cEq.b + " !important; " +
"--rarGlow:" + _cGEq.g1 + "; " +
"--rarGlow2:" + _cGEq.g2 + "; " +
"animation:" + _gAnimEq + " !important; " +
"outline:none !important;"
>>
/* ===== INLINE NAME STYLE (equipado) ===== */
<<set _cNmEq = (_rarName[_hand2Rarity] ? _rarName[_hand2Rarity] : _rarName.common)>>
<<set _eqNameAnim = (_hand2Rarity === "common" ? "none" : ("eqNameGlowPulse " + _cNmEq.t + " ease-in-out infinite"))>>
<<set _eqNameStyle =
"color:" + _cNmEq.c + " !important; " +
"--nameGlow:" + _cNmEq.g1 + "; " +
"--nameGlow2:" + _cNmEq.g2 + "; " +
"animation:" + _eqNameAnim + " !important;"
>>
<<set _h2Label = "<span class='weaponBtn'><img @src='_hand2.img' @style='_eqImgStyle'/></span>">>
<<linkreplace _h2Label>>
<<set $combatEngine.playerAction = "hand2">>
<<goto "CombatTurn_Player">>
<</linkreplace>>
<</if>>
<div class="actionMeta">
<<if !_hand2>>
Empty
<<elseif _hand2.isWeapon === false>>
_hand2.name (Not a weapon)
<<else>>
<<if (_hand2.usesAmmo || _hand2.hasCd) and _hand2.cdLeft > 0>>
<<print (_hand2.usesAmmo ? " (recarga: " : " (cd: ") + _hand2.cdLeft + ")" >>
<</if>>
<span @style="_eqNameStyle">_hand2.name</span> (_h2Total dmg)
<</if>>
</div>
</div>
<!-- BASE -->
<div class="actionItem">
<div class="actionTitle">Base</div>
<<set _fLabel = "<span class='actionBtn'><img src='pizzamedia/images/combat/fists.png'/></span>">>
<<linkreplace _fLabel>>
<<set $combatEngine.playerAction = "base">>
<<goto "CombatTurn_Player">>
<</linkreplace>>
<div class="actionMeta"><<print "Fists (" + _fTotal + " dmg)">></div>
</div>
<!-- CONSUMABLES (gate) -->
<div class="actionItem">
<div class="actionTitle">Consumables</div>
<<set _cLabel = "<span class='actionBtn'><img src='pizzamedia/images/combat/consumables.png'/></span>">>
<<linkreplace _cLabel>>
<<goto "CombatTurn_PlayerUseItem">>
<</linkreplace>>
<div class="actionMeta">Use item</div>
</div>
<!-- RUN -->
<<set _escChance = ($combatEngine.player.escapeChance - $combatEngine.enemy.escapeChance) / 2>>
<<if _escChance < 0>><<set _escChance = 0>><</if>>
<<if _escChance > 100>><<set _escChance = 100>><</if>>
<div class="actionItem">
<div class="actionTitle">Run (<<print _escChance>>% +1❄️)</div>
<<set _rLabel = "<span class='actionBtn'><img src='pizzamedia/images/combat/run.png'/></span>">>
<<linkreplace _rLabel>>
<<set _r = random(1,100)>>
<<if _r <= _escChance>>
<<set $delivery.pizzaHeat -= 1>>
<<set $combatEngine.inCombat = false>>
<<set $combatEngine.outcome = "win">>
<<set $combatEngine.log = []>>
<<set $combatEngine.log.push("<span style='opacity:.8'>— PLAYER TURN —</span>")>>
<<set $combatEngine.log.push("You escaped!")>>
<<goto "Escaped">>
<<else>>
<<set $delivery.pizzaHeat -= 1>>
<<set $combatEngine.log = []>>
<<set $combatEngine.log.push("<span style='opacity:.8'>— PLAYER TURN —</span>")>>
<<set $combatEngine.log.push("Escape failed!")>>
<<goto "CombatTurn_Enemy">>
<</if>>
<</linkreplace>>
<div class="actionMeta">Escape</div>
</div>
</div>
</div>
<</if>>
<</nobr>><<nobr>>
<!--:: CCPS__00_Helpers -->
/* Re-crear helpers si faltan (cargas/saves pueden romper funciones) */
<<if (ndef $combatEngine._ccps)>>
<<set $combatEngine._ccps = {}>>
<</if>>
<<if (ndef $combatEngine._ccps.copyMap)>>
<<set $combatEngine._ccps = {
TYPES: ["physical","fire","cold","corrosive","electric"],
normType: function(t){
if (t == null) return null;
t = String(t).toLowerCase();
if (t === "poison") return "corrosive";
return t;
},
num: function(v, d){
var n = Number(v);
return (isNaN(n) ? (d == null ? 0 : d) : n);
},
clamp: function(v, a, b){
v = this.num(v, 0);
if (v < a) return a;
if (v > b) return b;
return v;
},
copyMap: function(map, defVal){
var out = {};
var types = this.TYPES;
var dv = (defVal == null ? 0 : defVal);
for (var i=0;i<types.length;i++) out[types[i]] = dv;
if (map){
var self = this;
Object.keys(map).forEach(function(k){
var nk = self.normType(k);
if (!nk) return;
if (out.hasOwnProperty(nk)) out[nk] = self.num(map[k], dv);
});
}
return out;
},
ensureTypedMap: function(target, defVal){
if (!target) target = {};
var types = this.TYPES;
var dv = (defVal == null ? 0 : defVal);
for (var i=0;i<types.length;i++){
var t = types[i];
if (target[t] == null) target[t] = dv;
target[t] = this.num(target[t], dv);
}
return target;
},
addMap: function(target, delta){
if (!target || !delta) return;
var self = this;
Object.keys(delta).forEach(function(k){
var nk = self.normType(k);
if (!nk) return;
if (target[nk] == null) target[nk] = 0;
target[nk] = self.num(target[nk], 0) + self.num(delta[k], 0);
});
},
mulMap: function(target, mult){
var types = this.TYPES;
for (var i=0;i<types.length;i++){
var t = types[i];
target[t] = Math.round(this.num(target[t], 0) * this.num(mult[t], 1));
}
},
/* pctMap en puntos % (ej: 4 => +4%) */
applyPctAddToDmg: function(dmgMap, pctMap){
if (!dmgMap || !pctMap) return;
var types = this.TYPES;
for (var i=0;i<types.length;i++){
var t = types[i];
var pct = this.num(pctMap[t], 0);
if (!pct) continue;
var base = this.num(dmgMap[t], 0);
dmgMap[t] = Math.round(base * (1 + (pct / 100)));
}
},
clampResistances: function(resMap){
if (!resMap) return;
var types = this.TYPES;
for (var i=0;i<types.length;i++){
var t = types[i];
resMap[t] = this.clamp(resMap[t], 0, 100);
}
},
pushEffects: function(targetArr, srcArr){
if (!srcArr || !Array.isArray(srcArr)) return;
if (!targetArr || !Array.isArray(targetArr)) return;
for (var i=0;i<srcArr.length;i++) targetArr.push(srcArr[i]);
}
}>>
<</if>>
<</nobr>><<nobr>>
<!--:: CCPS__01_ResetBase -->
<<set _ccps = $combatEngine._ccps>>
/* ---------- Preservar estado runtime anterior ---------- */
<<set _keepHp = null>>
<<set _keepIncoming = []>>
<<set _prevLoadout = null>>
<<if (def $combatEngine.player)>>
<<if (def $combatEngine.player.hp)>>
<<set _keepHp = $combatEngine.player.hp>>
<</if>>
<<if Array.isArray($combatEngine.player.incomingEffects)>>
<<set _keepIncoming = $combatEngine.player.incomingEffects>>
<</if>>
<<if (def $combatEngine.player.loadout)>>
<<run _prevLoadout = JSON.parse(JSON.stringify($combatEngine.player.loadout))>>
<</if>>
<</if>>
<<if (_keepHp is null) and (def $playerCombat) and (def $playerCombat.hp)>>
<<set _keepHp = $playerCombat.hp>>
<</if>>
/* ---------- Asegurar runtime player DESACOPLADO ---------- */
<<if (ndef $combatEngine.player) or ($combatEngine.player is null)>>
<<run $combatEngine.player = JSON.parse(JSON.stringify($playerCombat))>>
<<else>>
<<if $combatEngine.player is $playerCombat>>
<<run $combatEngine.player = JSON.parse(JSON.stringify($playerCombat))>>
<</if>>
<</if>>
<<set _p = $combatEngine.player>>
<<set _p._ccpsRuntime = true>>
/* incomingEffects preservados */
<<set _p.incomingEffects = (Array.isArray(_keepIncoming) ? _keepIncoming : [])>>
/* ---------- Base ---------- */
<<set _b = $playerCombat>>
<<if (def $playerCombat)>>
<<set _p.maxHp = _ccps.num(_b.maxHp, 1000)>>
<<set _p.accuracy = _ccps.num(_b.accuracy, 0)>>
<<set _p.evasion = _ccps.num(_b.evasion, 0)>>
<<set _p.critChance = _ccps.num(_b.critChance, 0)>>
<<set _p.critMult = _ccps.num(_b.critMult, 1.5)>>
<<set _p.attack = _ccps.num(_b.attack, 0)>>
<<set _p.escapeChance = _ccps.num(_b.escapeChance, 0)>>
/* ✅ Life Steal (como stat normal, viene de base/items/sets/mutations via statsAdd) */
<<set _p.lifeStealPct = _ccps.num(_b.lifeStealPct, 0)>>
/* damage/resist base */
<<set _p.damage = _ccps.copyMap(_b.damage, 0)>>
<<set _r0 = (def _b.resistances) ? _b.resistances : ((def _b.resist) ? _b.resist : null)>>
<<set _p.resistances = _ccps.copyMap(_r0, 50)>>
<<else>>
<<set _p.maxHp = 1000>>
<<set _p.lifeStealPct = 0>>
<<set _p.damage = _ccps.copyMap(null, 0)>>
<<set _p.resistances = _ccps.copyMap(null, 50)>>
<</if>>
/* ---------- LOADOUT (FIX) ---------- */
/* ¿El base trae algo equipado? */
<<set _slots = ["head","chest","shoes","hand1","hand2"]>>
<<set _baseHas = false>>
<<set _prevHas = false>>
<<if (def $playerCombat) and (def _b.loadout)>>
<<for _i=0; _i<_slots.length; _i++>>
<<set _s = _slots[_i]>>
<<if _b.loadout[_s]>><<set _baseHas = true>><</if>>
<</for>>
<</if>>
<<if _prevLoadout is not null>>
<<for _i=0; _i<_slots.length; _i++>>
<<set _s = _slots[_i]>>
<<if _prevLoadout[_s]>><<set _prevHas = true>><</if>>
<</for>>
<</if>>
<<if _baseHas>>
<<run _p.loadout = JSON.parse(JSON.stringify(_b.loadout))>>
<<elseif _prevHas>>
<<run _p.loadout = JSON.parse(JSON.stringify(_prevLoadout))>>
<<else>>
<<set _p.loadout = { head:null, chest:null, shoes:null, hand1:null, hand2:null }>>
<</if>>
/* ---------- HP ---------- */
<<set _p.hp = _ccps.num(_keepHp, _p.maxHp)>>
/* ---------- Reset caches DERIVADOS ---------- */
<<set _p._equippedKeys = []>>
<<set _p._activeSets = []>>
<<set _p._dmgAdd = _ccps.copyMap(null, 0)>>
<<set _p._dmgMult = _ccps.copyMap(null, 1)>>
<<set _p._hand1 = null>>
<<set _p._hand2 = null>>
<<set _p.outgoingEffects = []>>
/* asegurar typed */
<<set _p.damage = _ccps.ensureTypedMap(_p.damage, 0)>>
<<set _p.resistances = _ccps.ensureTypedMap(_p.resistances, 50)>>
<</nobr>><<nobr>>
<!--:: CCPS__02_ApplyItems -->
<<set _ccps = $combatEngine._ccps>>
<<set _p = $combatEngine.player>>
<<if (ndef $player)>><<set $player = {}>><</if>>
<<if (def $player.items)>>
/* fists como base unarmed */
<<if (def $player.items.fists) and $player.items.fists.obtained and (def $player.items.fists.dmg)>>
<<set _p.damage = _ccps.copyMap($player.items.fists.dmg, 0)>>
<<set _p.damage = _ccps.ensureTypedMap(_p.damage, 0)>>
<</if>>
<<set _slots = ["head","chest","shoes","hand1","hand2"]>>
<<for _i = 0; _i < _slots.length; _i++>>
<<set _slot = _slots[_i]>>
<<set _key = (def _p.loadout) ? _p.loadout[_slot] : null>>
<<set _key = (_key && typeof _key === "string") ? _key.trim() : _key>>
<<set _key = (_key === "" ? null : _key)>>
<<if _key>>
<<set _it = $player.items[_key]>>
<<if _it and _it.obtained>>
<<set _p._equippedKeys.push(_key)>>
/* statsAdd (compat modsAdd/mods) */
<<set _stats = (def _it.statsAdd) ? _it.statsAdd : ((def _it.modsAdd) ? _it.modsAdd : ((def _it.mods) ? _it.mods : null))>>
<<if _stats>>
<<for _mk range Object.keys(_stats)>>
<<set _val = _ccps.num(_stats[_mk], 0)>>
<<if (ndef _p[_mk])>><<set _p[_mk] = 0>><</if>>
<<set _p[_mk] = _ccps.num(_p[_mk], 0) + _val>>
<</for>>
<</if>>
/* resistAdd */
<<if (def _it.resistAdd)>>
<<run _ccps.addMap(_p.resistances, _it.resistAdd)>>
<</if>>
/* dmgAdd */
<<if (def _it.dmgAdd)>>
<<run _ccps.addMap(_p._dmgAdd, _it.dmgAdd)>>
<</if>>
/* outgoingEffects pasivos (si NO es arma) */
<<if (_it.isWeapon is not true) and (def _it.outgoingEffects)>>
<<run _ccps.pushEffects(_p.outgoingEffects, _it.outgoingEffects)>>
<</if>>
/* Cache armas */
<<if (_slot is "hand1") and _it.isWeapon and (def _it.dmg)>>
<<set _p._hand1 = {
key:_key,
dmg:_ccps.copyMap(_it.dmg, 0),
outgoingEffects:(Array.isArray(_it.outgoingEffects) ? _it.outgoingEffects.slice() : [])
}>>
<</if>>
<<if (_slot is "hand2") and _it.isWeapon and (def _it.dmg)>>
<<set _p._hand2 = {
key:_key,
dmg:_ccps.copyMap(_it.dmg, 0),
outgoingEffects:(Array.isArray(_it.outgoingEffects) ? _it.outgoingEffects.slice() : [])
}>>
<</if>>
<</if>>
<</if>>
<</for>>
<</if>>
<</nobr>><<nobr>>
<!--:: CCPS__03_ApplySets -->
<<set _ccps = $combatEngine._ccps>>
<<set _p = $combatEngine.player>>
<<if (def $sets)>>
<<for _sid range Object.keys($sets)>>
<<set _s = $sets[_sid]>>
<<set _complete = true>>
<<if _s and _s.pieces and Array.isArray(_s.pieces)>>
<<for _pi = 0; _pi < _s.pieces.length; _pi++>>
<<set _pieceKey = _s.pieces[_pi]>>
<<if _p._equippedKeys.indexOf(_pieceKey) < 0>>
<<set _complete = false>>
<</if>>
<</for>>
<<if _complete and _s.bonus>>
<<set _p._activeSets.push(_sid)>>
<<if (def _s.bonus.dmgAdd)>>
<<run _ccps.addMap(_p._dmgAdd, _s.bonus.dmgAdd)>>
<</if>>
<<if (def _s.bonus.resistAdd)>>
<<run _ccps.addMap(_p.resistances, _s.bonus.resistAdd)>>
<</if>>
<<set _stats = (def _s.bonus.statsAdd) ? _s.bonus.statsAdd : ((def _s.bonus.modsAdd) ? _s.bonus.modsAdd : null)>>
<<if _stats>>
<<for _mk range Object.keys(_stats)>>
<<set _val = _ccps.num(_stats[_mk], 0)>>
<<if (ndef _p[_mk])>><<set _p[_mk] = 0>><</if>>
<<set _p[_mk] = _ccps.num(_p[_mk], 0) + _val>>
<</for>>
<</if>>
<<if (def _s.bonus.outgoingEffects)>>
<<run _ccps.pushEffects(_p.outgoingEffects, _s.bonus.outgoingEffects)>>
<</if>>
<</if>>
<</if>>
<</for>>
<</if>>
<</nobr>><<nobr>>
<!--:: CCPS__04_ApplyMutations -->
<<set _ccps = $combatEngine._ccps>>
<<set _p = $combatEngine.player>>
<<if (ndef $player)>><<set $player = {}>><</if>>
/* asegurar mutations */
<<if (ndef $player.mutations)>>
<<if Story.has("mutations")>><<include "Mutations">><</if>>
<<if (ndef $player.mutations) and Story.has("Mutations")>><<include "Mutations">><</if>>
<</if>>
<<if (def $player.mutations)>>
<<set _mKeys = Object.keys($player.mutations)>>
<<for _i = 0; _i < _mKeys.length; _i++>>
<<set _k = _mKeys[_i]>>
<<set _m = $player.mutations[_k]>>
<<if _m and _m.obtained>>
<<if (def _m.dmgAdd)>>
<<run _ccps.addMap(_p._dmgAdd, _m.dmgAdd)>>
<</if>>
<<if (def _m.resistAdd)>>
<<run _ccps.addMap(_p.resistances, _m.resistAdd)>>
<</if>>
<<set _stats = (def _m.statsAdd) ? _m.statsAdd : ((def _m.modsAdd) ? _m.modsAdd : null)>>
<<if _stats>>
<<for _mk range Object.keys(_stats)>>
<<set _val = _ccps.num(_stats[_mk], 0)>>
<<if (ndef _p[_mk])>><<set _p[_mk] = 0>><</if>>
<<set _p[_mk] = _ccps.num(_p[_mk], 0) + _val>>
<</for>>
<</if>>
<<if (def _m.outgoingEffects)>>
<<run _ccps.pushEffects(_p.outgoingEffects, _m.outgoingEffects)>>
<</if>>
<</if>>
<</for>>
<</if>>
<</nobr>><<nobr>>
<!--:: CCPS__05_FinalizeAndClamp -->
<<set _ccps = $combatEngine._ccps>>
<<set _p = $combatEngine.player>>
/* ATTACK plano */
<<set _atk = _ccps.num(_p.attack, 0)>>
<<if _atk is not 0>>
<<for _t range _ccps.TYPES>>
<<if _p.damage[_t] > 0>>
<<set _p.damage[_t] = _ccps.num(_p.damage[_t],0) + _atk>>
<</if>>
<<if _p._hand1 and (def _p._hand1.dmg) and (_p._hand1.dmg[_t] > 0)>>
<<set _p._hand1.dmg[_t] = _ccps.num(_p._hand1.dmg[_t],0) + _atk>>
<</if>>
<<if _p._hand2 and (def _p._hand2.dmg) and (_p._hand2.dmg[_t] > 0)>>
<<set _p._hand2.dmg[_t] = _ccps.num(_p._hand2.dmg[_t],0) + _atk>>
<</if>>
<</for>>
<</if>>
/* dmgAdd (puntos %) */
<<run _ccps.applyPctAddToDmg(_p.damage, _p._dmgAdd)>>
<<if _p._hand1 and (def _p._hand1.dmg)>><<run _ccps.applyPctAddToDmg(_p._hand1.dmg, _p._dmgAdd)>><</if>>
<<if _p._hand2 and (def _p._hand2.dmg)>><<run _ccps.applyPctAddToDmg(_p._hand2.dmg, _p._dmgAdd)>><</if>>
/* multiplicadores */
<<run _ccps.mulMap(_p.damage, _p._dmgMult)>>
<<if _p._hand1 and (def _p._hand1.dmg)>><<run _ccps.mulMap(_p._hand1.dmg, _p._dmgMult)>><</if>>
<<if _p._hand2 and (def _p._hand2.dmg)>><<run _ccps.mulMap(_p._hand2.dmg, _p._dmgMult)>><</if>>
/* clamp resistencias 0..100 */
<<run _ccps.clampResistances(_p.resistances)>>
/* clamp stats */
<<set _p.accuracy = _ccps.clamp(_ccps.num(_p.accuracy,0), 0, 999)>>
<<set _p.evasion = _ccps.clamp(_ccps.num(_p.evasion,0), 0, 999)>>
<<set _p.critChance = _ccps.clamp(_ccps.num(_p.critChance,0), 0, 100)>>
<<set _p.critMult = _ccps.clamp(_ccps.num(_p.critMult,1.5), 1, 10)>>
/* ✅ clamp life steal */
<<set _p.lifeStealPct = _ccps.clamp(_ccps.num(_p.lifeStealPct,0), 0, 100)>>
/* HP clamp */
<<if (ndef _p.hp)>><<set _p.hp = _p.maxHp>><</if>>
<<if _p.hp > _p.maxHp>><<set _p.hp = _p.maxHp>><</if>>
<<if _p.hp < 0>><<set _p.hp = 0>><</if>>
<</nobr>><<nobr>>
<!--:: CCPS__06_ApplyIncomingEffects -->
<<set _ccps = $combatEngine._ccps>>
<<set _p = $combatEngine.player>>
<<if Array.isArray(_p.incomingEffects) and (_p.incomingEffects.length > 0)>>
<<for _ei = 0; _ei < _p.incomingEffects.length; _ei++>>
<<set _e = _p.incomingEffects[_ei]>>
<<if _e and (def _e.buffs)>>
<<if (def _e.buffs.resistAdd)>>
<<run _ccps.addMap(_p.resistances, _e.buffs.resistAdd)>>
<</if>>
<<if (def _e.buffs.res)>>
<<run _ccps.addMap(_p.resistances, _e.buffs.res)>>
<</if>>
<<if (def _e.buffs.statsAdd)>>
<<for _mk range Object.keys(_e.buffs.statsAdd)>>
<<set _val = _ccps.num(_e.buffs.statsAdd[_mk], 0)>>
<<if (ndef _p[_mk])>><<set _p[_mk] = 0>><</if>>
<<set _p[_mk] = _ccps.num(_p[_mk], 0) + _val>>
<</for>>
<</if>>
<<if (def _e.buffs.dmgPct)>>
<<for _k range Object.keys(_e.buffs.dmgPct)>>
<<set _t = _ccps.normType(_k)>>
<<if _t and (def _p._dmgMult[_t])>>
<<set _v = _ccps.num(_e.buffs.dmgPct[_k], 0)>>
<<if (_v > 1) or (_v < -1)>><<set _v = _v / 100>><</if>>
<<set _p._dmgMult[_t] = _ccps.num(_p._dmgMult[_t], 1) * (1 + _v)>>
<</if>>
<</for>>
<</if>>
<<if (def _e.buffs.dmgMult)>>
<<for _k range Object.keys(_e.buffs.dmgMult)>>
<<set _t = _ccps.normType(_k)>>
<<if _t and (def _p._dmgMult[_t])>>
<<set _mv = _ccps.num(_e.buffs.dmgMult[_k], 1)>>
<<set _p._dmgMult[_t] = _ccps.num(_p._dmgMult[_t], 1) * _mv>>
<</if>>
<</for>>
<</if>>
<<if (def _e.buffs.outgoingEffects)>>
<<run _ccps.pushEffects(_p.outgoingEffects, _e.buffs.outgoingEffects)>>
<</if>>
<</if>>
<</for>>
<</if>>
<</nobr>><<nobr>>
<!--:: Combat__InitHelpers-->
/* 🔥 CLAVE: si existe pero viene null, lo re-enlazamos */
<<if (ndef $combatEngine.player) or ($combatEngine.player is null)>>
<<set $combatEngine.player = $playerCombat>>
<</if>>
<<if ndef $combat>>
<<set $combat = { inCombat:false }>>
<</if>>
<<if ndef $combatEngine._turnFns>>
<<set $combatEngine._turnFns = {}>>
<</if>>
<<set _fn = $combatEngine._turnFns>>
<<if ndef _fn._v>><<set _fn._v = 0>><</if>>
<<if _fn._v < 30>>
<<set _fn._v = 30>>
<<run _fn.TYPES = ["physical","fire","cold","corrosive","electric"]>>
<<run _fn.typeMeta = {
physical: { abbr:"PHY", color:"#ffffff" },
fire: { abbr:"FIR", color:"#ff9900" },
cold: { abbr:"COL", color:"#8fdcff" },
corrosive:{ abbr:"COR", color:"#31d04a" },
electric: { abbr:"ELE", color:"#4ea5ff" }
}>>
<<run _fn.normType = function(t){
if (t == null) return null;
t = String(t).toLowerCase();
if (t === "poison") return "corrosive";
return t;
}>>
/* NORMALIZA EL TIPO DE ESTADO (NO el nombre) */
<<run _fn.normEffectType = function(t){
if (t == null) return "";
t = String(t).toLowerCase();
if (t === "paralyze" || t === "paralized" || t === "paralysed") return "paralysis";
if (t === "freeze" || t === "frozen") return "stun";
if (t === "stunned") return "stun";
return t;
}>>
<<run _fn.num = function(v, d){
var n = Number(v);
return (isNaN(n) ? (d==null?0:d) : n);
}>>
<<run _fn.clamp = function(v,a,b){
v = this.num(v, 0);
return (v < a ? a : (v > b ? b : v));
}>>
/* 50% => x1 ; 0% => x2 ; 100% => x0 */
<<run _fn.multFromRes = function(res){
res = this.clamp(res, 0, 100);
return 2 - (res / 50);
}>>
<<run _fn.fmtSpeaker = function(name, color){
name = (name != null ? String(name) : "???");
color = (color != null ? String(color) : "#fff");
return "<span class='logSpeaker' style='color:"+color+";'>" + name + "</span>";
}>>
<<run _fn.fmtPart = function(type, amount){
type = this.normType(type);
amount = this.num(amount, 0);
if (amount <= 0) return "";
var meta = this.typeMeta[type] || { abbr:type?.toUpperCase()?.slice(0,3) || "DMG", color:"#fff" };
return "<span style='color:"+meta.color+";'>(" + meta.abbr + " " + amount + ")</span>";
}>>
<<run _fn.getResMap = function(ent){
var base = (ent && ent.resistances) ? ent.resistances : ((ent && ent.resist) ? ent.resist : {});
var out = {};
for (var i=0;i<this.TYPES.length;i++){
var t = this.TYPES[i];
out[t] = this.num(base[t], 50);
}
if (base && base.poison != null) out.corrosive = this.num(base.poison, out.corrosive);
/* buffs resistAdd (se mantiene aditivo) */
if (ent && Array.isArray(ent.incomingEffects)){
for (var j=0;j<ent.incomingEffects.length;j++){
var e = ent.incomingEffects[j];
if (!e || !e.buffs) continue;
var ra = e.buffs.resistAdd;
if (!ra) continue;
Object.keys(ra).forEach((k)=>{
var nk = this.normType(k);
if (!nk) return;
out[nk] = this.num(out[nk],50) + this.num(ra[k],0);
});
}
}
return out;
}>>
<<run _fn.getDmgMap = function(ent){
var base = (ent && ent.damage) ? ent.damage : {};
var out = {};
for (var i=0;i<this.TYPES.length;i++){
var t = this.TYPES[i];
out[t] = this.num(base[t], 0);
}
if (base && base.poison != null) out.corrosive = this.num(base.poison, out.corrosive);
return out;
}>>
/* buffs/debuffs al daño: dmgAdd (plano) + dmgPct (decimal) */
<<run _fn.applyBuffsToDmgMap = function(actor, dmgMap){
var out = {};
for (var i=0;i<this.TYPES.length;i++){
var t = this.TYPES[i];
out[t] = this.num(dmgMap && dmgMap[t], 0);
}
if (!actor || !Array.isArray(actor.incomingEffects)) return out;
var add = {}; var pct = {};
for (var i=0;i<this.TYPES.length;i++){ add[this.TYPES[i]] = 0; pct[this.TYPES[i]] = 0; }
for (var j=0;j<actor.incomingEffects.length;j++){
var e = actor.incomingEffects[j];
if (!e || !e.buffs) continue;
var da = e.buffs.dmgAdd;
if (da){
Object.keys(da).forEach((k)=>{
var nk = this.normType(k);
if (!nk) return;
add[nk] += this.num(da[k],0);
});
}
var dp = e.buffs.dmgPct;
if (dp){
Object.keys(dp).forEach((k)=>{
var nk = this.normType(k);
if (!nk) return;
pct[nk] += this.num(dp[k],0);
});
}
}
for (var i=0;i<this.TYPES.length;i++){
var t = this.TYPES[i];
out[t] = (out[t] + add[t]) * (1 + pct[t]);
out[t] = Math.round(out[t]);
}
return out;
}>>
<<run _fn.computeDamageBreakdown = function(dmgMap, targetResMap){
var partsRaw = [];
var hadAny = false;
for (var i=0;i<this.TYPES.length;i++){
var t = this.TYPES[i];
var base = this.num(dmgMap && dmgMap[t], 0);
if (base <= 0) continue;
hadAny = true;
var res = (targetResMap && targetResMap[t] != null) ? this.num(targetResMap[t], 50) : 50;
res = this.clamp(res, 0, 100);
var mult = this.multFromRes(res);
partsRaw.push({ type:t, raw: base * mult });
}
var parts = [];
var sum = 0;
var maxRaw = -1;
var maxIdx = -1;
for (var j=0;j<partsRaw.length;j++){
var amt = Math.max(0, Math.round(partsRaw[j].raw));
if (partsRaw[j].raw > maxRaw){ maxRaw = partsRaw[j].raw; maxIdx = j; }
parts.push({ type: partsRaw[j].type, amount: amt });
sum += amt;
}
if (hadAny && sum < 1){
sum = 1;
if (maxIdx >= 0){
parts[maxIdx].amount = 1;
} else if (parts.length){
parts[0].amount = 1;
}
}
parts = parts.filter(p => p.amount > 0);
return { total: sum, parts: parts, hadAny: hadAny };
}>>
<<run _fn.applyHpDamage = function(target, amount){
amount = this.num(amount, 0);
if (!target) return 0;
if (target.hp == null) target.hp = target.maxHp;
target.hp = this.num(target.hp, 0) - amount;
if (target.hp < 0) target.hp = 0;
return amount;
}>>
<<run _fn.applyHeal = function(target, amount){
amount = this.num(amount, 0);
if (!target || amount <= 0) return 0;
if (target.hp == null) target.hp = target.maxHp;
var before = this.num(target.hp, 0);
var max = (target.maxHp != null) ? this.num(target.maxHp, before) : before;
target.hp = Math.min(max, before + amount);
return target.hp - before;
}>>
<<run _fn.logHit = function(logArr, attackerSpan, total, parts, targetHp, targetMax){
var chunks = [];
for (var i=0;i<parts.length;i++){
chunks.push(this.fmtPart(parts[i].type, parts[i].amount));
}
var tail = (targetHp != null && targetMax != null)
? " <span style='opacity:.75'>(HP " + targetHp + "/" + targetMax + ")</span>"
: "";
logArr.push(attackerSpan + " hits for " + total + " " + chunks.join(" ") + tail);
}>>
/* ===== STUN UI ===== */
<<run _fn.hasActiveStun = function(actor){
if (!actor || !Array.isArray(actor.incomingEffects)) return false;
for (var i=0;i<actor.incomingEffects.length;i++){
var e = actor.incomingEffects[i];
if (!e || e.buffs) continue;
var left = (e.turnsLeft!=null) ? this.num(e.turnsLeft,0) : this.num(e.turns,0);
if (this.normEffectType(e.type)==="stun" && left>0) return true;
}
return false;
}>>
<<run _fn.consumeOneStunTurn = function(actor, logArr, whoSpan){
if (!actor || !Array.isArray(actor.incomingEffects)) return false;
for (var i=actor.incomingEffects.length-1;i>=0;i--){
var e = actor.incomingEffects[i];
if (!e || e.buffs) continue;
if (this.normEffectType(e.type)==="stun"){
var left = (e.turnsLeft!=null) ? this.num(e.turnsLeft,0) : this.num(e.turns,0);
if (left<=0){
actor.incomingEffects.splice(i,1);
this.grantImmunityBuff(actor, "stun", 1, logArr, whoSpan);
continue;
}
e.turnsLeft = left - 1;
if (e.turnsLeft <= 0){
/* Si llega a 0, se acaba el stun y NO sale el mensaje de "left 0" */
actor.incomingEffects.splice(i,1);
if (logArr) logArr.push((whoSpan||"Actor") + " stun ended.");
this.grantImmunityBuff(actor, "stun", 1, logArr, whoSpan);
} else {
/* Si todavía le quedan turnos, mostramos cuántos quedan */
if (logArr) logArr.push((whoSpan||"Actor") + " is stunned <span style='opacity:.75'>(left "+e.turnsLeft+")</span>");
}
return true;
}
}
return false;
}>>
<<run _fn.grantImmunityBuff = function(actor, effType, turns, logArr, whoSpan){
if (!actor) return;
if (!Array.isArray(actor.incomingEffects)) actor.incomingEffects = [];
var buffName = effType.charAt(0).toUpperCase() + effType.slice(1) + " Immunity";
/* Evitar duplicados si ya tiene la inmunidad */
for (var i=0; i<actor.incomingEffects.length; i++){
var e = actor.incomingEffects[i];
if (e && e.buffs && e.immunityType === effType) {
e.turnsLeft = Math.max(this.num(e.turnsLeft,0), turns);
return;
}
}
/* Lo inyectamos como buff para que 'tickActorBuffs' baje sus turnos automáticamente */
var newBuff = {
name: buffName,
type: "immunity",
immunityType: effType,
turnsLeft: turns,
justApplied: true,
buffs: {}
};
actor.incomingEffects.push(newBuff);
if (logArr) {
var who = (whoSpan || "Actor");
logArr.push("<span style='color:#7CFC98'>" + who + " gains " + buffName + " for 1 turn.</span>");
}
}>>
/* ===== PARALYSIS ===== */
<<run _fn.checkParalysisCanAct = function(actor, logArr, whoSpan){
if (!actor || !Array.isArray(actor.incomingEffects)) return true;
for (var i=actor.incomingEffects.length-1;i>=0;i--){
var e = actor.incomingEffects[i];
if (!e || e.buffs) continue;
if (this.normEffectType(e.type)==="paralysis"){
var left = (e.turnsLeft!=null) ? this.num(e.turnsLeft,0) : this.num(e.turns,0);
if (left<=0){
actor.incomingEffects.splice(i,1);
this.grantImmunityBuff(actor, "paralysis", 1, logArr, whoSpan);
continue;
}
var fail = this.num(e.failChance,55);
var roll = Math.floor(Math.random() * 100) + 1;
var failed = (roll <= fail);
e.turnsLeft = left - 1;
var msg = (whoSpan||"Actor") + " paralysis <span style='opacity:.8'>(" + fail + "%)</span> "
+ (failed ? "<b style='color:#ff6b6b;'>FAIL</b>" : "<b style='color:#7CFC98;'>OK</b>")
+ " <span style='opacity:.75'>(left "+e.turnsLeft+")</span>";
if (logArr) logArr.push(msg);
if (e.turnsLeft<=0){
actor.incomingEffects.splice(i,1);
this.grantImmunityBuff(actor, "paralysis", 1, logArr, whoSpan);
}
if (failed) return false;
}
}
return true;
}>>
/* ===== EFECTOS: inmunidad por damageType (100% res) ===== */
<<run _fn.isImmuneToEffect = function(target, eff){
if (!target || !eff) return false;
var dt = this.normType(eff.damageType);
if (!dt) return false;
var r = this.getResMap(target);
return (this.num(r[dt],50) >= 100);
}>>
/* CLAVE: NO depende del nombre, solo del tipo + damageType cuando aplique */
<<run _fn.effectKey = function(eff){
if (!eff) return "";
var t = this.normEffectType(eff.type);
var dt = (eff.damageType!=null ? this.normType(eff.damageType) : "");
if (t === "stun" || t === "paralysis") return t; /* no depende de dt */
if (t === "damage") return "damage|" + dt; /* DOT sí depende de dt */
return t + "|" + dt;
}>>
<<run _fn.findEffectIndex = function(list, eff){
if (!Array.isArray(list) || !eff) return -1;
var key = this.effectKey(eff);
for (var i=0;i<list.length;i++){
var cur = list[i];
if (!cur || cur.buffs) continue;
if (this.effectKey(cur)===key) return i;
}
return -1;
}>>
/* SIN REFRESH: si ya existe, NO se renueva */
<<run _fn.addOrRefreshEffect = function(target, eff, logArr, targetSpan){
if (!target || !eff) return false;
if (!Array.isArray(target.incomingEffects)) target.incomingEffects = [];
var copy = Object.assign({}, eff);
copy.type = this.normEffectType(copy.type);
if (copy.type === "stun" || copy.type === "paralysis") {
for (var k=0; k<target.incomingEffects.length; k++){
var ae = target.incomingEffects[k];
if (ae && ae.buffs && ae.immunityType === copy.type) {
if (logArr) logArr.push("<span style='opacity:.75'>" + (targetSpan||"Target") + " resists " + (eff.name||copy.type) + " (Immunity Active).</span>");
return false;
}
}
}
var idx = this.findEffectIndex(target.incomingEffects, eff);
if (idx>=0){
if (logArr) logArr.push("<span style='opacity:.75'>" + (targetSpan||"Target") + " is already affected by " + (eff.name||"Effect") + ".</span>");
return false;
}
if (copy.damageType!=null) copy.damageType = this.normType(copy.damageType);
if (copy.turnsLeft==null) copy.turnsLeft = (copy.turns!=null)?this.num(copy.turns,0):0;
target.incomingEffects.push(copy);
if (logArr) logArr.push((targetSpan||"Target") + " gains " + (copy.name||"Effect") + " <span style='opacity:.75'>(left "+copy.turnsLeft+")</span>");
return true;
}>>
<<run _fn.tickActiveDotsOnTarget = function(target, logArr, targetSpan){
if (!target || !Array.isArray(target.incomingEffects)) return;
var resMap = this.getResMap(target);
for (var i=target.incomingEffects.length-1;i>=0;i--){
var e = target.incomingEffects[i];
if (!e || e.buffs) continue;
if (this.normEffectType(e.type)==="damage"){
var left = (e.turnsLeft!=null) ? this.num(e.turnsLeft,0) : this.num(e.turns,0);
if (left<=0){ target.incomingEffects.splice(i,1); continue; }
var dt = this.normType(e.damageType);
var per = this.num(e.perTurn,0);
if (dt && per>0){
var dm = {}; dm[dt]=per;
var br = this.computeDamageBreakdown(dm, resMap);
var dealt = this.applyHpDamage(target, br.total);
var partTxt = this.fmtPart(dt, br.total);
var who = (targetSpan || "Target");
var name = (e.name ? String(e.name) : "Effect");
if (logArr) logArr.push(who + " suffers " + dealt + " from " + name + " " + partTxt + " <span style='opacity:.75'>(left " + (left-1) + ")</span>");
}
e.turnsLeft = left - 1;
if (e.turnsLeft<=0) target.incomingEffects.splice(i,1);
}
}
}>>
/* CLEANSE: purga y aplica inmunidad si limpia control de masas */
<<run _fn.cleanse = function(actor, removes, logArr, whoSpan){
if (!actor || !Array.isArray(actor.incomingEffects)) return;
var rem = Array.isArray(removes) ? removes.map(x=>String(x).toLowerCase()) : ["all"];
for (var i=actor.incomingEffects.length-1;i>=0;i--){
var e = actor.incomingEffects[i];
if (!e || e.buffs) continue;
var dt = this.normType(e.damageType);
var type = this.normEffectType(e.type);
var kill = false;
if (rem.indexOf("all")>=0){
if (type !== "immunity") kill = true;
} else {
if (rem.indexOf("stun")>=0 && type==="stun") kill = true;
if (rem.indexOf("paralysis")>=0 && type==="paralysis") kill = true;
if (type==="damage" && dt && rem.indexOf(dt)>=0) kill = true;
}
if (kill){
actor.incomingEffects.splice(i,1);
if (type === "stun" || type === "paralysis") {
this.grantImmunityBuff(actor, type, 2, logArr, whoSpan);
}
}
}
}>>
/* BUFFS: (igual que tenías) */
<<run _fn.addOrRefreshBuff = function(actor, buffObj, logArr, whoSpan){
if (!actor) return false;
if (!Array.isArray(actor.incomingEffects)) actor.incomingEffects = [];
var idx = -1;
for (var i=0;i<actor.incomingEffects.length;i++){
var e = actor.incomingEffects[i];
if (e && e.buffs && e.name === buffObj.name){ idx=i; break; }
}
var who = (whoSpan || "Actor");
if (idx>=0){
actor.incomingEffects[idx].turnsLeft = Math.max(this.num(actor.incomingEffects[idx].turnsLeft,0), this.num(buffObj.turnsLeft,0));
if (logArr) logArr.push(who + " refreshes buff " + buffObj.name + " <span style='opacity:.75'>(left "+actor.incomingEffects[idx].turnsLeft+")</span>");
return true;
}
buffObj.justApplied = true;
actor.incomingEffects.push(buffObj);
if (logArr) logArr.push(who + " gains buff " + buffObj.name + " <span style='opacity:.75'>(left "+buffObj.turnsLeft+")</span>");
return true;
}>>
<<run _fn.tickActorBuffs = function(actor){
if (!actor || !Array.isArray(actor.incomingEffects)) return;
for (var i=actor.incomingEffects.length-1;i>=0;i--){
var e = actor.incomingEffects[i];
if (!e || !e.buffs) continue;
if (e.justApplied){ e.justApplied = false; continue; }
var left = (e.turnsLeft!=null) ? this.num(e.turnsLeft,0) : this.num(e.turns,0);
if (left<=0){ actor.incomingEffects.splice(i,1); continue; }
e.turnsLeft = left - 1;
if (e.turnsLeft<=0) actor.incomingEffects.splice(i,1);
}
}>>
<</if>>
<</nobr>><<nobr>>
<!--:: CombatTurn_Player-->
<<set $combatEngine.log = []>>
<<set $combatEngine.log.push("<span style='opacity:.8'>— PLAYER TURN —</span>")>>
<<include "Combat__InitHelpers">>
<<include "CalcPlayerCombatStats">>
<<set _fn = $combatEngine._turnFns>>
<<set _p = ($combatEngine.player ? $combatEngine.player : $playerCombat)>>
<<set _e = $combatEngine.enemy>>
<<set _pSpan = _fn.fmtSpeaker($player.name, $player.dialogColor)>>
<<set _eCol = (_e and _e.dialogColor ? _e.dialogColor : "#ff6666")>>
<<set _eSpan = _fn.fmtSpeaker(_e.name, _eCol)>>
/* cooldowns SOLO en tu turno */
<<include "CombatCooldownsTick">>
/* DOTs del jugador */
<<run _fn.tickActiveDotsOnTarget(_p, $combatEngine.log, _pSpan)>>
/* 1. Muerte por DOTs */
<<if _p.hp <= 0>>
<<set $combatEngine.log.push(_pSpan + " succumbs to status effects and is defeated.")>>
<<set $combatEngine.inCombat = false>>
<<set $combatEngine.outcome = "lose">>
<<goto "Combat__ResetAfterCombat">>
/* 2. STUN */
<<elseif _fn.hasActiveStun(_p)>>
<<set $combatEngine._uiPlayerStunned = true>>
<<set $combatEngine.log.push(_pSpan + " is <b style='color:#ffd166;'>STUNNED</b>. Choose <i>Continue</i> or <i>Cleanse</i>.")>>
<<goto "CombatUI">>
/* 3. Turno Normal */
<<else>>
<<set $combatEngine._uiPlayerStunned = false>>
/* parálisis */
<<set _canAct = _fn.checkParalysisCanAct(_p, $combatEngine.log, _pSpan)>>
<<if _canAct>>
<<set _act = ($combatEngine.playerAction ? $combatEngine.playerAction : "base")>>
/* --- BLOQUEO DURO DE COOLDOWN --- */
<<if (_act is "hand1" or _act is "hand2") and _p.loadout and $player.items>>
<<set _slot = (_act is "hand1" ? _p.loadout.hand1 : _p.loadout.hand2)>>
<<if _slot and $player.items[_slot]>>
<<set _w = $player.items[_slot]>>
<<if ndef _w.cdLeft>><<set _w.cdLeft = 0>><</if>>
<<if (_w.hasCd or _w.usesAmmo) and _w.cdLeft > 0>>
<<set $combatEngine.log.push(_pSpan + " cannot use <b>" + _w.name + "</b> <span style='opacity:.75'>(cooldown " + _w.cdLeft + ")</span>.")>>
<<goto "CombatUI">>
<</if>>
<</if>>
<</if>>
/* 1) elegir dmgMap */
<<set _dmgMap = _fn.getDmgMap(_p)>>
<<if _act is "hand1">>
<<if _p._hand1 and _p._hand1.dmg>>
<<set _dmgMap = _p._hand1.dmg>>
<<elseif _p.loadout and _p.loadout.hand1 and $player.items[_p.loadout.hand1] and $player.items[_p.loadout.hand1].dmg>>
<<set _dmgMap = $player.items[_p.loadout.hand1].dmg>>
<</if>>
<<elseif _act is "hand2">>
<<if _p._hand2 and _p._hand2.dmg>>
<<set _dmgMap = _p._hand2.dmg>>
<<elseif _p.loadout and _p.loadout.hand2 and $player.items[_p.loadout.hand2] and $player.items[_p.loadout.hand2].dmg>>
<<set _dmgMap = $player.items[_p.loadout.hand2].dmg>>
<</if>>
<<else>>
<<if $player.items and $player.items.fists and $player.items.fists.dmg>>
<<set _dmgMap = $player.items.fists.dmg>>
<</if>>
<</if>>
/* 2) buffs/debuffs al daño */
<<set _dmgMap = _fn.applyBuffsToDmgMap(_p, _dmgMap)>>
<<set _dealt = 0>>
/* 3) HIT/MISS */
<<set _hitRoll = Math.floor(Math.random() * 100) + 1>>
<<set _hitThreshold = _fn.clamp(_fn.num(_p.accuracy, 80) - _fn.num(_e.evasion, 0), 5, 100)>>
<<if _hitRoll > _hitThreshold>>
<<set $combatEngine.log.push(_pSpan + " <span style='color:#ff6b6b;'>MISSED</span> <span style='opacity:.75'>(" + _hitThreshold + "% hit)</span>")>>
<<else>>
/* 4) CRIT CHECK */
<<set _critRoll = Math.floor(Math.random() * 100) + 1>>
<<set _isCrit = (_critRoll <= _fn.num(_p.critChance, 0))>>
/* 5) resistencias enemigo y daño */
<<set _eRes = _fn.getResMap(_e)>>
<<set _br = _fn.computeDamageBreakdown(_dmgMap, _eRes)>>
<<if _isCrit>>
<<set _critMultVal = _fn.num(_p.critMult, 1.5)>>
<<set _br.total = Math.round(_br.total * _critMultVal)>>
<<for _pi = 0; _pi < _br.parts.length; _pi++>>
<<set _br.parts[_pi].amount = Math.round(_br.parts[_pi].amount * _critMultVal)>>
<</for>>
<</if>>
<<set _dealt = _fn.applyHpDamage(_e, _br.total)>>
<<if _isCrit>>
<<set $combatEngine.log.push(_pSpan + " <span style='color:#FFD700;'>⚡ CRITICAL HIT</span> for " + _dealt + " " + _br.parts.map(function(p){ return _fn.fmtPart(p.type, p.amount); }).join(" ") + " <span style='opacity:.75'>(HP " + _e.hp + "/" + _e.maxHp + ")</span>")>>
<<else>>
<<run _fn.logHit($combatEngine.log, _pSpan, _dealt, _br.parts, _e.hp, _e.maxHp)>>
<</if>>
/* ===== Lifesteal del jugador ===== */
<<set _lsPct = 0>>
<<if def _p.lifeStealPct>><<set _lsPct += _fn.num(_p.lifeStealPct, 0)>><</if>>
<<if _act is "hand1" and _p.loadout and _p.loadout.hand1 and $player.items[_p.loadout.hand1]>>
<<set _it = $player.items[_p.loadout.hand1]>>
<<if def _it.lifeStealPct>><<set _lsPct += _fn.num(_it.lifeStealPct, 0)>><</if>>
<<elseif _act is "hand2" and _p.loadout and _p.loadout.hand2 and $player.items[_p.loadout.hand2]>>
<<set _it = $player.items[_p.loadout.hand2]>>
<<if def _it.lifeStealPct>><<set _lsPct += _fn.num(_it.lifeStealPct, 0)>><</if>>
<</if>>
<<set _lsPct = _fn.clamp(_lsPct, 0, 100)>>
<<if _lsPct > 0 and _dealt > 0>>
<<set _healTry = Math.max(1, Math.floor(_dealt * _lsPct / 100))>>
<<if _healTry > 0>>
<<set _healed = _fn.applyHeal(_p, _healTry)>>
<<if _healed > 0>>
<<set $combatEngine.log.push(_pSpan + " steals " + _healed + " HP <span style='opacity:.75'>(LS " + _lsPct + "%)</span>")>>
<<elseif def _p.maxHp and _p.hp >= _p.maxHp>>
<<set $combatEngine.log.push(_pSpan + " steals 0 HP <span style='opacity:.75'>(LS " + _lsPct + "%, full)</span>")>>
<</if>>
<</if>>
<</if>>
/* 6) efectos */
<<set _newEffects = []>>
<<if Array.isArray(_p.outgoingEffects)>>
<<set _newEffects = _newEffects.concat(_p.outgoingEffects)>>
<</if>>
<<if _act is "hand1" and _p._hand1 and Array.isArray(_p._hand1.outgoingEffects)>>
<<set _newEffects = _newEffects.concat(_p._hand1.outgoingEffects)>>
<<elseif _act is "hand2" and _p._hand2 and Array.isArray(_p._hand2.outgoingEffects)>>
<<set _newEffects = _newEffects.concat(_p._hand2.outgoingEffects)>>
<<elseif _act is "hand1" and _p.loadout and _p.loadout.hand1 and $player.items[_p.loadout.hand1] and Array.isArray($player.items[_p.loadout.hand1].outgoingEffects)>>
<<set _newEffects = _newEffects.concat($player.items[_p.loadout.hand1].outgoingEffects)>>
<<elseif _act is "hand2" and _p.loadout and _p.loadout.hand2 and $player.items[_p.loadout.hand2] and Array.isArray($player.items[_p.loadout.hand2].outgoingEffects)>>
<<set _newEffects = _newEffects.concat($player.items[_p.loadout.hand2].outgoingEffects)>>
<</if>>
<<for _i = 0; _i < _newEffects.length; _i++>>
<<set _ef = _newEffects[_i]>>
<<if _ef and _ef.name>>
<<if _fn.isImmuneToEffect(_e, _ef)>>
<<set $combatEngine.log.push(_eSpan + " is immune to " + _ef.name + " <span style='opacity:.75'>(100% res)</span>")>>
<<else>>
<<set _roll = Math.floor(Math.random() * 100) + 1>>
<<set _ch = (_ef.chance ? _ef.chance : 100)>>
<<if _roll <= _ch>>
<<run _fn.addOrRefreshEffect(_e, _ef, $combatEngine.log, _eSpan)>>
<<else>>
<<set $combatEngine.log.push(_pSpan + " fails to apply " + _ef.name + " <span style='opacity:.75'>(" + _ch + "%)</span>")>>
<</if>>
<</if>>
<</if>>
<</for>>
/* 7) cooldown */
<<if _act is "hand1" and _p.loadout and _p.loadout.hand1 and $player.items[_p.loadout.hand1]>>
<<set _it = $player.items[_p.loadout.hand1]>>
<<if _it.hasCd>>
<<if ndef _it.cdLeft>><<set _it.cdLeft = 0>><</if>>
<<set _it.cdLeft = (_it.cooldown ? _it.cooldown : 1)>>
<<set $combatEngine.log.push(_pSpan + " sets cooldown on " + _it.name + " <span style='opacity:.75'>(cd "+_it.cdLeft+")</span>")>>
<</if>>
<<elseif _act is "hand2" and _p.loadout and _p.loadout.hand2 and $player.items[_p.loadout.hand2]>>
<<set _it = $player.items[_p.loadout.hand2]>>
<<if _it.hasCd>>
<<if ndef _it.cdLeft>><<set _it.cdLeft = 0>><</if>>
<<set _it.cdLeft = (_it.cooldown ? _it.cooldown : 1)>>
<<set $combatEngine.log.push(_pSpan + " sets cooldown on " + _it.name + " <span style='opacity:.75'>(cd "+_it.cdLeft+")</span>")>>
<</if>>
<</if>>
<</if>> /* fin hit/miss */
<<else>>
<<set $combatEngine.log.push(_pSpan + " cannot act this turn(paralyzed).")>>
<</if>>
<<run _fn.tickActorBuffs(_p)>>
/* CHEQUEO FINAL */
<<if _e and _e.hp <= 0>>
<<set $combatEngine.log.push(_eSpan + " is defeated.")>>
<<set $combatEngine.inCombat = false>>
<<set $combatEngine.outcome = "win">>
<<goto "WinPassage">>
<<else>>
<<if $combatEngine.log[$combatEngine.log.length - 1].includes("cannot use")>>
<<goto "CombatUI">>
<<else>>
<<goto "CombatTurn_Enemy">>
<</if>>
<</if>>
<</if>>
<</nobr>><<nobr>>
<!--:: CombatTurn_Enemy-->
<<set $combatEngine.log.push("<span style='opacity:.8'>— ENEMY TURN —</span>")>>
<<include "Combat__InitHelpers">>
<<set _fn = $combatEngine._turnFns>>
<<set _p = ($combatEngine.player ? $combatEngine.player : $playerCombat)>>
<<set _e = $combatEngine.enemy>>
<<if _e is null>><<goto "CombatUI">><</if>>
<<if ndef _e.incomingEffects>><<set _e.incomingEffects = []>><</if>>
<<if ndef _e.outgoingEffects>><<set _e.outgoingEffects = []>><</if>>
<<if ndef _p.incomingEffects>><<set _p.incomingEffects = []>><</if>>
<<set _pSpan = _fn.fmtSpeaker($player.name, $player.dialogColor)>>
<<set _eCol = (_e.dialogColor ? _e.dialogColor : "#ff6666")>>
<<set _eSpan = _fn.fmtSpeaker(_e.name, _eCol)>>
/* DOTs del ENEMIGO */
<<run _fn.tickActiveDotsOnTarget(_e, $combatEngine.log, _eSpan)>>
/* 1. Muerte por DOTs */
<<if _e.hp <= 0>>
<<set $combatEngine.log.push(_eSpan + " succumbs to status effects!")>>
<<set $combatEngine.inCombat = false>>
<<set $combatEngine.outcome = "win">>
<<goto "WinPassage">>
/* 2. STUN enemigo */
<<elseif _fn.hasActiveStun(_e)>>
<<set $combatEngine.log.push(_eSpan + " is <b style='color:#ffd166;'>STUNNED</b> and loses the turn.")>>
<<run _fn.consumeOneStunTurn(_e, $combatEngine.log, _eSpan)>>
<<run _fn.tickActorBuffs(_e)>>
<<goto "CombatUI">>
/* 3. Turno normal */
<<else>>
/* parálisis enemigo */
<<set _canAct = _fn.checkParalysisCanAct(_e, $combatEngine.log, _eSpan)>>
<<if _canAct>>
<<set _dmgMap = _fn.getDmgMap(_e)>>
<<set _dmgMap = _fn.applyBuffsToDmgMap(_e, _dmgMap)>>
<<set _dealt = 0>>
/* HIT/MISS */
<<set _hitRoll = Math.floor(Math.random() * 100) + 1>>
<<set _hitThreshold = _fn.clamp(_fn.num(_e.accuracy, 80) - _fn.num(_p.evasion, 0), 5, 100)>>
<<if _hitRoll > _hitThreshold>>
<<set $combatEngine.log.push(_eSpan + " <span style='color:#aaaaaa;'>MISSED</span> <span style='opacity:.75'>(" + _hitThreshold + "% hit)</span>")>>
<<else>>
/* CRIT CHECK */
<<set _critRoll = Math.floor(Math.random() * 100) + 1>>
<<set _isCrit = (_critRoll <= _fn.num(_e.critChance, 0))>>
<<set _pRes = _fn.getResMap(_p)>>
<<set _br = _fn.computeDamageBreakdown(_dmgMap, _pRes)>>
<<if _isCrit>>
<<set _critMultVal = _fn.num(_e.critMult, 1.5)>>
<<set _br.total = Math.round(_br.total * _critMultVal)>>
<<for _pi = 0; _pi < _br.parts.length; _pi++>>
<<set _br.parts[_pi].amount = Math.round(_br.parts[_pi].amount * _critMultVal)>>
<</for>>
<</if>>
<<set _dealt = _fn.applyHpDamage(_p, _br.total)>>
<<if _isCrit>>
<<set $combatEngine.log.push(_eSpan + " <span style='color:#FFD700;'>⚡ CRITICAL HIT</span> for " + _dealt + " " + _br.parts.map(function(p){ return _fn.fmtPart(p.type, p.amount); }).join(" ") + " <span style='opacity:.75'>(HP " + _p.hp + "/" + _p.maxHp + ")</span>")>>
<<else>>
<<run _fn.logHit($combatEngine.log, _eSpan, _dealt, _br.parts, _p.hp, _p.maxHp)>>
<</if>>
/* Lifesteal enemigo */
<<set _elsPct = 0>>
<<if def _e.lifeStealPct>><<set _elsPct = _fn.clamp(_fn.num(_e.lifeStealPct, 0), 0, 100)>><</if>>
<<if _elsPct > 0 and _dealt > 0>>
<<set _eHealTry = Math.max(1, Math.round(_dealt * _elsPct / 100))>>
<<if _eHealTry > 0>>
<<set _eHealed = _fn.applyHeal(_e, _eHealTry)>>
<<if _eHealed > 0>>
<<set $combatEngine.log.push(_eSpan + " steals " + _eHealed + " HP <span style='opacity:.75'>(LS " + _elsPct + "%)</span>")>>
<<elseif def _e.maxHp and _e.hp >= _e.maxHp>>
<<set $combatEngine.log.push(_eSpan + " steals 0 HP <span style='opacity:.75'>(LS " + _elsPct + "%, full)</span>")>>
<</if>>
<</if>>
<</if>>
/* Efectos enemigo */
<<if Array.isArray(_e.outgoingEffects) and _e.outgoingEffects.length > 0>>
<<for _i = 0; _i < _e.outgoingEffects.length; _i++>>
<<set _ef = _e.outgoingEffects[_i]>>
<<if _ef and _ef.name>>
<<if _fn.isImmuneToEffect(_p, _ef)>>
<<set $combatEngine.log.push(_pSpan + " is immune to " + _ef.name + " <span style='opacity:.75'>(100% res)</span>")>>
<<else>>
<<set _roll = Math.floor(Math.random() * 100) + 1>>
<<set _ch = (_ef.chance ? _ef.chance : 100)>>
<<if _roll <= _ch>>
<<run _fn.addOrRefreshEffect(_p, _ef, $combatEngine.log, _pSpan)>>
<<else>>
<<set $combatEngine.log.push(_eSpan + " fails to apply " + _ef.name + " <span style='opacity:.75'>(" + _ch + "%)</span>")>>
<</if>>
<</if>>
<</if>>
<</for>>
<</if>>
<</if>> /* fin hit/miss */
<<else>>
<<set $combatEngine.log.push(_eSpan + " cannot act this turn(paralyzed).")>>
<</if>>
<<run _fn.tickActorBuffs(_e)>>
/* CHEQUEO FINAL */
<<if _p.hp <= 0>>
<<set $combatEngine.log.push(_pSpan + " is defeated.")>>
<<set $combatEngine.inCombat = false>>
<<set $combatEngine.outcome = "lose">>
<<goto "Combat__ResetAfterCombat">>
<<else>>
<<goto "CombatUI">>
<</if>>
<</if>>
<</nobr>><<nobr>>
<!--:: CombatCooldownsTick-->
<<set _p = $combatEngine.player>>
<<if _p.loadout and $player.items>>
<<set _keys = []>>
<<if _p.loadout.hand1>><<set _keys.push(_p.loadout.hand1)>><</if>>
<<if _p.loadout.hand2>><<set _keys.push(_p.loadout.hand2)>><</if>>
<<for _i = 0; _i < _keys.length; _i++>>
<<set _k = _keys[_i]>>
<<if _k and $player.items[_k]>>
<<set _it = $player.items[_k]>>
<<if ndef _it.cdLeft>><<set _it.cdLeft = 0>><</if>>
<<if _it.cdLeft > 0>>
<<set _it.cdLeft -= 1>>
<<if _it.cdLeft < 0>><<set _it.cdLeft = 0>><</if>>
<<if $combatEngine.debugCooldowns>>
<<set $combatEngine.log.push("Cooldown tick: " + _it.name + " -> " + _it.cdLeft)>>
<</if>>
<</if>>
<</if>>
<</for>>
<</if>>
<</nobr>><<nobr>>
<!--:: CombatTurn_PlayerStunnedContinue-->
<<set $combatEngine.log = []>>
<<set $combatEngine.log.push("<span style='opacity:.8'>— PLAYER TURN —</span>")>>
<<include "Combat__InitHelpers">>
<<set _fn = $combatEngine._turnFns>>
<<set _p = ($combatEngine.player ? $combatEngine.player : $playerCombat)>>
<<set _pSpan = _fn.fmtSpeaker($player.name, $player.dialogColor)>>
/* cooldowns SOLO en tu turno */
<<include "CombatCooldownsTick">>
/* DOTs del jugador */
<<run _fn.tickActiveDotsOnTarget(_p, $combatEngine.log, _pSpan)>>
/* CHEQUEO MUERTE POR DOTs */
<<if _p.hp <= 0>>
<<set $combatEngine.log.push(_pSpan + " succumbs to status effects and is defeated.")>>
<<set $combatEngine.inCombat = false>>
<<set $combatEngine.outcome = "lose">>
<<goto "Combat__ResetAfterCombat">>
<<else>>
<<set $combatEngine.log.push(_pSpan + " skips the turn due to <b style='color:#ffd166;'>STUN</b>.")>>
<<run _fn.consumeOneStunTurn(_p, $combatEngine.log, _pSpan)>>
<<run _fn.tickActorBuffs(_p)>>
<<goto "CombatTurn_Enemy">>
<</if>>
<</nobr>><<nobr>>
<!--:: Combat__PlayerHasStunForUI-->
<<include "Combat__InitHelpers">>
<<set _fn = $combatEngine._turnFns>>
<<set _p = ($combatEngine.player ? $combatEngine.player : $playerCombat)>>
<<set $combatEngine._uiPlayerStunned = _fn.hasActiveStun(_p)>>
<</nobr>><<nobr>>
<<include "Combat__InitHelpers">>
<<include "CalcPlayerCombatStats">>
<<if ndef $player>><<set $player = {}>><</if>>
<<if ndef $player.consumables>><<set $player.consumables = {}>><</if>>
/* Inicializamos el filtro visual por defecto si no existe */
<<if ndef $combatConsFilter>><<set $combatConsFilter = "all">><</if>>
<div class="consumablesPanel">
<div class="consTitle">CONSUMABLES</div>
<div style="text-align:center; margin-bottom:10px; display:flex; gap:10px; justify-content:center; flex-wrap:wrap;">
<<link "All">>
<<set $combatConsFilter = "all">>
<<run setup.CC_renderConsumables()>>
<</link>>
<<link "Heal">>
<<set $combatConsFilter = "heal">>
<<run setup.CC_renderConsumables()>>
<</link>>
<<link "Cleanse">>
<<set $combatConsFilter = "cleanse">>
<<run setup.CC_renderConsumables()>>
<</link>>
<<link "Buff">>
<<set $combatConsFilter = "buff">>
<<run setup.CC_renderConsumables()>>
<</link>>
<<link "Offensive">>
<<set $combatConsFilter = "damage">>
<<run setup.CC_renderConsumables()>>
<</link>>
</div>
<div style="text-align:center;margin-bottom:16px;">
<<link "Back">><<goto "CombatUI">><</link>>
</div>
<div class="consumablesGrid" id="consumablesGrid"></div>
</div>
<<script>>
$(document).one(":passagedisplay", function () {
/* Al entrar, renderizamos usando el filtro guardado */
if (setup && setup.CC_renderConsumables) {
setup.CC_renderConsumables();
}
});
<</script>>
<</nobr>><<nobr>>
<!--:: CombatTurn_PlayerStunnedUseItem-->
<<include "Combat__InitHelpers">>
<<set _fn = $combatEngine._turnFns>>
<<set _p = ($combatEngine.player ? $combatEngine.player : $playerCombat)>>
<<set _pSpan = _fn.fmtSpeaker($player.name, $player.dialogColor)>>
<<set $combatEngine.log.push("<span style='opacity:.8'>— PLAYER TURN —</span>")>>
<<include "CombatCooldownsTick">>
<<run _fn.tickActiveDotsOnTarget(_p, $combatEngine.log, _pSpan)>>
<<set $combatEngine._consumablesFilter = "cleanseOnly">>
<<set $combatEngine._consumablesReturn = "CombatTurn_Enemy">>
<<set $combatEngine._consumablesStunMode = true>>
<<goto "CombatConsumables">>
<</nobr>><<nobr>>
<!--:: CombatTurn_PlayerUseItem-->
<<include "Combat__InitHelpers">>
<<include "CalcPlayerCombatStats">>
<<set _fn = $combatEngine._turnFns>>
<<set _p = ($combatEngine.player ? $combatEngine.player : $playerCombat)>>
<<set _pSpan = _fn.fmtSpeaker($player.name, $player.dialogColor)>>
<<set $combatEngine.log.push("<span style='opacity:.8'>— PLAYER TURN —</span>")>>
<<include "CombatCooldownsTick">>
<<run _fn.tickActiveDotsOnTarget(_p, $combatEngine.log, _pSpan)>>
/* FALTA: */
<<if _p.hp <= 0>>
<<set $combatEngine.inCombat = false>>
<<set $combatEngine.outcome = "lose">>
<<goto "Combat__ResetAfterCombat">>
<</if>>
<<if _fn.hasActiveStun(_p)>>
<<set $combatEngine._uiPlayerStunned = true>>
<<goto "CombatUI">>
<</if>>
<<set $combatEngine._uiPlayerStunned = false>>
<<set _canAct = _fn.checkParalysisCanAct(_p, $combatEngine.log, _pSpan)>>
<<if !_canAct>>
<<set $combatEngine.log.push(_pSpan + " cannot act this turn.")>>
<<run _fn.tickActorBuffs(_p)>>
<<goto "CombatTurn_Enemy">>
<</if>>
<<set $combatEngine._consumablesFilter = "all">>
<<set $combatEngine._consumablesReturn = "CombatTurn_Enemy">>
<<set $combatEngine._consumablesStunMode = false>>
<<goto "CombatConsumables">>
<</nobr>><<nobr>>
/* ==========================================================
1. GUARDAR DESTINOS Y RESULTADO
========================================================== */
<<set _outcome = ($combatEngine.outcome ? $combatEngine.outcome : "Pizzeria")>>
<<set _nextWin = ($combatEngine.onWin ? $combatEngine.onWin : "Pizzeria")>>
<<set _nextLose = ($combatEngine.onLose ? $combatEngine.onLose : "Pizzeria")>>
/* ==========================================================
2. GUARDADO DE HP (FIX CRÍTICO)
Leemos explícitamente del motor de combate antes de borrarlo.
========================================================== */
/* Verificamos si existe la copia del jugador y NO es null */
<<if $combatEngine.player && def $combatEngine.player.hp>>
/* 1. Capturamos la vida final del combate */
<<set _finalHp = Number($combatEngine.player.hp)>>
/* 2. La inyectamos en la variable GLOBAL persistente */
<<set $playerCombat.hp = _finalHp>>
/* 3. Aseguramos que no supere el máximo (por si hubo errores de cura) */
<<if def $playerCombat.maxHp>>
<<set $playerCombat.hp = Math.min($playerCombat.hp, $playerCombat.maxHp)>>
<</if>>
<<else>>
/* Fallback de seguridad: Si no hay jugador en el engine o es null,
mantenemos la vida actual de $playerCombat tal cual está. */
<</if>>
/* ==========================================================
3. LIMPIEZA DEL JUGADOR GLOBAL
Borramos efectos para que no entres al siguiente combate envenenado.
========================================================== */
<<if $playerCombat>>
<<set $playerCombat.incomingEffects = []>>
<<set $playerCombat.outgoingEffects = []>>
<<set $playerCombat.effects = []>>
<<set $playerCombat.turnFlags = {}>>
/* Limpiamos ticks temporales si los hubiera */
<<if def $playerCombat._statusTick>><<set $playerCombat._statusTick = {}>><</if>>
<</if>>
/* ==========================================================
4. RESETEAR COOLDOWNS DE ARMAS/ITEMS
========================================================== */
<<if $player && $player.items>>
<<set _ik = Object.keys($player.items)>>
<<for _i = 0; _i < _ik.length; _i++>>
<<set _k = _ik[_i]>>
<<if $player.items[_k] && def $player.items[_k].cdLeft>>
<<set $player.items[_k].cdLeft = 0>>
<</if>>
<</for>>
<</if>>
/* ==========================================================
5. DESTRUIR EL MOTOR DE COMBATE
Ahora que ya guardamos la vida, podemos borrar todo.
========================================================== */
/* Limpiar Enemigo */
<<if $combatEngine.enemy>>
<<set $combatEngine.enemy.incomingEffects = []>>
<<set $combatEngine.enemy.outgoingEffects = []>>
<<set $combatEngine.enemy.effects = []>>
<</if>>
/* Resetear variables del Engine */
<<set $combatEngine.inCombat = false>>
<<set $combatEngine.outcome = null>>
<<set $combatEngine.enemyId = null>>
<<set $combatEngine.enemy = null>>
<<set $combatEngine.playerAction = null>>
<<set $combatEngine.enemyAction = null>>
<<set $combatEngine._statusTick = {}>>
<<set $combatEngine._consumablesFilter = null>>
<<set $combatEngine._consumablesReturn = null>>
/* Reiniciar contadores de turno */
<<if def $combatEngine.turn>><<set $combatEngine.turn = 0>><</if>>
<<if def $combatEngine.turnCount>><<set $combatEngine.turnCount = 0>><</if>>
<<if def $combatEngine.round>><<set $combatEngine.round = 0>><</if>>
/* ==========================================================
6. NAVEGACIÓN AL DESTINO
========================================================== */
<<if _outcome is "win">>
<<if _nextWin>><<goto _nextWin>><<else>><<goto "Pizzeria">><</if>>
<<elseif _outcome is "lose">>
<<if _nextLose>><<goto _nextLose>><<else>><<goto "Pizzeria">><</if>>
<</if>>
<</nobr>><<nobr>>
<!-- ========================================== -->
<!-- FAMILIA: MAMMOTH HEART -->
<!-- ========================================== -->
<<if $player.mutations.mammothHeart3.obtained === true>>
<!-- Muestra el Tier 3 como COMPRADO/MÁXIMO -->
<div class="mutation-container">
<img class="mutation-image-common" @src="$player.mutations.mammothHeart3.img" alt="Mammoth Heart III" />
<div class="mutation-details">
<h2 class="mutation-title-common">Mammoth Heart III (Max Level)</h2>
<p>Titanic Phase: oxygen reserves and extreme tissue resistance. Your body can endure what others cannot. (+ $player.mutations.mammothHeart3.statsAdd.maxHp Max HP)</p>
<div class="creditsButtonsFlexBox">
<span class="success-message">Your DNA has already reached its maximum mutation.</span>
</div>
</div>
</div>
<<elseif $player.mutations.mammothHeart2.obtained === true>>
<!-- Tiene Tier 2 -> Muestra Tier 3 para comprar -->
<div class="mutation-container">
<img class="mutation-image-common" @src="$player.mutations.mammothHeart3.img" alt="Mammoth Heart III" />
<div class="mutation-details">
<h2 class="mutation-title-common">Mammoth Heart III</h2>
<p>Titanic Phase: oxygen reserves and extreme tissue resistance. Your body can endure what others cannot. (+ $player.mutations.mammothHeart3.statsAdd.maxHp Max HP)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.mammothHeart3.price>>
<span class="error-message">You need $player.mutations.mammothHeart3.price RegenCoins to upgrade.</span>
<<else>>
<div class="buy-mutation-common">
<<button "Upgrade to Tier III ($player.mutations.mammothHeart3.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.mammothHeart3.price>>
<<set $player.mutations.mammothHeart3.obtained = true>>
<<set $player.mutations.mammothHeart2.obtained = false>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<<elseif $player.mutations.mammothHeart1.obtained === true>>
<!-- Tiene Tier 1 -> Muestra Tier 2 para comprar -->
<div class="mutation-container">
<img class="mutation-image-common" @src="$player.mutations.mammothHeart2.img" alt="Mammoth Heart II" />
<div class="mutation-details">
<h2 class="mutation-title-common">Mammoth Heart II</h2>
<p>Advanced hemodynamic optimization: enhanced pumping and extra microcapillaries to sustain long battles. (+ $player.mutations.mammothHeart2.statsAdd.maxHp Max HP)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.mammothHeart2.price>>
<span class="error-message">You need $player.mutations.mammothHeart2.price RegenCoins to upgrade.</span>
<<else>>
<div class="buy-mutation-common">
<<button "Upgrade to Tier II ($player.mutations.mammothHeart2.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.mammothHeart2.price>>
<<set $player.mutations.mammothHeart2.obtained = true>>
<<set $player.mutations.mammothHeart1.obtained = false>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<<else>>
<!-- No tiene nada -> Muestra Tier 1 para comprar -->
<div class="mutation-container">
<img class="mutation-image-common" @src="$player.mutations.mammothHeart1.img" alt="Mammoth Heart I" />
<div class="mutation-details">
<h2 class="mutation-title-common">Mammoth Heart I</h2>
<p>"Mammoth”-type hypertrophic cardiomyocytes: increases your blood volume and damage tolerance. (+ $player.mutations.mammothHeart1.statsAdd.maxHp Max HP)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.mammothHeart1.price>>
<span class="error-message">You need $player.mutations.mammothHeart1.price RegenCoins to activate this mutation.</span>
<<else>>
<div class="buy-mutation-common">
<<button "Buy Mutation ($player.mutations.mammothHeart1.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.mammothHeart1.price>>
<<set $player.mutations.mammothHeart1.obtained = true>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<</if>>
<!-- ========================================== -->
<!-- FAMILIA: NINJA FEET -->
<!-- ========================================== -->
<<if $player.mutations.ninjaFeet2.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-common" @src="$player.mutations.ninjaFeet2.img" alt="Ninja Feet II" />
<div class="mutation-details">
<h2 class="mutation-title-common">Ninja Feet II (Max Level)</h2>
<p>Ultra-fast-twitch muscle fibers: silent footfall and unpredictable movement patterns. (+ $player.mutations.ninjaFeet2.statsAdd.evasion% Evasion)</p>
<div class="creditsButtonsFlexBox">
<span class="success-message">Your DNA already has the maximum mutation.</span>
</div>
</div>
</div>
<<elseif $player.mutations.ninjaFeet1.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-common" @src="$player.mutations.ninjaFeet2.img" alt="Ninja Feet II" />
<div class="mutation-details">
<h2 class="mutation-title-common">Ninja Feet II</h2>
<p>Ultra-fast-twitch muscle fibers: silent footfall and unpredictable movement patterns. (+ $player.mutations.ninjaFeet2.statsAdd.evasion% Evasion)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.ninjaFeet2.price>>
<span class="error-message">You need $player.mutations.ninjaFeet2.price RegenCoins to upgrade.</span>
<<else>>
<div class="buy-mutation-common">
<<button "Upgrade to Tier II ($player.mutations.ninjaFeet2.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.ninjaFeet2.price>>
<<set $player.mutations.ninjaFeet2.obtained = true>>
<<set $player.mutations.ninjaFeet1.obtained = false>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<<else>>
<div class="mutation-container">
<img class="mutation-image-common" @src="$player.mutations.ninjaFeet1.img" alt="Ninja Feet I" />
<div class="mutation-details">
<h2 class="mutation-title-common">Ninja Feet I</h2>
<p>Elastic tendons and "predator” reflexes: instant micro-adjustments to dodge impacts. (+ $player.mutations.ninjaFeet1.statsAdd.evasion% Evasion)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.ninjaFeet1.price>>
<span class="error-message">You need $player.mutations.ninjaFeet1.price RegenCoins to activate it.</span>
<<else>>
<div class="buy-mutation-common">
<<button "Buy Mutation ($player.mutations.ninjaFeet1.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.ninjaFeet1.price>>
<<set $player.mutations.ninjaFeet1.obtained = true>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<</if>>
<!-- ========================================== -->
<!-- FAMILIA: GORILLA MUSCLES -->
<!-- ========================================== -->
<<if $player.mutations.gorillaMuscles2.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-common" @src="$player.mutations.gorillaMuscles2.img" alt="Gorilla Muscles II" />
<div class="mutation-details">
<h2 class="mutation-title-common">Gorilla Muscles II (Max Level)</h2>
<p>Reinforced myofibrils: explosive contraction, brutal impact, and total control over the strike. (+ $player.mutations.gorillaMuscles2.dmgAdd.physical Physical DMG)</p>
<div class="creditsButtonsFlexBox">
<span class="success-message">Your DNA already has the maximum mutation.</span>
</div>
</div>
</div>
<<elseif $player.mutations.gorillaMuscles1.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-common" @src="$player.mutations.gorillaMuscles2.img" alt="Gorilla Muscles II" />
<div class="mutation-details">
<h2 class="mutation-title-common">Gorilla Muscles II</h2>
<p>Myofibrillar reinforcement: explosive contraction, brutal impact, and total control over the strike. (+ $player.mutations.gorillaMuscles2.dmgAdd.physical Physical DMG)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.gorillaMuscles2.price>>
<span class="error-message">You need $player.mutations.gorillaMuscles2.price RegenCoins to upgrade.</span>
<<else>>
<div class="buy-mutation-common">
<<button "Upgrade to Tier II ($player.mutations.gorillaMuscles2.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.gorillaMuscles2.price>>
<<set $player.mutations.gorillaMuscles2.obtained = true>>
<<set $player.mutations.gorillaMuscles1.obtained = false>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<<else>>
<div class="mutation-container">
<img class="mutation-image-common" @src="$player.mutations.gorillaMuscles1.img" alt="Gorilla Muscles I" />
<div class="mutation-details">
<h2 class="mutation-title-common">Gorilla Muscles I</h2>
<p>Myostatin inhibited (gorilla mode): greater muscle density, more power. (+ $player.mutations.gorillaMuscles1.dmgAdd.physical Physical DMG)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.gorillaMuscles1.price>>
<span class="error-message">You need $player.mutations.gorillaMuscles1.price RegenCoins to activate it.</span>
<<else>>
<div class="buy-mutation-common">
<<button "Buy Mutation ($player.mutations.gorillaMuscles1.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.gorillaMuscles1.price>>
<<set $player.mutations.gorillaMuscles1.obtained = true>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<</if>>
<!-- ========================================== -->
<!-- FAMILIA: TURTLE SHELL SKIN -->
<!-- ========================================== -->
<<if $player.mutations.turtleShellSkin3.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-common" @src="$player.mutations.turtleShellSkin3.img" alt="Turtle Shell Skin III" />
<div class="mutation-details">
<h2 class="mutation-title-common">Turtle Shell Skin III (Max Level)</h2>
<p>Full shell: high-performance organic armor, designed to survive the impossible. (+ $player.mutations.turtleShellSkin3.resistAdd.physical Physical Resist)</p>
<div class="creditsButtonsFlexBox">
<span class="success-message">Your DNA already has the maximum mutation.</span>
</div>
</div>
</div>
<<elseif $player.mutations.turtleShellSkin2.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-common" @src="$player.mutations.turtleShellSkin3.img" alt="Turtle Shell Skin III" />
<div class="mutation-details">
<h2 class="mutation-title-common">Turtle Shell Skin III</h2>
<p>Full shell: high-performance organic armor, designed to survive the impossible. (+ $player.mutations.turtleShellSkin3.resistAdd.physical Physical Resist)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.turtleShellSkin3.price>>
<span class="error-message">You need $player.mutations.turtleShellSkin3.price RegenCoins to upgrade.</span>
<<else>>
<div class="buy-mutation-common">
<<button "Upgrade to Tier III ($player.mutations.turtleShellSkin3.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.turtleShellSkin3.price>>
<<set $player.mutations.turtleShellSkin3.obtained = true>>
<<set $player.mutations.turtleShellSkin2.obtained = false>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<<elseif $player.mutations.turtleShellSkin1.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-common" @src="$player.mutations.turtleShellSkin2.img" alt="Turtle Shell Skin II" />
<div class="mutation-details">
<h2 class="mutation-title-common">Turtle Shell Skin II</h2>
<p>Densified dermal plates: stiffer protective layer, better impact dissipation. (+ $player.mutations.turtleShellSkin2.resistAdd.physical Physical Resist)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.turtleShellSkin2.price>>
<span class="error-message">You need $player.mutations.turtleShellSkin2.price RegenCoins to upgrade.</span>
<<else>>
<div class="buy-mutation-common">
<<button "Upgrade to Tier II ($player.mutations.turtleShellSkin2.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.turtleShellSkin2.price>>
<<set $player.mutations.turtleShellSkin2.obtained = true>>
<<set $player.mutations.turtleShellSkin1.obtained = false>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<<else>>
<div class="mutation-container">
<img class="mutation-image-common" @src="$player.mutations.turtleShellSkin1.img" alt="Turtle Shell Skin I" />
<div class="mutation-details">
<h2 class="mutation-title-common">Turtle Shell Skin I</h2>
<p>Reinforced "shell” keratin: your skin absorbs impacts and reduces physical damage. (+ $player.mutations.turtleShellSkin1.resistAdd.physical Physical Resist)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.turtleShellSkin1.price>>
<span class="error-message">You need $player.mutations.turtleShellSkin1.price RegenCoins to activate it.</span>
<<else>>
<div class="buy-mutation-common">
<<button "Buy Mutation ($player.mutations.turtleShellSkin1.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.turtleShellSkin1.price>>
<<set $player.mutations.turtleShellSkin1.obtained = true>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<</if>>
<!-- ========================================== -->
<!-- FAMILIA: EAGLE EYE -->
<!-- ========================================== -->
<<if $player.mutations.eagleEye2.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-common" @src="$player.mutations.eagleEye2.img" alt="Eagle Eye II" />
<div class="mutation-details">
<h2 class="mutation-title-common">Eagle Eye II (Max Level)</h2>
<p>Predatory approach: calculating trajectory and making visual adjustments to ensure accuracy. (+ $player.mutations.eagleEye2.statsAdd.accuracy Accuracy)</p>
<div class="creditsButtonsFlexBox">
<span class="success-message">Your DNA already has the maximum mutation.</span>
</div>
</div>
</div>
<<elseif $player.mutations.eagleEye1.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-common" @src="$player.mutations.eagleEye2.img" alt="Eagle Eye II" />
<div class="mutation-details">
<h2 class="mutation-title-common">Eagle Eye II</h2>
<p>Predatory approach: calculating trajectory and making visual micro-adjustments to ensure accuracy. (+ $player.mutations.eagleEye2.statsAdd.accuracy Accuracy)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.eagleEye2.price>>
<span class="error-message">You need $player.mutations.eagleEye2.price RegenCoins to upgrade.</span>
<<else>>
<div class="buy-mutation-common">
<<button "Upgrade to Tier II ($player.mutations.eagleEye2.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.eagleEye2.price>>
<<set $player.mutations.eagleEye2.obtained = true>>
<<set $player.mutations.eagleEye1.obtained = false>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<<else>>
<div class="mutation-container">
<img class="mutation-image-common" @src="$player.mutations.eagleEye1.img" alt="Eagle Eye I" />
<div class="mutation-details">
<h2 class="mutation-title-common">Eagle Eye I</h2>
<p>High-Resolution Retina: Improved focus, better reading of enemy movement. (+ $player.mutations.eagleEye1.statsAdd.accuracy Accuracy)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.eagleEye1.price>>
<span class="error-message">You need $player.mutations.eagleEye1.price RegenCoins to activate it.</span>
<<else>>
<div class="buy-mutation-common">
<<button "Buy Mutation ($player.mutations.eagleEye1.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.eagleEye1.price>>
<<set $player.mutations.eagleEye1.obtained = true>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<</if>>
<</nobr>><<nobr>>
<!-- ========================================== -->
<!-- FAMILIA: DRAGON SKIN -->
<!-- ========================================== -->
<<if $player.mutations.dragonskin3.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-fire" @src="$player.mutations.dragonskin3.img" alt="Dragon Skin III" />
<div class="mutation-details">
<h2 class="mutation-title-fire">Dragon Skin III (Max Level)</h2>
<p>Dragon Shell: Your skin becomes a natural shield against flames. (+ $player.mutations.dragonskin3.resistAdd.fire Fire Resist)</p>
<div class="creditsButtonsFlexBox">
<span class="success-message">Your DNA has already reached its maximum mutation.</span>
</div>
</div>
</div>
<<elseif $player.mutations.dragonskin2.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-fire" @src="$player.mutations.dragonskin3.img" alt="Dragon Skin III" />
<div class="mutation-details">
<h2 class="mutation-title-fire">Dragon Skin III</h2>
<p>Dragon Shell: Your skin becomes a natural shield against flames. (+ $player.mutations.dragonskin3.resistAdd.fire Fire Resist)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.dragonskin3.price>>
<span class="error-message">You need $player.mutations.dragonskin3.price RegenCoins to upgrade.</span>
<<else>>
<div class="buy-mutation-fire">
<<button "Upgrade to Tier III ($player.mutations.dragonskin3.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.dragonskin3.price>>
<<set $player.mutations.dragonskin3.obtained = true>>
<<set $player.mutations.dragonskin2.obtained = false>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<<elseif $player.mutations.dragonskin1.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-fire" @src="$player.mutations.dragonskin2.img" alt="Dragon Skin II" />
<div class="mutation-details">
<h2 class="mutation-title-fire">Dragon Skin II</h2>
<p>Fiery Scales: Fire resistance increases, further reducing damage taken. (+ $player.mutations.dragonskin2.resistAdd.fire Fire Resist)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.dragonskin2.price>>
<span class="error-message">You need $player.mutations.dragonskin2.price RegenCoins to upgrade.</span>
<<else>>
<div class="buy-mutation-fire">
<<button "Upgrade to Tier II ($player.mutations.dragonskin2.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.dragonskin2.price>>
<<set $player.mutations.dragonskin2.obtained = true>>
<<set $player.mutations.dragonskin1.obtained = false>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<<else>>
<div class="mutation-container">
<img class="mutation-image-fire" @src="$player.mutations.dragonskin1.img" alt="Dragon Skin I" />
<div class="mutation-details">
<h2 class="mutation-title-fire">Dragon Skin I</h2>
<p>Draconic Resistance: Your skin adapts to high temperatures, increasing your fire resistance. (+ $player.mutations.dragonskin1.resistAdd.fire Fire Resist)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.dragonskin1.price>>
<span class="error-message">You need $player.mutations.dragonskin1.price RegenCoins to activate it.</span>
<<else>>
<div class="buy-mutation-fire">
<<button "Buy Mutation ($player.mutations.dragonskin1.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.dragonskin1.price>>
<<set $player.mutations.dragonskin1.obtained = true>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<</if>>
<!-- ========================================== -->
<!-- FAMILIA: DRAGON BREATH -->
<!-- ========================================== -->
<<if $player.mutations.dragonbreath3.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-fire" @src="$player.mutations.dragonbreath3.img" alt="Dragon Breath III" />
<div class="mutation-details">
<h2 class="mutation-title-fire">Dragon Breath III (Max Level)</h2>
<p>Devastating Breath: Hellfire that scorches everything in its path. (+ $player.mutations.dragonbreath3.dmgAdd.fire Fire DMG)</p>
<div class="creditsButtonsFlexBox">
<span class="success-message">Your DNA has already reached its maximum mutation.</span>
</div>
</div>
</div>
<<elseif $player.mutations.dragonbreath2.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-fire" @src="$player.mutations.dragonbreath3.img" alt="Dragon Breath III" />
<div class="mutation-details">
<h2 class="mutation-title-fire">Dragon Breath III</h2>
<p>Devastating Breath: Hellfire that scorches everything in its path. (+ $player.mutations.dragonbreath3.dmgAdd.fire Fire DMG)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.dragonbreath3.price>>
<span class="error-message">You need $player.mutations.dragonbreath3.price RegenCoins to upgrade.</span>
<<else>>
<div class="buy-mutation-fire">
<<button "Upgrade to Tier III ($player.mutations.dragonbreath3.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.dragonbreath3.price>>
<<set $player.mutations.dragonbreath3.obtained = true>>
<<set $player.mutations.dragonbreath2.obtained = false>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<<elseif $player.mutations.dragonbreath1.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-fire" @src="$player.mutations.dragonbreath2.img" alt="Dragon Breath II" />
<div class="mutation-details">
<h2 class="mutation-title-fire">Dragon Breath II</h2>
<p>Infernal Breath: Increases the damage of your flames, scorching everything in its path. (+ $player.mutations.dragonbreath2.dmgAdd.fire Fire DMG)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.dragonbreath2.price>>
<span class="error-message">You need $player.mutations.dragonbreath2.price RegenCoins to upgrade.</span>
<<else>>
<div class="buy-mutation-fire">
<<button "Upgrade to Tier II ($player.mutations.dragonbreath2.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.dragonbreath2.price>>
<<set $player.mutations.dragonbreath2.obtained = true>>
<<set $player.mutations.dragonbreath1.obtained = false>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<<else>>
<div class="mutation-container">
<img class="mutation-image-fire" @src="$player.mutations.dragonbreath1.img" alt="Dragon Breath I" />
<div class="mutation-details">
<h2 class="mutation-title-fire">Dragon Breath I</h2>
<p>Fiery Breath: Releases flames that increase your fire damage. (+ $player.mutations.dragonbreath1.dmgAdd.fire Fire DMG)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.dragonbreath1.price>>
<span class="error-message">You need $player.mutations.dragonbreath1.price RegenCoins to activate it.</span>
<<else>>
<div class="buy-mutation-fire">
<<button "Buy Mutation ($player.mutations.dragonbreath1.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.dragonbreath1.price>>
<<set $player.mutations.dragonbreath1.obtained = true>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<</if>>
<</nobr>><<nobr>>
<!-- ========================================== -->
<!-- FAMILIA: MYOFIBER INSULATION -->
<!-- ========================================== -->
<<if $player.mutations.myofiberinsulation3.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-electric" @src="$player.mutations.myofiberinsulation3.img" alt="Myofiber Insulation III" />
<div class="mutation-details">
<h2 class="mutation-title-electric">Myofiber Insulation III (Max Level)</h2>
<p>Bioelectric shielding: maximum protection against electricity, dissipating incoming energy. (+ $player.mutations.myofiberinsulation3.resistAdd.electric Electric Resist)</p>
<div class="creditsButtonsFlexBox">
<span class="success-message">Your DNA has already reached its maximum mutation.</span>
</div>
</div>
</div>
<<elseif $player.mutations.myofiberinsulation2.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-electric" @src="$player.mutations.myofiberinsulation3.img" alt="Myofiber Insulation III" />
<div class="mutation-details">
<h2 class="mutation-title-electric">Myofiber Insulation III</h2>
<p>Bioelectric shielding: maximum protection against electricity, dissipating incoming energy. (+ $player.mutations.myofiberinsulation3.resistAdd.electric Electric Resist)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.myofiberinsulation3.price>>
<span class="error-message">You need $player.mutations.myofiberinsulation3.price RegenCoins to upgrade.</span>
<<else>>
<div class="buy-mutation-electric">
<<button "Upgrade to Tier III ($player.mutations.myofiberinsulation3.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.myofiberinsulation3.price>>
<<set $player.mutations.myofiberinsulation3.obtained = true>>
<<set $player.mutations.myofiberinsulation2.obtained = false>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<<elseif $player.mutations.myofiberinsulation1.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-electric" @src="$player.mutations.myofiberinsulation2.img" alt="Myofiber Insulation II" />
<div class="mutation-details">
<h2 class="mutation-title-electric">Myofiber Insulation II</h2>
<p>Cellular lining: the membrane better withstands electrical shocks and prevents internal damage. (+ $player.mutations.myofiberinsulation2.resistAdd.electric Electric Resist)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.myofiberinsulation2.price>>
<span class="error-message">You need $player.mutations.myofiberinsulation2.price RegenCoins to upgrade.</span>
<<else>>
<div class="buy-mutation-electric">
<<button "Upgrade to Tier II ($player.mutations.myofiberinsulation2.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.myofiberinsulation2.price>>
<<set $player.mutations.myofiberinsulation2.obtained = true>>
<<set $player.mutations.myofiberinsulation1.obtained = false>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<<else>>
<div class="mutation-container">
<img class="mutation-image-electric" @src="$player.mutations.myofiberinsulation1.img" alt="Myofiber Insulation I" />
<div class="mutation-details">
<h2 class="mutation-title-electric">Myofiber Insulation I</h2>
<p>Myofibrillar insulation: reduces electrical damage by improving tissue resistance. (+ $player.mutations.myofiberinsulation1.resistAdd.electric Electric Resist)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.myofiberinsulation1.price>>
<span class="error-message">You need $player.mutations.myofiberinsulation1.price RegenCoins to activate it.</span>
<<else>>
<div class="buy-mutation-electric">
<<button "Buy Mutation ($player.mutations.myofiberinsulation1.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.myofiberinsulation1.price>>
<<set $player.mutations.myofiberinsulation1.obtained = true>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<</if>>
<!-- ========================================== -->
<!-- FAMILIA: LIGHTNING FIST -->
<!-- ========================================== -->
<<if $player.mutations.lightningfist3.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-electric" @src="$player.mutations.lightningfist3.img" alt="Lightning Fist III" />
<div class="mutation-details">
<h2 class="mutation-title-electric">Lightning Fist III (Max Level)</h2>
<p>Internal voltaic arc: Your strikes release pure energy and deliver maximum-power electric shocks. (+ $player.mutations.lightningfist3.dmgAdd.electric Electric DMG)</p>
<div class="creditsButtonsFlexBox">
<span class="success-message">Your DNA has already reached its maximum mutation.</span>
</div>
</div>
</div>
<<elseif $player.mutations.lightningfist2.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-electric" @src="$player.mutations.lightningfist3.img" alt="Lightning Fist III" />
<div class="mutation-details">
<h2 class="mutation-title-electric">Lightning Fist III</h2>
<p>Internal voltaic arc: Your strikes release pure energy and deliver maximum-power electric shocks. (+ $player.mutations.lightningfist3.dmgAdd.electric Electric DMG)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.lightningfist3.price>>
<span class="error-message">You need $player.mutations.lightningfist3.price RegenCoins to upgrade.</span>
<<else>>
<div class="buy-mutation-electric">
<<button "Upgrade to Tier III ($player.mutations.lightningfist3.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.lightningfist3.price>>
<<set $player.mutations.lightningfist3.obtained = true>>
<<set $player.mutations.lightningfist2.obtained = false>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<<elseif $player.mutations.lightningfist1.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-electric" @src="$player.mutations.lightningfist2.img" alt="Lightning Fist II" />
<div class="mutation-details">
<h2 class="mutation-title-electric">Lightning Fist II</h2>
<p>Optimized ion channels: more stable discharges and more devastating strikes. (+ $player.mutations.lightningfist2.dmgAdd.electric Electric DMG)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.lightningfist2.price>>
<span class="error-message">You need $player.mutations.lightningfist2.price RegenCoins to upgrade.</span>
<<else>>
<div class="buy-mutation-electric">
<<button "Upgrade to Tier II ($player.mutations.lightningfist2.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.lightningfist2.price>>
<<set $player.mutations.lightningfist2.obtained = true>>
<<set $player.mutations.lightningfist1.obtained = false>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<<else>>
<div class="mutation-container">
<img class="mutation-image-electric" @src="$player.mutations.lightningfist1.img" alt="Lightning Fist I" />
<div class="mutation-details">
<h2 class="mutation-title-electric">Lightning Fist I</h2>
<p>Accelerated synapses: your fists discharge energy and increase your electrical damage. (+ $player.mutations.lightningfist1.dmgAdd.electric Electric DMG)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.lightningfist1.price>>
<span class="error-message">You need $player.mutations.lightningfist1.price RegenCoins to activate it.</span>
<<else>>
<div class="buy-mutation-electric">
<<button "Buy Mutation ($player.mutations.lightningfist1.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.lightningfist1.price>>
<<set $player.mutations.lightningfist1.obtained = true>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<</if>>
<</nobr>><<nobr>>
<!-- ========================================== -->
<!-- FAMILIA: ANTI-SLEEP (Nivel Único) -->
<!-- ========================================== -->
<div class="mutation-container">
<img class="mutation-image-misc" @src="$player.mutations.antiSleep.img" alt="Anti-sleep" />
<div class="mutation-details">
<h2 class="mutation-title-misc">Anti-sleep</h2>
<p>This mutation, inspired by organisms that never rest, allows you to eliminate the need for sleep, keeping you active for 24 hours straight. Boost your productivity and your battle time!</p>
<div class="creditsButtonsFlexBox">
<<if $player.mutations.antiSleep.obtained === true>>
<span class="success-message">Your DNA has already reached its maximum mutation.</span>
<<elseif $player.regencoins < $player.mutations.antiSleep.price>>
<span class="error-message">You need $player.mutations.antiSleep.price RegenCoins to activate this mutation.</span>
<<else>>
<div class="buy-mutation-misc">
<<button "Buy Mutation ($player.mutations.antiSleep.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.antiSleep.price>>
<<set $player.mutations.antiSleep.obtained = true>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<!-- ========================================== -->
<!-- FAMILIA: VAMPIRE FANG -->
<!-- ========================================== -->
<<if $player.mutations.vampireFang2.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-misc" @src="$player.mutations.vampireFang2.img" alt="Vampire Fang II" />
<div class="mutation-details">
<h2 class="mutation-title-misc">Vampire Fang II (Max Level)</h2>
<p>Improved parasitism: more efficient and stable draining during combat. (+ $player.mutations.vampireFang2.statsAdd.lifeStealPct% Life Steal)</p>
<div class="creditsButtonsFlexBox">
<span class="success-message">Your DNA has already reached its maximum mutation.</span>
</div>
</div>
</div>
<<elseif $player.mutations.vampireFang1.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-misc" @src="$player.mutations.vampireFang2.img" alt="Vampire Fang II" />
<div class="mutation-details">
<h2 class="mutation-title-misc">Vampire Fang II</h2>
<p>Improved parasitism: more efficient and stable draining during combat. (+ $player.mutations.vampireFang2.statsAdd.lifeStealPct% Life Steal)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.vampireFang2.price>>
<span class="error-message">You need $player.mutations.vampireFang2.price RegenCoins to upgrade.</span>
<<else>>
<div class="buy-mutation-misc">
<<button "Mejorar a Tier II ($player.mutations.vampireFang2.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.vampireFang2.price>>
<<set $player.mutations.vampireFang2.obtained = true>>
<<set $player.mutations.vampireFang1.obtained = false>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<<else>>
<div class="mutation-container">
<img class="mutation-image-misc" @src="$player.mutations.vampireFang1.img" alt="Vampire Fang I" />
<div class="mutation-details">
<h2 class="mutation-title-misc">Vampire Fang I</h2>
<p>Biomodified Fangs: each critical hit can drain health and convert it into immediate regeneration. (+ $player.mutations.vampireFang1.statsAdd.lifeStealPct% Life Steal)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.vampireFang1.price>>
<span class="error-message">You need $player.mutations.vampireFang1.price RegenCoins to activate it.</span>
<<else>>
<div class="buy-mutation-misc">
<<button "Buy Mutation ($player.mutations.vampireFang1.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.vampireFang1.price>>
<<set $player.mutations.vampireFang1.obtained = true>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<</if>>
<!-- ========================================== -->
<!-- FAMILIA: WOLF INSTINCT -->
<!-- ========================================== -->
<<if $player.mutations.wolfinstinct2.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-misc" @src="$player.mutations.wolfinstinct2.img" alt="Wolf Instinct II" />
<div class="mutation-details">
<h2 class="mutation-title-misc">Wolf Instinct II (Max Level)</h2>
<p>Herd Instinct: Improved enemy detection and more lethal attacks. (+ $player.mutations.wolfinstinct2.statsAdd.critChance% Crit Chance)</p>
<div class="creditsButtonsFlexBox">
<span class="success-message">Your DNA has already reached its maximum mutation.</span>
</div>
</div>
</div>
<<elseif $player.mutations.wolfinstinct1.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-misc" @src="$player.mutations.wolfinstinct2.img" alt="Wolf Instinct II" />
<div class="mutation-details">
<h2 class="mutation-title-misc">Wolf Instinct II</h2>
<p>Herd Instinct: Improved enemy detection and more lethal attacks. (+ $player.mutations.wolfinstinct2.statsAdd.critChance% Crit Chance)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.wolfinstinct2.price>>
<span class="error-message">You need $player.mutations.wolfinstinct2.price RegenCoins to upgrade.</span>
<<else>>
<div class="buy-mutation-misc">
<<button "Upgrade to Tier II ($player.mutations.wolfinstinct2.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.wolfinstinct2.price>>
<<set $player.mutations.wolfinstinct2.obtained = true>>
<<set $player.mutations.wolfinstinct1.obtained = false>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<<else>>
<div class="mutation-container">
<img class="mutation-image-misc" @src="$player.mutations.wolfinstinct1.img" alt="Wolf Instinct I" />
<div class="mutation-details">
<h2 class="mutation-title-misc">Wolf Instinct I</h2>
<p>Hunting Signals: Your instincts detect openings and increase your critical hit chance. (+ $player.mutations.wolfinstinct1.statsAdd.critChance% Crit Chance)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.wolfinstinct1.price>>
<span class="error-message">You need $player.mutations.wolfinstinct1.price RegenCoins to activate it.</span>
<<else>>
<div class="buy-mutation-misc">
<<button "Buy Mutation ($player.mutations.wolfinstinct1.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.wolfinstinct1.price>>
<<set $player.mutations.wolfinstinct1.obtained = true>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<</if>>
<!-- ========================================== -->
<!-- FAMILIA: MICHI'S CLAW (Nivel Único) -->
<!-- ========================================== -->
<div class="mutation-container">
<img class="mutation-image-misc" @src="$player.mutations.michiclaw.img" alt="Michi's Claw" />
<div class="mutation-details">
<h2 class="mutation-title-misc">Michi's Claw</h2>
<p>Microkeratin Claws: Your critical hits pierce through and amplify damage with brutal force. (+ $player.mutations.michiclaw.statsAdd.critMult Crit Multiplier)</p>
<div class="creditsButtonsFlexBox">
<<if $player.mutations.michiclaw.obtained === true>>
<span class="success-message">Your DNA has already reached its maximum mutation.</span>
<<elseif $player.regencoins < $player.mutations.michiclaw.price>>
<span class="error-message">You need $player.mutations.michiclaw.price RegenCoins to activate this mutation.</span>
<<else>>
<div class="buy-mutation-misc">
<<button "Buy Mutation ($player.mutations.michiclaw.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.michiclaw.price>>
<<set $player.mutations.michiclaw.obtained = true>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<</nobr>><<nobr>>
<!-- ========================================== -->
<!-- FAMILIA: BEAR COAT -->
<!-- ========================================== -->
<<if $player.mutations.bearcoat3.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-cold" @src="$player.mutations.bearcoat3.img" alt="Bear Coat III" />
<div class="mutation-details">
<h2 class="mutation-title-cold">Bear Coat III (Max Level)</h2>
<p>Total Arctic insulation: survive extreme temperatures without compromising performance. (+ $player.mutations.bearcoat3.resistAdd.cold Cold Resist)</p>
<div class="creditsButtonsFlexBox">
<span class="success-message">Your DNA has already reached its maximum mutation.</span>
</div>
</div>
</div>
<<elseif $player.mutations.bearcoat2.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-cold" @src="$player.mutations.bearcoat3.img" alt="Bear Coat III" />
<div class="mutation-details">
<h2 class="mutation-title-cold">Bear Coat III</h2>
<p>Total Arctic insulation: survive extreme temperatures without compromising performance. (+ $player.mutations.bearcoat3.resistAdd.cold Cold Resist)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.bearcoat3.price>>
<span class="error-message">You need $player.mutations.bearcoat3.price RegenCoins to upgrade.</span>
<<else>>
<div class="buy-mutation-cold">
<<button "Upgrade to Tier III ($player.mutations.bearcoat3.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.bearcoat3.price>>
<<set $player.mutations.bearcoat3.obtained = true>>
<<set $player.mutations.bearcoat2.obtained = false>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<<elseif $player.mutations.bearcoat1.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-cold" @src="$player.mutations.bearcoat2.img" alt="Bear Coat II" />
<div class="mutation-details">
<h2 class="mutation-title-cold">Bear Coat II</h2>
<p>Reinforced insulating fibers: Your skin retains even more heat, increasing your resistance to the cold. (+ $player.mutations.bearcoat2.resistAdd.cold Cold Resist)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.bearcoat2.price>>
<span class="error-message">You need $player.mutations.bearcoat2.price RegenCoins to upgrade.</span>
<<else>>
<div class="buy-mutation-cold">
<<button "Upgrade to Tier II ($player.mutations.bearcoat2.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.bearcoat2.price>>
<<set $player.mutations.bearcoat2.obtained = true>>
<<set $player.mutations.bearcoat1.obtained = false>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<<else>>
<div class="mutation-container">
<img class="mutation-image-cold" @src="$player.mutations.bearcoat1.img" alt="Bear Coat I" />
<div class="mutation-details">
<h2 class="mutation-title-cold">Bear Coat I</h2>
<p>Bear-like thermal fur: Your body retains heat and reduces cold damage. (+ $player.mutations.bearcoat1.resistAdd.cold Cold Resist)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.bearcoat1.price>>
<span class="error-message">You need $player.mutations.bearcoat1.price RegenCoins to activate it.</span>
<<else>>
<div class="buy-mutation-cold">
<<button "Buy Mutation ($player.mutations.bearcoat1.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.bearcoat1.price>>
<<set $player.mutations.bearcoat1.obtained = true>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<</if>>
<!-- ========================================== -->
<!-- FAMILIA: BLUE BLOOD -->
<!-- ========================================== -->
<<if $player.mutations.blueblood3.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-cold" @src="$player.mutations.blueblood3.img" alt="Blue Blood III" />
<div class="mutation-details">
<h2 class="mutation-title-cold">Blue Blood III (Max Level)</h2>
<p>Glacial Heart: You convert your thermal energy into pure ice damage. (+ $player.mutations.blueblood3.dmgAdd.cold Cold DMG)</p>
<div class="creditsButtonsFlexBox">
<span class="success-message">Your DNA has already reached its maximum mutation.</span>
</div>
</div>
</div>
<<elseif $player.mutations.blueblood2.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-cold" @src="$player.mutations.blueblood3.img" alt="Blue Blood III" />
<div class="mutation-details">
<h2 class="mutation-title-cold">Blue Blood III</h2>
<p>Glacial Heart: You convert your thermal energy into pure ice damage. (+ $player.mutations.blueblood3.dmgAdd.cold Cold DMG)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.blueblood3.price>>
<span class="error-message">You need $player.mutations.blueblood3.price RegenCoins to upgrade.</span>
<<else>>
<div class="buy-mutation-cold">
<<button "Upgrade to Tier III ($player.mutations.blueblood3.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.blueblood3.price>>
<<set $player.mutations.blueblood3.obtained = true>>
<<set $player.mutations.blueblood2.obtained = false>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<<elseif $player.mutations.blueblood1.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-cold" @src="$player.mutations.blueblood2.img" alt="Blue Blood II" />
<div class="mutation-details">
<h2 class="mutation-title-cold">Blue Blood II</h2>
<p>Advanced Cryometabolism: Your attacks freeze enemies more easily and deal more damage. (+ $player.mutations.blueblood2.dmgAdd.cold Cold DMG)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.blueblood2.price>>
<span class="error-message">You need $player.mutations.blueblood2.price RegenCoins to upgrade.</span>
<<else>>
<div class="buy-mutation-cold">
<<button "Upgrade to Tier II ($player.mutations.blueblood2.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.blueblood2.price>>
<<set $player.mutations.blueblood2.obtained = true>>
<<set $player.mutations.blueblood1.obtained = false>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<<else>>
<div class="mutation-container">
<img class="mutation-image-cold" @src="$player.mutations.blueblood1.img" alt="Blue Blood I" />
<div class="mutation-details">
<h2 class="mutation-title-cold">Blue Blood I</h2>
<p>Cryogenic Blood: Your bloodstream stabilizes the cold and boosts your icy attacks. (+ $player.mutations.blueblood1.dmgAdd.cold Cold DMG)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.blueblood1.price>>
<span class="error-message">You need $player.mutations.blueblood1.price RegenCoins to activate it.</span>
<<else>>
<div class="buy-mutation-cold">
<<button "Buy Mutation ($player.mutations.blueblood1.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.blueblood1.price>>
<<set $player.mutations.blueblood1.obtained = true>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<</if>>
<</nobr>><<nobr>>
<!-- ========================================== -->
<!-- FAMILIA: ACID LYMPH -->
<!-- ========================================== -->
<<if $player.mutations.acidlymph3.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-corrosive" @src="$player.mutations.acidlymph3.img" alt="Acid Lymph III" />
<div class="mutation-details">
<h2 class="mutation-title-corrosive">Acid Lymph III (Max Level)</h2>
<p>Total Caustic Homeostasis: Maximum resistance to corrosive agents, neutralizing their effects. (+ $player.mutations.acidlymph3.resistAdd.corrosive Corrosive Resist)</p>
<div class="creditsButtonsFlexBox">
<span class="success-message">Your DNA has already reached its maximum mutation.</span>
</div>
</div>
</div>
<<elseif $player.mutations.acidlymph2.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-corrosive" @src="$player.mutations.acidlymph3.img" alt="Acid Lymph III" />
<div class="mutation-details">
<h2 class="mutation-title-corrosive">Acid Lymph III</h2>
<p>Total Caustic Homeostasis: Maximum resistance to corrosive agents, neutralizing their effects. (+ $player.mutations.acidlymph3.resistAdd.corrosive Corrosive Resist)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.acidlymph3.price>>
<span class="error-message">You need $player.mutations.acidlymph3.price RegenCoins to upgrade.</span>
<<else>>
<div class="buy-mutation-corrosive">
<<button "Upgrade to Tier III ($player.mutations.acidlymph3.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.acidlymph3.price>>
<<set $player.mutations.acidlymph3.obtained = true>>
<<set $player.mutations.acidlymph2.obtained = false>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<<elseif $player.mutations.acidlymph1.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-corrosive" @src="$player.mutations.acidlymph2.img" alt="Acid Lymph II" />
<div class="mutation-details">
<h2 class="mutation-title-corrosive">Acid Lymph II</h2>
<p>Reinforced Biological Buffer: Your tissues are more resistant to chemical degradation. (+ $player.mutations.acidlymph2.resistAdd.corrosive Corrosive Resist)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.acidlymph2.price>>
<span class="error-message">You need $player.mutations.acidlymph2.price RegenCoins to upgrade.</span>
<<else>>
<div class="buy-mutation-corrosive">
<<button "Upgrade to Tier II ($player.mutations.acidlymph2.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.acidlymph2.price>>
<<set $player.mutations.acidlymph2.obtained = true>>
<<set $player.mutations.acidlymph1.obtained = false>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<<else>>
<div class="mutation-container">
<img class="mutation-image-corrosive" @src="$player.mutations.acidlymph1.img" alt="Acid Lymph I" />
<div class="mutation-details">
<h2 class="mutation-title-corrosive">Acid Lymph I</h2>
<p>Acid Lymph: Your internal system better neutralizes aggressive compounds, increasing your corrosion resistance. (+ $player.mutations.acidlymph1.resistAdd.corrosive Corrosive Resist)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.acidlymph1.price>>
<span class="error-message">You need $player.mutations.acidlymph1.price RegenCoins to activate it.</span>
<<else>>
<div class="buy-mutation-corrosive">
<<button "Buy Mutation ($player.mutations.acidlymph1.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.acidlymph1.price>>
<<set $player.mutations.acidlymph1.obtained = true>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<</if>>
<!-- ========================================== -->
<!-- FAMILIA: CAUSTIC BREATH -->
<!-- ========================================== -->
<<if $player.mutations.causticbreath3.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-corrosive" @src="$player.mutations.causticbreath3.img" alt="Caustic Breath III" />
<div class="mutation-details">
<h2 class="mutation-title-corrosive">Caustic Breath III (Max Level)</h2>
<p>Maximum Corrosive Aerosol: Your breath degrades armor and tissues with lethal force. (+ $player.mutations.causticbreath3.dmgAdd.corrosive Corrosive DMG)</p>
<div class="creditsButtonsFlexBox">
<span class="success-message">Your DNA has already reached its maximum mutation.</span>
</div>
</div>
</div>
<<elseif $player.mutations.causticbreath2.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-corrosive" @src="$player.mutations.causticbreath3.img" alt="Caustic Breath III" />
<div class="mutation-details">
<h2 class="mutation-title-corrosive">Caustic Breath III</h2>
<p>Maximum Corrosive Aerosol: Your breath degrades armor and tissues with lethal force. (+ $player.mutations.causticbreath3.dmgAdd.corrosive Corrosive DMG)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.causticbreath3.price>>
<span class="error-message">You need $player.mutations.causticbreath3.price RegenCoins to upgrade.</span>
<<else>>
<div class="buy-mutation-corrosive">
<<button "Upgrade to Tier III ($player.mutations.causticbreath3.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.causticbreath3.price>>
<<set $player.mutations.causticbreath3.obtained = true>>
<<set $player.mutations.causticbreath2.obtained = false>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<<elseif $player.mutations.causticbreath1.obtained === true>>
<div class="mutation-container">
<img class="mutation-image-corrosive" @src="$player.mutations.causticbreath2.img" alt="Caustic Breath II" />
<div class="mutation-details">
<h2 class="mutation-title-corrosive">Caustic Breath II</h2>
<p>Stabilized Acidic Secretion: The caustic cloud becomes denser and more damaging. (+ $player.mutations.causticbreath2.dmgAdd.corrosive Corrosive DMG)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.causticbreath2.price>>
<span class="error-message">You need $player.mutations.causticbreath2.price RegenCoins to upgrade.</span>
<<else>>
<div class="buy-mutation-corrosive">
<<button "Upgrade to Tier II ($player.mutations.causticbreath2.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.causticbreath2.price>>
<<set $player.mutations.causticbreath2.obtained = true>>
<<set $player.mutations.causticbreath1.obtained = false>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<<else>>
<div class="mutation-container">
<img class="mutation-image-corrosive" @src="$player.mutations.causticbreath1.img" alt="Caustic Breath I" />
<div class="mutation-details">
<h2 class="mutation-title-corrosive">Caustic Breath I</h2>
<p>Corrosive Glands: You exhale a caustic mist that increases your corrosive damage. (+ $player.mutations.causticbreath1.dmgAdd.corrosive Corrosive DMG)</p>
<div class="creditsButtonsFlexBox">
<<if $player.regencoins < $player.mutations.causticbreath1.price>>
<span class="error-message">You need $player.mutations.causticbreath1.price RegenCoins to activate it.</span>
<<else>>
<div class="buy-mutation-corrosive">
<<button "Buy Mutation ($player.mutations.causticbreath1.price RegenCoins)">>
<<set $player.regencoins -= $player.mutations.causticbreath1.price>>
<<set $player.mutations.causticbreath1.obtained = true>>
<<goto "RegencoreUpgrade">>
<</button>>
</div>
<</if>>
</div>
</div>
</div>
<</if>>
<</nobr>><<nobr>>
<<BuyItemWidget $player.items.travellerHelmet>>
<<BuyItemWidget $player.items.nebulaRaiderTricorne>>
<</nobr>><<nobr>>
<<BuyConsumableWidget $player.consumables.sunPatches>>
<</nobr>><<nobr>>
<<BuyItemWidget $player.items.travellerSuit>>
<<BuyItemWidget $player.items.nebulaRaiderCuirass>>
<</nobr>><<nobr>>
<<BuyConsumableWidget $player.consumables.nanobotSyringe>>
<<BuyConsumableWidget $player.consumables.nanobotSyringeXL>>
<<BuyConsumableWidget $player.consumables.nanobotSyringeMax>>
<<BuyConsumableWidget $player.consumables.antidote>>
<<BuyConsumableWidget $player.consumables.frostPowder>>
<<BuyConsumableWidget $player.consumables.electroShockSyringe>>
<<BuyConsumableWidget $player.consumables.moonDust>>
<<BuyConsumableWidget $player.consumables.grenade>>
<<BuyConsumableWidget $player.consumables.molotov>>
<<BuyConsumableWidget $player.consumables.cowFartBomb>>
<<BuyConsumableWidget $player.consumables.cryoGrenade>>
<<BuyConsumableWidget $player.consumables.shockGrenade>>
<</nobr>><<nobr>>
<<BuyItemWidget $player.items.oldBoots>>
<<BuyItemWidget $player.items.travellerBoots>>
<<BuyItemWidget $player.items.nebulaRaiderBoots>>
<</nobr>><<nobr>>
<<BuyItemWidget $player.items.razor>>
<<BuyItemWidget $player.items.teslaPistol>>
<<BuyItemWidget $player.items.toxicSprayer>>
<<BuyItemWidget $player.items.omegagun>>
<</nobr>><<nobr>>
/* ========================================
CONFIGURACIÓN GLOBAL
======================================== */
/* 1. Probabilidad de TIPO de botín (Suma 100) */
<<set $lootTypeChances = {
item: 40,
consumable: 40,
fallback: 20
}>>
/* 2. Probabilidad de RAREZA (Suma 100) */
<<set $rarityChances = {
common: 60,
rare: 25,
legendary: 10,
mythic: 4,
set: 1
}>>
/* 3. Estética de Rarezas */
<<set $lootRarityOrder = ["common","rare","legendary","mythic","set"]>>
<<set $lootRarity = {
common: { name:"Common", color:"#ffffff" },
rare: { name:"Rare", color:"#4ea5ff" },
legendary: { name:"Legendary", color:"#ffd24a" },
mythic: { name:"Mythic", color:"#ff7a1a" },
set: { name:"Set", color:"#31d04a" }
}>>
/* 4. Premios de Fallback (Dinero/Gemas) */
<<set $fallbackRewards = [
{ key:"megabits", chance:60, rarity:"common" },
{ key:"regencoins", chance:25, rarity:"rare" },
{ key:"infinityGems", chance:15, rarity:"legendary" }
]>>
/* ============================================================
LOOT POR ENEMIGO
- Las keys coinciden con $player.items
- Se han eliminado los pesos (weight) de los items
- Consumibles mantienen su configuración para control de cantidad
============================================================ */
<<set $enemyLoot = {
"mime": {
items: [
{ key: "beret" },
{ key: "mimePants" },
{ key: "mimeShirt" }
],
consumables: [
]
},
"drugaemon": {
items: [
{ key: "spikedClub" },
{ key: "pinkGun" }
],
consumables: [
{ key: "blueRush", qtyMin: 1, qtyMax: 1 },
]
},
"noby": {
items: [
{ key: "razor" },
{ key: "yellowShirt" }
],
consumables: [
{ key: "blueRush", qtyMin: 1, qtyMax: 1 },
]
},
"walter": {
items: [
{ key: "blackHat" },
{ key: "biohazardBoots" },
{ key: "biohazardHelmet" },
{ key: "biohazardSuit" }
],
consumables: [
{ key: "blueRush", qtyMin: 2, qtyMax: 3 },
]
},
"nail": {
items: [
{ key: "nailGun" },
{ key: "rustyBoots" },
{ key: "rustyChest" },
{ key: "rustyHelmet" },
{ key: "antiqueHammer" }
],
consumables: [
]
},
"larry": {
items: [
{ key: "greenSlimeCannon" },
{ key: "greenSlimeShield" }
],
consumables: [
]
},
"larryboyfriend": {
items: [
{ key: "pinkSlimeShield" },
{ key: "pinkSlimeCannon" }
],
consumables: [
]
},
"miniCristallizedGolem": {
items: [
{ key: "crystallizedAxe" },
{ key: "crystallizedCloack" }
],
consumables: [
{ key: "golemTonic", qtyMin: 1, qtyMax: 1 },
]
},
"crystallizedGolem": {
items: [
{ key: "crystallizedShield" },
{ key: "crystallizedPickaxe" }
],
consumables: [
{ key: "golemTonic", qtyMin: 1, qtyMax: 2 },
]
},
"crystallizedCentipede": {
items: [
{ key: "crystallizedHelmet" },
{ key: "crystallizedChest" },
{ key: "crystallizedBoots" }
],
consumables: [
]
},
"wishDragon": {
items: [
{ key: "dragonHelmet" },
{ key: "dragonChest" },
{ key: "dragonBoots" },
{ key: "dragonStaff" }
],
consumables: [
{ key: "dragonBloodVial", qtyMin: 1, qtyMax: 3 },
]
},
"imp": {
items: [
{ key: "fireFork" }
],
consumables: [
]
},
"cultist": {
items: [
{ key: "fireBroadsword" },
{ key: "sectarianHelmet" },
{ key: "sectarianShoes" },
{ key: "sectarianRobe" }
],
consumables: [
]
},
"fireGhost": {
items: [
{ key: "fireWhip" },
],
consumables: [
]
},
"cultistGroup": {
items: [
{ key: "fireBroadsword" },
{ key: "sectarianHelmet" },
{ key: "sectarianShoes" },
{ key: "sectarianRobe" }
],
consumables: [
]
},
"phoenix": {
items: [
{ key: "solarHelmet" },
{ key: "solarChest" },
{ key: "solarBoots" },
],
consumables: [
{ key: "phoenixTonic", qtyMin: 1, qtyMax: 2 },
]
},
"phoenixphase2": {
items: [
{ key: "lunarHelmet" },
{ key: "lunarChest" },
{ key: "lunarBoots" },
{ key: "solarHelmet" },
{ key: "solarChest" },
{ key: "solarBoots" }
],
consumables: [
{ key: "phoenixTonic", qtyMin: 1, qtyMax: 2 },
]
},
"fireDragon": {
items: [
{ key: "fireSoulHelmet" },
{ key: "fireSoulChest" },
{ key: "fireSoulBoots" }
],
consumables: [
{ key: "dragonBloodVial", qtyMin: 1, qtyMax: 3 },
]
},
"snowflakes": {
items: [
{ key: "snowHelmet" },
{ key: "snowChest" },
{ key: "snowBoots" },
{ key: "frostPickaxe" }
],
consumables: [
{ key: "frozenChilliPepper", qtyMin: 1, qtyMax: 2 },
]
},
"yeti": {
items: [
{ key: "yetiHelmet" },
{ key: "yetiChest" },
{ key: "yetiBoots" },
{ key: "frostHammer" }
],
consumables: [
{ key: "yetiBreathVial", qtyMin: 1, qtyMax: 2 },
]
},
"icedragon": {
items: [
{ key: "wyrmHelmet" },
{ key: "wyrmChest" },
{ key: "wyrmBoots" },
{ key: "cryoblaster" }
],
consumables: [
{ key: "dragonBloodVial", qtyMin: 1, qtyMax: 2 },
{ key: "wyrmTonic", qtyMin: 1, qtyMax: 2 }
]
},
"morpheus": {
items: [
{ key: "sunglasses" },
{ key: "leatherTrenchcoat" },
{ key: "leatherBoots" }
],
consumables: [
{ key: "krakenTonic", qtyMin: 1, qtyMax: 2 },
]
},
"corrosiveFly": {
items: [
{ key: "mutantFlyWings" },
{ key: "mutantFlyHelmet" },
{ key: "mutantFlyChest" },
{ key: "mutantFlyBoots" }
],
consumables: [
]
},
"corrosiveToad": {
items: [
{ key: "mutantToadBelt" },
{ key: "mutantToadBoots" },
{ key: "mutantToadGauntlets" }
],
consumables: [
]
},
"corrosiveAnomaly": {
items: [
{ key: "mutantOrb" },
{ key: "anomalyStaff" }
],
consumables: [
]
},
"corrosiveMosquito": {
items: [
{ key: "bloodSucker" },
{ key: "mutantMosquitoHelmet" },
{ key: "mosquitoDarts" }
],
consumables: [
]
},
"basilisk": {
items: [
{ key: "basiliskHelmet" },
{ key: "basiliskChest" },
{ key: "basiliskBoots" },
{ key: "basiliskFang" }
],
consumables: [
{ key: "basiliskVenomVial", qtyMin: 2, qtyMax: 3 },
]
},
"crazyman": {
items: [
{ key: "electricBracelet" },
{ key: "plasmaKnife" }
],
consumables: [
{ key: "bottledLightning", qtyMin: 1, qtyMax: 2 },
]
},
"mecha": {
items: [
{ key: "incandescentSword" },
{ key: "mechaHelmet" },
{ key: "mechaBoots" },
{ key: "mechaChest" }
],
consumables: [
{ key: "bottledLightning", qtyMin: 1, qtyMax: 2 },
]
},
"mathtron": {
items: [
{ key: "botHelmet" },
{ key: "botChest" },
{ key: "botBoots" },
{ key: "plasmaGun" }
],
consumables: [
{ key: "bottledLightning", qtyMin: 1, qtyMax: 2 },
]
},
"goose4": {
items: [
{ key: "gooseCloak" },
{ key: "gooseBoots" }
],
consumables: [
]
},
"pizzaguy": {
items: [
{ key: "gun" }
],
consumables: [
]
},
"succubus": {
items: [
{ key: "demonHeart" }
],
consumables: [
]
},
"unicorn": {
items: [
{ key: "queenCrown" },
{ key: "unicornStaff" }
],
consumables: [
{ key: "unicornBloodTonic", qtyMin: 2, qtyMax: 3},
]
},
"deer": {
items: [
{ key: "seekerNecklace" },
{ key: "deerAxe" }
],
consumables: [
]
},
"freddy": {
items: [
{ key: "pimpHat" },
{ key: "pimpCoat" }
],
consumables: [
]
},
"bunny": {
items: [
{ key: "bunnyHelmet" },
{ key: "bunnyFist" },
{ key: "rabbitLeg" }
],
consumables: [
]
}
}>>
/* ============================================================
INYECCIÓN DE CONSUMIBLES BASE PARA TODOS LOS ENEMIGOS
============================================================ */
/* 1. Definimos la lista de consumibles obligatorios */
<<set _baseConsumables = [
{ key: "nanobotSyringe", qtyMin: 1, qtyMax: 3 },
{ key: "nanobotSyringeXL", qtyMin: 1, qtyMax: 2 },
{ key: "nanobotSyringeMax", qtyMin: 1, qtyMax: 2 },
{ key: "antidote", qtyMin: 1, qtyMax: 3 },
{ key: "electroShockSyringe", qtyMin: 1, qtyMax: 2 },
{ key: "moonDust", qtyMin: 1, qtyMax: 2 },
{ key: "eclipseSerum", qtyMin: 1, qtyMax: 1 }
]>>
/* 2. Recorremos cada enemigo dentro de $enemyLoot */
<<set _enemyKeys = Object.keys($enemyLoot)>>
<<for _i = 0; _i < _enemyKeys.length; _i++>>
<<set _currentEnemy = $enemyLoot[_enemyKeys[_i]]>>
/* Por si algún enemigo no tiene el array de consumables creado, lo creamos */
<<if not _currentEnemy.consumables>>
<<set _currentEnemy.consumables = []>>
<</if>>
/* 3. Inyectamos los consumibles base evitando duplicados */
<<for _j = 0; _j < _baseConsumables.length; _j++>>
<<set _baseItem = _baseConsumables[_j]>>
<<set _alreadyHasItem = false>>
/* Revisamos si el enemigo ya tiene este objeto específico */
<<for _k = 0; _k < _currentEnemy.consumables.length; _k++>>
<<if _currentEnemy.consumables[_k].key === _baseItem.key>>
<<set _alreadyHasItem = true>>
<<break>>
<</if>>
<</for>>
/* Si no lo tiene, se lo inyectamos */
<<if not _alreadyHasItem>>
<<run _currentEnemy.consumables.push(_baseItem)>>
<</if>>
<</for>>
<</for>>
<</nobr>><<nobr>>
<<if !Macro.get("AdventureLootUI")>>
<<widget "AdventureLootUI">>
<<if ndef $lootmsg>><<set $lootmsg = "You have obtained ">><</if>>
<div class="lootWrap">
<div class="lootCard" @data-rarity="$lastLoot.rarity.toLowerCase().trim()">
<img class="lootImg" @src="$lastLoot.img" alt="loot">
<div class="lootText">
<div class="lootTitle">
$lootmsg <span class="lootName">$lastLoot.name</span>
</div>
<div class="lootRarityText">
<<print ($lastLoot.rarityName ? $lastLoot.rarityName : $lastLoot.rarity)>>
</div>
/* Si NO es un item, mostramos la cantidad */
<<if $lastLoot.type !== "item">>
<div class="lootQtyLine">
Quantity: +$lastLoot.qty
</div>
<</if>>
</div>
</div>
</div>
<br><br>
<</widget>>
<</if>>
<</nobr>><<nobr>>
<div align="center">
<<if ndef $pictureWatcher or !$pictureWatcher>>
<div class="pwTop">
<div class="pwTitle">No picture selected</div>
<br>
[[Back|Collection]]
</div>
<<else>>
<h2>$pictureGirlName - Picture $pictureNumber</h2>
<img @src="$pictureWatcher" style="max-width: 100%;">
<br><br>
<<return "Go Back">>
<</if>>
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "intro">>
<h1>Do you want to play the tutorial?</h1>
<p class="reflection">The tutorial provides a brief explanation of the most basic mechanics of interdimensional pizza delivery.<br>It is recommended for new players.</p><br>
[[Start the tutorial|TutorialB][$gameEngine.onScene = true]]<br><br>
[[Skip the tutorial|Delivery][$gameEngine.tutorial = true]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "regencore2">>
<<regencore>>Applying a new mutation!<</regencore>><br>
<<video "pizzamedia/videos/places/regencore/mutation.mp4" >>
<p class="reflection">The Regencore station injects the new mutation into your body<br>You feel as if your blood and bones are boiling, even though the pain subsides briefly.</p>
<<regencore>>Mutation successfully applied!<</regencore>><br>
[[Continue|RegenCore]]
</div>
<</nobr>><<nobr>>
<<if !Macro.get("BuyConsumableWidget")>>
<<widget "BuyConsumableWidget">>
<<set _shopConsumable = $args[0]>>
<div class="jerryshop-itemcard">
<div class="jerryshop-itemcard-image">
<img class="jerryshop-itemcard-image-animation" @data-rarity="_shopConsumable.rarity" @src="_shopConsumable.img">
</div>
<div class="jerryshop-itemcard-content">
<div class="jerryshop-itemcard-name-animation" @data-rarity="_shopConsumable.rarity">
_shopConsumable.name (you have: x_shopConsumable.qty)
</div>
<div class="jerryshop-itemcard-description">
_shopConsumable.description
</div>
<div class="jerryshop-itemcard-action">
<<if $player.megaBits < _shopConsumable.value>>
<span class="jerryshop-error">You need _shopConsumable.value MegaBits to buy this item.</span>
<<else>>
<<capture _shopConsumable>>
/* BOTÓN: COMPRAR 1 */
<<set _btnText = "BUY 1 (-" + _shopConsumable.value + " MegaBits)">>
<<button _btnText>>
<<set $player.megaBits -= _shopConsumable.value>>
<<set $player.consumables[_shopConsumable.id].qty++>>
<<set $player.consumables[_shopConsumable.id].obtained = true>>
<<run
const scrollPos = window.scrollY;
Engine.show();
requestAnimationFrame(() => window.scrollTo(0, scrollPos));
>>
<</button>>
/* BOTÓN: COMPRAR 5 */
<<set _x5price = _shopConsumable.value * 5>>
<<if $player.megaBits >= _x5price>>
<<set _btnText5 = "BUY 5 (-" + _x5price + " MegaBits)">>
<<button _btnText5>>
<<set $player.megaBits -= _x5price>>
<<set $player.consumables[_shopConsumable.id].qty += 5>>
<<set $player.consumables[_shopConsumable.id].obtained = true>>
<<run
const scrollPos = window.scrollY;
Engine.show();
requestAnimationFrame(() => window.scrollTo(0, scrollPos));
>>
<</button>>
<</if>>
<</capture>>
<</if>>
</div>
</div>
</div>
<</widget>>
<</if>>
<</nobr>><<nobr>>
<<if !Macro.get("BuyItemWidget")>>
<<widget "BuyItemWidget">>
<<set _shopObject = $args[0]>>
<div class="jerryshop-itemcard">
<div class="jerryshop-itemcard-image">
<img class="jerryshop-itemcard-image-animation" @data-rarity="_shopObject.rarity" @src="_shopObject.img">
</div>
<div class="jerryshop-itemcard-content">
<div class="jerryshop-itemcard-name-animation" @data-rarity="_shopObject.rarity">
_shopObject.name
</div>
<div class="jerryshop-itemcard-description">
_shopObject.description
</div>
<div class="jerryshop-itemcard-action">
<<if _shopObject.obtained === true>>
<p class="reflection">You already have this item.</p>
<<elseif $player.megaBits < _shopObject.value>>
<span class="jerryshop-error">You need _shopObject.value MegaBits to buy this item.</span>
<<elseif $player.megaBits >= _shopObject.value>>
<<set $upper = "BUY (-"+_shopObject.value +" MegaBits)">>
<<button $upper>>
<<set $player.megaBits -= _shopObject.value>>
<<set $player.items[_shopObject.id].obtained = true>>
<<run Engine.show()>>
<</button>>
<</if>>
</div>
</div>
</div>
<</widget>>
<</if>>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "shop1backgroundA">>
<p class="reflection">You go through the portal and find a cave in front of you.</p>
[img['pizzamedia/images/events/shop1/cave.jpg']]<br><br>
<<unknown>>AAAHHHH!!! YEEESSSSS!!!!!!<</unknown>>
<p class="reflection">You hear screams coming from inside the cave.</p>
<!-- PANEL DINÁMICO -->
<div id="shopPanel"></div>
<!-- BOTONES INICIALES -->
<div id="mainButtons">
<div class="actionRow">
<span class="btnChoice">
<<link "Enter cave(+2❄️)">>
<<set $delivery.pizzaHeat -= 2>>
<<goto "Shop1B">>
<</link>>
</span>
<span class="btnChoice">
<<link "Wait until another portal opens(+1❄️)">>
<<include "CoolingPizza">>
<<goto "NewPortal">>
<</link>>
</span>
</div>
</div>
<!-- aquí aparecerá el ÚNICO botón tras acercarte -->
<div id="portalButton"></div>
<!--
[[Shop1B]]
-->
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "shop1backgroundB">>
<<set $combatEngine.enemyId = "woodenMan">>
<<scientist>>I DID IT!! MORE THAN FIVE HUNDRED YEARS OF RESEARCH HAVE BEEN WORTH IT!!!<</scientist>><br>
[img['pizzamedia/images/boys/scientist/pose1.jpg']]<br>
<p class="reflection">You see an old man enthusiastically watching a small, shiny object.</p>
<<scientist>>THE GREATEST SCIENTIFIC DISCOVERY IN THE UNIVERSE!!<br>AHHH!! AHHH!!!<</scientist>><br>
[img['pizzamedia/images/boys/scientist/pose2.jpg']]<br>
<p class="reflection">You see that the old man seems to be in trouble. He clutches his chest tightly.You notice that the old man seems to be in trouble. He's clutching his chest tightly.</p>
<<say "You" $player.img>>OLD MAN!! ARE YOU OKAY?!!<</say>><br>
[img['pizzamedia/images/boys/scientist/pose3.jpg']]<br>
<p class="reflection">The old man collapses to the ground... he’s dead.</p>
<span id="choice">
<<link "Pick up the chip">>
<<replace "#choice">>
[img['pizzamedia/images/boys/scientist/chip.jpg']]<br>
<p class="reflection">In his hand, you see he’s holding a strange reddish chip.</p>
<<woodenman>>WHO ARE YOU?! WHAT DID YOU DO TO MY FATHER??!!<</woodenman>><br>
[img['pizzamedia/images/enemies/woodenman/pose1.jpg']]<br>
<p class="reflection">A strange creature thinks you’re responsible for what happened.</p>
<<say "You" $player.img>>He needs help!! I think he’s had a heart attack!!<</say>><br>
<<woodenman>>LIAR!! YOU CAME TO STEAL HIS RESEARCH!! DIE!!!<</woodenman>><br>
[img['pizzamedia/images/enemies/woodenman/pose2.jpg']]<br>
<p class="reflection">He won’t listen to reason. He’s completely hostile.</p>
<span class="btnFight">
<<link "Defend yourself">>
<<set $combatEngine.onWin = "Shop1D">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<</replace>>
<</link>>
<br><br>
<<link "Leave">>
<<goto "Shop1C">>
<</link>>
</span><br>
<!--
[[Shop1C]]
-->
</div>
<</nobr>><<nobr>>
<<run Object.assign($player.items, {
/* ===== COMMON ===== */
"oldBoots": {
id: "oldBoots",
name:"Old Boots",
value: 120,
description:"• Resist: +5 Physical<br>• Resist: +5 Fire<br>• Resist: +5 Cold<br>• Resist: +5 Corrosive<br>• Resist: +8 Electric<br>• Stats: +2 Evasion, +5 Escape Chance",
obtained:false,
rarity:"common",
slot:"shoes",
isWeapon:false,
statsAdd: { evasion: 2, escapeChance: 5 },
resistAdd: { physical: 5, fire: 5, cold: 5, corrosive: 5, electric: 8 },
img:"pizzamedia/images/items/oldboots.jpg"
},
"travellerHelmet": {
id: "travellerHelmet",
name:"Traveller's Helmet",
value: 200,
description:"• Resist: +5 Physical<br>• Resist: +5 Fire<br>• Resist: +8 Cold<br>• Resist: +5 Corrosive<br>• Resist: +5 Electric<br>• Stats: +1 Evasion",
obtained:false,
rarity:"common",
slot:"head",
isWeapon:false,
statsAdd: { evasion: 1 },
resistAdd: { physical: 5, fire: 5, cold: 8, corrosive: 5, electric: 5 },
img:"pizzamedia/images/items/travellerhelmet.jpg"
},
"travellerSuit": {
id: "travellerSuit",
name:"Traveller Suit",
value: 650,
description:"• Resist: +6 Physical<br>• Resist: +6 Fire<br>• Resist: +9 Cold<br>• Resist: +6 Corrosive<br>• Resist: +6 Electric<br>• Stats: +2 Evasion",
obtained:false,
rarity:"common",
slot:"chest",
isWeapon:false,
statsAdd: { evasion: 2 },
resistAdd: { physical: 6, fire: 6, cold: 9, corrosive: 6, electric: 6 },
img:"pizzamedia/images/items/travellersuit.jpg"
},
"travellerBoots": {
id: "travellerBoots",
name:"Traveller Boots",
value: 180,
description:"• Resist: +5 Physical<br>• Resist: +5 Fire<br>• Resist: +8 Cold<br>• Resist: +5 Corrosive<br>• Resist: +5 Electric<br>• Stats: +2 Evasion",
obtained:false,
rarity:"common",
slot:"shoes",
isWeapon:false,
statsAdd: { evasion: 2 },
resistAdd: { physical: 5, fire: 5, cold: 8, corrosive: 5, electric: 5 },
img:"pizzamedia/images/items/travellerboots.jpg"
},
"beret": {
id: "beret",
name:"Beret",
value: 120,
description:"• Resist: +5 Physical<br>• Resist: +5 Fire<br>• Resist: +8 Cold<br>• Resist: +5 Corrosive<br>• Resist: +5 Electric<br>• Stats: +1 Accuracy",
obtained:false,
rarity:"common",
slot:"head",
isWeapon:false,
statsAdd: { accuracy: 1 },
resistAdd: { physical: 5, fire: 5, cold: 8, corrosive: 5, electric: 5 },
img:"pizzamedia/images/items/beret.jpg"
},
"blackHat": {
id: "blackHat",
name:"Black Hat",
value: 140,
description:"• Resist: +5 Physical<br>• Resist: +8 Fire<br>• Resist: +5 Cold<br>• Resist: +5 Corrosive<br>• Resist: +5 Electric<br>• Stats: +1 Accuracy, +1 Evasion",
obtained:false,
rarity:"common",
slot:"head",
isWeapon:false,
statsAdd: { accuracy: 1, evasion: 1 },
resistAdd: { physical: 5, fire: 8, cold: 5, corrosive: 5, electric: 5 },
img:"pizzamedia/images/items/blackhat.jpg"
},
"blueScarf": {
id: "blueScarf",
name:"Blue Scarf",
value: 150,
description:"• Resist: +6 Physical<br>• Resist: +6 Fire<br>• Resist: +9 Cold<br>• Resist: +6 Corrosive<br>• Resist: +6 Electric<br>• Stats: +1 Evasion",
obtained:false,
rarity:"common",
slot:"chest",
isWeapon:false,
statsAdd: { evasion: 1 },
resistAdd: { physical: 6, fire: 6, cold: 9, corrosive: 6, electric: 6 },
img:"pizzamedia/images/items/bluescarf.jpg"
},
"glasses": {
id: "glasses",
name:"Glasses",
value: 180,
description:"• Resist: +6 Physical<br>• Resist: +6 Fire<br>• Resist: +6 Cold<br>• Resist: +6 Corrosive<br>• Resist: +6 Electric<br>• Stats: +2 Accuracy",
obtained:false,
rarity:"common",
slot:"head",
isWeapon:false,
statsAdd: { accuracy: 2 },
resistAdd: { physical: 6, fire: 6, cold: 6, corrosive: 6, electric: 6 },
img:"pizzamedia/images/items/glasses.jpg"
},
"loincloth": {
id: "loincloth",
name:"Loincloth",
value: 80,
description:"• Resist: +9 Physical<br>• Resist: +6 Fire<br>• Resist: +6 Cold<br>• Resist: +6 Corrosive<br>• Resist: +6 Electric<br>• Stats: +1 Evasion",
obtained:false,
rarity:"common",
slot:"chest",
isWeapon:false,
statsAdd: { evasion: 1 },
resistAdd: { physical: 9, fire: 6, cold: 6, corrosive: 6, electric: 6 },
img:"pizzamedia/images/items/loincloth.jpg"
},
"mimePants": {
id: "mimePants",
name:"Mime Pants",
value: 320,
description:"• Resist: +9 Physical<br>• Resist: +6 Fire<br>• Resist: +6 Cold<br>• Resist: +6 Corrosive<br>• Resist: +6 Electric<br>• Stats: +2 Evasion",
obtained:false,
rarity:"common",
slot:"chest",
isWeapon:false,
statsAdd: { evasion: 2 },
resistAdd: { physical: 9, fire: 6, cold: 6, corrosive: 6, electric: 6 },
img:"pizzamedia/images/items/mimepants.jpg"
},
"mimeShirt": {
id: "mimeShirt",
name:"Mime Shirt",
value: 360,
description:"• Resist: +9 Physical<br>• Resist: +6 Fire<br>• Resist: +6 Cold<br>• Resist: +6 Corrosive<br>• Resist: +6 Electric<br>• Stats: +1 Accuracy, +1 Evasion",
obtained:false,
rarity:"common",
slot:"chest",
isWeapon:false,
statsAdd: { accuracy: 1, evasion: 1 },
resistAdd: { physical: 9, fire: 6, cold: 6, corrosive: 6, electric: 6 },
img:"pizzamedia/images/items/mimeshirt.jpg"
},
"moltenBoots": {
id: "moltenBoots",
name:"Molten Boots",
value: 3400,
description:"• Resist: +5 Physical<br>• Resist: +8 Fire<br>• Resist: +5 Cold<br>• Resist: +5 Corrosive<br>• Resist: +5 Electric<br>• Stats: +3 Evasion",
obtained:false,
rarity:"common",
slot:"shoes",
isWeapon:false,
statsAdd: { evasion: 3 },
resistAdd: { physical: 5, fire: 8, cold: 5, corrosive: 5, electric: 5 },
img:"pizzamedia/images/items/moltenboots.jpg"
},
"moltenChest": {
id: "moltenChest",
name:"Molten Chest",
value: 6200,
description:"• Resist: +6 Physical<br>• Resist: +9 Fire<br>• Resist: +6 Cold<br>• Resist: +6 Corrosive<br>• Resist: +6 Electric<br>• Stats: +2 Accuracy",
obtained:false,
rarity:"common",
slot:"chest",
isWeapon:false,
statsAdd: { accuracy: 2 },
resistAdd: { physical: 6, fire: 9, cold: 6, corrosive: 6, electric: 6 },
img:"pizzamedia/images/items/moltenchest.jpg"
},
"moltenHelmet": {
id: "moltenHelmet",
name:"Molten Helmet",
value: 3000,
description:"• Resist: +5 Physical<br>• Resist: +8 Fire<br>• Resist: +5 Cold<br>• Resist: +5 Corrosive<br>• Resist: +5 Electric<br>• Stats: +3 Accuracy",
obtained:false,
rarity:"common",
slot:"head",
isWeapon:false,
statsAdd: { accuracy: 3 },
resistAdd: { physical: 5, fire: 8, cold: 5, corrosive: 5, electric: 5 },
img:"pizzamedia/images/items/moltenhelmet.jpg"
},
"mutantFlyBoots": {
id: "mutantFlyBoots",
name:"Mutant Fly Boots",
value: 2100,
description:"• Resist: +5 Physical<br>• Resist: +5 Fire<br>• Resist: +5 Cold<br>• Resist: +8 Corrosive<br>• Resist: +5 Electric<br>• Stats: +5 Evasion",
obtained:false,
rarity:"common",
slot:"shoes",
isWeapon:false,
statsAdd: { evasion: 5 },
resistAdd: { physical: 5, fire: 5, cold: 5, corrosive: 8, electric: 5 },
img:"pizzamedia/images/items/mutantflyboots.jpg"
},
"mutantFlyChest": {
id: "mutantFlyChest",
name:"Mutant Fly Chest",
value: 3900,
description:"• Resist: +6 Physical<br>• Resist: +6 Fire<br>• Resist: +6 Cold<br>• Resist: +9 Corrosive<br>• Resist: +6 Electric<br>• Stats: +3 Evasion",
obtained:false,
rarity:"common",
slot:"chest",
isWeapon:false,
statsAdd: { evasion: 3 },
resistAdd: { physical: 6, fire: 6, cold: 6, corrosive: 9, electric: 6 },
img:"pizzamedia/images/items/mutantflychest.jpg"
},
"mutantFlyHelmet": {
id: "mutantFlyHelmet",
name:"Mutant Fly Helmet",
value: 2000,
description:"• Resist: +5 Physical<br>• Resist: +5 Fire<br>• Resist: +5 Cold<br>• Resist: +8 Corrosive<br>• Resist: +5 Electric<br>• Stats: +2 Accuracy, +1 Evasion",
obtained:false,
rarity:"common",
slot:"head",
isWeapon:false,
statsAdd: { accuracy: 2, evasion: 1 },
resistAdd: { physical: 5, fire: 5, cold: 5, corrosive: 8, electric: 5 },
img:"pizzamedia/images/items/mutantflyhelmet.jpg"
},
"nerdyTie": {
id: "nerdyTie",
name:"Nerdy Tie",
value: 180,
description:"• Resist: +6 Physical<br>• Resist: +6 Fire<br>• Resist: +6 Cold<br>• Resist: +6 Corrosive<br>• Resist: +6 Electric<br>• Stats: +2 Accuracy",
obtained:false,
rarity:"common",
slot:"chest",
isWeapon:false,
statsAdd: { accuracy: 2 },
resistAdd: { physical: 6, fire: 6, cold: 6, corrosive: 6, electric: 6 },
img:"pizzamedia/images/items/nerdytie.jpg"
},
"nerdyVest": {
id: "nerdyVest",
name:"Nerdy Vest",
value: 340,
description:"• Resist: +9 Physical<br>• Resist: +6 Fire<br>• Resist: +6 Cold<br>• Resist: +6 Corrosive<br>• Resist: +6 Electric<br>• Stats: +1 Accuracy, +1 Evasion",
obtained:false,
rarity:"common",
slot:"chest",
isWeapon:false,
statsAdd: { accuracy: 1, evasion: 1 },
resistAdd: { physical: 9, fire: 6, cold: 6, corrosive: 6, electric: 6 },
img:"pizzamedia/images/items/nerdyvest.jpg"
},
"redScarf": {
id: "redScarf",
name:"Red Scarf",
value: 150,
description:"• Resist: +6 Physical<br>• Resist: +9 Fire<br>• Resist: +6 Cold<br>• Resist: +6 Corrosive<br>• Resist: +6 Electric<br>• Stats: +1 Evasion",
obtained:false,
rarity:"common",
slot:"chest",
isWeapon:false,
statsAdd: { evasion: 1 },
resistAdd: { physical: 6, fire: 9, cold: 6, corrosive: 6, electric: 6 },
img:"pizzamedia/images/items/redscarf.jpg"
},
"shortJeans": {
id: "shortJeans",
name:"Short Jeans",
value: 150,
description:"• Resist: +9 Physical<br>• Resist: +6 Fire<br>• Resist: +6 Cold<br>• Resist: +6 Corrosive<br>• Resist: +6 Electric<br>• Stats: +1 Evasion",
obtained:false,
rarity:"common",
slot:"chest",
isWeapon:false,
statsAdd: { evasion: 1 },
resistAdd: { physical: 9, fire: 6, cold: 6, corrosive: 6, electric: 6 },
img:"pizzamedia/images/items/shortjeans.jpg"
},
"snowBoots": {
id: "snowBoots",
name:"Snow Boots",
value: 1700,
description:"• Resist: +5 Physical<br>• Resist: +5 Fire<br>• Resist: +8 Cold<br>• Resist: +5 Corrosive<br>• Resist: +5 Electric<br>• Stats: +3 Evasion",
obtained:false,
rarity:"common",
slot:"shoes",
isWeapon:false,
statsAdd: { evasion: 3 },
resistAdd: { physical: 5, fire: 5, cold: 8, corrosive: 5, electric: 5 },
img:"pizzamedia/images/items/snowboots.jpg"
},
"snowChest": {
id: "snowChest",
name:"Snow Chest",
value: 3200,
description:"• Resist: +6 Physical<br>• Resist: +6 Fire<br>• Resist: +9 Cold<br>• Resist: +6 Corrosive<br>• Resist: +6 Electric<br>• Stats: +2 Evasion",
obtained:false,
rarity:"common",
slot:"chest",
isWeapon:false,
statsAdd: { evasion: 2 },
resistAdd: { physical: 6, fire: 6, cold: 9, corrosive: 6, electric: 6 },
img:"pizzamedia/images/items/snowchest.jpg"
},
"snowHelmet": {
id: "snowHelmet",
name:"Snow Helmet",
value: 1600,
description:"• Resist: +5 Physical<br>• Resist: +5 Fire<br>• Resist: +8 Cold<br>• Resist: +5 Corrosive<br>• Resist: +5 Electric<br>• Stats: +2 Accuracy",
obtained:false,
rarity:"common",
slot:"head",
isWeapon:false,
statsAdd: { accuracy: 2 },
resistAdd: { physical: 5, fire: 5, cold: 8, corrosive: 5, electric: 5 },
img:"pizzamedia/images/items/snowhelmet.jpg"
},
"topHat": {
id: "topHat",
name:"Top Hat",
value: 280,
description:"• Resist: +6 Physical<br>• Resist: +6 Fire<br>• Resist: +6 Cold<br>• Resist: +6 Corrosive<br>• Resist: +6 Electric<br>• Stats: +2 Accuracy, +1 Evasion",
obtained:false,
rarity:"common",
slot:"head",
isWeapon:false,
statsAdd: { accuracy: 2, evasion: 1 },
resistAdd: { physical: 6, fire: 6, cold: 6, corrosive: 6, electric: 6 },
img:"pizzamedia/images/items/tophat.jpg"
},
"yellowShirt": {
id: "yellowShirt",
name:"Yellow Shirt",
value: 140,
description:"• Resist: +6 Physical<br>• Resist: +6 Fire<br>• Resist: +6 Cold<br>• Resist: +6 Corrosive<br>• Resist: +9 Electric<br>• Stats: +1 Accuracy",
obtained:false,
rarity:"common",
slot:"chest",
isWeapon:false,
statsAdd: { accuracy: 1 },
resistAdd: { physical: 6, fire: 6, cold: 6, corrosive: 6, electric: 9 },
img:"pizzamedia/images/items/yellowshirt.jpg"
},
/* ===== RARE ===== */
"nebulaRaiderTricorne": {
id: "nebulaRaiderTricorne",
name:"Nebula Raider Tricorne",
value: 1800,
description:"• Resist: +9 Physical<br>• Resist: +14 Fire<br>• Resist: +14 Cold<br>• Resist: +9 Corrosive<br>• Resist: +9 Electric<br>• Stats: +5 Accuracy",
obtained:false,
rarity:"rare",
slot:"head",
isWeapon:false,
statsAdd: { accuracy: 5 },
resistAdd: { physical: 9, fire: 14, cold: 14, corrosive: 9, electric: 9 },
img:"pizzamedia/images/items/nebularaidertricorne.jpg"
},
"nebulaRaiderCuirass": {
id: "nebulaRaiderCuirass",
name:"Nebula Raider Cuirass",
value: 3500,
description:"• Resist: +10 Physical<br>• Resist: +10 Fire<br>• Resist: +15 Cold<br>• Resist: +10 Corrosive<br>• Resist: +10 Electric<br>• Stats: +4 Evasion",
obtained:false,
rarity:"rare",
slot:"chest",
isWeapon:false,
statsAdd: { evasion: 4 },
resistAdd: { physical: 10, fire: 10, cold: 15, corrosive: 10, electric: 10 },
img:"pizzamedia/images/items/nebularaidercuirass.jpg"
},
"nebulaRaiderBoots": {
id: "nebulaRaiderBoots",
name:"Nebula Raider Boots",
value: 1500,
description:"• Resist: +9 Physical<br>• Resist: +9 Fire<br>• Resist: +14 Cold<br>• Resist: +9 Corrosive<br>• Resist: +9 Electric<br>• Stats: +5 Evasion",
obtained:false,
rarity:"rare",
slot:"shoes",
isWeapon:false,
statsAdd: { evasion: 5 },
resistAdd: { physical: 9, fire: 9, cold: 14, corrosive: 9, electric: 9 },
img:"pizzamedia/images/items/nebularaiderboots.jpg"
},
"botBoots": {
id: "botBoots",
name:"Bot Boots",
value: 2600,
description:"• Resist: +9 Physical<br>• Resist: +9 Fire<br>• Resist: +9 Cold<br>• Resist: +9 Corrosive<br>• Resist: +14 Electric<br>• Stats: +3 Evasion",
obtained:false,
rarity:"rare",
slot:"shoes",
isWeapon:false,
statsAdd: { evasion: 3 },
resistAdd: { physical: 9, fire: 9, cold: 9, corrosive: 9, electric: 14 },
img:"pizzamedia/images/items/botboots.jpg"
},
"botChest": {
id: "botChest",
name:"Bot Chest",
value: 4700,
description:"• Resist: +10 Physical<br>• Resist: +10 Fire<br>• Resist: +10 Cold<br>• Resist: +10 Corrosive<br>• Resist: +15 Electric<br>• Stats: +3 Accuracy",
obtained:false,
rarity:"rare",
slot:"chest",
isWeapon:false,
statsAdd: { accuracy: 3 },
resistAdd: { physical: 10, fire: 10, cold: 10, corrosive: 10, electric: 15 },
img:"pizzamedia/images/items/botchest.jpg"
},
"botHelmet": {
id: "botHelmet",
name:"Bot Helmet",
value: 2400,
description:"• Resist: +9 Physical<br>• Resist: +9 Fire<br>• Resist: +9 Cold<br>• Resist: +9 Corrosive<br>• Resist: +14 Electric<br>• Stats: +4 Accuracy",
obtained:false,
rarity:"rare",
slot:"head",
isWeapon:false,
statsAdd: { accuracy: 4 },
resistAdd: { physical: 9, fire: 9, cold: 9, corrosive: 9, electric: 14 },
img:"pizzamedia/images/items/bothelmet.jpg"
},
"biohazardHelmet": {
id: "biohazardHelmet",
name:"Biohazard Helmet",
value: 2600,
description:"• Resist: +9 Physical<br>• Resist: +9 Fire<br>• Resist: +9 Cold<br>• Resist: +14 Corrosive<br>• Resist: +9 Electric<br>• Stats: +3 Accuracy",
obtained:false,
rarity:"rare",
slot:"head",
isWeapon:false,
statsAdd: { accuracy: 3 },
resistAdd: { physical: 9, fire: 9, cold: 9, corrosive: 14, electric: 9 },
img:"pizzamedia/images/items/biohazardhelmet.jpg"
},
"biohazardSuit": {
id: "biohazardSuit",
name:"Biohazard Suit",
value: 5000,
description:"• Resist: +10 Physical<br>• Resist: +10 Fire<br>• Resist: +10 Cold<br>• Resist: +15 Corrosive<br>• Resist: +10 Electric<br>• Stats: +2 Evasion",
obtained:false,
rarity:"rare",
slot:"chest",
isWeapon:false,
statsAdd: { evasion: 2 },
resistAdd: { physical: 10, fire: 10, cold: 10, corrosive: 15, electric: 10 },
img:"pizzamedia/images/items/biohazardsuit.jpg"
},
"biohazardBoots": {
id: "biohazardBoots",
name:"Biohazard Boots",
value: 2400,
description:"• Resist: +9 Physical<br>• Resist: +9 Fire<br>• Resist: +9 Cold<br>• Resist: +14 Corrosive<br>• Resist: +9 Electric<br>• Stats: +3 Evasion",
obtained:false,
rarity:"rare",
slot:"shoes",
isWeapon:false,
statsAdd: { evasion: 3 },
resistAdd: { physical: 9, fire: 9, cold: 9, corrosive: 14, electric: 9 },
img:"pizzamedia/images/items/biohazardboots.jpg"
},
"crystallizedBoots": {
id: "crystallizedBoots",
name:"Crystallized Boots",
value: 2800,
description:"• Resist: +14 Physical<br>• Resist: +9 Fire<br>• Resist: +9 Cold<br>• Resist: +9 Corrosive<br>• Resist: +9 Electric<br>• Stats: +2 Evasion",
obtained:false,
rarity:"rare",
slot:"shoes",
isWeapon:false,
statsAdd: { evasion: 2 },
resistAdd: { physical: 14, fire: 9, cold: 9, corrosive: 9, electric: 9 },
img:"pizzamedia/images/items/crystallizedboots.jpg"
},
"crystallizedChest": {
id: "crystallizedChest",
name:"Crystallized Chest",
value: 5200,
description:"• Resist: +15 Physical<br>• Resist: +10 Fire<br>• Resist: +10 Cold<br>• Resist: +10 Corrosive<br>• Resist: +10 Electric<br>• Stats: +1 Evasion",
obtained:false,
rarity:"rare",
slot:"chest",
isWeapon:false,
statsAdd: { evasion: 1 },
resistAdd: { physical: 15, fire: 10, cold: 10, corrosive: 10, electric: 10 },
img:"pizzamedia/images/items/crystallizedchest.jpg"
},
"crystallizedCloack": {
id: "crystallizedCloack",
name:"Crystallized Cloack",
value: 2400,
description:"• Resist: +10 Physical<br>• Resist: +10 Fire<br>• Resist: +15 Cold<br>• Resist: +10 Corrosive<br>• Resist: +10 Electric<br>• Stats: +3 Evasion",
obtained:false,
rarity:"rare",
slot:"chest",
isWeapon:false,
statsAdd: { evasion: 3 },
resistAdd: { physical: 10, fire: 10, cold: 15, corrosive: 10, electric: 10 },
img:"pizzamedia/images/items/crystallizedcloack.jpg"
},
"crystallizedHelmet": {
id: "crystallizedHelmet",
name:"Crystallized Helmet",
value: 2500,
description:"• Resist: +14 Physical<br>• Resist: +9 Fire<br>• Resist: +9 Cold<br>• Resist: +9 Corrosive<br>• Resist: +9 Electric<br>• Stats: +2 Accuracy",
obtained:false,
rarity:"rare",
slot:"head",
isWeapon:false,
statsAdd: { accuracy: 2 },
resistAdd: { physical: 14, fire: 9, cold: 9, corrosive: 9, electric: 9 },
img:"pizzamedia/images/items/crystallizedhelmet.jpg"
},
"gooseBoots": {
id: "gooseBoots",
name:"Goose Boots",
value: 900,
description:"• Resist: +14 Physical<br>• Resist: +9 Fire<br>• Resist: +14 Cold<br>• Resist: +9 Corrosive<br>• Resist: +9 Electric<br>• Stats: +3 Evasion",
obtained:false,
rarity:"rare",
slot:"shoes",
isWeapon:false,
statsAdd: { evasion: 3 },
resistAdd: { physical: 14, fire: 9, cold: 14, corrosive: 9, electric: 9 },
img:"pizzamedia/images/items/gooseboots.jpg"
},
"gooseCloak": {
id: "gooseCloak",
name:"Goose Cloak",
value: 1400,
description:"• Resist: +10 Physical<br>• Resist: +10 Fire<br>• Resist: +15 Cold<br>• Resist: +10 Corrosive<br>• Resist: +10 Electric<br>• Stats: +2 Evasion",
obtained:false,
rarity:"rare",
slot:"chest",
isWeapon:false,
statsAdd: { evasion: 2 },
resistAdd: { physical: 10, fire: 10, cold: 15, corrosive: 10, electric: 10 },
img:"pizzamedia/images/items/goosecloak.jpg"
},
"leatherBoots": {
id: "leatherBoots",
name:"Leather Boots",
value: 260,
description:"• Resist: +14 Physical<br>• Resist: +9 Fire<br>• Resist: +9 Cold<br>• Resist: +9 Corrosive<br>• Resist: +9 Electric<br>• Stats: +2 Evasion",
obtained:false,
rarity:"rare",
slot:"shoes",
isWeapon:false,
statsAdd: { evasion: 2 },
resistAdd: { physical: 14, fire: 9, cold: 9, corrosive: 9, electric: 9 },
img:"pizzamedia/images/items/leatherboots.jpg"
},
"leatherTrenchcoat": {
id: "leatherTrenchcoat",
name:"Leather Trenchcoat",
value: 650,
description:"• Resist: +15 Physical<br>• Resist: +10 Fire<br>• Resist: +10 Cold<br>• Resist: +10 Corrosive<br>• Resist: +10 Electric<br>• Stats: +2 Evasion",
obtained:false,
rarity:"rare",
slot:"chest",
isWeapon:false,
statsAdd: { evasion: 2 },
resistAdd: { physical: 15, fire: 10, cold: 10, corrosive: 10, electric: 10 },
img:"pizzamedia/images/items/leathertrenchcoat.jpg"
},
"lunarBoots": {
id: "lunarBoots",
name:"Lunar Boots",
value: 3600,
description:"• Resist: +9 Physical<br>• Resist: +9 Fire<br>• Resist: +14 Cold<br>• Resist: +9 Corrosive<br>• Resist: +14 Electric<br>• Stats: +5 Evasion",
obtained:false,
rarity:"rare",
slot:"shoes",
isWeapon:false,
statsAdd: { evasion: 5 },
resistAdd: { physical: 9, fire: 9, cold: 14, corrosive: 9, electric: 14 },
img:"pizzamedia/images/items/lunarboots.jpg"
},
"lunarChest": {
id: "lunarChest",
name:"Lunar Chest",
value: 7000,
description:"• Resist: +10 Physical<br>• Resist: +10 Fire<br>• Resist: +15 Cold<br>• Resist: +10 Corrosive<br>• Resist: +15 Electric<br>• Stats: +3 Accuracy, +3 Evasion",
obtained:false,
rarity:"rare",
slot:"chest",
isWeapon:false,
statsAdd: { accuracy: 3, evasion: 3 },
resistAdd: { physical: 10, fire: 10, cold: 15, corrosive: 10, electric: 15 },
img:"pizzamedia/images/items/lunarchest.jpg"
},
"lunarHelmet": {
id: "lunarHelmet",
name:"Lunar Helmet",
value: 3400,
description:"• Resist: +9 Physical<br>• Resist: +9 Fire<br>• Resist: +14 Cold<br>• Resist: +9 Corrosive<br>• Resist: +9 Electric<br>• Stats: +4 Accuracy",
obtained:false,
rarity:"rare",
slot:"head",
isWeapon:false,
statsAdd: { accuracy: 4 },
resistAdd: { physical: 9, fire: 9, cold: 14, corrosive: 9, electric: 9 },
img:"pizzamedia/images/items/lunarhelmet.jpg"
},
"mutantToadBelt": {
id: "mutantToadBelt",
name:"Mutant Toad Belt",
value: 1800,
description:"• Resist: +10 Physical<br>• Resist: +10 Fire<br>• Resist: +10 Cold<br>• Resist: +15 Corrosive<br>• Resist: +10 Electric<br>• Stats: +2 Accuracy",
obtained:false,
rarity:"rare",
slot:"chest",
isWeapon:false,
statsAdd: { accuracy: 2 },
resistAdd: { physical: 10, fire: 10, cold: 10, corrosive: 15, electric: 10 },
img:"pizzamedia/images/items/mutanttoadbelt.jpg"
},
"mutantToadBoots": {
id: "mutantToadBoots",
name:"Mutant Toad Boots",
value: 2100,
description:"• Resist: +9 Physical<br>• Resist: +9 Fire<br>• Resist: +9 Cold<br>• Resist: +14 Corrosive<br>• Resist: +9 Electric<br>• Stats: +3 Evasion",
obtained:false,
rarity:"rare",
slot:"shoes",
isWeapon:false,
statsAdd: { evasion: 3 },
resistAdd: { physical: 9, fire: 9, cold: 9, corrosive: 14, electric: 9 },
img:"pizzamedia/images/items/mutanttoadboots.jpg"
},
"rustyHelmet": {
id: "rustyHelmet",
name:"Rusty Helmet",
value: 700,
description:"• Resist: +14 Physical<br>• Resist: +9 Fire<br>• Resist: +9 Cold<br>• Resist: +9 Corrosive<br>• Resist: +9 Electric<br>• Stats: +1 Accuracy",
obtained:false,
rarity:"rare",
slot:"head",
isWeapon:false,
statsAdd: { accuracy: 1 },
resistAdd: { physical: 14, fire: 9, cold: 9, corrosive: 9, electric: 9 },
img:"pizzamedia/images/items/rustyhelmet.jpg"
},
"rustyChest": {
id: "rustyChest",
name:"Rusty Chest",
value: 1400,
description:"• Resist: +15 Physical<br>• Resist: +10 Fire<br>• Resist: +10 Cold<br>• Resist: +10 Corrosive<br>• Resist: +10 Electric<br>• Stats: +1 Evasion",
obtained:false,
rarity:"rare",
slot:"chest",
isWeapon:false,
statsAdd: { evasion: 1 },
resistAdd: { physical: 15, fire: 10, cold: 10, corrosive: 10, electric: 10 },
img:"pizzamedia/images/items/rustychest.jpg"
},
"rustyBoots": {
id: "rustyBoots",
name:"Rusty Boots",
value: 650,
description:"• Resist: +14 Physical<br>• Resist: +9 Fire<br>• Resist: +9 Cold<br>• Resist: +9 Corrosive<br>• Resist: +9 Electric<br>• Stats: +1 Evasion",
obtained:false,
rarity:"rare",
slot:"shoes",
isWeapon:false,
statsAdd: { evasion: 1 },
resistAdd: { physical: 14, fire: 9, cold: 9, corrosive: 9, electric: 9 },
img:"pizzamedia/images/items/rustyboots.jpg"
},
"sectarianHelmet": {
id: "sectarianHelmet",
name:"Sectarian Helmet",
value: 2600,
description:"• Resist: +9 Physical<br>• Resist: +14 Fire<br>• Resist: +9 Cold<br>• Resist: +9 Corrosive<br>• Resist: +9 Electric<br>• Stats: +3 Accuracy",
obtained:false,
rarity:"rare",
slot:"head",
isWeapon:false,
statsAdd: { accuracy: 3 },
resistAdd: { physical: 9, fire: 14, cold: 9, corrosive: 9, electric: 9 },
img:"pizzamedia/images/items/cultisthelmet.jpg"
},
"sectarianRobe": {
id: "sectarianRobe",
name:"Sectarian Robe",
value: 4900,
description:"• Resist: +10 Physical<br>• Resist: +15 Fire<br>• Resist: +10 Cold<br>• Resist: +10 Corrosive<br>• Resist: +10 Electric<br>• Stats: +2 Accuracy, +2 Evasion",
obtained:false,
rarity:"rare",
slot:"chest",
isWeapon:false,
statsAdd: { accuracy: 2, evasion: 2 },
resistAdd: { physical: 10, fire: 15, cold: 10, corrosive: 10, electric: 10 },
img:"pizzamedia/images/items/cultistrobe.jpg"
},
"sectarianShoes": {
id: "sectarianShoes",
name:"Sectarian Shoes",
value: 2300,
description:"• Resist: +9 Physical<br>• Resist: +14 Fire<br>• Resist: +9 Cold<br>• Resist: +9 Corrosive<br>• Resist: +9 Electric<br>• Stats: +3 Evasion",
obtained:false,
rarity:"rare",
slot:"shoes",
isWeapon:false,
statsAdd: { evasion: 3 },
resistAdd: { physical: 9, fire: 14, cold: 9, corrosive: 9, electric: 9 },
img:"pizzamedia/images/items/cultistshoes.jpg"
},
"solarBoots": {
id: "solarBoots",
name:"Solar Boots",
value: 3600,
description:"• Resist: +9 Physical<br>• Resist: +14 Fire<br>• Resist: +9 Cold<br>• Resist: +9 Corrosive<br>• Resist: +9 Electric<br>• Stats: +4 Evasion",
obtained:false,
rarity:"rare",
slot:"shoes",
isWeapon:false,
statsAdd: { evasion: 4 },
resistAdd: { physical: 9, fire: 14, cold: 9, corrosive: 9, electric: 9 },
img:"pizzamedia/images/items/solarboots.jpg"
},
"solarChest": {
id: "solarChest",
name:"Solar Chest",
value: 7000,
description:"• Resist: +10 Physical<br>• Resist: +15 Fire<br>• Resist: +10 Cold<br>• Resist: +10 Corrosive<br>• Resist: +10 Electric<br>• Stats: +3 Accuracy, +2 Evasion",
obtained:false,
rarity:"rare",
slot:"chest",
isWeapon:false,
statsAdd: { accuracy: 3, evasion: 2 },
resistAdd: { physical: 10, fire: 15, cold: 10, corrosive: 10, electric: 10 },
img:"pizzamedia/images/items/solarchest.jpg"
},
"solarHelmet": {
id: "solarHelmet",
name:"Solar Helmet",
value: 3400,
description:"• Resist: +9 Physical<br>• Resist: +14 Fire<br>• Resist: +9 Cold<br>• Resist: +9 Corrosive<br>• Resist: +9 Electric<br>• Stats: +4 Accuracy",
obtained:false,
rarity:"rare",
slot:"head",
isWeapon:false,
statsAdd: { accuracy: 4 },
resistAdd: { physical: 9, fire: 14, cold: 9, corrosive: 9, electric: 9 },
img:"pizzamedia/images/items/solarhelmet.jpg"
},
"sunglasses": {
id: "sunglasses",
name:"Sunglasses",
value: 220,
description:"• Resist: +9 Physical<br>• Resist: +14 Fire<br>• Resist: +9 Cold<br>• Resist: +9 Corrosive<br>• Resist: +9 Electric<br>• Stats: +2 Accuracy",
obtained:false,
rarity:"rare",
slot:"head",
isWeapon:false,
statsAdd: { accuracy: 2 },
resistAdd: { physical: 9, fire: 14, cold: 9, corrosive: 9, electric: 9 },
img:"pizzamedia/images/items/sunglasses.jpg"
},
"yetiBoots": {
id: "yetiBoots",
name:"Yeti Boots",
value: 2000,
description:"• Resist: +9 Physical<br>• Resist: +9 Fire<br>• Resist: +14 Cold<br>• Resist: +9 Corrosive<br>• Resist: +9 Electric<br>• Stats: +3 Evasion",
obtained:false,
rarity:"rare",
slot:"shoes",
isWeapon:false,
statsAdd: { evasion: 3 },
resistAdd: { physical: 9, fire: 9, cold: 14, corrosive: 9, electric: 9 },
img:"pizzamedia/images/items/yetiboots.jpg"
},
"yetiChest": {
id: "yetiChest",
name:"Yeti Chest",
value: 3800,
description:"• Resist: +10 Physical<br>• Resist: +10 Fire<br>• Resist: +15 Cold<br>• Resist: +10 Corrosive<br>• Resist: +10 Electric<br>• Stats: +2 Evasion",
obtained:false,
rarity:"rare",
slot:"chest",
isWeapon:false,
statsAdd: { evasion: 2 },
resistAdd: { physical: 10, fire: 10, cold: 15, corrosive: 10, electric: 10 },
img:"pizzamedia/images/items/yetichest.jpg"
},
"yetiHelmet": {
id: "yetiHelmet",
name:"Yeti Helmet",
value: 1900,
description:"• Resist: +9 Physical<br>• Resist: +9 Fire<br>• Resist: +14 Cold<br>• Resist: +9 Corrosive<br>• Resist: +9 Electric<br>• Stats: +2 Accuracy",
obtained:false,
rarity:"rare",
slot:"head",
isWeapon:false,
statsAdd: { accuracy: 2 },
resistAdd: { physical: 9, fire: 9, cold: 14, corrosive: 9, electric: 9 },
img:"pizzamedia/images/items/yetihelmet.jpg"
},
/* ===== LEGENDARY ===== */
"basiliskBoots": {
id: "basiliskBoots",
name:"Basilisk Boots",
value: 2200,
description:"• Resist: +12 Physical<br>• Resist: +12 Fire<br>• Resist: +12 Cold<br>• Resist: +18 Corrosive<br>• Resist: +12 Electric<br>• Stats: +4 Evasion",
obtained:false,
rarity:"legendary",
slot:"shoes",
isWeapon:false,
statsAdd: { evasion: 4 },
resistAdd: { physical: 12, fire: 12, cold: 12, corrosive: 18, electric: 12 },
img:"pizzamedia/images/items/basiliskboots.jpg"
},
"basiliskChest": {
id: "basiliskChest",
name:"Basilisk Chest",
value: 4200,
description:"• Resist: +13 Physical<br>• Resist: +13 Fire<br>• Resist: +13 Cold<br>• Resist: +20 Corrosive<br>• Resist: +13 Electric<br>• Stats: +2 Evasion",
obtained:false,
rarity:"legendary",
slot:"chest",
isWeapon:false,
statsAdd: { evasion: 2 },
resistAdd: { physical: 13, fire: 13, cold: 13, corrosive: 20, electric: 13 },
img:"pizzamedia/images/items/basiliskchest.jpg"
},
"basiliskHelmet": {
id: "basiliskHelmet",
name:"Basilisk Helmet",
value: 2000,
description:"• Resist: +12 Physical<br>• Resist: +12 Fire<br>• Resist: +12 Cold<br>• Resist: +18 Corrosive<br>• Resist: +12 Electric<br>• Stats: +3 Accuracy",
obtained:false,
rarity:"legendary",
slot:"head",
isWeapon:false,
statsAdd: { accuracy: 3 },
resistAdd: { physical: 12, fire: 12, cold: 12, corrosive: 18, electric: 12 },
img:"pizzamedia/images/items/basiliskhelmet.jpg"
},
"bunnyHelmet": {
id: "bunnyHelmet",
name:"Bunny Helmet",
value: 1500,
description:"• Resist: +18 Physical<br>• Resist: +12 Fire<br>• Resist: +12 Cold<br>• Resist: +12 Corrosive<br>• Resist: +12 Electric<br>• Stats: +4 Evasion, +12 Escape Chance",
obtained:false,
rarity:"legendary",
slot:"head",
isWeapon:false,
statsAdd: { evasion: 4, escapeChance: 12 },
resistAdd: { physical: 18, fire: 12, cold: 12, corrosive: 12, electric: 12 },
img:"pizzamedia/images/items/bunnyhelmet.jpg"
},
"dragonBoots": {
id: "dragonBoots",
name:"Dragon Boots",
value: 4200,
description:"• Resist: +12 Physical<br>• Resist: +18 Fire<br>• Resist: +12 Cold<br>• Resist: +12 Corrosive<br>• Resist: +12 Electric<br>• Stats: +4 Evasion",
obtained:false,
rarity:"legendary",
slot:"shoes",
isWeapon:false,
statsAdd: { evasion: 4 },
resistAdd: { physical: 12, fire: 18, cold: 12, corrosive: 12, electric: 12 },
img:"pizzamedia/images/items/dragonboots.jpg"
},
"dragonChest": {
id: "dragonChest",
name:"Dragon Chest",
value: 7800,
description:"• Resist: +13 Physical<br>• Resist: +20 Fire<br>• Resist: +13 Cold<br>• Resist: +13 Corrosive<br>• Resist: +13 Electric<br>• Stats: +3 Accuracy, +2 Evasion",
obtained:false,
rarity:"legendary",
slot:"chest",
isWeapon:false,
statsAdd: { accuracy: 3, evasion: 2 },
resistAdd: { physical: 13, fire: 20, cold: 13, corrosive: 13, electric: 13 },
img:"pizzamedia/images/items/dragonchest.jpg"
},
"dragonHelmet": {
id: "dragonHelmet",
name:"Dragon Helmet",
value: 3900,
description:"• Resist: +12 Physical<br>• Resist: +18 Fire<br>• Resist: +12 Cold<br>• Resist: +12 Corrosive<br>• Resist: +12 Electric<br>• Stats: +4 Accuracy",
obtained:false,
rarity:"legendary",
slot:"head",
isWeapon:false,
statsAdd: { accuracy: 4 },
resistAdd: { physical: 12, fire: 18, cold: 12, corrosive: 12, electric: 12 },
img:"pizzamedia/images/items/dragonhelmet.jpg"
},
"fireSoulBoots": {
id: "fireSoulBoots",
name:"Fire Soul Boots",
value: 3000,
description:"• Resist: +12 Physical<br>• Resist: +18 Fire<br>• Resist: +12 Cold<br>• Resist: +12 Corrosive<br>• Resist: +12 Electric<br>• Stats: +4 Evasion",
obtained:false,
rarity:"legendary",
slot:"shoes",
isWeapon:false,
statsAdd: { evasion: 4 },
resistAdd: { physical: 12, fire: 18, cold: 12, corrosive: 12, electric: 12 },
img:"pizzamedia/images/items/firesoulboots.jpg"
},
"fireSoulChest": {
id: "fireSoulChest",
name:"Fire Soul Chest",
value: 5600,
description:"• Resist: +13 Physical<br>• Resist: +20 Fire<br>• Resist: +13 Cold<br>• Resist: +13 Corrosive<br>• Resist: +13 Electric<br>• Stats: +2 Accuracy",
obtained:false,
rarity:"legendary",
slot:"chest",
isWeapon:false,
statsAdd: { accuracy: 2 },
resistAdd: { physical: 13, fire: 20, cold: 13, corrosive: 13, electric: 13 },
img:"pizzamedia/images/items/firesoulchest.jpg"
},
"fireSoulHelmet": {
id: "fireSoulHelmet",
name:"Fire Soul Helmet",
value: 2700,
description:"• Resist: +12 Physical<br>• Resist: +18 Fire<br>• Resist: +12 Cold<br>• Resist: +12 Corrosive<br>• Resist: +12 Electric<br>• Stats: +3 Accuracy",
obtained:false,
rarity:"legendary",
slot:"head",
isWeapon:false,
statsAdd: { accuracy: 3 },
resistAdd: { physical: 12, fire: 18, cold: 12, corrosive: 12, electric: 12 },
img:"pizzamedia/images/items/firesoulhelmet.jpg"
},
"mechaBoots": {
id: "mechaBoots",
name:"Mecha Boots",
value: 3000,
description:"• Resist: +12 Physical<br>• Resist: +12 Fire<br>• Resist: +12 Cold<br>• Resist: +12 Corrosive<br>• Resist: +18 Electric<br>• Stats: +3 Evasion",
obtained:false,
rarity:"legendary",
slot:"shoes",
isWeapon:false,
statsAdd: { evasion: 3 },
resistAdd: { physical: 12, fire: 12, cold: 12, corrosive: 12, electric: 18 },
img:"pizzamedia/images/items/mechaboots.jpg"
},
"mechaChest": {
id: "mechaChest",
name:"Mecha Chest",
value: 5800,
description:"• Resist: +13 Physical<br>• Resist: +13 Fire<br>• Resist: +13 Cold<br>• Resist: +13 Corrosive<br>• Resist: +20 Electric<br>• Stats: +2 Accuracy",
obtained:false,
rarity:"legendary",
slot:"chest",
isWeapon:false,
statsAdd: { accuracy: 2 },
resistAdd: { physical: 13, fire: 13, cold: 13, corrosive: 13, electric: 20 },
img:"pizzamedia/images/items/mechachest.jpg"
},
"mechaHelmet": {
id: "mechaHelmet",
name:"Mecha Helmet",
value: 2800,
description:"• Resist: +12 Physical<br>• Resist: +12 Fire<br>• Resist: +12 Cold<br>• Resist: +12 Corrosive<br>• Resist: +18 Electric<br>• Stats: +3 Accuracy",
obtained:false,
rarity:"legendary",
slot:"head",
isWeapon:false,
statsAdd: { accuracy: 3 },
resistAdd: { physical: 12, fire: 12, cold: 12, corrosive: 12, electric: 18 },
img:"pizzamedia/images/items/mechahelmet.jpg"
},
"mutantFlyWings": {
id: "mutantFlyWings",
name:"Mutant Fly Wings",
value: 2600,
description:"• Resist: +13 Physical<br>• Resist: +13 Fire<br>• Resist: +13 Cold<br>• Resist: +20 Corrosive<br>• Resist: +13 Electric<br>• Stats: +6 Evasion, +10 Escape Chance",
obtained:false,
rarity:"legendary",
slot:"chest",
isWeapon:false,
statsAdd: { evasion: 6, escapeChance: 10 },
resistAdd: { physical: 13, fire: 13, cold: 13, corrosive: 20, electric: 13 },
img:"pizzamedia/images/items/mutantflywings.jpg"
},
"mutantMosquitoHelmet": {
id: "mutantMosquitoHelmet",
name:"Mutant Mosquito Helmet",
value: 2200,
description:"• Resist: +12 Physical<br>• Resist: +12 Fire<br>• Resist: +12 Cold<br>• Resist: +18 Corrosive<br>• Resist: +12 Electric<br>• Stats: +3 Accuracy, +30 Life Steal",
obtained:false,
rarity:"legendary",
slot:"head",
isWeapon:false,
statsAdd: { accuracy: 3, lifeStealPct: 30 },
resistAdd: { physical: 12, fire: 12, cold: 12, corrosive: 18, electric: 12 },
img:"pizzamedia/images/items/mutantmosquitohelmet.jpg"
},
"pimpCoat": {
id: "pimpCoat",
name:"Pimp Coat",
value: 900,
description:"• Resist: +13 Physical<br>• Resist: +13 Fire<br>• Resist: +20 Cold<br>• Resist: +13 Corrosive<br>• Resist: +13 Electric<br>• Stats: +2 Accuracy, +2 Evasion",
obtained:false,
rarity:"legendary",
slot:"chest",
isWeapon:false,
statsAdd: { accuracy: 2, evasion: 2 },
resistAdd: { physical: 13, fire: 13, cold: 20, corrosive: 13, electric: 13 },
img:"pizzamedia/images/items/pimpcoat.jpg"
},
"pimpHat": {
id: "pimpHat",
name:"Pimp Hat",
value: 420,
description:"• Resist: +12 Physical<br>• Resist: +18 Fire<br>• Resist: +18 Cold<br>• Resist: +12 Corrosive<br>• Resist: +12 Electric<br>• Stats: +2 Accuracy",
obtained:false,
rarity:"legendary",
slot:"head",
isWeapon:false,
statsAdd: { accuracy: 2 },
resistAdd: { physical: 12, fire: 18, cold: 18, corrosive: 12, electric: 12 },
img:"pizzamedia/images/items/pimphat.jpg"
},
"queenCrown": {
id: "queenCrown",
name:"Queen Crown",
value: 3200,
description:"• Resist: +12 Physical<br>• Resist: +18 Fire<br>• Resist: +18 Cold<br>• Resist: +18 Corrosive<br>• Resist: +18 Electric<br>• Stats: +5 Accuracy, +2 Evasion, +8 Item Drop Chance",
obtained:false,
rarity:"legendary",
slot:"head",
isWeapon:false,
statsAdd: { accuracy: 5, evasion: 2, itemDropChance: 8 },
resistAdd: { physical: 12, fire: 18, cold: 18, corrosive: 18, electric: 18 },
img:"pizzamedia/images/items/queencrown.jpg"
},
"wyrmBoots": {
id: "wyrmBoots",
name:"Wyrm Boots",
value: 4200,
description:"• Resist: +12 Physical<br>• Resist: +18 Fire<br>• Resist: +12 Cold<br>• Resist: +18 Corrosive<br>• Resist: +12 Electric<br>• Stats: +4 Evasion",
obtained:false,
rarity:"legendary",
slot:"shoes",
isWeapon:false,
statsAdd: { evasion: 4 },
resistAdd: { physical: 12, fire: 18, cold: 12, corrosive: 18, electric: 12 },
img:"pizzamedia/images/items/wyrmboots.jpg"
},
"wyrmChest": {
id: "wyrmChest",
name:"Wyrm Chest",
value: 8000,
description:"• Resist: +20 Physical<br>• Resist: +20 Fire<br>• Resist: +13 Cold<br>• Resist: +20 Corrosive<br>• Resist: +13 Electric<br>• Stats: +3 Accuracy, +2 Evasion",
obtained:false,
rarity:"legendary",
slot:"chest",
isWeapon:false,
statsAdd: { accuracy: 3, evasion: 2 },
resistAdd: { physical: 20, fire: 20, cold: 13, corrosive: 20, electric: 13 },
img:"pizzamedia/images/items/wyrmchest.jpg"
},
"wyrmHelmet": {
id: "wyrmHelmet",
name:"Wyrm Helmet",
value: 3900,
description:"• Resist: +12 Physical<br>• Resist: +18 Fire<br>• Resist: +12 Cold<br>• Resist: +18 Corrosive<br>• Resist: +12 Electric<br>• Stats: +4 Accuracy",
obtained:false,
rarity:"legendary",
slot:"head",
isWeapon:false,
statsAdd: { accuracy: 4 },
resistAdd: { physical: 12, fire: 18, cold: 12, corrosive: 18, electric: 12 },
img:"pizzamedia/images/items/wyrmhelmet.jpg"
},
/* ===== MYTHIC (sin cambios) ===== */
"americanThong": {
id: "americanThong",
name:"American Thong",
value: 90,
description:"• Resist: +26 Physical<br>• Resist: +42 Fire<br>• Resist: +26 Cold<br>• Resist: +26 Corrosive<br>• Resist: +26 Electric<br>• Stats: +1 Evasion",
obtained:false,
rarity:"mythic",
slot:"chest",
isWeapon:false,
statsAdd: { evasion: 1 },
resistAdd: { physical: 26, fire: 42, cold: 26, corrosive: 26, electric: 26 },
img:"pizzamedia/images/items/americanthong.jpg"
}
} )>>
<</nobr>><<nobr>>
<<set $sets = {
/* =================== SETS ========= */
"frostSet": {
id: "frostSet",
name: "Frost Set",
value: 8500,
description: "• Cold DMG: +25%<br>• Cold RES: +20% (Total 90%)<br>• Evasion: +10<br>• Effect: Freeze (25% chance)",
pieces: ["frostHelm","frostArmor","frostBoots"],
bonus: {
/* BALANCE: Subido daño de 4 a 25. */
dmgAdd: { cold: 25 },
/* BALANCE: Bajado de 100 a 20. Sumado a las piezas (70), da 90% total. */
resistAdd:{ cold: 20 },
/* BALANCE: Cambiado Accuracy por Evasion +10 (El hielo suele ser defensivo/esquivo) */
statsAdd: { evasion: 10 },
/* AÑADIDO: Efecto de congelar para igualar al set de fuego */
outgoingEffects:[{
name:"Freeze",
color:"blue",
type:"stun",
damageType:"cold",
chance: 25,
turns: 1
}]
}
},
"pyroSet": {
id: "pyroSet",
name: "Pyro Set",
value: 9500,
description: "• Fire DMG: +25%<br>• Fire RES: +20% (Total 90%)<br>• Crit Chance: +10<br>• Effect: Burn (50% chance, 3 turns, 5 DMG/turn)",
pieces: ["pyroMask","pyroJacket","pyroBoots"],
bonus: {
/* BALANCE: Subido daño de 4 a 25. */
dmgAdd: { fire: 25 },
/* BALANCE: Bajado de 100 a 20. Total 90%. */
resistAdd:{ fire: 20 },
/* BALANCE: Subido Crítico de 3 a 10. El fuego es agresivo. */
statsAdd: { critChance: 10 },
/* Quemadura mejorada */
outgoingEffects:[{
name:"Burn",
color:"orange",
type:"damage",
damageType:"fire",
chance: 50,
turns: 3,
perTurn: 5
}]
}
}
} >>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "intro">>
<p class="reflection">You're about to use the portal gun your Uncle Steven left you for the first time.</p>
<<portalgunai>>Checking status...<br>User warning: The Gauss Core is partially malfunctioning. Interdimensional calibration is unstable.<br>Continue?<</portalgunai>>
<p class="reflection">The portal gun appears to have a system malfunction.</p>
<<say "You" $player.img>>Yes, open a portal for me.<</say>><br>
<<portalgunai>>Security protocol activated: transport may be execute chained jumps through unauthorized intermediate locations.<br>Destination may not match the selected anchor point.<</portalgunai>><br>
[img['pizzamedia/images/events/newportal/portal0.jpg']]
<p class="reflection">A portal opens in front of you.</p>
<p style="color:var(--red)">WARNING!! INTERDIMENSIONAL TRAVEL IS RANDOM!! SOME MISSIONS MAY BE VERY EASY TO COMPLETE, WHILE OTHERS MAY BE VERY DIFFICULT!!</p><br>
[[A new portal opens|EventSelector][$gameEngine.firstRun = true]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<if $combatEngine.enemy.secondPhase === false>>
<p class="reflection">You have defeated $combatEngine.enemy.name.</p>
[img[$combatEngine.enemy.defeatImg]]
<p class="reflection">You get the following loot:</p>
<<set $adventureLootEnemyId = $combatEngine.enemyId>>
<<set $allowMegabitsLoot = false>>
<<set $allowRegencoinsLoot = true>>
<<set $allowInfinityGemsLoot = true>>
<<set $allowConsumableLoot = true>>
<<set $allowItemsLoot = true>>
<<AdventureLoot>>
<<AdventureLootUI>>
<<link "Continue">>
<<goto "Combat__ResetAfterCombat">>
<</link>>
<<else>>
<<goto "Combat__ResetAfterCombat">>
<</if>>
</div>
<</nobr>><<nobr>>
<<widget "HealingMenu">>
<<include "CalcPlayerCombatStats">>
<<if def $combatEngine and $combatEngine.player>>
<<set _targetUnit = $combatEngine.player>>
<<else>>
<<set _targetUnit = $playerCombat>> /* Fallback de seguridad */
<</if>>
/* 2. LECTURA DE DATOS */
<<set _currentHp = Math.floor(Number(_targetUnit.hp))>>
<<set _maxHp = Math.floor(Number(_targetUnit.maxHp))>>
<<set _pct = Math.round((_currentHp / _maxHp) * 100)>>
/* Protección visual */
<<if _pct < 0>><<set _pct = 0>><</if>>
<<if _pct > 100>><<set _pct = 100>><</if>>
/* ✨ FIX 1: Quitamos el id="medikit-root" de aquí. Solo dejamos la clase. ✨ */
<div class="medikit-container">
<div class="medikit-header">
<h3>💊 MED-STATION 💊</h3>
/* Barra de vida */
<div class="hp-bar-container">
<div class="hp-bar-fill" @style="'width:' + _pct + '%'"></div>
<div class="hp-text">HP: _currentHp / _maxHp</div>
</div>
</div>
<div class="medikit-scroll">
<<set _hasHeals = false>>
/* BUCLE DE ITEMS */
<<for _key, _item range $player.consumables>>
<<if _item.qty > 0 && _item.type == "heal">>
<<set _hasHeals = true>>
<div class="medikit-item">
<div class="item-info">
<div class="item-name">_item.name <span style="color:#aaa; font-size:0.8em;">(x_item.qty)</span></div>
<div class="item-desc">_item.description</div>
</div>
<div class="item-action">
/* Verificamos si podemos curar al ENGINE PLAYER */
<<if _currentHp < _maxHp>>
<<capture _key, _item>>
<<button "USAR">>
/* 1. Restar item del inventario global */
<<set $player.consumables[_key].qty -= 1>>
/* 2. Preparar valores seguros */
<<set _safeHp = Number(_targetUnit.hp)>>
<<set _safeMax = Number(_targetUnit.maxHp)>>
/* 3. Calcular nueva vida */
<<if _item.heal == "full">>
<<set _targetUnit.hp = _safeMax>>
<<else>>
<<set _healAmount = Number(_item.heal)>>
<<set _targetUnit.hp = _safeHp + _healAmount>>
<</if>>
/* 4. Asegurar tope */
<<if _targetUnit.hp > _safeMax>>
<<set _targetUnit.hp = _safeMax>>
<</if>>
/* Guardamos la vida curada en la base persistente */
<<set $playerCombat.hp = _targetUnit.hp>>
/* 5. ACTUALIZAR INTERFAZ */
<<replace "#medikit-root">><<HealingMenu>><</replace>>
<<run UIBar.update()>>
<</button>>
<</capture>>
<<else>>
<div class="btn-disabled">MAX</div>
<</if>>
</div>
</div>
<</if>>
<</for>>
<<if _hasHeals == false>>
<div style="padding:20px; text-align:center; color:#777;">
<i>Empty medical inventory.</i>
</div>
<</if>>
</div>
</div>
<</widget>>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "allisonscene3a">>
<<audio "bgm_chill" pause>>
<p class="reflection">You finally arrive at your destination. This house looks familiar to you.</p>
[img['pizzamedia/images/girls/allison/allisonscene3/houseoutside.jpg']]<br>
<<linkreplace "Knock on the door">>
<p class="reflection">You walk up and knock on the door.</p>
[img['pizzamedia/images/girls/allison/allisonscene3/knocking.jpg']]
<<allison2>>Who is it?<</allison2>><br>
<<say "You" $player.img>>Pizza delivery guy.<</say>><br>
[img['pizzamedia/images/girls/allison/allisonscene3/givepizza.jpg']]
<p class="reflection">She opens the door, and you hand her the pizza.</p>
<<allison2>>It's good to see you again, $player.name. Come on in. Don't just stand there.<</allison2>><br>
<span id="choice">
<<link "Go inside with her">>
<<replace "#choice">>
<<goto "AllisonScene3B">>
<</replace>>
<</link>>
<br><br>
<<if $gameEngine.onRepetition === false>>
<<link "Tell her you're in a hurry">>
<<replace "#choice">>
<<say "You" $player.img>>I’m in a bit of a hurry. Maybe next time.<</say>><br>
<<allison2>>Oh, okay. See you later.<</allison2>><br>
[[Go back to the pizzeria|SuccessfulDelivery]]
<</replace>>
<</link>>
<</if>>
</span><br>
<</linkreplace>>
<!--
[[AllisonScene3B]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "rebeccascene2b">>
<p class="reflection">You walk into the bedroom and find $eventGirls.rebecca.displayName dressed in provocative lingerie.</p>
<<rebecca>>Ahhhh... Ahhh... Come here.<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene2/intro1.mp4">><br>
<p class="reflection">She's really turned on and signals that she wants you to come closer to satisfy her.</p>
[[Satisfy her needs|RebeccaScene2D][$cumProgress = 0]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev5Cbackground">>
<<set _pool = ["miniCristallizedGolem", "crystallizedGolem", "crystallizedCentipede"]>>
<<set $combatEngine.enemyId = _pool[ random(0, _pool.length - 1) ]>>
<div id="mainScene">
<p class="reflection">You reach a dead-end room.</p>
<<set _enemyImagePath = "pizzamedia/images/enemies/" + $combatEngine.enemyId.toLowerCase() + "/pose.jpg">>
[img[_enemyImagePath]]
<<set $upper = "Inside the room there is a " + $enemies[$combatEngine.enemyId].name + " and it doesn’t look very friendly.">>
<p class="reflection">$upper</p>
</div>
<div id="choice">
<div id="talkChoices">
<div class="actionRow">
<span class="btnChoice">
<<link "Talk">>
<<run window.scrollTo({top: 0, behavior: 'smooth'})>>
<<replace "#mainScene">>
<<say "You" $player.img>>Hey.<</say>><br>
[img[_enemyImagePath]]
<<if $combatEngine.enemyId is "crystallizedCentipede">>
<p class="reflection">You try to talk to it, but the centipede lets out a shrill sound and writhes. It’s very aggressive!</p>
<<else>>
<p class="reflection">The golem responds with echoes and crystal noises that you can’t understand.</p>
<</if>>
<</replace>>
<<replace "#talkChoices">><</replace>>
<</link>>
</span>
</div>
</div>
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
</div>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev5Bbackground">>
<p class="reflection">This place looks like a maze.</p>
[img['pizzamedia/images/events/ev5/backgroundb.jpg']]
<p class="reflection">In front of you, you come to a fork in the path.</p>
<div id="choice">
<div class="actionRow">
<span class="btnChoice">
<<link "Go left">>
<<replace "#choice">>
<<goto "EV5D">>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Go right">>
<<replace "#choice">>
<<goto "EV5C">>
<</replace>>
<</link>>
</span>
</div>
</div>
<!--
[[EV5C]]
[[EV5D]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev5Dbackground">>
<p class="reflection">You walk down the hallways.</p>
[img['pizzamedia/images/events/ev5/backgroundd.jpg']]
<p class="reflection">You come to another fork in the path.</p>
<div id="choice">
<div class="actionRow">
<span class="btnChoice">
<<link "Go left">>
<<replace "#choice">>
<<goto "EV5C">>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Go right">>
<<replace "#choice">>
<<goto "EV5E">>
<</replace>>
<</link>>
</span>
</div>
</div>
<!--
[[EV5C]]
[[EV5E]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev6Cbackground">>
<p class="reflection">You walk for a while, and in the distance you see what looks like some kind of temple.</p>
[img['pizzamedia/images/events/ev6/firetemple.jpg']]
<div id="choice">
<div class="actionRow">
<span class="btnChoice">
<<link "Approach the temple's entrance">>
<<replace "#choice">>
<<goto "EV6B2">>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Don't approach(+1❄️)">>
<<replace "#choice">>
[img['pizzamedia/images/events/ev6/wait.jpg']]
<p class="reflection">You decide to wait for a new portal to open, interacting with your surroundings as little as possible.<br></p>
<<include "CoolingPizza">>
<br>
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
<</replace>>
<</link>>
</span>
</div>
</div>
<!--
[[EV6B2]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev6Cbackground">>
<p class="reflection">You walk for a while until you reach a valley of fire. Ahead of you lies a staircase, strewn with bones and blood, leading down into what looks like an underground area.</p>
[img['pizzamedia/images/events/ev6/stairs.jpg']]
<p class="reflection">You try to see what lies at the bottom, but all you can see is utter darkness.</p>
<div id="choice">
<div class="actionRow">
<span class="btnChoice">
<<link "Go down the stairs">>
<<replace "#choice">>
<<goto "EV6C2">>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Stay away(+1❄️)">>
<<replace "#choice">>
[img['pizzamedia/images/events/ev6/wait.jpg']]
<p class="reflection">You decide to wait for a new portal to open, interacting with your surroundings as little as possible.<br></p>
<<include "CoolingPizza">>
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
<</replace>>
<</link>>
</span>
</div>
</div>
<!--
[[EV6C2]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev6Cbackground">>
<<set _pool = ["fireDragon", "imp", "phoenix", "unknownTraveller"]>>
<<set $combatEngine.enemyId = _pool[ random(0, _pool.length - 1) ]>>
<div id="mainScene">
<p class="reflection">You walk around this burning planet for a few minutes.</p>
<<set _enemyImagePath = "pizzamedia/images/enemies/" + $combatEngine.enemyId.toLowerCase() + "/pose.jpg">>
[img[_enemyImagePath]]
<<set $upper = "A " + $enemies[$combatEngine.enemyId].name + " appears in front of you, and it doesn't look very friendly.">>
<p class="reflection">$upper</p>
</div>
<div id="choice">
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
</div>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev7Bbackground">>
<p class="reflection">You walk for a while. In the distance, you see a cave.</p>
[img['pizzamedia/images/events/ev7/backgroundb.jpg']]
<p class="reflection">It looks as if something had crashed into the mountain.</p>
<div id="choice">
<div class="actionRow">
<span class="btnChoice">
<<link "Enter the cave">>
<<replace "#choice">>
<<goto "EV7C2">>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Don’t enter(+1❄️)">>
<<replace "#choice">>
<p class="reflection">You decide to wait for a new portal to open, interacting with your surroundings as little as possible.</p>
<<include "CoolingPizza">><br><br>
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
<</replace>>
<</link>>
</span>
</div>
</div>
<!--
[[EV7C2]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev7Abackground">>
<<set _pool = ["snowflakes", "yeti", "icedragon"]>>
<<set $combatEngine.enemyId = _pool[ random(0, _pool.length - 1) ]>>
<p class="reflection">You walk a few steps and approach one of the trees.</p>
[img['pizzamedia/images/events/ev7/tree.jpg']]
<p class="reflection">The tree is covered with strange fruits.</p>
<div id="choice">
<div class="actionRow">
<span class="btnChoice">
<<link "Pick a fruit from the tree(+1❄️)">>
<<replace "#choice">>
<p class="reflection">As you try to grab a fruit, you hear something behind you.</p>
<<set _enemyImage = "pizzamedia/images/enemies/" + $combatEngine.enemyId + "/pose0.jpg">>
[img[_enemyImage]]
<<set $upper = "When you turn around, you see a " + $enemies[$combatEngine.enemyId].name + " in front of you.">>
<p class="reflection">$upper</p>
<<set $combatEngine.onWin = "HarvestFruit">>
<<set $combatEngine.onLose = "Resurrect">>
<<include "CoolingPizza">>
<br>
<<link "Defend yourself">>
<<goto "StartCombat">>
<</link>>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Wait for a portal to open(+1❄️)">>
<<replace "#choice">>
<p class="reflection">You decide to wait for a new portal to open, interacting with your surroundings as little as possible.<br></p>
[img['pizzamedia/images/events/ev5/wait.jpg']]
<p class="reflection">You see a completely frozen wasteland in front of you.<br></p>
<<include "CoolingPizza">>
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
<</replace>>
<</link>>
</span>
</div>
</div>
<!--
[[HarvestFruit]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev7Cbackground">>
<p class="reflection">The cave is completely covered in ice.</p>
[img['pizzamedia/images/enemies/morpheus/pose1.jpg']]
<p class="reflection">at the end of the cave, you find a man sitting in an armchair with a campfire in front of him.</p>
<div id="choice">
<div class="actionRow">
<span class="btnChoice">
<<link "Go talk to him(+1❄️)">>
<<replace "#choice">>
<<goto "EV7C3">>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Leave(+1❄️)">>
<<replace "#choice">>
<p class="reflection">You decide to leave and not speak to that man who was staring at you.<br></p>
[img['pizzamedia/images/enemies/morpheus/pose2.jpg']]
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
<</replace>>
<</link>>
</span>
</div>
</div>
<!--
[[EV7C3]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev8Abackground">>
<p class="reflection">You explore and find a cave.</p>
[img['pizzamedia/images/events/ev8/cave.jpg']]
<div id="choice">
<div class="actionRow">
<span class="btnChoice">
<<link "Enter">>
<<goto "EV8C2">>
<</link>>
</span>
<span class="btnChoice">
<<link "Don't enter(+1❄️)">>
<<replace "#choice">>
<p class="reflection">You decide to wait for a new portal to open, interacting with your surroundings as little as possible.<br>
</p>
[img['pizzamedia/images/events/ev8/wait.jpg']]
<p class="reflection">You see some creatures in the distance and decide not to approach to avoid possible conflict.</p>
<<include "CoolingPizza">>
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
<</replace>>
<</link>>
</span>
</div>
</div>
<!--
[[EV8C2]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev8Abackground">>
<<set $combatEngine.enemyId = "larry">>
<div id="mainScene">
<<larry>>Hi! My name is Larry.<</larry>><br>
[img['pizzamedia/images/enemies/larry/pose1.jpg']]
<p class="reflection">You come across a little clingy creature. It seems friendly.</p>
</div>
<div id="choice">
<div class="actionRow">
<span class="btnChoice">
<<link "Talk to it(+1❄️)">>
<<run window.scrollTo({top: 0, behavior: 'smooth'})>>
<<include "CoolingPizza">>
<<replace "#mainScene">>
<<say "You" $player.img>>Hi Larry, how are you?<</say>><br>
<<larry>>Oh, you know, just hanging out and stuff. Hey, would you mind stepping on me? No pressure, though.<</larry>><br>
<<say "You" $player.img>>You want me to step on you? I don't get it.<</say>><br>
<<larry>>Yeah, step on me, really hard... crush me.<</larry>><br>
[img['pizzamedia/images/enemies/larry/pose1.jpg']]
<</replace>>
<<replace "#choice">>
<div class="actionRow">
<span class="btnChoice">
<<link "Step on it">>
<<run window.scrollTo({top: 0, behavior: 'smooth'})>>
<<replace "#mainScene">>
<<say "You" $player.img>>Well, you asked for it.<</say>><br>
[img['pizzamedia/images/enemies/larry/pose2.jpg']]
<p class="reflection">You crush the little creature with your feet.</p>
<<larry>>Ohhhh... yes... I needed this so much...<</larry>><br>
<<say "You" $player.img>>But...<</say>><br>
[img['pizzamedia/images/enemies/larry/pose3.jpg']]
<p class="reflection">Larry parece extasiado.</p>
<<larryboyfriend>>Larry, WHAT ARE YOU DOING WITH THIS STRANGER?<</larryboyfriend>><br>
[img['pizzamedia/images/enemies/larry/larryboyfriend.jpg']]
<p class="reflection">A pink creature appears. It looks like Larry.</p>
<<larry>>I swear he made me do it!<</larry>><br>
<<larryboyfriend>>Damn human, I’ll teach you not to crush other people’s partners.<</larryboyfriend>><br>
[img['pizzamedia/images/enemies/larryboyfriend/angryboyfriend.jpg']]
<p class="reflection">This new creature looks really angry with you.</p>
<</replace>>
<<replace "#choice">>
<div id="talkActions">
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.enemyId = "larryboyfriend">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
</div>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Don’t step on it">>
<<run window.scrollTo({top: 0, behavior: 'smooth'})>>
<<replace "#mainScene">>
<<larry>>Oh, I thought you were cooler than that...<</larry>><br>
[img['pizzamedia/images/enemies/larry/leaving.jpg']]
<p class="reflection">Larry crawls away, disappointed. Shortly after, a portal opens in front of you.</p>
<</replace>>
<<replace "#choice">>
<div class="actionRow">
<span class="btnChoice">
[[A new portal opens|NewPortal]]
</span>
</div>
<</replace>>
<</link>>
</span>
</div>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Ignore it">>
<<run window.scrollTo({top: 0, behavior: 'smooth'})>>
<<replace "#mainScene">>
<<larry>>Oh, I thought you were cooler than that...<</larry>><br>
[img['pizzamedia/images/enemies/larry/leaving.jpg']]
<p class="reflection">Larry crawls away, disappointed. Shortly after, a portal opens in front of you.</p>
<</replace>>
<<replace "#choice">>
<div class="actionRow">
<span class="btnChoice">
[[A new portal opens|NewPortal]]
</span>
</div>
<</replace>>
<</link>>
</span>
</div>
<div id="talkActions">
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
</div>
</div>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev9Abackground">>
<<set $combatEngine.enemyId = "crazyman">>
<<if ndef $talk or $talk.enemyId neq $combatEngine.enemyId>>
<<set $talk = { enemyId: $combatEngine.enemyId, step: 0, done: false }>>
<</if>>
<<set $num1 = random(2, 10)>>
<<set $num2 = random(2, 10)>>
<<set $op = random(1, 2)>>
<<if $op == 1>>
<<set $opStr = "PLUS">>
<<set $correctAns = $num1 + $num2>>
<<else>>
<<set $opStr = "BY">>
<<set $correctAns = $num1 * $num2>>
<</if>>
<<set $wrong1 = $correctAns + random(1, 4)>>
<<set $wrong2 = $correctAns - random(1, 4)>>
<<if $wrong2 == $correctAns>><<set $wrong2 -= 1>><</if>>
<<if $wrong1 == $wrong2>><<set $wrong1 += 2>><</if>>
<<set $answers = [$correctAns, $wrong1, $wrong2]>>
<<run $answers.shuffle()>>
<<crazyman>>AHHHH! TWO PLUS FOUR, SEVEN TIMES EIGHT... OH MY GOD, OH MY GOD, I DON'T KNOW!<</crazyman>><br>
[img['pizzamedia/images/enemies/crazyman/pose.jpg']]
<p class="reflection">A man appears, screaming and clutching his head. He keeps talking about math problems. He seems to be crazy.</p>
<<crazyman>>HEY! YOU! COME ON, I NEED IT! HOW MUCH IS $num1 $opStr $num2!?<</crazyman>><br>
<div id="talkPanel">
<div id="talkLog"></div>
<div class="talkBox">
<div id="talkChoices">
<<if $talk.done>>
<p class="reflection">There is no more conversation.</p>
<<else>>
<<switch $talk.step>>
<<case 0>>
<div class="choiceRow">
<span class="btnChoice">
<<link "Tell him it’s $answers[0] (+1❄️)">>
<<include "CoolingPizza">>
<<set _ans = $answers[0]>>
<<if _ans == $correctAns>>
<<append "#talkLog">>
<<say "You" $player.img>>The answer is _ans, calm down.<</say>><br>
<<crazyman>>_ans? YES! OF COURSE! I FINALLY SEE IT CLEARLY!<</crazyman>><br>
<p class="reflection">The man sighs with relief and runs off.</p>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">>
<span class="btnChoice">
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
</span>
<</replace>>
<<else>>
<<append "#talkLog">>
<<say "You" $player.img>>I think it is _ans.<</say>><br>
<<crazyman>>LIAR! YOU'RE TRYING TO TRICK ME! NO ONE TRICKS ME!<</crazyman>><br>
[img['pizzamedia/images/enemies/crazyman/angry.jpg']]
<p class="reflection">The mad man gets angry, pulls out an electric dagger, and lunges at you to attack.</p>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">>
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<</replace>>
<</if>>
<<replace "#talkChoices">><</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Tell him it’s $answers[1] (+1❄️)">>
<<include "CoolingPizza">>
<<set _ans = $answers[1]>>
<<if _ans == $correctAns>>
<<append "#talkLog">>
<<say "You" $player.img>>The answer is _ans, calm down.<</say>><br>
<<crazyman>>_ans? YES! OF COURSE! I FINALLY SEE IT CLEARLY!<</crazyman>><br>
<p class="reflection">The man sighs with relief and runs off happily. He lets you go.</p>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">>
<span class="btnChoice">
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
</span>
<</replace>>
<<else>>
<<append "#talkLog">>
<<say "You" $player.img>>I think it's _ans.<</say>><br>
<<crazyman>>LIAR! YOU'RE TRYING TO TRICK ME! NO ONE TRICKS ME!<</crazyman>><br>
[img['pizzamedia/images/enemies/crazyman/angry.jpg']]
<p class="reflection">The mad man gets angry, pulls out an electric dagger, and lunges at you to attack.</p>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">>
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<</replace>>
<</if>>
<<replace "#talkChoices">><</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Tell him it’s $answers[2] (+1❄️)">>
<<include "CoolingPizza">>
<<set _ans = $answers[2]>>
<<if _ans == $correctAns>>
<<append "#talkLog">>
<<say "You" $player.img>>The answer is _ans, calm down.<</say>><br>
<<crazyman>>_ans? YES! OF COURSE! I FINALLY SEE IT CLEARLY!<</crazyman>><br>
<p class="reflection">The man sighs with relief and runs off happily. He lets you go.</p>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">>
<span class="btnChoice">
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
</span>
<</replace>>
<<else>>
<<append "#talkLog">>
<<say "You" $player.img>>I think it's _ans.<</say>><br>
<<crazyman>>LIAR! YOU'RE TRYING TO TRICK ME! NO ONE TRICKS ME!<</crazyman>><br>
[img['pizzamedia/images/enemies/crazyman/angry.jpg']]
<p class="reflection">The mad man gets angry, pulls out an electric dagger, and lunges at you to attack.</p>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">>
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<</replace>>
<</if>>
<<replace "#talkChoices">><</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Tell him you don't know (+1❄️)">>
<<include "CoolingPizza">>
<<append "#talkLog">>
<<say "You" $player.img>>Hey, I don’t know, leave me alone.<</say>><br>
<<crazyman>>YOU DON’T KNOW?! THEN WE’RE DOOMED! I’LL TAKE YOU WITH ME!<</crazyman>><br>
[img['pizzamedia/images/enemies/crazyman/angry.jpg']]
<p class="reflection">The mad man gets angry, pulls out an electric dagger, and lunges at you to attack.</p>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">>
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<</replace>>
<<replace "#talkChoices">><</replace>>
<</link>>
</span>
</div>
<</switch>>
<</if>>
</div>
<div id="talkActions">
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
</div>
</div>
</div>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev9Abackground">>
<<set $combatEngine.enemyId = "mathtron">>
<<mathTron>>Hey, human! Have you seen a bald man running around?<</mathTron>><br>
[img['pizzamedia/images/enemies/mathtron/pose1.jpg']]
<p class="reflection">A robot appears in front of you, and you notice that it has a human brain on its head.</p>
<<say "You" $player.img>>Hmm... I don't think I've seen anyone like that. I'm just passing through.<</say>><br>
<<mathTron>>So you're a traveler... maybe you could be useful to me.<br>What's 6 times 5?<</mathTron>><br>
<div id="choice">
<div class="actionRow">
<span class="btnChoice">
<<link "Tell it it's 30 (+1❄️)">>
<<replace "#choice">>
<<include "CoolingPizza">>
<<say "You" $player.img>>It’s 30. It’s very easy.<</say>><br>
<<mathTron>>Excellent calculation! You’re very smart... Your brain will be a perfect processor for me!<</mathTron>><br>
[img['pizzamedia/images/enemies/mathtron/pose2.jpg']]
<p class="reflection">The robot raises its mechanical arms and prepares to remove your brain.</p>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<link "Defend yourself">>
<<goto "StartCombat">>
<</link>>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Teel it it's 11 (+1❄️)">>
<<replace "#choice">>
<<include "CoolingPizza">>
<<say "You" $player.img>>I think it's 11.<</say>><br>
<<mathTron>>Wrong answer. It's not much, but maybe your brain will be useful to me anyway.<</mathTron>><br>
[img['pizzamedia/images/enemies/mathtron/pose2.jpg']]
<p class="reflection">The robot raises its mechanical arms and advances toward you menacingly.</p>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<link "Defend yourself">>
<<goto "StartCombat">>
<</link>>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Tell it it's 35 (+1❄️)">>
<<replace "#choice">>
<<include "CoolingPizza">>
<<say "You" $player.img>>It's 35, almost for sure.<</say>><br>
<<mathTron>>Miscalculation. It's not much, but maybe your brain will be useful to me anyway.<</mathTron>><br>
[img['pizzamedia/images/enemies/mathtron/pose2.jpg']]
<p class="reflection">The robot raises its mechanical arms and advances toward you menacingly.</p>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<link "Defend yourself">>
<<goto "StartCombat">>
<</link>>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Tell it you don't know (+1❄️)">>
<<replace "#choice">>
<<include "CoolingPizza">>
<<say "You" $player.img>>Um... to be honest, math isn't my strong suit, so I don't know.<</say>><br>
<<mathTron>>You don't know? I can't believe a human could be so stupid as to not know that simple operation. Your brain is completely useless to me. Get out of my sight!<</mathTron>><br>
[img['pizzamedia/images/enemies/mathtron/leaving.jpg']]
<p class="reflection">The robot turns its back on you in disappointment and ignores you completely.</p>
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
<</replace>>
<</link>>
</span>
</div>
<div id="talkActions">
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
</div>
</div>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev9Abackground">>
<<set $combatEngine.enemyId = "mecha">>
<<mecha>>The security perimeter of the neural processing center has been breached. Destroying threat.<</mecha>><br>
<<say "You" $player.img>>Hey, wait, I didn't know this area was protected. I'm leaving now.<</say>><br>
[img['pizzamedia/images/enemies/mecha/pose.jpg']]
<p class="reflection">The robot doesn't seem to care about what you're saying.</p>
<div id="choice">
<div id="talkActions">
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
</div>
</div>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "shop2backgroundA">>
[img['pizzamedia/images/boys/vortex/pose0.jpg']]<br><br>
<p class="reflection">You step through the portal and find yourself in what looks like the Wild West. A large crowd has gathered around what appears to be a street vendor.</p>
<!-- PANEL DINÁMICO -->
<div id="shopPanel"></div>
<!-- BOTONES INICIALES -->
<div id="mainButtons">
<div class="actionRow">
<span class="btnChoice">
<<link "Approach the street vendor(+2❄️)">>
<<set $delivery.pizzaHeat -= 2>>
<<goto "Shop2B">>
<</link>>
</span>
<span class="btnChoice">
<<link "Wait until another portal opens(+1❄️)">>
<<include "CoolingPizza">>
<<goto "NewPortal">>
<</link>>
</span>
</div>
</div>
<!-- aquí aparecerá el ÚNICO botón tras acercarte -->
<div id="portalButton"></div>
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "shop2backgroundB">>
<<if $boys.vortex.presentation === false>>
<<vortex>>Heyyyy, they call me Vortex. Wow, is that a portal gun?<</vortex>><br>
<<say "You" $player.img>>Yeah, well. It’s broken, but it works.<</say>><br>
<<vortex>>Oh, really? I’ve got just what a traveler like you needs. Tonics, all kinds, for whatever you need.<</vortex>><br>
[img['pizzamedia/images/boys/vortex/pose1.jpg']]<br><br>
<p class="reflection">He shows you various tonics.</p>
<<else>>
<<vortex>>Hey, a familiar face. Did you come for one of my tonics?<</vortex>><br>
[img['pizzamedia/images/boys/vortex/pose1.jpg']]<br><br>
<p class="reflection">Vortex serves you.</p>
<</if>>
<div class="shop-container">
<hr>
<<BuyConsumableWidget $player.consumables.golemTonic>>
<<BuyConsumableWidget $player.consumables.phoenixTonic>>
<<BuyConsumableWidget $player.consumables.zeusTonic>>
<<BuyConsumableWidget $player.consumables.wyrmTonic>>
<<BuyConsumableWidget $player.consumables.krakenTonic>>
<<BuyConsumableWidget $player.consumables.unicornBloodTonic>>
<hr>
<<BuyConsumableWidget $player.consumables.dragonBloodVial>>
<<BuyConsumableWidget $player.consumables.yetiBreathVial>>
<<BuyConsumableWidget $player.consumables.basiliskVenomVial>>
<<BuyConsumableWidget $player.consumables.bottledLightning>>
<br>
</div>
<span class="btnChoice">
<<link "Wait until another portal opens(+1❄️)">>
<<include "CoolingPizza">>
<<goto "NewPortal">>
<</link>>
</span>
<div id="portalButton"></div>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "phalluspresentation">>
<<phallus>>Hello, I'm looking for the owner of this place, and I've been told that's you.<</phallus>><br>
<<say "You" $player.img>>Yes, I'm the owner. My uncle Steven used to run it, but now I'm the one managing it.<</say>><br>
<<phallus>>Let me introduce myself. My name is Mr. Phallus. I’m the famous owner of the most important hamburger chain in the universe.<</phallus>><br>
[img['pizzamedia/images/boys/phallus/pose0.jpg']]
<p class="reflection">He looks like a crab and gives off the typical smell of seafood.</p>
<<phallus>>I'll get straight to the point, $player.name. I want you to sell me this place. You know... the secret ingredient.<br>I’ll give you more money than you can imagine.<</phallus>><br>
[img['pizzamedia/images/boys/phallus/pose1.jpg']]
<p class="reflection">He pulls out a wad of cash.</p>
<<say "You" $player.img>>Sorry, man, this business has been in my family for a long time, and I’m just now getting the hang of it. I’m not interested.<</say>><br>
<<phallus>>If you don't take the money, you'll have to face the consequences, and believe me, you don't want that.<br>I have contacts you don't want to meet, so you'd better give me the secret ingredient.<</phallus>><br>
[img['pizzamedia/images/boys/phallus/pose2.jpg']]
<p class="reflection">He starts to get aggressive.</p>
<<say "You" $player.img>>Hey, man, listen. Why don't you just get lost? I don't like the tone you're using.<</say>><br>
<<phallus>>I won't push it any further. I'm really busy, but you'll have to make your own choice, and believe me, it's not going to be easy.<</phallus>><br>
[img['pizzamedia/images/boys/phallus/pose0.jpg']]
<p class="reflection">He speaks more calmly.</p>
<<say "You" $player.img>>Oh, really? And what do you think I’m going to have to choose?<</say>><br>
<<phallus>>You’ll see.<</phallus>><br>
<p class="reflection">Mr. Phallus leaves.</p>
<<set $boys.phallus.presentation = true>>
[[Go back|PhallusPresentationC]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "pizzeriacustomer" + random(0, 6)>>
<<melissa>>$player.name! A very important man has arrived. He owns the largest hamburger franchise in the entire universe and wants to talk to you about business.<</melissa>><br>
[img['pizzamedia/images/girls/melissa/pose5.jpg']]
<<say "You" $player.img>>That sounds like a great opportunity. Where is he?<</say>><br>
<<melissa>>He's waiting for you outside at one of the tables.<</melissa>><br>
<<say "You" $player.img>>Okay, I'll go see what he wants.<</say>><br>
[[Go outside|PhallusPresentationB]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "pizzeriacustomer" + random(0, 6)>>
<<melissa>>How did it go? Did you reach some kind of agreement?<</melissa>><br>
<<say "You" $player.img>>No way, that guy's crazy. He wants to buy the pizzeria just to get his hands on the secret ingredient.<</say>><br>
<<melissa>>So what did you tell him?<</melissa>><br>
<<say "You" $player.img>>No way, obviously. Does he really think he can buy everything with money?<</say>><br>
<<melissa>>Wow, I thought it would have gone better.<</melissa>><br>
<<say "You" $player.img>>Don’t worry, we don’t need anyone else to make the pizzeria even more successful.<</say>><br>
<<set $boys.phallus.presentation = true>>
[[Pizzeria]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "pizzeriacustomer" + random(0, 6)>>
<<melissa>>$player.name! That guy is back. The one from the burger joint the other day.<</melissa>><br>
[img['pizzamedia/images/girls/melissa/pose6.jpg']]
<<say "You" $player.img>>$player.name! That guy is back. The one from the hamburger chain the other day.<</say>><br>
[[Go outside|PhallusScene1B]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "phalluspresentation">>
<<phallus>>$player.name, $player.name, $player.name... This time, I'm going to make you an offer you can't refuse.<</phallus>><br>
<<say "You" $player.img>>I already told you I'm not going to take your money.<</say>><br>
<<phallus>>Money, money... who said anything about money?<br>But first, I brought you this. It's a... token of appreciation for your time.<</phallus>><br>
[img['pizzamedia/images/boys/phallus/phallusscene1/pose1.jpg']]
<p class="reflection">He puts one of his hamburgers on the table.</p>
<<phallus>>Come on, try it and tell me how it tastes.<</phallus>><br>
[img['pizzamedia/images/boys/phallus/phallusscene1/pose2.jpg']]
<p class="reflection">You grab the burger and take a bite. The burger is really juicy.</p>
<<say "You" $player.img>>Wow, these aren’t bad at all.<</say>><br>
<<phallus>>Right? Now I want you to look at this photo.<</phallus>><br>
[img['pizzamedia/images/boys/phallus/phallusscene1/pose3.jpg']]
<p class="reflection">He shows you a photo of your home planet, Andromeda 69.</p>
<<say "You" $player.img>>It’s a photo of my planet, where I lived before coming here.<</say>><br>
<<phallus>>Exactly, $player.name. And do you know who the new owner of Andromeda 69 is? As you might imagine, it’s me, and that burger you’re eating is made with my new livestock.<</phallus>><br>
[img['pizzamedia/images/boys/phallus/phallusscene1/pose4.jpg']]
<p class="reflection">You find a human finger in the burger.</p>
<<say "You" $player.img>>But you’re a fucking degenerate cannibal!! You’re crazy!!<</say>><br>
<<phallus>>For my species, as well as many others, eating humans isn’t considered cannibalism.<br>My new deal is the pizzeria in exchange for the liberation of your home planet.<</phallus>><br>
<<say "You" $player.img>>I’m not making any deal with you. You’re sick.<</say>><br>
[img['pizzamedia/images/boys/phallus/phallusscene1/angry.jpg']]
<p class="reflection">He’s really angry.</p>
<<phallus>>Every second you don’t accept the deal, your people will be slaughtered to feed others. You’ll regret it!!<</phallus>><br>
<<say "You" $player.img>>Not if I can stop you first.<</say>><br>
<<set $combatEngine.enemyId = "phallus">>
<<set $combatEngine.onWin = "PhallusScene1C">>
<<set $combatEngine.onLose = "PhallusScene1C">>
[[Fight him|StartCombat]]
<!--
[[PhallusScene1C]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "phalluspresentation">>
<<phallus>>Now die!!<</phallus>><br>
[img['pizzamedia/images/boys/phallus/phallusscene1/pose5.jpg']]
<p class="reflection">Defeated, he launches a deadly attack on your heart.</p>
<<linkreplace "You're dead">>
<<minerbotwarmode>>You fucking piece of shit crab, we already told you we didn't want to see you around here anymore.<</minerbotwarmode>><br>
[img['pizzamedia/images/boys/phallus/phallusscene1/pose6.jpg']]
<p class="reflection">$boys.minerbot.displayName arrives and pushes Mr. Phallus out of the way, saving you from a fatal blow.</p>
<<phallus>>Shit, what are you doing here?<br>That's the forbidden weapon!!<</phallus>><br>
<<minerbotwarmode>>I'm going to rip off the two dicks you have for face. Get out of my sight!!<</minerbotwarmode>><br>
[img['pizzamedia/images/boys/phallus/phallusscene1/pose7.jpg']]
<p class="reflection">$boys.minerbot.displayName pulls out what look like a pair of shellfish tongs.$boys.minerbot.displayName pulls out what look like crab crackers.</p>
<<phallus>>This won’t end like this. You’ll know the wrath of Mr. Phallus.<</phallus>><br>
[img['pizzamedia/images/boys/phallus/phallusscene1/pose8.jpg']]
<p class="reflection">He leaves in a spaceship.</p>
<<minerbot>>Damn, $player.name, are you okay?<</minerbot>><br>
<<say "You" $player.img>>I've been better.<</say>><br>
<<minerbot>>How could you let some little shit like that beat you up?<br>Let's go inside so $girls.melissa.displayName can heal you.<</minerbot>><br>
[[Go inside|PhallusScene1D]]
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "personalarea">>
<<melissa>>$player.name! You're hurt! Let me heal you.<</melissa>><br>
<<say "You" $player.img>>Damn, that hurts like hell.<</say>><br>
<<melissa>>Now get some rest.<</melissa>><br>
<<if $boys.phallus.progress <= 0>>
<<set $boys.phallus.progress = 1>>
<</if>>
<<linkreplace "Rest">>
<<run $("#passages").append('<div id="blackout"></div>')>>
<<timed 4s>>
<<goto "PersonalArea">>
<</timed>>
<</linkreplace>>
<!--
[[PersonalArea]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "allisonscene1b">>
<<allison>>Oops! I don't have any spare change to give you, but maybe you'd be interested in a different kind of tip.<</allison>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene1/intro0.mp4" >>
<p class="reflection">She lies back on the sofa provocatively, inviting you to caress her.</p>
[[Accept a different kind of tip|AllisonScene1C][$cumProgress = 0]]<br><br>
<<if $gameEngine.onRepetition === false>>
<<linkreplace "Decline the tip and go back to the pizzeria">>
<<say "You" $player.img>>Oh, don't worry, you don't have to tip me.<</say>><br>
<<allison>>Are you sure?<</allison>><br>
<<say "You" $player.img>>Yes. I'm sorry, but I have a lot of pending orders.<</say>><br>
<p class="reflection">You say goodbye to her and leave the apartment.</p>
[[Return to the pizzeria|SuccessfulDelivery]]<br><br>
<</linkreplace>>
<</if>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "allisonscene2b">>
<<allison>>You're the guy from the other day, right?<</allison>><br>
<<say "You" $player.img>>Yeah, well, I'm actually the one who delivers all the pizzas.<</say>><br>
<<allison>>That sounds like a tiring job...<br>Oh no! I forgot to have some tip money ready again.<</allison>><br>
<<say "You" $player.img>>Oh, well. Don't worry, it's okay. You don't have to tip me.<</say>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene2/intro0.mp4" >>
<p class="reflection">She stands up and starts pulling her dress down in front of you.</p>
<<allison>>Of course I have to give you a tip. Last time I forgot to have some ready, too.<</allison>><br>
[[She has a different kind of tip in mind|AllisonScene2C][$cumProgress = 0]]<br><br>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "allisonscene3b">>
<<say "You" $player.img>>You look a little different. Did you dye your hair?<</say>><br>
<<allison2>>I was getting bored with my usual brown hair. You're so thoughtful... I wish my boyfriend were as thoughtful as you.<</allison2>><br>
<<say "You" $player.img>>Wait, do you have a boyfriend?<</say>><br>
<<allison2>>Yes, but I don't think that's why you came in. Come here, I want you.<</allison2>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene3/intro0.mp4" >>
<p class="reflection">She strips naked in front of you. She kneels down and takes your dick in her mouth over your boxers.</p>
<<linkreplace "Satisfy her hunger">>
<<allison2>>But wait!<</allison2>><br>
<<say "You" $player.img>>What’s going on?<</say>><br>
<<allison2>>Take this.<</allison2>><br>
[img['pizzamedia/images/girls/allison/allisonscene3/bluepill.jpg']]
<p class="reflection">She hands you a pill.</p>
<<say "You" $player.img>>What is it?<</say>><br>
<<allison2>>It’s just a little aphrodisiac.<</allison2>><br>
<<linkreplace "Take the pill">>
<p class="reflection">You take the pill and swallow it.</p>
<<allison2>>Did you take it?<</allison2>><br>
<<say "You" $player.img>>Yes.<</say>><br>
<<allison2>>Good, now you’re ready.<</allison2>><br>
[[She grabs your penis|AllisonScene3C][$cumProgress = 0]]<br><br>
<</linkreplace>>
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "jessicascene1b">>
<<jessica>>I can't believe you're late. I'm in a real hurry, you know?<</jessica>><br>
<<say "You" $player.img>>Oh, I'm sorry for being a couple of minutes late. I ran into some trouble on the way.<</say>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene1/intro0.mp4" >>
<<jessica>>A couple of minutes? It says here you're three minutes late.<</jessica>><br>
<<say "You" $player.img>>Well, I already told you I'm sorry. It's just a minute.<</say>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene1/intro1.mp4" >>
<p class="reflection">She checks her phone to see the exact delivery time.</p>
<<jessica>>I’m a very busy woman. I can’t waste my time waiting for you.<br>I want compensation for being late.<</jessica>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene1/intro2.mp4" >>
<<say "You" $player.img>>Compensation? Look, if you want, you can keep the pizza for free, but I don’t feel like having this argument.<</say>><br>
<<jessica>>But do you even know who you’re talking to? I’ve got plenty of money.<</jessica>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene1/intro3.mp4" >>
<<say "You" $player.img>>I don’t get it. What do you want?<</say>><br>
<<jessica>>I want you to give me back the time you made me waste waiting for you.<</jessica>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene1/intro4.mp4" >>
<p class="reflection">She slowly approaches you. You feel her predatory gaze fixed on you.</p>
[[You are trapped|JessicaScene1C][$cumProgress = 0]]<br><br>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "jessicascene2b">>
<<jessica>>Put the pizza wherever you want.<br>Come sit with me on this sofa.<</jessica>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene2/intro0.mp4" >>
<p class="reflection">You put the pizza on the table.</p>
<<say "You" $player.img>>I recommend you don't let it get cold, or it'll go bad.<</say>><br>
<<jessica>>I don't care.<br>This time I ordered it just to see you, $player.name. I had such a great time with you last time, and I really miss you.<</jessica>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene2/intro1.mp4" >>
<p class="reflection">She's getting closer and closer to you.</p>
[[She wants more from you|JessicaScene2C][$cumProgress = 0]]<br><br>
<<if $gameEngine.onRepetition === false>>
<<link "Tell her you’re in a hurry">>
<<say "You" $player.img>>I’m sorry, but I’m in a bit of a hurry.<</say>><br>
<<jessica>>Are you rejecting me? Do you dare to reject a goddess like me?<</jessica>><br>
<<say "You" $player.img>>It’s not that. I really have a lot of orders. Maybe another time.<</say>><br>
<<jessica>>All right, I’ll let you go. But know that you’ll be mine, $player.name.<</jessica>><br>
<<goto "SuccessfulDelivery">>
<</link>>
<</if>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "juliascene1b">>
<p class="reflection">She leads you to a bedroom.</p>
[img['pizzamedia/images/girls/julia/juliascene1/bedroom.jpg']]<br>
<<julia>>Wait for me here. I'll be right back.<</julia>><br>
<<say "You" $player.img>>Okay.<</say>><br>
<<linkreplace "Wait for her">>
<<julia>>I love your pizzas. Could you write down on this piece of paper what makes them so special?<</julia>><br>
<<video "pizzamedia/videos/girls/julia/juliascene1/intro0.mp4" >>
<p class="reflection">She returns wearing a purple lingerie set, approaches you, and tries to sweet-talk you into telling her the secret.</p>
<<say "You" $player.img>>I’m sorry, that’s a secret. No one can know.<</say>><br>
<<julia>>Come on, I won’t tell anyone. Does it have anything to do with what’s growing in there?<</julia>><br>
<<video "pizzamedia/videos/girls/julia/juliascene1/intro1.mp4" >>
<p class="reflection">She gets closer and closer to you, starts caressing you, and you end up getting an erection.</p>
[[You can’t resist the desire|JuliaScene1C][$cumProgress = 0]]<br><br>
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "juliascene2b">>
<<julia>>I was looking forward to seeing you again.<br>Come on, tell me what's the secret behind your pizzas.<</julia>><br>
<<say "You" $player.img>>Really, I can't tell you.<</say>><br>
<<julia>>I love how mysterious you are.<</julia>><br>
<<video "pizzamedia/videos/girls/julia/juliascene2/intro0.mp4" >>
<p class="reflection">She moves closer, flattering you to make you reveal the secret.</p>
<<julia>>I've been so eager to see you, $player.name.<</julia>>
<<video "pizzamedia/videos/girls/julia/juliascene2/intro1.mp4" >>
<p class="reflection">She bites your erect dick through your pants, then pulls it out and starts sucking it.</p>
<<julia>>I'm not letting you go without letting me taste that cum of yours that tastes so good.<</julia>><br>
[[She wants you|JuliaScene2C][$cumProgress = 0]]<br><br>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "lindseyscene2b">>
<p class="reflection">You walk into the house.</p>
[img['pizzamedia/images/girls/lindsey/lindseyscene2/background1.jpg']]<br>
<p class="reflection">You make your way to the living room. It looks like no one is home.</p>
<<say "You" $player.img>>Pizza delivery guy!! Is anyone home??<</say>><br>
<<unknowngirl>>This way!! Come on!<</unknowngirl>><br>
<p class="reflection">You hear a voice calling you from one of the rooms.</p>
[[Go toward the voice|LindseyScene2C]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "rebeccascene1b">>
<<rebecca>>I was looking forward to your arrival. I felt so lonely in this big house.<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene1/intro2.mp4">><br>
<<say "You" $player.img>>I'm sorry, but I can't stay. I have other deliveries to make.<</say>><br>
<<rebecca>>You're obviously a very busy guy. I like that.<</rebecca>><br>
<<say "You" $player.img>>Look, if you want, I can come back another time, but I'm really busy right now.<</say>><br>
<<rebecca>>Another time? I don't think so. You're not getting out of here today.<br>So, amm... Uhhh!<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene1/intro3.mp4">>
<p class="reflection">She kneels down and starts unbuttoning your pants.</p>
[[She wants to have a good time with you|RebeccaScene1C][$cumProgress = 0]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "lindseyscene2c">>
<<say "You" $player.img>>Delivery man.<</say>><br>
<<unknowngirl>>Come on in.<</unknowngirl>><br>
[img['pizzamedia/images/girls/lindsey/lindseyscene2/door.jpg']]<br>
<p class="reflection">A voice from the other side of the door invites you inside.</p>
<<linkreplace "Enter the room">>
<p class="reflection">You open the door and step into the bedroom.</p>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene2/intro0.mp4">>
<p class="reflection">$eventGirls.lindsey.displayName is lying on the bed wearing a provocative red dress. You can see part of her bra.</p>
<<lindsey>>What's up? Why didn't you come in sooner?<</lindsey>><br>
<<say "You" $player.img>>I didn’t want to enter someone’s house without permission.<</say>><br>
<<lindsey>>Really? For heaven’s sake, $player.name, you’re always welcome here.<</lindsey>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene2/intro1.mp4">><br>
<<lindsey>>Well, never mind. What did you bring me?<</lindsey>><br>
<<say "You" $player.img>>I have a $delivery.pizza.name pizza written down here.<</say>><br>
<<lindsey>>$player.name, you know I don’t mean the pizza. I’m dying to try that big salami of yours again.<</lindsey>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene2/intro2.mp4">>
<p class="reflection">She comes closer and grabs your penis.</p>
<<say "You" $player.img>>Oh, shit.<</say>><br>
[[She wants more extra salami|LindseyScene2D][$cumProgress = 0]]
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "rebeccascene1b">>
<p class="reflection">You walk into the house. You're in the living room.</p>
[img['pizzamedia/images/girls/rebecca/rebeccascene1/livingroom.jpg']]<br>
<p class="reflection">There's no one in the living room.</p>
<<set $upper = $eventGirls.rebecca.displayName + " calls out to you">>
<<linkreplace $upper>>
<<rebecca>>Hey honey, can you come in here for a sec? I need help.<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene2/intro0.mp4">>
<p class="reflection">You hear $eventGirls.rebecca.displayName calling you from a room.</p>
<<say "You" $player.img>>Okay, I'm coming.<</say>><br>
[[Go to where she is|RebeccaScene2C]]
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "melissascene1a">>
<<audio "bgm_chill" pause>>
<<say "You" $player.img>>What do you think of this place? When I was little, I used to come here to play. It hasn't changed much since then.<</say>><br>
<<melissa>>It's a nice place. Is this where you were born?<</melissa>><br>
<<say "You" $player.img>>Although it looks very similar, this is a neighboring planet.<</say>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene1/0.mp4" >><br>
<<say "You" $player.img>>Shall we take a walk?<</say>><br>
<<melissa>>Well, lest's go.<</melissa>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene1/1.mp4" >><br>
<p class="reflection">You walk around the park for a while.</p>
<<linkreplace "Show her the pond">>
<<melissa>>Look!! There are ducklings!!<</melissa>><br>
<<say "You" $player.img>>Yeah, and they look really hungry.<</say>><br>
[img['pizzamedia/images/girls/melissa/melissascene1/feedingducks.jpg']]<br><br>
<p class="reflection">You approach the pond with some breadcrumbs. The ducklings quickly come up to you, waiting for you to feed them.</p>
<<linkreplace "Go get some ice cream">>
<<say "You" $player.img>>Do you like it?<</say>><br>
<<melissa>>The chocolate one is delicious!!<</melissa>><br>
[img['pizzamedia/images/girls/melissa/melissascene1/icecream.jpg']]<br><br>
<p class="reflection">You buy a couple of ice creams, sit on a bench, and enjoy the peace and quiet of the park.</p>
<<linkreplace "It’s getting late">>
<<melissa>>It looks like it’s going to get dark soon. Why don’t we head back?<</melissa>><br>
<<say "You" $player.img>>Yeah, it’s getting a bit late.<</say>><br>
[img['pizzamedia/images/girls/melissa/melissascene1/evening.jpg']]<br><br>
<p class="reflection">You watch the beautiful sunset for a while until you finally call a taxi to go back to the pizzeria.</p>
<<linkreplace "Go back to the pizzeria">>
<<run $("#passages").append('<div id="blackout"></div>')>>
<<timed 4s>>
<<goto "MelissaScene1C">>
<</timed>>
<</linkreplace>>
<!--
[[MelissaScene1C]]
-->
<</linkreplace>>
<</linkreplace>>
<</linkreplace>>
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "melissascene2a">>
<<audio "bgm_chill" pause>>
<<say "You" $player.img>>Hi $girls.melissa.displayName, what are you doing?<</say>><br>
<<melissa>>Nothing, just having some tea.<</melissa>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene2/0.mp4" >><br>
<<say "You" $player.img>>Hey, what happened to my room?<</say>><br>
<<melissa>>on't you know? This is a fractal room.<</melissa>><br>
<<say "You" $player.img>>Hmm... I don't know what that means...<</say>><br>
<<melissa>>With my built-in chip, I can change the shape and furniture of the room however I want. When I leave the room, everything will go back to the way it was before.<</melissa>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene2/1.mp4" >><br>
<<say "You" $player.img>>Wow, I didn’t know something like that existed. Although it sounds interesting.<</say>><br>
<<melissa>>$player.name, your pants are super dirty!<</melissa>><br>
<<say "You" $player.img>>Yeah... I’ve made several deliveries while wearing them.<</say>><br>
<<melissa>>Give them to me, I’ll clean them for you.<</melissa>><br>
<<say "You" $player.img>>Wait, there's no nee...<</say>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene2/2.mp4" >><br>
<p class="reflection">She kneels in front of you and slides your pants down, pulling your boxers down with them.<br>Given the situation, you can’t help but get an erection.</p>
<<melissa>>$player.name!! <</melissa>><br>
<<say "You" $player.img>>Sorry, I couldn’t help it.<</say>><br>
<<melissa>>Well, let me take care of it.<</melissa>><br>
[[She relieves you|MelissaScene2B]]
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "melissascene1b">>
<p class="reflection">You go back to the pizzeria and go into your bedroom.</p>
<<melissa>>I had a great time, $player.name. We should do something like this again sometime.<</melissa>><br>
<<say "You" $player.img>>Yeah, I had a great time too.<</say>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene1/2.mp4" >><br>
<<say "You" $player.img>>Well...<</say>><br>
<<melissa>>What's up?<</melissa>><br>
<<say "You" $player.img>>I was thinking maybe we could...<</say>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene1/3.mp4" >><br>
<p class="reflection">Your eyes wander to her cleavage. You can't resist taking a quick peek. She notices.</p>
<<melissa>>Do you want to see my boobs?<</melissa>><br>
<<say "You" $player.img>>No, wait, not that…<</say>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene1/4.mp4" >><br>
<p class="reflection">You’re stunned by her perfect boobs. She really is so innocent.</p>
<<melissa>>Oops... sorry, I didn't know you didn't like them.<</melissa>><br>
<<say "You" $player.img>>Yeah, I like them, it's just that... it's something special that you shouldn't just show off like that. I don't know how to explain it...<</say>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene1/5.mp4" >><br>
<p class="reflection">She covers her boobs again.</p>
<<melissa>>I'm really sorry I couldn't make you happy. I thought that's what you wanted.<</melissa>><br>
<<say "You" $player.img>>$girls.melissa.displayName, you make me very happy.<</say>><br>
<<melissa>>The way you were looking at them, I thought you’d like to see them... ever since I had that strange chip implanted, I’ve felt something strange inside me.<br>Today, when I looked at you, I didn’t see you the way I usually do. I don’t know how to explain it, but it’s different from how it was before.<</melissa>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene1/6.mp4" >><br>
<p class="reflection">When you look into her eyes, you realize they've changed. Now they express feelings so real you couldn't tell them apart from those of a human being.</p>
<<melissa>>I don't know how to say it, but I feel the need for you to caress them. I want to feel your warmth close to me.<</melissa>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene1/7.mp4" >><br>
<p class="reflection">You unbutton her blouse and begin to caress her perfect boobs. You feel that they’re very smooth and soft.</p>
<<say "You" $player.img>>Is that how you like it?<</say>><br>
<<melissa>>Yes, although I don’t know why, but I want this...<</melissa>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene1/8.mp4" >><br>
<p class="reflection">She grabs your penis and starts caressing you over your pants.</p>
[[Continue|MelissaScene1D]]
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "melissascene2b">>
<p class="reflection">She grabs your dick and starts sucking it.</p>
<<video "pizzamedia/videos/girls/melissa/melissascene2/3.mp4" >><br>
<<melissa>>Do you like that?<</melissa>><br>
<<say "You" $player.img>>Yes, your mouth feels so good.<</say>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene2/4.mp4" >><br>
<<melissa>>Mmm... your dick tastes so good...<</melissa>><br>
<<say "You" $player.img>>Ohhhh... Ohhhh...<</say>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene2/5.mp4" >><br>
<p class="reflection">She tries to fit your whole dick in her mouth.</p>
<<linkreplace "Take her to bed">>
<p class="reflection">You stand up and tell her to lie down on the bed.</p>
<<video "pizzamedia/videos/girls/melissa/melissascene2/6.mp4" >><br>
<<melissa>>I can't wait to feel you inside me again.<</melissa>><br>
<<say "You" $player.img>>Ohhhh... shit... you're so wet...<</say>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene2/7.mp4" >><br>
<p class="reflection">Slowly, you slide your dick inside her pussy. You can feel how wet and open she is for you.</p>
[[Fuck her|MelissaScene2C]]
<</linkreplace>>
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "melissascene1b">>
<<melissa>>$player.name, I'm confused. There's no logic to what I think I need right now. I think I'm... I'm feeling something, $player.name.<</melissa>><br>
<<say "You" $player.img>>But $girls.melissa.displayName, you're a robot. That's impossible...<</say>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene1/9.mp4" >><br>
<p class="reflection">She starts sucking your penis. You feel immense pleasure from the softness of her lips around your penis.</p>
<<melissa>>Is that how you like it? Am I doing it right? <</melissa>><br>
<<say "You" $player.img>>You're doing great...<</say>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene1/10.mp4" >><br>
<p class="reflection">Gently, she continues to suck your dick.</p>
<<melissa>>I want you to touch me down there, $player.name. I need it.<</melissa>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene1/11.mp4" >><br>
<p class="reflection">She gets on all fours on the bed, and you grab her pants and pull them down.<br>You see her perfect butt and pussy.</p>
<<melissa>>Wait, $player.name, we can't. This is forbidden. No biological species is allowed to have sex with a robot.<</melissa>><br>
<<say "You" $player.img>>I don't care what happens. I want you to be mine today.<</say>><br>
<<linkreplace "Make love to her">>
<<say "You" $player.img>>Are you ready?<</say>><br>
<<melissa>>Yes, $player.name, please do it slowly.<</melissa>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene1/12.mp4" >><br>
<p class="reflection">You begin to penetrate her gently, while caressing her butt.</p>
<<say "You" $player.img>>Ohhhh... You’re so wet...<</say>><br>
<<melissa>>Ahhhhh... Now I understand why biological creatures like doing this so much... Ahhhhh...<</melissa>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene1/13.mp4" >><br>
<p class="reflection">Her vagina is completely soaked. You can hear the sound of your penis with her vaginal juices.</p>
<<melissa>>Ahhhh... yes... pick up the pace, $player.name...<</melissa>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene1/14.mp4" >><br>
<p class="reflection">You pick up the pace and start fucking her harder, stretching her tight pussy.</p>
[[She climbs on top of you|MelissaScene1E]]
<</linkreplace>>
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "melissascene1b">>
<p class="reflection">She turns around and starts riding your dick.</p>
<<video "pizzamedia/videos/girls/melissa/melissascene1/15.mp4" >><br>
<<melissa>>Mmmm... I like being in control of the pace.<</melissa>><br>
<<say "You" $player.img>>Your butt really turns me on, $girls.melissa.displayName.<</say>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene1/16.mp4" >><br>
<p class="reflection">In this position, you have a perfect view of her butt and pussy. You can see just how wet she is.</p>
<<melissa>>What I like best is when I push it all the way in.<br>Ahhhh... Ahhhhh... Ahhhh...<</melissa>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene1/17.mp4" >><br>
<<melissa>>That way it goes in even deeper... Ahhhh... Ohhhh...<</melissa>><br>
<<say "You" $player.img>>Fuck...<</say>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene1/18.mp4" >><br>
<p class="reflection">She leans back. In this position, your penis goes all the way inside her. You can feel how dilated her vagina is.</p>
<<say "You" $player.img>>$girls.melissa.displayName, I'm about to come.<</say>><br>
<<melissa>>Come in my mouth. I want you to do it there.<</melissa>><br>
[[Fill her mouth with your cum|MelissaScene1F]]
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "melissascene1b">>
<p class="reflection">She grabs your dick and balls and starts sucking it slowly. You feel like you won't be able to hold back much longer.</p>
<<video "pizzamedia/videos/girls/melissa/melissascene1/19.mp4" >><br>
<<say "You" $player.img>>Here it comes!!<</say>><br>
<<melissa>>Yes!! Show me how it comes out!!<</melissa>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene1/20.mp4" >><br>
<p class="reflection">You shoot your load all over her face. Some of the cum drips into her mouth, and she tries to catch it with her tongue.</p>
<<say "You" $player.img>>Ahhhhh...<</say>><br>
<<melissa>>I love feeling how hot it is..<</melissa>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene1/21.mp4" >><br>
<p class="reflection">She tries to suck up every last drop of cum that might be left.</p>
<<melissa>>Did you like it?<</melissa>><br>
<<say "You" $player.img>>It was amazing. I think I could say it was one of the best days of my life.<</say>><br>
<p class="reflection">You lie there together for a while, until she leaves to do her chores at the pizzeria.</p>
<<if $girls.melissa.progress <= 1>>
<<set $girls.melissa.progress = 2, $girls.melissa.cooldown = 2, $girls.melissa.scenes.scene1 = true>>
<</if>>
<<if $gameEngine.onRepetition === false>>
[[PersonalArea]]
<<else>>
<<link "End Replay">>
<<if $gameEngine.musicOn>>
<<audio "bgm_chill" play>>
<</if>>
<<goto $gameEngine.repetitionReturn>>
<</link>>
<</if>>
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "melissascene2c">>
<p class="reflection">She grabs her legs and spreads them for you, waiting for you to go deeper inside her.</p>
<<video "pizzamedia/videos/girls/melissa/melissascene2/8.mp4" >><br>
<<say "You" $player.img>>I love watching your boobs bounce.<</say>><br>
<<melissa>>Ahhhhhh... Ahhhhhhh...<</melissa>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene2/9.mp4" >><br>
<p class="reflection">Her boobs bounce with every thrust you give her. You can't take your eyes off them.</p>
<<melissa>>I really like it when you go so deep.<</melissa>><br>
<<say "You" $player.img>>I'm going to stick it all the way in.<</say>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene2/10.mp4" >><br>
<p class="reflection">She brings her thighs together and grabs them, adopting a new position where you can see your dick sliding inside her.</p>
<<melissa>>You have it so hard inside me...<</melissa>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene2/11.mp4" >><br>
<<melissa>>I want to get on top of you.<</melissa>><br>
[[She climbs on top of you|MelissaScene2D]]
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "melissascene2c">>
<<say "You" $player.img>>In this position, I won't be able to hold back for long.<</say>><br>
<<melissa>>That's exactly what I want.<</melissa>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene2/12.mp4" >><br>
<p class="reflection">She climbs on top of you, and you feel that you're getting very close.</p>
<<say "You" $player.img>>Shit, I can't hold back any longer!!<</say>><br>
<<melissa>>Fill me up!! Let me feel it coming inside me!!<</melissa>><br>
<<video "pizzamedia/videos/girls/melissa/melissascene2/13.mp4" >><br>
<p class="reflection">You can't hold back any longer, and you end up shooting your load inside her.<br>As you pull your dick out, cum drips all over her pussy.</p>
<<say "You" $player.img>>Ahhhhhh...<</say>><br>
<<melissa>>It feels so good...<</melissa>><br>
<<if $girls.melissa.progress <= 2>>
<<set $girls.melissa.progress = 3, $girls.melissa.cooldown = 2,$girls.melissa.scenes.scene2 = true>>
<</if>>
<<if $gameEngine.onRepetition === false>>
[[PersonalArea]]
<<else>>
<<link "End Replay">>
<<if $gameEngine.musicOn>>
<<audio "bgm_chill" play>>
<</if>>
<<goto $gameEngine.repetitionReturn>>
<</link>>
<</if>>
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "ev14Bbackground">>
<<succubus>>Don't resist, human. In the end, you all end up succumbing to desire.<</succubus>><br>
<<video "pizzamedia/videos/girls/succubus/succubusscene1/2.mp4" >><br>
<p class="reflection">You feel a little dizzy, but she keeps playing with your dick as if you were her plaything.</p>
<<succubus>>Mmm... I feel like I'm going to get a lot of essence out of you, and I love that.<</succubus>><br>
<<say "You" $player.img>>Ahhhh...<</say>><br>
<<video "pizzamedia/videos/girls/succubus/succubusscene1/3.mp4" >><br>
<p class="reflection">Her mouth feels so warm. Your dick is completely hard.</p>
<<linkreplace "Try to hold back">>
<<succubus>>For a human, you’re resisting pretty well. Come on... why don’t you just give me your essence already?<</succubus>><br>
<<say "You" $player.img>>Shit...<</say>><br>
<<video "pizzamedia/videos/girls/succubus/succubusscene1/4.mp4" >><br>
<p class="reflection">She starts to swallow your dick almost whole. You feel yourself getting soaked in her saliva.</p>
<<linkreplace "Try to hold back a little longer">>
<<succubus>>Don't resist. I promise I'll devour you quickly. You'll barely feel a thing.<</succubus>><br>
<<video "pizzamedia/videos/girls/succubus/succubusscene1/5.mp4" >><br>
<p class="reflection">You try to resist, but it's useless. You feel too much pleasure, and the precum starts to flow.</p>
<<succubus>>Mmm... so good! I'm already starting to feel it.<</succubus>><br>
[[One last effort|SuccubusScene1B]]
<</linkreplace>>
<</linkreplace>>
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "shizukascene1a">>
<<audio "bgm_chill" pause>>
<<shizuka>>Wow, your clothes are so dirty. I'd better wash them right away.<</shizuka>><br>
<<say "You" $player.img>>Wait!<</say>><br>
<<video "pizzamedia/videos/girls/shizuka/shizukascene1/0.mp4" >><br>
<p class="reflection">You arrive at a small house, and she leads you to a bedroom.</p>
<<shizuka>>Well, look at that! What a surprise.<</shizuka>><br>
<<video "pizzamedia/videos/girls/shizuka/shizukascene1/1.mp4" >><br>
<p class="reflection">She quickly starts sucking your dick and you feel like you can't stop her.</p>
<<say "You" $player.img>>But...<</say>><br>
<<shizuka>>You're so handsome. You seem different from the rest.<</shizuka>><br>
<<video "pizzamedia/videos/girls/shizuka/shizukascene1/2.mp4" >><br>
<p class="reflection">Your penis gets hard. She enjoys sucking it.</p>
<<shizuka>>I love how hard it's gotten.<</shizuka>><br>
<<say "You" $player.img>>Your mouth feels so good.<</say>><br>
<<video "pizzamedia/videos/girls/shizuka/shizukascene1/3.mp4" >><br>
<<shizuka>>I'm so horny. Don't you feel like taking this a little further?<</shizuka>><br>
[[She wants more|ShizukaScene1C]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev14Bbackground">>
<<set $combatEngine.enemyId = "succubus">>
<div id="mainScene">
<<say "You" $player.img>>Ahhhh... fuck!!<</say>><br>
<<succubus>>Yes!! Yes!! So good! It's delicious!<</succubus>><br>
<<video "pizzamedia/videos/girls/succubus/succubusscene1/6.mp4" >><br>
<p class="reflection">You can’t hold back any longer and end up shooting your cum all over her face. You try to pull your dick away, but you can barely move. She has total control over you.</p>
<<succubus>>I feel so full of energy right now. I really needed this...<br>Wait, I'm going to get my cutlery. Now comes the best part.<</succubus>><br>
[img['pizzamedia/images/girls/succubus/leaving.jpg']]
<p class="reflection">She leaves the room. This is your last chance to fight for your life.</p>
</div>
<<if $gameEngine.onRepetition === false>>
<div id="choice">
<div id="resultPanel"></div>
<div id="talkChoices">
<div class="actionRow">
<span class="btnChoice">
<<link "Accept your fate of being devoured (+1❄️)">>
<<include "CoolingPizza">>
<<run window.scrollTo(0, 0)>>
<<replace "#mainScene">>
<p class="reflection">You can't move. You try to buy some time to think of a plan, but it's pointless. She returns, ready to devour you...</p>
<<succubus>>You look so delicious!<</succubus>><br>
[img['pizzamedia/images/girls/succubus/devour.jpg']]
<p class="reflection">She ends up devouring your body.</p><br>
[[You have been devoured|Resurrect]]
<</replace>>
<<replace "#talkChoices">><</replace>>
<<replace "#resultPanel">><</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Buy some time and think of a plan (+1❄️)">>
<<include "CoolingPizza">>
<<run window.scrollTo(0, 0)>>
<<replace "#mainScene">>
<p class="reflection">You can’t move. You try to think of something, but fear paralyzes you. She returns with her cutlery...</p>
<<succubus>>You look so delicious!<</succubus>><br>
[img['pizzamedia/images/girls/succubus/devour.jpg']]
<p class="reflection">She ends up devouring your body.</p><br>
[[You have been devoured|Resurrect]]
<</replace>>
<<replace "#talkChoices">><</replace>>
<<replace "#resultPanel">><</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Gain mental strength (+1❄️)">>
<<include "CoolingPizza">>
<<run window.scrollTo(0, 0)>>
<<replace "#mainScene">>
<p class="reflection">You close your eyes and try to meditate, seeking to gain mental strength, but the spell is too strong.</p>
[img['pizzamedia/images/events/ev14/meditate.jpg']]
<</replace>>
<<replace "#talkChoices">>
<div class="actionRow">
<span class="btnChoice">
<<link "Give up">>
<<run window.scrollTo(0, 0)>>
<<replace "#mainScene">>
<p class="reflection">You can’t take it anymore. You give in to your fate as she returns to the room.</p>
<<succubus>>You look so delicious!<</succubus>><br>
[img['pizzamedia/images/girls/succubus/devour.jpg']]
<p class="reflection">She ends up devouring your body.</p><br>
[[You have been devoured|Resurrect]]
<</replace>>
<<replace "#talkChoices">><</replace>>
<<replace "#resultPanel">><</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Don’t give up">>
<<run window.scrollTo(0, 0)>>
<<replace "#mainScene">>
<p class="reflection">Suddenly, you remember an old video of an onion that never gave up in the face of adversity...</p>
<<video "pizzamedia/videos/girls/succubus/succubusscene1/onion.mp4" >>
<p class="reflection">You feel a presence giving you strength from a realm you can't quite grasp.</p>
<<sigma>>$player.name, I believe in you! You can do it!<</sigma>><br>
[img['pizzamedia/images/events/ev14/sigma.jpg']]
<p class="reflection">You find peace within yourself. You feel your strength returning, and the spell is broken.</p>
<<succubus>>WHAT!? IMPOSSIBLE! NO ONE ESCAPES MY SPELL!!<</succubus>><br>
[img['pizzamedia/images/girls/succubus/angry.jpg']]<br>
<<set $adventureGirls.succubus.scene1 = true>>
<<link "Defend yourself">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
<</replace>>
<<replace "#talkChoices">><</replace>>
<<replace "#resultPanel">><</replace>>
<</link>>
</span>
</div>
<</replace>>
<</link>>
</span>
</div>
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<replace "#resultPanel">>
<p class="reflection" style="color:var(--menuRed)">You are unable to move.</p>
<</replace>>
<</link>>
</span>
<span class="btnRun">
<<link "Run">>
<<replace "#resultPanel">>
<p class="reflection" style="color:var(--menuRed)">You still have nowhere to run.</p>
<</replace>>
<</link>>
</span>
</div>
</div>
</div>
<<else>>
<<link "End Scene">>
<<if $gameEngine.musicOn>>
<<audio "bgm_chill" play>>
<</if>>
<<goto $gameEngine.repetitionReturn>>
<</link>>
<</if>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "shizukascene1a">>
<<shizuka>>Everything feels so wet...<</shizuka>><br>
<<video "pizzamedia/videos/girls/shizuka/shizukascene1/4.mp4" >><br>
<p class="reflection">She lies down and spreads her legs for you.</p>
<<say "You" $player.img>>Ohhhh... fuck...<</say>><br>
<<shizuka>>Ahhh... I've been wanting this so badly...<</shizuka>><br>
<<video "pizzamedia/videos/girls/shizuka/shizukascene1/5.mp4" >><br>
<p class="reflection">You start to penetrate her gently. She savors every inch of your dick as it slides inside her.</p>
<<say "You" $player.img>>I love your boobs.<</say>><br>
<<shizuka>>No, please. Push it in, don't pull it out.<</shizuka>><br>
<<video "pizzamedia/videos/girls/shizuka/shizukascene1/6.mp4" >><br>
<p class="reflection">You grab her boobs, pull your dick out briefly, and she's desperate to have you inside her again.</p>
<<say "You" $player.img>>How about we change positions?<</say>><br>
<<shizuka>>What position do you want?<</shizuka>><br>
<<say "You" $player.img>>I’ll leave the decision up to you.<</say>><br>
<<linkreplace "She changes positions">>
<p class="reflection">She gets on all fours, showing you her big ass, and you start fucking her in this new position.</p>
<<video "pizzamedia/videos/girls/shizuka/shizukascene1/7.mp4" >><br>
<<say "You" $player.img>>Is that how you like it?<</say>><br>
<<shizuka>>Yes, I want you to fuck me like that.<</shizuka>><br>
<<video "pizzamedia/videos/girls/shizuka/shizukascene1/8.mp4" >><br>
<<shizuka>>Yes, yes, I like it when you go deep inside me.<</shizuka>><br>
[[Keep fucking her|ShizukaScene1D]]
<</linkreplace>>
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "shizukascene1a">>
<<shizuka>>Ohhhh... Ohhhh...<</shizuka>><br>
<<say "You" $player.img>>Oh baby your pussy is so tight.<</say>><br>
<<video "pizzamedia/videos/girls/shizuka/shizukascene1/9.mp4" >><br>
<p class="reflection">She gets on all fours on a kind of divan, and you keep thrusting into her.</p>
<<shizuka>>Ohhhh... Yeahhh...<</shizuka>><br>
<<say "You" $player.img>>Ahhhhh...<</say>><br>
<<video "pizzamedia/videos/girls/shizuka/shizukascene1/10.mp4" >><br>
<p class="reflection">You pick up the pace. Your penis is soaked in her vaginal juices.</p>
<<say "You" $player.img>>God, I'm about to cum!<</say>><br>
<<shizuka>>Keep going, don't stop, please!<</shizuka>><br>
<<video "pizzamedia/videos/girls/shizuka/shizukascene1/11.mp4" >><br>
<p class="reflection">You keep thrusting into her until you finally shoot your cum, filling her vagina completely.</p>
<<shizuka>>Mmmm... it feels so full and warm inside me.<</shizuka>><br>
<<say "You" $player.img>>Shit...<</say>><br>
<<video "pizzamedia/videos/girls/shizuka/shizukascene1/12.mp4" >><br>
<p class="reflection">Your cum is overflowing all over her pussy.</p>
<<shizuka>>I had a great time. Will you come visit me some other day?<</shizuka>><br>
<<say "You" $player.img>>Sure, count on it.<</say>><br>
<<set $adventureGirls.shizuka.scene1 = true>>
<<if $gameEngine.onRepetition === false>>
[[Continue|ColdPizza]]
<<else>>
<<link "End Replay">>
<<if $gameEngine.musicOn>>
<<audio "bgm_chill" play>>
<</if>>
<<goto $gameEngine.repetitionReturn>>
<</link>>
<</if>>
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "ev0Abackground">>
<<shizuka>>Oh my God, Noby. Gigante hit you again!!<</shizuka>><br>
[img['pizzamedia/images/girls/shizuka/pose2.jpg']]
<p class="reflection">A girl is running toward them.</p>
<<shizuka>>Thank goodness you were here to help them. What's your name?<</shizuka>><br>
<<say "You" $player.img>>Um... Yeah, my name is $player.name. I saw a guy run off when he saw me.<</say>><br>
<<shizuka>>Damn, you’re all dirty. Why don’t you come to my place and I’ll help you wash your clothes?<</shizuka>><br>
[img['pizzamedia/images/girls/shizuka/pose3.jpg']]
<<say "You" $player.img>>What about your friends?<</say>><br>
<<shizuka>>I'm sick of them always getting into trouble. They'll manage on their own.<</shizuka>><br>
[img['pizzamedia/images/enemies/drugaemon/defeat.jpg']]<br>
<span id="choice">
<<link "Go with her to her house">>
<<replace "#choice">>
<<goto "ShizukaScene1B">>
<</replace>>
<</link>>
<br><br>
<<link "Reject her">>
<<replace "#choice">>
<<say "You" $player.img>>Sorry, but I'm busy right now. I have a delivery to make.<</say>><br>
<<shizuka>>Oh, I didn't know that, sorry.<</shizuka>><br>
[[A new portal opens|NewPortal]]
<</replace>>
<</link>>
</span>
<!--
[[ShizukaScene1B]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev12Abackground">>
<<set $combatEngine.enemyId = "goose2">>
<<set $combatEngine.onWin = "EV12C">>
<<set $combatEngine.onLose = "Resurrect">>
[img['pizzamedia/images/enemies/goose/goose2.jpg']]
<p class="reflection">After defeating the goose, you realize that a second head has grown on it.</p>
<<link "Defend yourself">>
<<goto "StartCombat">>
<</link>>
<!--
[[EV12C]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev12Abackground">>
<<set $combatEngine.enemyId = "goose3">>
<<set $combatEngine.onWin = "EV12D">>
<<set $combatEngine.onLose = "Resurrect">>
[img['pizzamedia/images/enemies/goose/goose3.jpg']]
<p class="reflection">After defeating the goose, you realize that a third head has grown on it.</p>
<<link "Defend yourself">>
<<goto "StartCombat">>
<</link>>
<!--
[[EV12D]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev12Abackground">>
<<set $combatEngine.enemyId = "goose4">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
[img['pizzamedia/images/enemies/goose/goose4.jpg']]
<p class="reflection">After defeating the goose, you realize that a fourth head has grown on it.</p>
<<link "Defend yourself">>
<<goto "StartCombat">>
<</link>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev14Bbackground">>
<<set $combatEngine.enemyId = "succubus">>
<<audio "bgm_chill" pause>>
<div id="mainScene">
<<succubus>>Good morning, sleepyhead...<</succubus>><br>
<<video "pizzamedia/videos/girls/succubus/succubusscene1/0.mp4" >>
<p class="reflection">You wake up feeling a little disoriented. You're in a bedroom.</p>
<<say "You" $player.img>>Hey! What are you doing?!<</say>><br>
<<succubus>>Relax, I just need a little of your essence to regain my strength before I devour you.<</succubus>>
<p class="reflection">You try to push her away, but you can't move.</p>
<<say "You" $player.img>>What's going on??!!<</say>><br>
<<succubus>>Oh, darling, you’re under my spell. Don’t try to move. You’re destined to be used by me.<</succubus>><br>
<<video "pizzamedia/videos/girls/succubus/succubusscene1/1.mp4" >>
<p class="reflection">The pleasure you feel is indescribable. Your body begins to weaken.</p>
</div>
<div id="choice">
<div id="resultPanel" style="min-height: 25px; margin-bottom: 10px;"></div>
<div id="talkChoices">
<div class="actionRow">
<span class="btnChoice">
<<link "Try to distract yourself (+1❄️)">>
<<append "#mainScene">>
<p class="reflection">You try to think of cold things, but only sexy images come to mind.</p>
<<video "pizzamedia/videos/girls/succubus/succubusscene1/vid1.webm" >><br>
<<include "CoolingPizza">>
<</append>>
<<replace "#talkChoices">>
<div class="actionRow">
<span class="btnChoice">
<<link "Think about old ladies (+1❄️)">>
<<append "#mainScene">>
<p class="reflection">You try to distract yourself by thinking about older women.</p>
<<video "pizzamedia/videos/girls/succubus/succubusscene1/vid2.webm" >>
<p class="reflection">Things keep going even worse. Your mind fills with images of beautiful older women.</p>
<<video "pizzamedia/videos/girls/succubus/succubusscene1/2.mp4" >>
<p class="reflection">She keeps playing with your dick and you're getting more and more horny. You start to feel your strength slipping away.</p>
<</append>>
<<replace "#talkChoices">>
<div class="actionRow">
<span class="btnChoice">
<<link "Accept your fate">>
<<goto "SuccubusScene1A">>
<</link>>
</span>
</div>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Accept your fate of being milked">>
<<goto "SuccubusScene1A">>
<</link>>
</span>
</div>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Accept your fate">>
<<goto "SuccubusScene1A">>
<</link>>
</span>
</div>
</div>
<div class="actionRow" style="margin-top: 20px;">
<span class="btnFight">
<<link "Fight">>
<<replace "#resultPanel">>
<span style="color:red;">You’re unable to move</span>
<</replace>>
<</link>>
</span>
<span class="btnRun">
<<link "Run">>
<<replace "#resultPanel">>
<span style="color:red;">There’s nowhere to run.</span>
<</replace>>
<</link>>
</span>
</div>
</div>
<!--
[[SuccubusScene1A]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev7Abackground">>
<<set _chilis = random(2, 4)>>
<<set $player.consumables.frozenChilliPepper.qty += _chilis>>
[img['pizzamedia/images/events/ev7/fruit.jpg']]
<p class="reflection">You have obtained +_chilis Frozen Chili Peppers.</p>
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev5Ebackground">>
<p class="reflection">You walk down the hallways.</p>
[img['pizzamedia/images/events/ev5/backgrounde.jpg']]
<p class="reflection">This time you find three possible paths.</p>
<div id="choice">
<div class="actionRow">
<span class="btnChoice">
<<link "Go left">>
<<replace "#choice">>
<<goto "EV5G">>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Take the middle route">>
<<replace "#choice">>
<<goto "EV5C">>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Go right">>
<<replace "#choice">>
<<goto "EV5F">>
<</replace>>
<</link>>
</span>
</div>
</div>
<!--
[[EV5C]]
[[EV5F]]
[[EV5G]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev5Fbackground">>
<p class="reflection">You arrive at a strange room.</p>
[img['pizzamedia/images/events/ev5/holesroom.jpg']]
<p class="reflection">Inside there are five doors. You find it odd that they all have a hole at waist height.</p>
<div id="choice">
<div class="actionRow">
<span class="btnChoice">
<<link "Look through one of the holes">>
<<replace "#choice">>
<p class="reflection">You try to look through one of the holes, but it's completely dark inside.</p>
[img['pizzamedia/images/events/ev5/lookinghole.jpg']]
<p class="reflection">You can hear strange noises coming from the other side.<br>While you’re looking, you hear a new portal opening right next to you.</p>
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Insert your penis through one of the holes">>
<<replace "#choice">>
<<goto "GloryholeScene">>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Wait for a portal to open(+2❄️)">>
<<replace "#choice">>
<<set $delivery.pizzaHeat-->>
<<include "CoolingPizza">>
<p class="reflection">You decide to wait for a new portal to open, interacting with your surroundings as little as possible.
</p><br>
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
<</replace>>
<</link>>
</span>
</div>
</div>
<!--
[[GloryholeScene]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev5Gbackground">>
<p class="reflection">You arrive in a strange room.</p>
[img['pizzamedia/images/events/ev5/dragonrooma.jpg']]
<p class="reflection">You see a large door with what appear to be seven recesses. Perhaps something spherical could fit inside them.</p>
<div id="choice">
<<if $player.dragonBalls >= 7>>
<div class="actionRow">
<span class="btnChoice">
<<link "Place the spheres in the recesses">>
<<replace "#choice">>
<p class="reflection">You place the orange spheres in the recesses. They seem to fit perfectly.</p>
[img['pizzamedia/images/events/ev5/dragondooropena.jpg']]
<p class="reflection">The door shines and opens, revealing a staircase behind it.</p>
[img['pizzamedia/images/events/ev5/dragondooropenb.jpg']]
[[Go up the stairs|DragonRoom]]
<</replace>>
<</link>>
</span>
</div>
<<else>>
<</if>>
<div class="actionRow">
<span class="btnChoice">
<<link "A new portal opens">>
<<replace "#choice">>
<<goto "NewPortal">>
<</replace>>
<</link>>
</span>
</div>
</div>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev5Hbackground">>
<<set $combatEngine.enemyId = "wishDragon">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<p class="reflection">When you go up the stairs, you come to a large room.</p>
[img['pizzamedia/images/enemies/wishdragon/pose1.jpg']]
<p class="reflection">In front of you, a huge dragon is floating. It watches you, and you can see that its eyes glow a reddish hue. However, the creature doesn't seem hostile toward you.</p>
<<wishDragon>>Welcome, traveler. I see you have managed to gather the seven wish spheres.<</wishDragon>><br>
<<say "You" $player.img>>Who are you?<</say>><br>
<<wishDragon>>Some call me Shen, and because of your courage, I will grant you a wish.<</wishDragon>><br>
<<say "You" $player.img>>A wish? Anything I want?<</say>><br>
<div id="choice">
<div class="actionRow">
<<if $player.items.americanThong.obtained === false || $player.items.redScarf.obtained === false>>
<span class="btnChoice">
<<link "I want a legendary armor">>
<<replace "#choice">>
<<wishDragon>>As you wish. I shall grant you the most legendary armor that has ever existed and ever will. They say its owner was the greatest legend that ever lived.<</wishDragon>><br>
<<if $player.items.americanThong.obtained === false>>
[img['pizzamedia/images/items/americanthong.jpg']]
<<set $player.items.americanThong.obtained = true>>
<<else>>
[img['pizzamedia/images/items/redscard.jpg']]
<<set $player.items.redScard.obtained = true>>
<</if>>
<<say "You" $player.img>>But, what the hell is this? This isn’t armor.<</say>><br>
<<wishDragon>>Believe me, its power is unique. Use it responsibly.<</wishDragon>><br>
[[A new portal opens|NewPortal][$player.dragonBalls = 0]]
<</replace>>
<</link>>
</span>
<</if>>
<<if $player.items.toothpick.obtained === false>>
<span class="btnChoice">
<<link "I want an all-powerful weapon">>
<<replace "#choice">>
<<wishDragon>>As you wish. I will grant you the most powerful weapon that has ever existed, capable of inflicting the greatest pain on your enemies.<</wishDragon>><br>
[img['pizzamedia/images/items/toothpick.jpg']]
<<say "You" $player.img>>But what the hell is this? This isn't a legendary weapon. It's just a fucking toothpick!<</say>><br>
<<wishDragon>>Don’t underestimate it. This belonged to the most sadistic warrior in history!!<</wishDragon>><br>
<<set $player.items.toothpick.obtained = true>>
[[A new portal opens|NewPortal][$player.dragonBalls = 0]]
<</replace>>
<</link>>
</span>
<</if>>
<span class="btnChoice">
<<link "I want megaBits(+8000)">>
<<replace "#choice">>
<<wishDragon>>Your wishes are my commands.<</wishDragon>><br>
[img['pizzamedia/images/enemies/wishdragon/pose1.jpg']]
<p class="reflection">You get 8000 megaBits.</p>
[[A new portal opens|NewPortal][$player.dragonBalls = 0]]
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "I want RegenCoins(+15)">>
<<replace "#choice">>
<<wishDragon>>Your wishes are my commands.<</wishDragon>><br>
[img['pizzamedia/images/enemies/wishdragon/pose1.jpg']]
<p class="reflection">You get 15 RegenCoins.</p>
[[A new portal opens|NewPortal][$player.dragonBalls = 0]]
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "I don’t want anything">>
<<replace "#choice">>
<<say "You" $player.img>>Look, I really don’t want anything.<</say>><br>
<<wishDragon>>What do you mean you don’t want anything?<</wishDragon>><br>
<<say "You" $player.img>>Well, that’s it… I don’t know… I don’t want anything.<</say>><br>
<<wishDragon>>But you can’t leave without making a wish. I won’t rest until I grant your wish.<</wishDragon>><br>
<<say "You" $player.img>>Well, duplicate it and give it to the next person, or keep it for yourself. I really don’t care about the wish.<</say>><br>
<<wishDragon>>In that case, I have no choice but to eliminate you.<</wishDragon>><br>
[img['pizzamedia/images/enemies/wishdragon/angry.jpg']]
<p class="reflection">The dragon turns hostile.</p>
[[Defend yourself|StartCombat]]
<</replace>>
<</link>>
</span>
</div>
</div>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev5Fbackground">>
<<set $gloryholeVideos = []>>
<<for $i = 0; $i < 11; $i++>>
<<set $gloryholeVideos[$i] = "girls/gloryhole/"+$i+".mp4">>
<</for>>
<<set $randomVideo = "pizzamedia/videos/" + $gloryholeVideos.random()>>
<p class="reflection">You insert your penis into one of the holes and feel as if your penis is passing through a powerful electric field.</p>
<<video $randomVideo>>
<p class="reflection">After a few seconds, you feel someone on the other side grab your penis, and you begin to feel immense pleasure.</p>
<<link "Insert your penis into another hole(+1❄️)">>
<<goto "GloryholeScene">>
<</link>><br><br>
[[A new portal opens|NewPortal]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev8Abackground">>
<<set _pool = ["corrosiveToad", "corrosiveFly", "corrosiveMosquito", "corrosiveAnomaly"]>>
<<set $combatEngine.enemyId = _pool[ random(0, _pool.length - 1) ]>>
<div id="mainScene">
<p class="reflection">You walk for a few minutes across this corrosive planet.</p>
<<set _enemyImagePath = "pizzamedia/images/enemies/" + $combatEngine.enemyId.toLowerCase() + "/pose.jpg">>
[img[_enemyImagePath]]
<<set $upper = "An " + $enemies[$combatEngine.enemyId].name + " appears in front of you and doesn’t look friendly.">>
<p class="reflection">$upper</p>
</div>
<div id="choice">
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
</div>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev7Cbackground">>
<<set $combatEngine.enemyId = "morpheus">>
<div id="mainScene">
<<morpheus>>Welcome, $player.name. I've been waiting for you for a long time.<</morpheus>>
[img['pizzamedia/images/enemies/morpheus/pose2.jpg']]
<<say 'You' $player.img>>How do you know my name? Who are you?<</say>>
<<morpheus>>I know you have a lot of questions, but we don't have much time, so I'll get right to the point.<br>$player.name, none of this is real. You’re actually trapped inside a video game.<</morpheus>>
<<say 'You' $player.img>>What are you talking about? That doesn’t make any sense. I feel like everything around me is real.<</say>>
<<morpheus>>I know it’s hard to wrap your head around, but I’m here to help you, and in the end, you’ll have to make the decision that will shape the rest of your life.<</morpheus>>
<<say 'You' $player.img>>I don’t understand what you’re saying.<</say>>
<<morpheus>>Choose the blue pill and continue living in this made-up world, or choose the red pill and discover the truth. Discover the real world.<</morpheus>>
[img['pizzamedia/images/enemies/morpheus/pills.jpg']]
<p class="reflection">He places a blue pill in his left hand and a red pill in his right hand, and gives you the choice to take one of them.</p>
<<say 'You' $player.img>>But if there really is a world outside of this one, what is it like? Is it better?<</say>>
<<morpheus>>To ensure the decision is impartial, I can’t give you any details.<</morpheus>>
</div>
<div id="choice">
<div id="talkChoices">
<div class="actionRow">
<span class="btnChoice">
<<link "Take the blue pill">>
<<run window.scrollTo({top: 0, behavior: 'smooth'})>>
<<replace "#mainScene">>
[img['pizzamedia/images/enemies/morpheus/pills.jpg']]
<p class="reflection">You choose the blue pill, and Morpheus smiles at your decision.</p>
<<linkreplace "The pill takes effect">>
<<run $("#passages").append('<div id="blackout"></div>')>>
<<timed 4s>>
<<set $player.megaBits -= 50>>
<<goto "EV7C4">>
<</timed>>
<</linkreplace>>
<</replace>>
<<replace "#talkChoices">><</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Take the red pill">>
<<run window.scrollTo({top: 0, behavior: 'smooth'})>>
<<replace "#mainScene">>
[img['pizzamedia/images/enemies/morpheus/pills.jpg']]
<p class="reflection">You choose the red pill, and Morpheus smiles at your decision.</p>
<<linkreplace "The pill takes effect">>
<<run $("#passages").append('<div id="blackout"></div>')>>
<<timed 4s>>
<<set $player.megaBits -= 50>>
<<goto "EV7C4">>
<</timed>>
<</linkreplace>>
<</replace>>
<<replace "#talkChoices">><</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Take both pills">>
<<run window.scrollTo({top: 0, behavior: 'smooth'})>>
<<replace "#mainScene">>
[img['pizzamedia/images/enemies/morpheus/pills.jpg']]
<p class="reflection">You quickly grab both pills. Morpheus is surprised to see that you’ve taken both.</p>
<<linkreplace "The pills take effect">>
<<run $("#passages").append('<div id="blackout"></div>')>>
<<timed 4s>>
<<set $player.megaBits -= 50>>
<<goto "EV7C4">>
<</timed>>
<</linkreplace>>
<</replace>>
<<replace "#talkChoices">><</replace>>
<</link>>
</span>
</div>
</div>
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
</div>
<!--
[[EV7C4]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev7Cbackground">>
<p class="reflection">Everything had gone black. You regain consciousness and notice that Morpheus is no longer in the cave.</p>
[img['pizzamedia/images/enemies/morpheus/lostpizza.jpg']]
<p class="reflection">You realize the pizza is gone and you’re missing some Megabits. Plus, you feel a slight stinging sensation in your anus.</p>
[[Continue|LostPizza]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev7Abackground">>
<<set $combatEngine.enemyId = "olaf">>
<p class="reflection">You walk a few steps and see what looks like a snowman picking up some branches.</p>
[img['pizzamedia/images/enemies/olaf/pose1.jpg']]
<div id="choice">
<div class="actionRow">
<span class="btnChoice">
<<link "Approach the snowman(+1❄️)">>
<<replace "#choice">>
<<say "You" $player.img>>Hello.<</say>><br>
<<olaf>>Oh! Hello, traveler. My name is Olaf. Are you lost?<</olaf>><br>
[img['pizzamedia/images/enemies/olaf/pose2.jpg']]
<p class="reflection">The snowman can talk. You're surprised.</p>
<<say "You" $player.img>>Not exactly. I’m just passing through.<</say>><br>
<<olaf>>Traveling all over the universe must be amazing. I, however, have spent my whole life on this planet.<</olaf>><br>
<<say "You" $player.img>>It’s really easy to travel between planets. If you want, I can call you a taxi, and it’ll take you wherever you want.<</say>><br>
<<olaf>>I wish I could, but my mistress is seriously ill and I have to take care of her...<br>Although you could help me cure her illness.<</olaf>><br>
<<say "You" $player.img>>Me? I don’t understand. How could I help her?<</say>><br>
<<olaf>>A few days ago I found a magic flower that could cure her, but some bandits stole it from me and I haven’t been able to get it back... But you could help me. You seem very strong.<</olaf>><br>
<<include "CoolingPizza">>
<div id="talkActions">
<div class="actionRow">
<span class="btnChoice">
<<link "Help him(+1❄️)">>
<<replace "#talkActions">>
<<say "You" $player.img>>All right, I’ll help you get that flower back. Which way did they go?<</say>><br>
<<olaf>>Oh, thank you so much, traveler! They fled down that path. I’ll be eternally grateful to you!<</olaf>><br><br>
<<include "CoolingPizza">>
<<link "Go after the bandits">>
<<goto "EV7D2">>
<</link>>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Don't help him(+1❄️)">>
<<replace "#talkActions">>
<<say "You" $player.img>>Sorry, Olaf, but I'm working and I'm in a bit of a hurry. I can't stop right now.<</say>><br>
<<olaf>>Oh... I understand. I guess I'll have to find another way. Have a safe trip.<</olaf>><br><br>
<<include "CoolingPizza">>
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
<</replace>>
<</link>>
</span>
</div>
</div>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Don't approach him(+1❄️)">>
<<replace "#choice">>
<p class="reflection">You decide to wait for a new portal to open, interacting with your surroundings as little as possible.<br></p>
[img['pizzamedia/images/events/ev7/wait.jpg']]
<<include "CoolingPizza">>
<p class="reflection">A new portal opens.</p>
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
<</replace>>
<</link>>
</span>
</div>
<div id="talkActions">
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
</div>
</div>
<!--
[[EV7D2]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev7D1background">>
<<set $combatEngine.enemyId = "dwarf1">>
<<set $combatEngine.onWin = "EV7D3">>
<<set $combatEngine.onLose = "Resurrect">>
<p class="reflection">Olaf leads you to a new area, and you see seven small creatures gathered around what appears to be their home.</p>
[img['pizzamedia/images/enemies/dwarfs/pose1.jpg']]
<<olaf>>You scoundrels! I demand that you return the flower to me right now!!<</olaf>><br>
<<dwarf1>>You again? We already told you we're not giving you anything back.<</dwarf1>><br>
<<olaf>>If you don’t return it, you’re going to be in serious trouble!<</olaf>><br>
<<dwarf2>>You and how many others? Is that your girlfriend?... Look, guys, he brought his girlfriend along to back him up.<</dwarf2>><br>
<<olaf>>You’d better give it back, or else... or else...<</olaf>><br>
<<dwarf3>>Or else what? You little piece of shit, you better get lost around here if you don't want us to melt you.<</dwarf3>><br>
[img['pizzamedia/images/enemies/olaf/sad.jpg']]
<p class="reflection">You watch as Olaf gets really sad.</p>
<<dwarf4>>Look, guys, the little piece of shit is going to cry. Ja, ja, ja.<</dwarf4>><br>
<<linkreplace "Intervenir">>
<<say "You" $player.img>>Hey! You better give my friend what's his!<</say>><br>
<<dwarf1>>Or else what?<</dwarf1>><br>
<<say "You" $player.img>>You'll all regret this.<</say>><br>
<<dwarf1>>Ooh yeah, how scary!! Come on, hero, here we are, all seven of us!!<</dwarf1>><br>
[img['pizzamedia/images/enemies/dwarfs/angry.jpg']]
<p class="reflection">They arm themselves with knives, trying to intimidate you.</p>
[[Beat them up|StartCombat]]<br><br>
<<linkreplace "Marcharte">>
<</linkreplace>>
<</linkreplace>>
<!--
[[EV7D3]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev6Dbackground">>
<<set $combatEngine.enemyId = "cultistGroup">>
<<if ndef $talk or $talk.enemyId neq $combatEngine.enemyId>>
<<set $talk = { enemyId: $combatEngine.enemyId, step: 0, done: false }>>
<</if>>
<<cultist>>STOP!! YOU SHALL NOT PASS!!<</cultist>><br>
[img['pizzamedia/images/enemies/cultist/pose2.jpg']]
<p class="reflection">A group of cultists is confronting you.</p>
<div id="talkActions">
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "EV6B4">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
</div>
<!--
[[EV6B4]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev6Cbackground">>
<<set $combatEngine.enemyId = "fireGhost">>
<<if ndef $talk or $talk.enemyId neq $combatEngine.enemyId>>
<<set $talk = { enemyId: $combatEngine.enemyId, step: 0, done: false }>>
<</if>>
<<fireGhost>>Wow, you must be really tough to have defeated my subjects, but get ready because now you’re in serious trouble.<</fireGhost>><br>
[img['pizzamedia/images/enemies/fireghost/pose1.jpg']]
<p class="reflection">At the end of the temple, you find a fiery being sitting on a throne. Next to him, you see what looks like a motorcycle in flames.</p>
<div id="talkPanel">
<div id="talkLog"></div>
<div class="talkBox">
<div id="talkChoices">
<<if $talk.done>>
<p class="reflection">There is no more conversation.</p>
<<else>>
<<switch $talk.step>>
<<case 0>>
<div class="choiceRow">
<span class="btnChoice">
<<link "Tell him you don't want any trouble(+1❄️)">>
<<append "#talkLog">>
<<say "You" $player.img>>Look, I don't want any trouble. I just wanted to see the temple.<</say>><br>
<<fireGhost>>Well, if you didn't want any trouble, you've found it.<</fireGhost>><br>
[img['pizzamedia/images/enemies/fireghost/pose2.jpg']]
<p class="reflection">He rises from the throne and pulls out some flaming chains. He seems pretty hostile.</p>
<<include "CoolingPizza">>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">><</replace>>
<<replace "#talkChoices">>
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Who are you?(+1❄️)">>
<<append "#talkLog">>
<<say "You" $player.img>>Who are you?<</say>><br>
<<fireGhost>>I'm the King of Flames, though some call me the Fire Ghost or the Ghost Rider.<</fireGhost>><br>
<<say "You" $player.img>>Hey, what is this place?<</say>><br>
<<fireGhost>>You are standing before the majestic Temple of Fire, guarded by the Order of the Forgotten Tears.<</fireGhost>><br>
<<say "You" $player.img>>Wow, that sounds amazing.<</say>><br>
<<include "CoolingPizza">>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">><</replace>>
<<replace "#talkChoices">>
<<actionButtons "NewPortal" "Resurrect" "EV6B5" "Give Him The Pizza" "Defend yourself" "Run">>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Leave(+1❄️)">>
<<append "#talkLog">>
<<say "You" $player.img>>Look, I'm going to leave.<</say>><br>
<<fireGhost>>Don't even think about it. You're not leaving here.<</fireGhost>><br>
[img['pizzamedia/images/enemies/fireghost/pose2.jpg']]
<p class="reflection">He rises from the throne and pulls out some flaming chains. He seems pretty hostile.</p>
<<include "CoolingPizza">>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">><</replace>>
<<replace "#talkChoices">>
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
<</replace>>
<</link>>
</span>
</div>
<</switch>>
<</if>>
</div>
<div id="talkActions">
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
</div>
</div>
</div>
<!--
[[EV6B5]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev6Cbackground">>
<<set $combatEngine.enemyId = "cultist">>
<<if ndef $talk or $talk.enemyId neq $combatEngine.enemyId>>
<<set $talk = { enemyId: $combatEngine.enemyId, step: 0, done: false }>>
<</if>>
[img['pizzamedia/images/enemies/cultist/pose.jpg']]
<p class="reflection">You approach the entrance, and a figure dressed in a robe is standing guard at the temple.</p>
<div id="talkPanel">
<div id="talkLog"></div>
<div class="talkBox">
<div id="talkChoices">
<<if $talk.done>>
<p class="reflection">There is no more conversation.</p>
<<else>>
<<switch $talk.step>>
<<case 0>>
<div class="choiceRow">
<!-- ================= A ================= -->
<span class="btnChoice">
<<link "Can I come in?(+1❄️)">>
<<append "#talkLog">>
<<say "You" $player.img>>Hey, can I come in?<</say>><br>
<<cultist>>Get lost if you want to avoid trouble.<</cultist>><br>
<p class="reflection">He answers you in a rude tone.</p>
<<include "CoolingPizza">>
<</append>>
<<set $talk.step = 1>>
<<replace "#talkChoices">>
<div class="choiceRow">
<!-- ================= A1 ================= -->
<span class="btnChoice">
<<link "Try again(+1❄️)">>
<<append "#talkLog">>
<<say "You" $player.img>>Come on, man. Let me in. I just want to take a look. You know, this temple looks nice.<</say>><br>
<<cultist>>This is the last time I'm going to warn you. Get out of here.<</cultist>><br>
[img['pizzamedia/images/enemies/cultist/pose1.jpg']]
<p class="reflection">He pulls a flaming sword from under his robe and threatens you with it.</p>
<<include "CoolingPizza">>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">><</replace>>
<<replace "#talkChoices">>
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "EV6B3">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
<</replace>>
<</link>>
</span>
<!-- ================= A2 ================= -->
<span class="btnChoice">
<<link "Insult his temple(+1❄️)">>
<<append "#talkLog">>
<<say "You" $player.img>>You know what? Screw your temple, I’m going to build my own temple of fire, with a casino and hookers. Actually, screw fire temples.<</say>><br>
<<cultist>>How dare you insult our temple? Prepare to die.<</cultist>><br>
<p class="reflection">The cultist turns hostile and attacks you..</p>
<<include "CoolingPizza">>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">><</replace>>
<<replace "#talkChoices">>
<div class="actionRow">
<span class="btnFight">
<<link "Defend yourself">>
<<set $combatEngine.onWin = "EV6B3">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
<</replace>>
<</link>>
</span>
<!-- ================= A3 ================= -->
<span class="btnChoice">
<<link "Leave(+1❄️)">>
<<append "#talkLog">>
[img['pizzamedia/images/events/ev6/wait.jpg']]
<p class="reflection">You leave the Temple of Fire and wait until a new portal opens in front of you.</p>
<<include "CoolingPizza">>
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">><</replace>>
<<replace "#talkChoices">><</replace>>
<</link>>
</span>
</div>
<</replace>>
<</link>>
</span>
<!-- ================= B ================= -->
<span class="btnChoice">
<<link "What is this place?(+1❄️)">>
<<append "#talkLog">>
<<say "You" $player.img>>Hey, what is this place?<</say>><br>
<<cultist>>You find yourself before the majestic Temple of Fire, guarded by the Order of the Forgotten Tears.<</cultist>><br>
<<say "You" $player.img>>Wow, that sounds amazing.<</say>><br>
<<include "CoolingPizza">>
<</append>>
<<set $talk.step = 1>>
<<replace "#talkChoices">>
<div class="choiceRow">
<!-- ================= B1 ================= -->
<span class="btnChoice">
<<link "Ask about the Order of the Forgotten Tears(+1❄️)">>
<<append "#talkLog">>
<<say "You" $player.img>>And what’s this about the Order of the Forgotten Tears?<</say>><br>
<<cultist>>For eons, we have defended the purple flame that gives life to this planet.<</cultist>><br>
<<say "You" $player.img>>And if someone were to steal that flame, what would happen?<</say>><br>
<<cultist>>Legends say that once an adventurer stole it, and the planet was plunged into darkness for a thousand days. Until our great leader managed to recover it.<</cultist>><br>
<<include "CoolingPizza">>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">><</replace>>
<<replace "#talkChoices">>
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "EV6B3">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
<</replace>>
<</link>>
</span>
<!-- ================= B2 ================= -->
<span class="btnChoice">
<<link "Who is your leader?(+1❄️)">>
<<append "#talkLog">>
<<say "You" $player.img>>Do you have a leader or something like that?<</say>><br>
<<cultist>>Our leader is known as the Fire King. He came from a place far away and brought us salvation by restoring the purple flame to the planet.<</cultist>><br>
<<include "CoolingPizza">>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">><</replace>>
<<replace "#talkChoices">>
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "EV6B3">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
<</replace>>
<</link>>
</span>
</div>
<</replace>>
<</link>>
</span>
<!-- ================= C ================= -->
<span class="btnChoice">
<<link "Leave(+1❄️)">>
<<include "CoolingPizza">>
<<append "#talkLog">>
<<goto "EV6Wait">>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">><</replace>>
<<replace "#talkChoices">><</replace>>
<</link>>
</span>
</div>
<</switch>>
<</if>>
</div>
<div id="talkActions">
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "EV6B3">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
</div>
</div>
</div>
<!--
[[EV6B3]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev6Cbackground">>
<<set $combatEngine.enemyId = "fireGhost">>
<<say "You" $player.img>>Look, if you want, I can give you this.<</say>><br>
<<fireGhost>>Is that a real pizza?<</fireGhost>><br>
[img['pizzamedia/images/enemies/fireghost/pizza1.jpg']]
<p class="reflection">You give him a slice of pizza, and he's really surprised to see it.</p>
<<say "You" $player.img>>Yeah, it's from my pizzeria; it's called $player.pizzeriaName.<</say>><br>
<<fireGhost>>My goodness, it's been ages since I've had something this delicious<</fireGhost>><br>
[img['pizzamedia/images/enemies/fireghost/pizza2.jpg']]
<p class="reflection">He takes it and starts eating it.</p>
<<fireGhost>>Look, I think I misjudged you. You know, you seem like a good guy after all. I’ll give you this.<</fireGhost>><br>
<<set $allowMegabitsLoot = false>>
<<set $allowRegencoinsLoot = true>>
<<set $allowInfinityGemsLoot = true>>
<<set $allowConsumableLoot = true>>
<<set $allowItemsLoot = true>>
<<set $lootmsg = "He hands you an ">>
<<AdventureLoot>>
<<AdventureLootUI>>
<<say "You" $player.img>>Man, thanks a lot, dude.<</say>><br>
<<fireGhost>>If you ever come by here again, bring another pizza. They’re delicious.<</fireGhost>>
<p class="reflection">You lost the pizza, but today you made a friend.</p>
[[Go back to the pizzeria|ResetDelivery]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev6Abackground">>
[img['pizzamedia/images/events/ev6/backgroundb.jpg']]
<p class="reflection">You leave the Temple of Fire and wait until a new portal opens in front of you.</p>
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev6Ebackground">>
<<set _hasKnockedOnDoor to false>>
<p class="reflection">You go down the stairs. With every step, you hear the squelching sound of your shoes on blood, and finally you reach a door.</p>
[img['pizzamedia/images/events/ev6/door.jpg']]
<p class="reflection">There are various paintings around the area, bloody and warning of imminent danger.</p>
<div id="doorResult"></div>
<div id="choice">
<div class="actionRow">
<span class="btnChoice" id="btnTocar">
<<link "Knock on the door">>
<<set _hasKnockedOnDoor to true>>
<<replace "#doorResult">>
[img['pizzamedia/images/events/ev6/knocking.jpg']]
<p class="reflection">You knock on the door, but nothing happens. You try to open it, but it’s locked.<br></p>
<</replace>>
<<replace "#btnTocar">><</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Leave(+1❄️)">>
<<if _hasKnockedOnDoor is true>>
<<replace "#choice">>
[img['pizzamedia/images/events/ev6/black.jpg']]
<p class="reflection">You feel a hard blow to the head. Everything goes dark, and you lose consciousness.<br></p>
<<linkreplace "You lose consciousness">>
<<run $("#passages").append('<div id="blackout"></div>')>>
<<timed 4s>>
<<goto "EV6C3">>
<</timed>>
<</linkreplace>>
<</replace>>
<<else>>
<<include "CoolingPizza">>
<<goto "EV6Wait">>
<</if>>
<</link>>
</span>
</div>
</div>
<!--
[[EV6C3]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "ev6Fbackground">>
<<audio "bgm_chill" pause>>
<p class="reflection">You wake up. You feel that you’re tied up and can’t move.</p>
<<video "pizzamedia/videos/girls/firedungeon/firedungeonscene1/0.mp4" >><br>
<p class="reflection">You hear someone moving around you. You’re completely confused.</p>
<<video "pizzamedia/videos/girls/firedungeon/firedungeonscene1/1.mp4" >><br>
<<demoness>>Well, look what we have here… my new pet.<</demoness>><br>
<<say "You" $player.img>>Mmmm, mmm...<</say>><br>
<<video "pizzamedia/videos/girls/firedungeon/firedungeonscene1/2.mp4" >><br>
<p class="reflection">You see a girl approach you and begin to lewdly suck on the dildo tied to your mouth.</p>
<<demoness>>But what do we have here? It’s a human cock.<</demoness>><br>
<<say "You" $player.img>>Hmmm, hmmm...<</say>><br>
<<video "pizzamedia/videos/girls/firedungeon/firedungeonscene1/3.mp4" >><br>
<p class="reflection">She moves down to your crotch and starts sucking your cock. You feel an unusual heat coming from her mouth.</p>
[[She uses you|EV6C4]]
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "ev6Fbackground">>
<<demoness>>I'm going to have so much fun with you. Do you like watching me pleasure myself on top of you?<</demoness>><br>
<<say "You" $player.img>>Hmmm, hmmm...<</say>><br>
<<video "pizzamedia/videos/girls/firedungeon/firedungeonscene1/4.mp4" >><br>
<p class="reflection">She climbs onto your stomach and starts fucking a dildo you have strapped on. She moans over and over in front of you, and all you can do is mumble.</p>
<<demoness>>Have you seen how wet I am? Yes... Mmmm...<</demoness>><br>
<<video "pizzamedia/videos/girls/firedungeon/firedungeonscene1/5.mp4" >><br>
<p class="reflection">She grabs your head and starts moving you like a puppet.</p>
<<demoness>>You’re going to eat my pussy. Now you’re going to be my sex machine.<</demoness>><br>
<<say "You" $player.img>>HMMMM, HMMMM...<</say>><br>
<<video "pizzamedia/videos/girls/firedungeon/firedungeonscene1/6.mp4" >><br>
<p class="reflection">She uses you for her pleasure, to fulfill her desires.</p>
<<linkreplace "She tortures you">>
<<demoness>>Your cock is so hard, but you’re not allowed to feel pleasure today.<</demoness>><br>
<<say "You" $player.img>>Hmmm...<</say>><br>
<<video "pizzamedia/videos/girls/firedungeon/firedungeonscene1/7.mp4" >><br>
<p class="reflection">She starts jerking you off, and when she feels you're about to cum, she whips you with the whip.</p>
<<demoness>>You want to cum? WELL, NO WAY!!!<</demoness>><br>
<<say "You" $player.img>>HHHMMMMM!!!!<</say>><br>
<<video "pizzamedia/videos/girls/firedungeon/firedungeonscene1/8.mp4" >><br>
<p class="reflection">You feel like your balls are about to explode. She whips you, and you feel immense pain, but you're unable to do anything.</p>
[[She keeps torturing your cock|EV6C5]]
<</linkreplace>>
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "ev6Fbackground">>
<<demoness>>You're really hard. You must be dying to cum.<</demoness>><br>
<<video "pizzamedia/videos/girls/firedungeon/firedungeonscene1/9.mp4" >><br>
<p class="reflection">You lose track of time. You have no idea how many hours this woman has been torturing your cock.</p>
<<demoness>>You're going to be my plaything, but if you cum, I'm going to rip every last bit of skin off you. Do you understand?<</demoness>><br>
<<say "You" $player.img>>Hmmm, hmmm...<</say>><br>
<<video "pizzamedia/videos/girls/firedungeon/firedungeonscene1/10.mp4" >><br>
<p class="reflection">She starts riding your cock. Your balls are extremely swollen after the hours of edging you’ve endured, yet you do your best to hold back and not cum.</p>
<<demoness>>AHHHHH!!! AAAHHHHH!!<</demoness>><br>
<<say "You" $player.img>>HHHMMM!! HHHHMMMM!!<</say>><br>
<<demoness>>YEAHHH!!! YEAHHH!! DON’T CUM!!!<</demoness>><br>
<<video "pizzamedia/videos/girls/firedungeon/firedungeonscene1/11.mp4" >><br>
<p class="reflection">She picks up the pace. You feel like you won’t be able to hold back much longer.</p>
<<linkreplace "She stops riding you">>
<<demoness>>DO IT NOW!! GIVE ME EVERYTHING YOU’VE ACCUMULATED FOR ME!!!<</demoness>><br>
<<say "You" $player.img>>HHHHMMMMM!!! HHHHHHMMMMMMM!!!!! HMMMMMMMMM!!!!<</say>><br>
<<video "pizzamedia/videos/girls/firedungeon/firedungeonscene1/12.mp4" >><br>
<p class="reflection">Your balls explode and you end up shooting several loads painting her face and mouth.</p>
<<demoness>>Now the real torture begins!! JAJAJAJAJA!!<</demoness>><br>
<<say "You" $player.img>>Hmmm???<</say>><br>
[[The worst kind of torture|EV6C6]]
<</linkreplace>>
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "ev6Fbackground">>
<<demoness>>AAHHH!!! AHHHHH!! OH, FUCK!! YES!!!<</demoness>><br>
<<say "You" $player.img>>HHHMMMMM!!!!!!<</say>><br>
<<video "pizzamedia/videos/girls/firedungeon/firedungeonscene1/13.mp4" >><br>
<p class="reflection">She climbs back on top of you. You feel intense pain from your recent orgasm, but she relishes every cry of pain you let out.</p>
<<demoness>>I'M CUMMING!! I'M CUMMING!!!!<</demoness>><br>
<<video "pizzamedia/videos/girls/firedungeon/firedungeonscene1/14.mp4" >><br>
<p class="reflection">You feel the walls of her vagina squeeze your penis for a moment. She's had an orgasm, but she still wants more.</p>
<<demoness>>LIKE THAT!! LIKE THAT!!! WHAT A GREAT COCK!!!<</demoness>><br>
<<say "You" $player.img>>HHMMMMM!!<</say>><br>
<<video "pizzamedia/videos/girls/firedungeon/firedungeonscene1/15.mp4" >><br>
<p class="reflection">She continues to ride your cock for hours.</p>
<<linkreplace "The torture ends">>
<<demoness>>You did very well. Better than everyone else, for a human.<</demoness>><br>
<<say "You" $player.img>>Hmmm...<</say>><br>
<<video "pizzamedia/videos/girls/firedungeon/firedungeonscene1/1.mp4" >><br>
<<demoness>>I usually eat my pets after using them, but I think I’ll let you go free. You’ve earned it. Besides, that pizza was delicious, and I’m not hungry anymore.<</demoness>><br>
<p class="reflection">She hits you hard on the head. You feel yourself losing consciousness.</p>
<<if $gameEngine.onRepetition === false>>
<<linkreplace "You lose consciousness">>
<<run $("#passages").append('<div id="blackout"></div>')>>
<<timed 4s>>
<<goto "EV6C7">>
<</timed>>
<</linkreplace>>
<<else>>
<<link "End Replay">>
<<if $gameEngine.musicOn>>
<<audio "bgm_chill" play>>
<</if>>
<<goto $gameEngine.repetitionReturn>>
<</link>>
<</if>>
<</linkreplace>>
<!--
[[EV6C7]]
-->
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev9Bbackground">>
[img['pizzamedia/images/events/ev9/backgroundb.jpg']]
<p class="reflection">A massive electrical storm is approaching at high speed.</p>
[img['pizzamedia/images/events/ev9/lightning.jpg']]
<p class="reflection">In a matter of seconds, huge bolts of lightning begin to strike right in front of you.</p>
<div id="choice">
<div class="actionRow">
<span class="btnChoice">
<<link "Run(+1❄️)">>
<<include "CoolingPizza">>
<<goto "EV9E2">>
<</link>>
</span>
<span class="btnChoice">
<<link "Don't run(+1❄️)">>
<<replace "#choice">>
<p class="reflection">You decide to wait, and one of the bolts hits you.<br>
</p>
[img['pizzamedia/images/events/ev9/dead.jpg']]
<p class="reflection">You end up struck dead on the ground.</p>
<<link "You are dead">>
<<goto "Resurrect">>
<</link>>
<</replace>>
<</link>>
</span>
</div>
</div>
<!--
[[EV9E2]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev9Cbackground">>
[img['pizzamedia/images/events/ev9/cave1.jpg']]
<p class="reflection">You manage to find shelter in a nearby cave.</p>
[img['pizzamedia/images/events/ev9/cave2.jpg']]
<p class="reflection">A couple of lightning bolts strike in front of the cave.</p>
<<unknown>>Let me have it for a bit. You can’t have it all the time.<</unknown>><br>
<<unknown>>No, it’s mine. You can’t have it.<</unknown>><br>
[img['pizzamedia/images/events/ev9/backgroundc.jpg']]
<p class="reflection">Suddenly, you start hearing sounds coming from inside the cave. It sounds like some kind of strange human voice.</p>
<div id="choice">
<div class="actionRow">
<span class="btnChoice">
<<link "Investigate the voices">>
<<goto "EV9E3">>
<</link>>
</span>
<span class="btnChoice">
<<link "Wait for the storm to pass(+1❄️)">>
<<replace "#choice">>
<<include "CoolingPizza">>
[img['pizzamedia/images/events/ev9/cavewait.jpg']]
<p class="reflection">You ignore the sounds coming from inside the cave and wait until the storm subsides.<br></p>
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
<</replace>>
<</link>>
</span>
</div>
</div>
<!--
[[EV9E3]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev9Dbackground">>
<<set $combatEngine.enemyId = "mullog">>
<<set _riddleRoll = random(1, 3)>>
<<if _riddleRoll == 1>>
<<set $riddleText = "A box with no keys, lids, or hinges, but one that hides a golden treasure inside. What iss iitt?">>
<<set $correctAns = "An egg">>
<<set $wrong1 = "A chest">>
<<set $wrong2 = "A ring">>
<<elseif _riddleRoll == 2>>
<<set $riddleText = "It has a bed but doesn't sleep, it has a mouth but doesn't speak, it runs but doesn't walk. What iss iitt?">>
<<set $correctAns = "A river">>
<<set $wrong1 = "The wind">>
<<set $wrong2 = "A shadow">>
<<else>>
<<set $riddleText = "It devours everything: birdss, beastss, treess, and flowerss; it corrodes steel and brings down kings. What iss iitt?">>
<<set $correctAns = "Time">>
<<set $wrong1 = "Fire">>
<<set $wrong2 = "A dragon">>
<</if>>
<<set $answers = [$correctAns, $wrong1, $wrong2]>>
<<run $answers.shuffle()>>
<<if ndef $talk or $talk.enemyId neq $combatEngine.enemyId>>
<<set $talk = { enemyId: $combatEngine.enemyId, step: 0, done: false }>>
<</if>>
<<mullogunknown>>Hey! You! I won't let you take that!<</mullogunknown>><br>
[img['pizzamedia/images/enemies/mullog/angry.jpg']]
<p class="reflection">A small, starving creature is inside the cave. It seems there is no one else there.</p>
<<say "You" $player.img>>Huh? What are you talking about?<</say>><br>
<<mullogunknown>>Shut up! He doesssn’t know!<</mullogunknown>><br>
[img['pizzamedia/images/enemies/mullog/pose1.jpg']]
<p class="reflection">Suddenly, its tone of voice changes. The creature seems to calm down and tries to smile in a creepy way.</p>
<<say "You" $player.img>>What is it that I don’t know?<</say>><br>
<<mullogunknown>>It’sss nothing. It smellss so good. What iss that?<</mullogunknown>><br>
<<say "You" $player.img>>It’s a pizza.<</say>><br>
<<mullogunknown>>Mullog has never tasted a pizza. Mullog is hungry. Will you give me your pizza?<</mullogunknown>><br>
<<say "You" $player.img>>I can’t give it to you.<</say>><br>
<<mullogunknown>>I WANT IT! I WANT IT, IT MUST BE MIIIIINE!<br>A riddle! A riddle! Your pizza for my treassssure...<</mullogunknown>><br>
<<mullogunknown>>NO! STUPID MULLOG... DON'T TELL HIM ABOUT OUR TREASURE!<br>Shut up! He doesn't know it's a tra...<</mullogunknown>><br>
[img['pizzamedia/images/enemies/mullog/pose2.jpg']]
<<mullogunknown>>What do you say, human? Do you accept my riddle?<</mullogunknown>><br>
<div id="talkPanel">
<div id="talkLog"></div>
<div class="talkBox">
<div id="talkChoices">
<<if $talk.done>>
<p class="reflection">There's no more conversation.</p>
<<else>>
<<switch $talk.step>>
<<case 0>>
<div class="choiceRow">
<span class="btnChoice">
<<link "Accept the riddle (+1❄️)">>
<<include "CoolingPizza">>
<<append "#talkLog">>
<<say "You" $player.img>>All right, I accept your deal. Tell me the riddle.<</say>><br>
<<mullogunknown>>Je,je,je... Lissten carefuullyy...<br><i>"$riddleText"</i><</mullogunknown>><br>
<</append>>
<<replace "#talkChoices">>
<div class="choiceRow">
<span class="btnChoice">
<<link "Tell him it's $answers[0] (+1❄️)">>
<<include "CoolingPizza">>
<<set _ans = $answers[0]>>
<<if _ans == $correctAns>>
<<append "#talkLog">>
<<say "You" $player.img>>It's _ans, it's so obvious. Now give me my reward.<</say>><br>
<<mullog>>Gah! He knowsss! That filthy human has guessed iiitt!<br>But... Mullog isn't going to give you anything! The treasssure is oursss alone! Go away, go away!<</mullog>><br>
[img['pizzamedia/images/enemies/mullog/angry.jpg']]
<p class="reflection">The creature refuses to give you the promised reward and looks at you suspiciously.</p>
<</append>>
<<replace "#talkActions">><</replace>>
<<replace "#talkChoices">>
<div class="choiceRow">
<span class="btnFight">
<<link "Get angry and fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<span class="btnChoice">
<<link "Leave (+1❄️)">>
<<include "CoolingPizza">>
<<append "#talkLog">>
<<say "You" $player.img>>I’m done with you, weirdo. I’m outta here.<</say>><br>
<p class="reflection">You turn your back on it and walk away. Suddenly, you see a new portal open up in front of you.</p>
<</append>>
<<set $talk.done = true>>
<<replace "#talkChoices">><</replace>>
<<replace "#talkActions">>
<span class="btnChoice">
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
</span>
<</replace>>
<</link>>
</span>
</div>
<</replace>>
<<else>>
<<append "#talkLog">>
<<say "You" $player.img>>I think it's _ans.<</say>><br>
<<mullog>>Mullog! Mullog! You're sssstupid! That's wrong! He doessn't know anything!<</mullog>><br>
[img['pizzamedia/images/enemies/mullog/angry.jpg']]
<p class="reflection">The creature lunges at you, baring its sharp, yellow teeth.</p>
<<mullog>>Now we'll eat him and keep hiss treassssure!<</mullog>><br>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">>
<span class="btnFight">
<<link "Defend yourself">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<</replace>>
<<replace "#talkChoices">><</replace>>
<</if>>
<</link>>
</span>
<span class="btnChoice">
<<link "Tell him it’s $answers[1] (+1❄️)">>
<<include "CoolingPizza">>
<<set _ans = $answers[1]>>
<<if _ans == $correctAns>>
<<append "#talkLog">>
<<say "You" $player.img>>It's _ans, it's so obvious. Now give me my reward.<</say>><br>
<<mullog>>Gah! He knowsss! The filthy human has guessed it!<br>But... Mullog isn't going to give you anything! The treasssure is oursss alone! Go away, go away!<</mullog>><br>
[img['pizzamedia/images/enemies/mullog/angry.jpg']]
<p class="reflection">The creature refuses to give you the promised reward and looks at you suspiciously.</p>
<</append>>
<<replace "#talkActions">><</replace>>
<<replace "#talkChoices">>
<div class="choiceRow">
<span class="btnFight">
<<link "Get angry and fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<span class="btnChoice">
<<link "Leave (+1❄️)">>
<<include "CoolingPizza">>
<<append "#talkLog">>
<<say "You" $player.img>>I’m done with you, weirdo. I’m outta here.<</say>><br>
<p class="reflection">You turn your back on it and walk away. Suddenly, you see a new portal open up in front of you.</p>
<</append>>
<<set $talk.done = true>>
<<replace "#talkChoices">><</replace>>
<<replace "#talkActions">>
<span class="btnChoice">
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
</span>
<</replace>>
<</link>>
</span>
</div>
<</replace>>
<<else>>
<<append "#talkLog">>
<<say "You" $player.img>>I think it's _ans.<</say>><br>
<<mullog>>Mullog! Mullog! You're sssstupid! That's wrong! He doessn't know anything!<</mullog>><br>
[img['pizzamedia/images/enemies/mullog/angry.jpg']]
<p class="reflection">The creature lunges at you, baring its sharp, yellow teeth.</p>
<<mullog>>Now we'll eat him and keep hiss treassssure!<</mullog>><br>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">>
<span class="btnFight">
<<link "Defend yourself">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<</replace>>
<<replace "#talkChoices">><</replace>>
<</if>>
<</link>>
</span>
<span class="btnChoice">
<<link "Tell him it's $answers[2] (+1❄️)">>
<<include "CoolingPizza">>
<<set _ans = $answers[2]>>
<<if _ans == $correctAns>>
<<append "#talkLog">>
<<say "You" $player.img>>It's _ans, it's so obvious. Now give me my reward.<</say>><br>
<<mullog>>Gah! He knowsss! The filthy human has guessed it!<br>But... Mullog isn't going to give you anything! The treasssure is oursss alone! Go away, go away!<</mullog>><br>
[img['pizzamedia/images/enemies/mullog/angry.jpg']]
<p class="reflection">The creature refuses to give you the promised reward and looks at you suspiciously.</p>
<</append>>
<<replace "#talkActions">><</replace>>
<<replace "#talkChoices">>
<div class="choiceRow">
<span class="btnFight">
<<link "Get angry and fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<span class="btnChoice">
<<link "Leave (+1❄️)">>
<<include "CoolingPizza">>
<<append "#talkLog">>
<<say "You" $player.img>>I’m done with you, weirdo. I’m outta here.<</say>><br>
<p class="reflection">You turn your back on it and walk away. Suddenly, you see a new portal open up in front of you.</p>
<</append>>
<<set $talk.done = true>>
<<replace "#talkChoices">><</replace>>
<<replace "#talkActions">>
<span class="btnChoice">
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
</span>
<</replace>>
<</link>>
</span>
</div>
<</replace>>
<<else>>
<<append "#talkLog">>
<<say "You" $player.img>>I think it's _ans.<</say>><br>
<<mullog>>Mullog! Mullog! You're sssstupid! That's wrong! He doessn't know anything!<</mullog>><br>
[img['pizzamedia/images/enemies/mullog/angry.jpg']]
<p class="reflection">The creature lunges at you, baring its sharp, yellow teeth.</p>
<<mullog>>Now we'll eat him and keep hiss treassssure!<</mullog>><br>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">>
<span class="btnFight">
<<link "Get angry and fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<</replace>>
<<replace "#talkChoices">><</replace>>
<</if>>
<</link>>
</span>
<span class="btnChoice">
<<link "Change your mind and walk away (+1❄️)">>
<<include "CoolingPizza">>
<<append "#talkLog">>
<<say "You" $player.img>>Look, weirdo, I've changed my mind. I don't have time for riddles. Get out of the way.<</say>><br>
<<mullog>>NO! No one ignores Mullog! YOU JUSSST WANT OUR TREASSSURE!<</mullog>><br>
[img['pizzamedia/images/enemies/mullog/angry.jpg']]
<p class="reflection">The little monster loses its temper at being ignored and lunges to bite your legs.</p>
<<mullog>>YOU WON'T TAKE IT FROM USSS!<</mullog>><br>
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">>
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
</div>
<</replace>>
<<replace "#talkChoices">><</replace>>
<</link>>
</span>
</div>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Reject and fight (+1❄️)">>
<<include "CoolingPizza">>
<<append "#talkLog">>
<<say "You" $player.img>>I'm not going to risk my pizza by playing riddles with you.<</say>><br>
<<mullog>>NO! Then we'll just take it by force! THE PIZZA ISS OURSSS!<</mullog>><br>
[img['pizzamedia/images/enemies/mullog/angry.jpg']]
<p class="reflection">Mullog, furious that you refused to play, lunges straight for your neck.</p>
<</append>>
<<set $talk.done = true>>
<<replace "#talkChoices">><</replace>>
<<replace "#talkActions">>
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
</div>
<</replace>>
<</link>>
</span>
</div>
<</switch>>
<</if>>
</div>
<div id="talkActions">
<div class="actionRow">
<span class="btnFight">
<<link "Surprise attack">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
</div>
</div>
</div>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev10Abackground">>
<<set $combatEngine.enemyId = "freddy">>
<<if ndef $talk or $talk.enemyId neq $combatEngine.enemyId>>
<<set $talk = { enemyId: $combatEngine.enemyId, step: 0, done: false }>>
<</if>>
<<unknown>>Hey, you, get out of the way! You're blocking the sun from my girls!<</unknown>><br>
[img['pizzamedia/images/events/ev10/backgrounda.jpg']]
<p class="reflection">You're about to start exploring the forest when you hear a voice.</p>
<p class="reflection">You look all around but don’t see anyone.</p>
<<unknown>>I’m talking to you, down here!<</unknown>><br>
[img['pizzamedia/images/events/ev10/house.jpg']]
<p class="reflection">You turn around and, looking down, see a tiny villa built there.</p>
<<unknown>>Come on, man, you’re ruining our party.<</unknown>><br>
[img['pizzamedia/images/enemies/freddy/pose1.jpg']]
<p class="reflection">As you look closer, you see some tiny blue creatures in the pool area of the tiny villa.</p>
<div id="talkPanel">
<div id="talkLog"></div>
<div class="talkBox">
<div id="talkChoices">
<<if $talk.done>>
<p class="reflection">There’s no more conversation.</p>
<<else>>
<<switch $talk.step>>
<<case 0>>
<div class="choiceRow">
<span class="btnChoice">
<<link "Move aside (+1❄️)">>
<<include "CoolingPizza">>
<<append "#talkLog">>
<<freddy>>Thanks, man, Freddy’s girls love the sun.<</freddy>><br>
<<say "You" $player.img>>You’re welcome.<</say>><br>
<<freddy>>Won’t you like a quick suck? My girls will do anything for a few megaBits.<</freddy>><br>
<<say "You" $player.img>>Thanks for the offer, but I think that's going to be a bit tricky.<</say>><br>
<<freddy>>If it's because of size, don't worry, I'll take care of it. <br> Interested?<</freddy>><br>
<</append>>
<<set $talk.step = 1>>
<<replace "#talkChoices">>
<div class="choiceRow">
<span class="btnChoice">
<<link "Tell him you're interested">>
<<append "#talkLog">>
<<freddy>>Great.<</freddy>><br>
[img['pizzamedia/images/enemies/freddy/pose2.jpg']]
<p class="reflection">He blows some powder on you, your size shrinks, and you become small.</p>
<<freddy>>There you go, all fixed.<</freddy>><br>
<<video "pizzamedia/videos/girls/camila/camilascene1/0.mp4" >><br>
<p class="reflection">You've become small. They no longer look blue. They're starting to look human.</p>
<<say "You" $player.img>>What the hell, I thought you were blue?<</say>><br>
<<freddy>>Blue? What are you talking about?<</freddy>><br>
<<video "pizzamedia/videos/girls/camila/camilascene1/1.mp4" >><br>
<<unknowncamila>>Freddy, I'm taking this guy for myself. He looks really handsome.<</unknowncamila>><br>
<<video "pizzamedia/videos/girls/camila/camilascene1/2.mp4" >><br>
<p class="reflection">A girl starts to notice you.</p>
<<freddy>>What do you think, alien guy? Do you like Camila? Today is her birthday.<</freddy>><br>
<<video "pizzamedia/videos/girls/camila/camilascene1/3.mp4" >><br>
<p class="reflection">She takes off her bikini top.</p>
<<say "You" $player.img>>Wow, happy birthday. You’re really beautiful.<</say>><br>
<<camila>>Come with me, alien guy. I’ll let you have it for free today since it’s my birthday.<</camila>><br>
<<video "pizzamedia/videos/girls/camila/camilascene1/4.mp4" >><br>
[[Go with her|EV10B2]]
<</append>>
<<set $talk.done = true>>
<<replace "#talkActions">><</replace>>
<<replace "#talkChoices">><</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Tell her no">>
<<append "#talkLog">>
<<say "You" $player.img>>Sorry, man, maybe another time.<</say>><br>
<<freddy>>I understand.<</freddy>><br>
<</append>>
<<set $talk.done = true>>
<<replace "#talkChoices">><</replace>>
<<replace "#talkActions">>
<span class="btnChoice">
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
</span>
<</replace>>
<</link>>
</span>
</div>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Don’t move (+1❄️)">>
<<include "CoolingPizza">>
<<append "#talkLog">>
[img['pizzamedia/images/enemies/freddy/pose3.jpg']]
<p class="reflection">He sprinkles some powder on himself and becomes huge.</p>
<<freddy>>Are you stupid, or did you get deprived of oxygen at birth?<</freddy>><br>
[img['pizzamedia/images/enemies/freddy/angry1.jpg']]
<<say "You" $player.img>>Look, I don't have time for you.<</say>><br>
<<freddy>>Are you messing with me? Now you're going to see what's what, moron.<</freddy>><br>
[img['pizzamedia/images/enemies/freddy/angry2.jpg']]
<</append>>
<<set $talk.done = true>>
<<replace "#talkChoices">><</replace>>
<<replace "#talkActions">>
<div class="actionRow">
<span class="btnFight">
<<link "Defend yourself">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
<</replace>>
<</link>>
</span>
</div>
<</switch>>
<</if>>
</div>
<div id="talkActions">
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
</div>
</div>
</div>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "ev10Fbackground">>
<<audio "bgm_chill" pause>>
<<camila>>Come on, don't be shy.<</camila>><br>
<<video "pizzamedia/videos/girls/camila/camilascene1/5.mp4" >><br>
<p class="reflection">She invites you to come upstairs, and you can't take your eyes off her beautiful butt.</p>
<<camila>>What gift did you bring for me?<</camila>><br>
<<say "You" $player.img>>Well, if I'd known, I would have brought you something. I don't have much to give you.<</say>><br>
<<camila>>I think you do have something down here for me.<</camila>><br>
<<video "pizzamedia/videos/girls/camila/camilascene1/6.mp4" >><br>
<p class="reflection">She pulls down your boxers and grabs your dick. She looks at you as if you were something truly exotic.</p>
<<camila>> *Slurp* *Slurp*<</camila>><br>
<<say "You" $player.img>>Ahhhhh...<</say>><br>
<<video "pizzamedia/videos/girls/camila/camilascene1/7.mp4" >><br>
<p class="reflection">She begins to savor your penis. You feel her saliva soak your penis.</p>
<<camila>>It’s so big and hard. Are they all like that on your planet?<</camila>><br>
<<say "You" $player.img>>I think I’m a lucky guy.<</say>><br>
<<video "pizzamedia/videos/girls/camila/camilascene1/8.mp4" >><br>
<<camila>>Do you like me?<</camila>><br>
<<say "You" $player.img>>You’re perfect.<</say>><br>
<<camila>>You’re going to make me blush! Let me feel how big it is.<</camila>><br>
[[Penetrate her|EV10B3]]
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "ev10Fbackground">>
<p class="reflection">She lies down on the bed, you get on top of her, and you start to penetrate her.</p>
<<video "pizzamedia/videos/girls/camila/camilascene1/9.mp4" >><br>
<<camila>>It feels so full down there when you enter. Please, don’t stop.<</camila>><br>
<<say "You" $player.img>>I don’t plan on stop.<</say>><br>
<<video "pizzamedia/videos/girls/camila/camilascene1/10.mp4" >><br>
<p class="reflection">Everything feels so smooth. You lift her leg, trying to get as deep inside her as possible.</p>
<<camila>>I want to change positions.<</camila>><br>
<<say "You" $player.img>>What position do you want?<</say>><br>
<<camila>>I want the horse position.<</camila>><br>
<<say "You" $player.img>>The horse position?<</say>><br>
<<linkreplace "She changes positions">>
<p class="reflection">She gets into doggy style. It’s possible this position has another name on this planet.</p>
<<video "pizzamedia/videos/girls/camila/camilascene1/11.mp4" >><br>
<<camila>>Do you like it like this?<</camila>><br>
<<say "You" $player.img>>I like it much more this way than before.<</say>><br>
<<video "pizzamedia/videos/girls/camila/camilascene1/12.mp4" >><br>
<p class="reflection">The sight of her big, perfect ass makes you get hornier and hornier.</p>
<<camila>>I want to get on top.<</camila>><br>
[[She rides your dick|EV10B4]]
<</linkreplace>>
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "ev10Fbackground">>
<p class="reflection">You lie down on the bed, she starts riding your dick, and you watch her beautiful butt bounce.</p>
<<video "pizzamedia/videos/girls/camila/camilascene1/13.mp4" >><br>
<<say "You" $player.img>>It feels so good when you do it slowly.<</say>><br>
<<camila>>Like that?<</camila>><br>
<<video "pizzamedia/videos/girls/camila/camilascene1/14.mp4" >><br>
<p class="reflection">She starts moving her hips slowly. You feel immense pleasure with every thrust she makes.</p>
<<camila>>Wait, I want to turn around so I can see you.<</camila>><br>
<<linkreplace "She turns around">>
<p class="reflection">She turns around, and you watch her big boobs in front of you. You feel like you’re in front of a goddess.</p>
<<video "pizzamedia/videos/girls/camila/camilascene1/15.mp4" >><br>
<<camila>>So you like it slow like this?<</camila>><br>
<<say "You" $player.img>>I like it a lot.<</say>><br>
<<video "pizzamedia/videos/girls/camila/camilascene1/16.mp4" >><br>
<p class="reflection">She rides you gently, and you feel your dick caressing her pussy deep inside.</p>
<<say "You" $player.img>>If you keep this up, I won't be able to hold back much longer.<</say>><br>
<<camila>>Let's change positions. I want to see your cum come out.<</camila>><br>
<<video "pizzamedia/videos/girls/camila/camilascene1/17.mp4" >><br>
<p class="reflection">You feel like you're on the edge. The slightest movement brings you closer to orgasm.</p>
<<camila>>Shoot it all out for me. Give me my gift.<</camila>><br>
<<say "You" $player.img>>Ohhhhhh...<</say>><br>
<<video "pizzamedia/videos/girls/camila/camilascene1/18.mp4" >><br>
<p class="reflection">She starts jerking you off until you finally cum.</p>
<<camila>>You shot a lot!!<</camila>><br>
<<say "You" $player.img>>I really needed that.<</say>><br>
<<camila>>Will you come visit me again?<</camila>><br>
<<say "You" $player.img>>Sure, whenever I’m in the area, you can count on me to come back.<</say>><br>
<<set $adventureGirls.camila.scene1 = true>>
<<if $gameEngine.onRepetition === false>>
[[Leave|LostPizza2]]
<<else>>
<<link "End Replay">>
<<if $gameEngine.musicOn>>
<<audio "bgm_chill" play>>
<</if>>
<<goto $gameEngine.repetitionReturn>>
<</link>>
<</if>>
<</linkreplace>>
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev10Cbackground">>
[img['pizzamedia/images/events/ev10/backgroundc.jpg']]
<p class="reflection">You come to a clearing, and in front of you you see a small pond.</p>
<div id="choice">
<div class="actionRow">
<span class="btnChoice">
<<link "Approach the pond">>
<<replace "#choice">>
<p class="reflection">You approach the pond. However, you feel a sharp, intense pain in your leg.</p>
[img['pizzamedia/images/events/ev10/snake.jpg']]
<p class="reflection">A snake bites your leg, and you feel a strong burning sensation in the affected area.</p>
[img['pizzamedia/images/events/ev6/black.jpg']]
<p class="reflection">Suddenly, everything starts to go dark...</p>
<<linkreplace "You lose consciousness">>
<<run $("#passages").append('<div id="blackout"></div>')>>
<<timed 4s>>
<<goto "EV10C2">>
<</timed>>
<</linkreplace>>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Don't approach (+1❄️)">>
<<replace "#choice">>
<<include "CoolingPizza">>
<p class="reflection">You decide to wait for a new portal to open; you interact with your surroundings as little as possible. You hear some strange noises near the bushes.<br></p>
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
<</replace>>
<</link>>
</span>
</div>
</div>
<!--
[[EV10C2]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "ev10Dbackground">>
<<faelyn>>Good morning, sleepyhead!<</faelyn>><br>
<<say "You" $player.img>>What? Who are you?<</say>><br>
<<video "pizzamedia/videos/girls/faelyn/faelynscene1/0.mp4" >><br>
<p class="reflection">You wake up in a room and see a girl who looks a little strange standing in front of you.</p>
<<faelyn>>I'm the one who saved you. I found you in the forest.<</faelyn>><br>
<<say "You" $player.img>>I don't remember anything.<</say>><br>
<<faelyn>>That’s normal. It’s because of the venom from the snake that bit you.<</faelyn>><br>
[img['pizzamedia/images/events/ev10/poison.jpg']]
<p class="reflection">As you look at your legs, you notice that some kind of venom is spreading down your leg.</p>
<<faelyn>>Actually, you don’t have much time left to live.<</faelyn>><br>
<<say "You" $player.img>>Shit, what can I do?<</say>><br>
<<faelyn>>There’s nothing you can do, but I could heal you.<</faelyn>><br>
<<say "You" $player.img>>Will you help me?<</say>><br>
<<faelyn>>I don’t know, why should I?<</faelyn>><br>
<<say "You" $player.img>>Would you help me in exchange for a few MegaBits?<</say>><br>
<<faelyn>>Hmm... I’m not interested in your money.<</faelyn>><br>
<<say "You" $player.img>>So, what do you want?<</say>><br>
<<faelyn>>As you can see, one of my eyes is blind. No one from my village has ever touched me…<</faelyn>><br>
<<video "pizzamedia/videos/girls/faelyn/faelynscene1/1.mp4" >><br>
<p class="reflection">She begins to caress her body. Her gaze betrays an inner lust that grows with every passing second.</p>
<<say "You" $player.img>>Wait, you want me to choose between having sex with you and saving my life or dying? You’re so cruel.<</say>><br>
<<faelyn>>Well, I don’t have to heal you for free. It’s your decision.<</faelyn>><br>
<<video "pizzamedia/videos/girls/faelyn/faelynscene1/2.mp4" >><br>
<span id="choice">
<<link "Accept the deal">>
<<replace "#choice">>
<<say "You" $player.img>>Well, okay, I accept the deal.<</say>><br>
<<faelyn>>Alright, but I want you to tell me how beautiful I am. Otherwise, I won’t heal you.<</faelyn>><br>
<<video "pizzamedia/videos/girls/faelyn/faelynscene1/3.mp4" >><br>
<p class="reflection">She lifts her dress slightly, showing you her butt and her legs.</p>
<<say "You" $player.img>>You have a really sexy butt.<</say>><br>
<<faelyn>>Really?<</faelyn>><br>
<<video "pizzamedia/videos/girls/faelyn/faelynscene1/4.mp4" >><br>
<p class="reflection">She lies down on the bed and lifts up her dress, then starts caressing her butt and thighs. She watches you, trying to see your reaction.</p>
[[Take out your penis|EV10C4]]
<</replace>>
<</link>>
<br><br>
<<link "Reject the deal">>
<<replace "#choice">>
<<goto "EV10C3">>
<</replace>>
<</link>>
</span><br>
<!--
[[EV10C3]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set _pool = ["bunny", "unicorn", "deer"]>>
<<set $combatEngine.enemyId = _pool[random(0, _pool.length - 1)]>>
<<if $combatEngine.enemyId == "bunny">>
<<set $gameEngine.currentPassage = "ev10Cbackground">>
<<else>>
<<set $gameEngine.currentPassage = "ev10Bbackground">>
<</if>>
<div id="mainScene">
<<if $combatEngine.enemyId == "bunny">>
<p class="reflection">You walk through the forest for a few minutes and come to a small clearing with a pond at the end.</p>
<<else>>
<p class="reflection">Walk through the forest for a few minutes, and arrive at a somewhat open area.</p>
<</if>>
<<if $combatEngine.enemyId == "bunny">>
<<bunny>>Blood, guts! I need to see everything outside!<</bunny>><br>
<</if>>
<<set _enemyImagePath = "pizzamedia/images/enemies/" + $combatEngine.enemyId.toLowerCase() + "/pose.jpg">>
[img[_enemyImagePath]]
<<set $upper = "A " + $enemies[$combatEngine.enemyId].name + " appears in front of you.">>
<p class="reflection">$upper</p>
</div>
<div id="choice">
<<if $combatEngine.enemyId == "unicorn">>
<div class="actionRow">
<span class="btnChoice">
<<link "Approach (+1❄️)">>
<<run window.scrollTo({top: 0, behavior: 'smooth'})>>
<<include "CoolingPizza">>
<<replace "#mainScene">>
<p class="reflection">You take a step forward. The unicorn stares at you for a second, gets scared, and runs off at full speed into the thickness of the forest.</p>
[img['pizzamedia/images/enemies/unicorn/running.jpg']]
<p class="reflection">The majestic creature flees in terror, and you end up losing sight of it among the bushes.</p>
<</replace>>
<<replace "#choice">>
<div class="actionRow">
<span class="btnChoice">
[[A new portal opens|NewPortal]]
</span>
</div>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Leave (+1❄️)">>
<<run window.scrollTo({top: 0, behavior: 'smooth'})>>
<<include "CoolingPizza">>
<<replace "#mainScene">>
[img['pizzamedia/images/events/ev10/backgrounda.jpg']]
<p class="reflection">You leave. You return to where you started, and a new portal opens in front of you.</p>
<</replace>>
<<replace "#choice">>
<div class="actionRow">
<span class="btnChoice">
[[A new portal opens|NewPortal]]
</span>
</div>
<</replace>>
<</link>>
</span>
</div>
<div id="talkActions">
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
</div>
<<else>>
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
<</if>>
</div>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev10Abackground">>
[img['pizzamedia/images/events/ev10/quicksand1.jpg']]
<p class="reflection">You start walking, and after a few steps, you feel that the ground is unstable.</p>
[img['pizzamedia/images/events/ev10/quicksand2.jpg']]
<p class="reflection">In the blink of an eye, the ground crumbles and you fall. You slide down a sort of underground tunnel.</p>
[[You keep falling|EV10E2]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "ev10Dbackground">>
<<audio "bgm_chill" pause>>
<<faelyn>>What should I do?<</faelyn>><br>
<<say "You" $player.img>>Take it and start sucking it slowly.<</say>><br>
<<video "pizzamedia/videos/girls/faelyn/faelynscene1/5.mp4" >><br>
<p class="reflection">You both get undressed. You lie down on the bed and tell her to grab and suck your penis.</p>
<<faelyn>>It’s getting bigger and bigger!!<</faelyn>><br>
<<say "You" $player.img>>That’s how it works.<</say>><br>
<<video "pizzamedia/videos/girls/faelyn/faelynscene1/6.mp4" >><br>
<p class="reflection">She starts massaging your penis, sticks out her tongue, and savors the tip.</p>
<<faelyn>>And all of this is going to fit inside me? I don’t think it can fit all the way in!<</faelyn>><br>
<<say "You" $player.img>>Don’t worry, we’ll take it slow.<</say>><br>
<<video "pizzamedia/videos/girls/faelyn/faelynscene1/7.mp4" >><br>
<<faelyn>>What do you feel when I suck it?<</faelyn>><br>
<<say "You" $player.img>>I don’t know how to describe it, but I really like it. Please don’t stop.<</say>><br>
<<video "pizzamedia/videos/girls/faelyn/faelynscene1/8.mp4" >><br>
<p class="reflection">Hearing your words, she starts sucking your dick faster.</p>
<<say "You" $player.img>>Well, I think we can get started now.<</say>><br>
<<faelyn>>Ahhh! I’ve been waiting for this moment for so long, though now I’m a little scared.<</faelyn>><br>
<<say "You" $player.img>>That’s normal, but don’t worry. We’ll go as slowly as you need.<</say>><br>
<<faelyn>>Okay, but let me do it.<</faelyn>><br>
[[She climbs on top of you|EV10C5]]
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "ev10Dbackground">>
<<faelyn>>Ahhhhh... So that’s what it feels like...<</faelyn>><br>
<<say "You" $player.img>>Do you like it?<</say>><br>
<<faelyn>>It feels good.<</faelyn>><br>
<<video "pizzamedia/videos/girls/faelyn/faelynscene1/9.mp4" >><br>
<p class="reflection">She climbs on top of you and guides your penis into her pussy, then she starts moving slowly.</p>
<<faelyn>>If I go faster, it feels even better!<</faelyn>><br>
<<say "You" $player.img>>You're so tight...<</say>><br>
<<video "pizzamedia/videos/girls/faelyn/faelynscene1/10.mp4" >><br>
<p class="reflection">She picks up the pace, and her vagina squeezes your dick really hard.</p>
<<faelyn>>Am I doing it right?<</faelyn>><br>
<<say "You" $player.img>>Yes, it feels so good...<</say>><br>
<<video "pizzamedia/videos/girls/faelyn/faelynscene1/11.mp4" >><br>
<<say "You" $player.img>>I don't think I can hold back much longer.<</say>><br>
<<faelyn>>What is it you can't hold back?<</faelyn>><br>
<<video "pizzamedia/videos/girls/faelyn/faelynscene1/12.mp4" >>
<p class="reflection">You feel like you're getting close. You won't be able to hold back much longer.</p>
<<say "You" $player.img>>I'm about to cum and shoot my load.<</say>><br>
<<faelyn>>Wait... Don't do it yet, I want to see it.<</faelyn>><br>
<<linkreplace "She stops riding you">>
<<faelyn>>What do I have to do to make it come out?<</faelyn>><br>
<<say "You" $player.img>>Do the same thing I showed you at the beginning.<</say>><br>
<<video "pizzamedia/videos/girls/faelyn/faelynscene1/13.mp4" >><br>
<p class="reflection">She grabs your penis and starts massaging it while bringing your tip close to her tongue.</p>
<<say "You" $player.img>>I'm cumming!!<</say>><br>
<<faelyn>>It's coming out!!<</faelyn>><br>
<<video "pizzamedia/videos/girls/faelyn/faelynscene1/14.mp4" >><br>
<p class="reflection">You can’t hold back any longer. You shoot your cum into her mouth, and she savors it with curiosity.</p>
<<faelyn>>God, it’s delicious. It’s the best thing I’ve ever tasted.<br>Can you give me more?<</faelyn>><br>
<<say "You" $player.img>>I can, but better another time. I have to wait a while before I can come again.<</say>><br>
<<faelyn>>I understand. Will you come back to visit me and give me more?<</faelyn>><br>
<<say "You" $player.img>>Sure, when I pass through the forest again, I’ll visit you.<</say>><br>
<<faelyn>>Great, I can’t wait for you to come back and give me that thing you call semen.<</faelyn>><br>
<<set $adventureGirls.faelyn.scene1 = true>>
<<if $gameEngine.onRepetition === false>>
[[Leave|LostPizza2]]
<<else>>
<<link "End Replay">>
<<if $gameEngine.musicOn>>
<<audio "bgm_chill" play>>
<</if>>
<<goto $gameEngine.repetitionReturn>>
<</link>>
<</if>>
<</linkreplace>>
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev10Ebackground">>
<<set $combatEngine.enemyId = "wildwizard">>
<<if ndef $talk or $talk.enemyId neq $combatEngine.enemyId>>
<<set $talk = { enemyId: $combatEngine.enemyId, step: 0, done: false }>>
<</if>>
<div id="mainScene">
<<wildwizard>>Well, well... A new traveler has come to take on the forest's challenge.<</wildwizard>><br>
[img['pizzamedia/images/enemies/wildwizard/pose.jpg']]
<p class="reflection">You fall into an underground cave.</p>
<<say "You" $player.img>>What challenge? I fell in here by accident.<</say>><br>
<<wildwizard>>Accept the forest's challenge. If you manage to overcome it, you'll receive a reward and be free to leave.<</wildwizard>><br>
<<say "You" $player.img>>Look, I've got things to do. I fell in here by accident, and I'm not really that interested in this challenge.<</say>><br>
<<wildwizard>>Choose the forest's challenge or death.<</wildwizard>><br>
[img['pizzamedia/images/enemies/wildwizard/angry.jpg']]
</div>
<div id="talkPanel">
<div id="talkLog"></div>
<div class="talkBox">
<div id="talkChoices">
<<if $talk.done>>
<p class="reflection">There's no more conversation.</p>
<<else>>
<<switch $talk.step>>
<<case 0>>
<div class="choiceRow">
<span class="btnChoice">
<<link "Accept the challenge">>
<<append "#talkLog">>
<<say "You" $player.img>>All right, it seems I have no other choice. What does the challenge consist of?<</say>><br>
<<wildwizard>>Approach the forest's flame, and you'll have to choose between two images that come to mind. You must select the correct one carefully.<</wildwizard>><br>
<<say "You" $player.img>>And if I fail, what happens?<</say>><br>
<<wildwizard>>The forest will take possession of your soul and your body. You will die and be transformed.<</wildwizard>><br>
<<say "You" $player.img>>Wow, that doesn’t sound very pleasant...<</say>><br>
[img['pizzamedia/images/events/ev10/greenfire.jpg']]
<p class="reflection">You approach the sacred flame and look directly at it.</p>
<</append>>
<<set $talk.done = true>>
<<replace "#talkChoices">>
<div class="actionRow">
<span class="btnChoice">
[[The challenge begins|EV10E3]]
</span>
</div>
<</replace>>
<</link>>
</span>
<span class="btnChoice">
<<link "Reject and fight">>
<<append "#talkLog">>
<<say "You" $player.img>>I'm not going to fall for your little games, old man.<br>Tell me how I can get out of here.<</say>><br>
<<wildwizard>>Fool! No one spurns the forest’s challenge and lives to tell the tale!<</wildwizard>><br>
<</append>>
<<set $talk.done = true>>
<<replace "#talkChoices">>
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
</div>
<</replace>>
<</link>>
</span>
</div>
<</switch>>
<</if>>
</div>
</div>
</div>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev10Ebackground">>
<<set $combatEngine.enemyId = "wildwizard">>
/* 1. Inicializamos las variables del minijuego si no existen */
<<if ndef $wizardWins>>
<<set $wizardWins = 0>>
/* IMPORTANTE: Aquí está tu lista exacta de 20 imágenes. */
<<set $wizardPool = ["1a", "2b", "3a", "4b", "5b", "6b", "7a", "8b", "9a", "10b", "11a", "12a", "13a", "14a", "15b", "16a", "17b", "18b", "19b", "20a"]>>
<</if>>
/* 2. Si ya acertó 3 veces, gana el desafío */
<<if $wizardWins >= 3>>
<div id="mainScene">
<<wildwizard>>Amazing! You've managed to overcome the challenge of the forest. You deserve the reward.<</wildwizard>><br>
[img['pizzamedia/images/enemies/wildwizard/pose.jpg']]
<p class="reflection">The wizard nods respectfully.</p>
<<set $allowMegabitsLoot = false>>
<<set $allowRegencoinsLoot = true>>
<<set $allowInfinityGemsLoot = true>>
<<set $allowConsumableLoot = true>>
<<set $allowItemsLoot = false>>
<<set $lootmsg = "You have obtained ">>
<<AdventureLoot>>
<<AdventureLootUI>>
[[A new portal opens in front of you|NewPortal]]
</div>
/* 3. Si aún no ha ganado, mostramos la ronda actual */
<<else>>
/* Seleccionamos un identificador al azar de la lista y lo quitamos del pool */
<<set _randomIndex = random(0, $wizardPool.length - 1)>>
<<set _currentId = $wizardPool[_randomIndex]>>
<<run $wizardPool.deleteAt(_randomIndex)>>
/* Construimos la ruta de la imagen con el ID exacto que ha salido */
<<set _currentImage = "pizzamedia/images/events/ev10/forestchallenge/girl" + _currentId + ".jpg">>
/* Comprobamos si el nombre contiene una 'a' para determinar la respuesta correcta */
<<if _currentId.includes("a")>>
<<set _isBorn = 1>>
<<else>>
<<set _isBorn = 0>>
<</if>>
<div id="mainScene">
<<wildwizard>>
<<if $wizardWins == 0>>
Look closely at this illusion. Who was born a woman?
<<else>>
Correct... but can you get the next one right? You have $wizardWins of 3.
<</if>>
<</wildwizard>><br>
<p class="reflection">The image of a woman comes to your mind.</p>
/* Mostramos la imagen seleccionada */
<div style="margin-top:20px; margin-bottom: 20px;">
[img[_currentImage]]
</div>
</div>
<div id="choice">
<div class="actionRow">
/* BOTÓN 1: MUJER DE NACIMIENTO */
<span class="btnChoice">
<<if _isBorn == 1>>
/* ACERTÓ: La imagen terminaba en 'a' */
<<link "She was born a woman">>
<<set $wizardWins += 1>>
<<goto "EV10E3">>
<</link>>
<<else>>
/* FALLÓ: La imagen terminaba en 'b' */
<<link "She was born a woman">>
<<unset $wizardWins>>
<<unset $wizardPool>>
<<goto "EV10Dead">>
<</link>>
<</if>>
</span>
/* BOTÓN 2: NO ES MUJER DE NACIMIENTO */
<span class="btnChoice">
<<if _isBorn == 0>>
/* ACERTÓ: La imagen terminaba en 'b' */
<<link "She wasn't born a woman">>
<<set $wizardWins += 1>>
<<goto "EV10E3">>
<</link>>
<<else>>
/* FALLÓ: La imagen terminaba en 'a' */
<<link "She wasn't born a woman">>
<<unset $wizardWins>>
<<unset $wizardPool>>
<<goto "EV10Dead">>
<</link>>
<</if>>
</span>
</div>
</div>
<</if>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev10Ebackground">>
[img['pizzamedia/images/events/ev10/dead1.jpg']]
<p class="reflection">Fail the challenge, and the forest will quickly take hold of you. Large rosebuds sprout from the ground, wrapping around your body and twisting it.</p>
[img['pizzamedia/images/events/ev10/dead2.jpg']]
<p class="reflection">You feel yourself being transported to the surface, where the forest’s magic transforms your body into one of the many trees on this planet. You feel that you are now part of a higher being. You hear the thousands of voices of the forest.</p>
[[Your human side has died|Resurrect]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "ev7D3background">>
<<audio "bgm_chill" pause>>
<<elsa>>Want to see a little more?<</elsa>><br>
<<say "You" $player.img>>Oh my God, I want to see everything about you.<</say>><br>
<<video "pizzamedia/videos/girls/elsa/elsascene1/6.mp4" >><br>
<p class="reflection">Slowly, she starts to take off her dress until she finally pulls down her bra, revealing her big boobs.</p>
<<elsa>>You know what? I'm hottest down here. Why don't you help me take care of it?<</elsa>><br>
<<say "You" $player.img>>Really? Then I know something that can help you.<</say>><br>
<<video "pizzamedia/videos/girls/elsa/elsascene1/7.mp4" >><br>
<p class="reflection">You grab her panties and pull them down, then you start to caress and open her soft pussy.</p>
<<linkreplace "Don’t make her wait">>
<p class="reflection">You press your dick against her pussy and start to slowly penetrate her.</p>
<<video "pizzamedia/videos/girls/elsa/elsascene1/8.mp4" >><br>
<<say "You" $player.img>>Are you feeling better?<</say>><br>
<<elsa>>Ahhhhh... Ohhh... yes... now I feel so much better...<</elsa>><br>
<<video "pizzamedia/videos/girls/elsa/elsascene1/9.mp4" >><br>
<p class="reflection">She enjoys every thrust you give her. You can feel that her vagina is really tight.</p>
<<elsa>>I love how you fuck me doggy style, it feels so good...<</elsa>><br>
<<say "You" $player.img>>Yeah, you’re so tight.<</say>><br>
<<video "pizzamedia/videos/girls/elsa/elsascene1/10.mp4" >><br>
<p class="reflection">You pick up the pace of your thrusts. She’s so horny she starts spanking her own ass.</p>
<<say "You" $player.img>>Wait, I want to change positions.<</say>><br>
<<elsa>>Which one do you want?<</elsa>><br>
[[Change positions|EV7D13]]<br><br>
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "ev7D3background">>
<p class="reflection">You tell her to lie down on the sofa and get on top of her. You start having sex with her in the missionary position.</p>
<<video "pizzamedia/videos/girls/elsa/elsascene1/11.mp4" >><br>
<<elsa>>Ahhhhh... Mmmm... Ahhhhh...<</elsa>><br>
<<say "You" $player.img>>Fuck... <</say>><br>
<<video "pizzamedia/videos/girls/elsa/elsascene1/12.mp4" >><br>
<p class="reflection">You start fucking her deeper, and she spreads her legs for you.</p>
<<elsa>>Yes... yes... don't stop...<</elsa>><br>
<<say "You" $player.img>>Oh my God... I don't think I can hold back much longer!!<</say>><br>
<<video "pizzamedia/videos/girls/elsa/elsascene1/13.mp4" >><br>
<p class="reflection">You push your dick all the way in, your balls slapping against her pussy, and you feel the precum starting to flow.</p>
<<say "You" $player.img>>I'M CUMMING!!!<</say>><br>
<<elsa>>Cum outside!!<</elsa>><br>
<<video "pizzamedia/videos/girls/elsa/elsascene1/14.mp4" >><br>
<p class="reflection">The pleasure you feel clouds your mind. You fight your instincts not to cum inside her, but you end up thinking clearly and cum outside.</p>
<<elsa>>Ahhhhhh... yes... I needed this so badly...<</elsa>><br>
<p class="reflection">Finally, you say goodbye to her and decide to go back to the pizzeria.</p>
<<set $adventureGirls.elsa.scene1 = true>>
<<if $gameEngine.onRepetition === false>>
[[Go back to the pizzeria|ColdPizza]]
<<else>>
<<link "End Replay">>
<<if $gameEngine.musicOn>>
<<audio "bgm_chill" play>>
<</if>>
<<goto $gameEngine.repetitionReturn>>
<</link>>
<</if>>
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev6Abackground">>
[img['pizzamedia/images/events/ev6/backgroundb.jpg']]
<p class="reflection">You wake up on the burning planet, in the middle of nowhere. You feel as though your penis has been completely crushed by that insatiable creature.</p>
<<set $adventureGirls.demoness.scene1 = true>>
<<link "You've lost the pizza">>
<<goto "LostPizza">>
<</link>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "coldpizzabackground">>
<p class="reflection">The worst sin a delivery guy can commit. You lost the pizza.</p>
[img['pizzamedia/images/events/lostpizza/lostpizza.jpg']]
<p class="reflection">The greatest shame falls on you... Even though this time you think it was worth it.</p>
<br>
<<link "Go back to the pizzeria">>
<<goto "ResetDelivery">>
<</link>>
<!--
[[Pizzeria]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "ev10Dbackground">>
<<say "You" $player.img>>I'm sorry, but I think I'm going to decline your offer.<</say>><br>
<<faelyn>>Would you rather die than have sex with me?<</faelyn>><br>
<<video "pizzamedia/videos/girls/faelyn/faelynscene1/2.mp4" >><br>
<p class="reflection">You can feel your energy starting to rise.</p>
<<say "You" $player.img>>You know what? Actually, I think I'm starting to feel better.<br>I'd better get going.<</say>><br>
<<faelyn>>Okay, wait. I lied to you... I was the snake.<</faelyn>><br>
<<say "You" $player.img>>What are you talking about?<</say>><br>
<<faelyn>>I thought that if I transformed and found some adventurer, by injecting him with a numbing venom I could trick him into helping me with, you know...<br>You really don't like me at all? Am I that ugly?<</faelyn>><br>
<span id="choice2">
<<link "Blame her for the deception">>
<<replace "#choice2">>
<<say "You" $player.img>>Ugly? You know, a lot of the time it’s not about that. What matters is who you are on the inside, and what you did was really low.<</say>><br>
<<faelyn>>I'm really sorry, maybe you're right.<</faelyn>><br>
<<say "You" $player.img>>You know, I had a job to do. I'm not an adventurer. I was trying to deliver something.<</say>><br>
<<faelyn>>Oh, wow, I'm sorry. I didn't think you were working.<</faelyn>><br>
<<say "You" $player.img>>Well, I don't want to be too hard on you either. You're really not that bad. If you change your attitude a little, maybe you can find a guy who loves you.<</say>><br>
<<faelyn>>Thank you so much. I promise I’ll stop cheating.<</faelyn>><br>
<<say "You" $player.img>>That could be a start toward getting better. I have to go now.<</say>><br>
[[Back to the pizzeria|LostPizza]]
<</replace>>
<</link>>
<br><br>
<<link "Forgive her and help her, after all">>
<<replace "#choice2">>
<<say "You" $player.img>>Ugly? You know, a lot of the time it’s not about that. What matters is who you are on the inside, and what you did was really low.<</say>><br>
<<faelyn>>I'm really sorry; maybe you're right.<</faelyn>><br>
<<say "You" $player.img>>Although you’re not really that bad. I don’t think the thing with your eye is that serious.<</say>><br>
<<faelyn>>Do you really think so?<</faelyn>><br>
<<say "You" $player.img>>Of course I do, and you look really sexy in those stockings.<</say>><br>
<<faelyn>>Can you forgive me for cheating on you?<</faelyn>><br>
<<say "You" $player.img>>Of course I can. It wasn’t that big of a deal after all.<br>I’ll accept your deal even though you don’t have to heal me anymore. But no more cheating, okay?<</say>><br>
<<faelyn>>Okay, but I’d like you to tell me I’m beautiful.<</faelyn>><br>
<<say "You" $player.img>>All right, I’ll tell you everything I love about you.<</say>><br>
<<video "pizzamedia/videos/girls/faelyn/faelynscene1/3.mp4" >><br>
<p class="reflection">She lifts her dress slightly, showing you her butt and her legs.</p>
<<say "You" $player.img>>You have a really sexy butt.<</say>><br>
<<faelyn>>Really?<</faelyn>><br>
<<video "pizzamedia/videos/girls/faelyn/faelynscene1/4.mp4" >><br>
<p class="reflection">She lies back on the bed and pulls her dress up, starting to caress her butt and her thighs. She watches you, trying to see your reaction.</p>
[[Take out your penis|EV10C4]]
<</replace>>
<</link>>
</span><br>
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "personalarea">>
<<melissa>>$player.name, hey, why don’t we go for a walk together?<</melissa>><br>
[img['pizzamedia/images/girls/melissa/pose4.jpg']]<br><br>
<<say "You" $player.img>>Do you feel like going for a walk?<</say>><br>
<<melissa>>Yes, I’m a little bored of being in here.<</melissa>><br>
<<say "You" $player.img>>Um… okay, we can go for a walk.<</say>><br>
<p class="reflection">This attitude isn’t typical of $girls.melissa.displayName. As a robot, she shouldn’t be bored, but maybe it’s just part of her programming.</p>
<<melissa>>Do you know anyplace we can go for a walk?<</melissa>><br>
<<say "You" $player.img>>Hmm… I know a park where we could walk together.<</say>><br>
<<melissa>>Okay, I'm going to call a taxi.<</melissa>><br>
<<linkreplace "Go outside and get in the taxi">>
[img['pizzamedia/images/girls/melissa/taxi.jpg']]<br><br>
<p class="reflection">A taxi arrives a few seconds later and pulls up in front of the pizzeria. You get in.</p>
[[You arrive at the park|MelissaScene1B]]
<</linkreplace>>
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev8Cbackground">>
<p class="reflection">You venture into the cave and see a large hole in the ground.</p>
[img['pizzamedia/images/events/ev8/hole1.jpg']]
<p class="reflection">You lean over to look, but it’s completely dark inside.</p>
[img['pizzamedia/images/events/ev8/hole2.jpg']]
<p class="reflection">You throw a stone in and, judjing by the sound, you think it isn't very deep.</p>
<div id="choice">
<div class="actionRow">
<span class="btnChoice">
<<link "Jump in">>
<<goto "EV8C3">>
<</link>>
</span>
<span class="btnChoice">
<<link "Don't jump in(+1❄️)">>
<<replace "#choice">>
<p class="reflection">You decide to wait for a new portal to open, interacting with your surroundings as little as possible.<br>
</p>
[img['pizzamedia/images/events/ev7/wait.jpg']]
<p class="reflection">You see some creatures in the distance and decide not to approach to avoid possible conflict.</p>
<<include "CoolingPizza">>
<<link "A new portal opens">>
<<goto "NewPortal">>
<</link>>
<</replace>>
<</link>>
</span>
</div>
</div>
<!--
[[EV8C3]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev8Cbackground">>
/* Generamos un número aleatorio del 1 al 100 */
<<set _probabilidad = random(1, 100)>>
/* 20% de probabilidad de caer en los pinchos */
<<if _probabilidad <= 20>>
<p class="reflection">You take a deep breath and drop into the darkness through the hole...</p>
[img['pizzamedia/images/events/ev8/die.jpg']]
<p class="reflection">An unbearable pain shoots through your body! At the bottom of the hole was a trap of sharp spikes.</p>
<div id="choice">
<div class="actionRow">
<span class="btnChoice">
<<link "You died">>
<<goto "Resurrect">>
<</link>>
</span>
</div>
</div>
/* 80% de probabilidad de aterrizar a salvo y ver la puerta */
<<else>>
<p class="reflection">You take a deep breath and drop into the darkness through the hole...</p>
[img['pizzamedia/images/events/ev8/basiliskdoor.jpg']]
<p class="reflection">You land with your knees buckling on the cold stone floor. As you get up and let your eyes adjust to the dim light, you see a heavy metal door right in front of you. It’s slightly ajar, as if it had been forced open.</p>
<div id="choice">
<div class="actionRow">
<span class="btnChoice">
<<link "Go through the door">>
<<goto "EV8C4">>
<</link>>
</span>
</div>
</div>
<</if>>
<!--
[[EV8C4]]
[[Resurrect]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev8Dbackground">>
<<set $combatEngine.enemyId = "basilisk">>
<div id="mainScene">
<p class="reflection">You reach a large room with no way out.</p>
[img["pizzamedia/images/enemies/basilisk/pose1.jpg"]]
<<set $upper = "As you enter the room, a giant " + $enemies[$combatEngine.enemyId].name + " appears in front of you, and it doesn’t look very friendly. Its glowing, bloodthirsty eyes stare straight at you.">>
<p class="reflection">$upper</p>
</div>
<div id="choice">
<div id="talkChoices">
<div class="actionRow">
<span class="btnChoice">
<<link "Talk to it">>
<<run window.scrollTo({top: 0, behavior: 'smooth'})>>
<<replace "#mainScene">>
<<say "You" $player.img>>Hey...<</say>><br>
[img["pizzamedia/images/enemies/basilisk/pose1.jpg"]]
<p class="reflection">It’s useless to talk to this hostile creature.</p>
<</replace>>
<<replace "#talkChoices">><</replace>>
<</link>>
</span>
</div>
</div>
<div class="actionRow">
<span class="btnFight">
<<link "Fight">>
<<set $combatEngine.onWin = "NewPortal">>
<<set $combatEngine.onLose = "Resurrect">>
<<goto "StartCombat">>
<</link>>
</span>
<<include "Run">>
</div>
</div>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "allisonscene1b">>
<<allison>>Mmm… it's so big and hard.<</allison>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene1/blowjoba.mp4" >>
<p class="reflection">She starts taking your dick deep in her mouth, and you end up soaked in her saliva.</p>
<<say "You" $player.img>>Keep going, don't stop.<</say>><br>
<<allison>> *Slurp* *Slurp*<</allison>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene1/blowjobb.mp4" >>
<p class="reflection">She tries to take your whole dick into her mouth.</p>
<<allison>>It's so big...<</allison>><br>
<<say "You" $player.img>>Oh shit...<</say>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene1/blowjobc.mp4" >>
<p class="reflection">She keeps taking your dick deep into her mouth without stopping.</p>
[[Fuck her|AllisonScene1D]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "allisonscene2b">>
<<allison>>It's too bad I don't have any spare change to give you, but I hope you like this tip...<</allison>><br>
<<say "You" $player.img>>I think this is the best tip..<</say>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene2/blowjoba.mp4" >>
<p class="reflection">She tries to swallow your whole dick, you grab her by the hair and help her out by fucking her mouth.</p>
<<allison>>I love how hard you have it.<</allison>><br>
<<say "You" $player.img>>I love your mouth... don't stop.<</say>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene2/blowjobb.mp4" >>
<p class="reflection">She starts swallowing your dick over and over again as if her throat were endless.</p>
<<say "You" $player.img>>Let me do it, I want to play with your mouth a little.<</say>><br>
<<allison>> *Gulp* *Gulp* *Gulp*<</allison>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene2/blowjobc.mp4" >>
<p class="reflection">You grab her by the hair, taking control, and start fucking her mouth however you please. You feel your dick completely soaked in her saliva.</p>
[[She climbs on top of you|AllisonScene2D]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "allisonscene3b">>
<<allison2>>OH MY GOD! Is so fucking big.<</allison2>><br>
<<say "You" $player.img>>Ohhh, yes.<</say>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene3/blowjoba.mp4" >>
<p class="reflection">She grabs your penis and balls tightly, then starts sucking your dick.</p>
<<allison2>> Ahhhh... Ahhh... Ahhh... *Gulp* *Gulp*<</allison2>><br>
<<say "You" $player.img>>Ohhh wow...<</say>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene3/blowjobb.mp4" >>
<p class="reflection">She tries to swallow your entire dick. You hear choking sounds as she tries, and everything is soaked in her saliva.</p>
<<linkreplace "Play with her pussy">>
<<allison2>>Oh my God... Oh my God... Ahhh...<</allison2>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene3/lickpussya.mp4" >>
<p class="reflection">She lies down on the sofa. Her vagina is completely soaked. You start caressing and licking her clitoris, and she feels immense pleasure.</p>
<<say "You" $player.img>>Do you like it?<</say>><br>
<<allison2>>Yes, yes, yes. Oh my God, yes... it feels so good.<</allison2>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene3/lickpussyb.mp4" >>
<p class="reflection">You caress her clitoris with your tongue. She loves it.</p>
[[Fuck her|AllisonScene3D]]
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "jessicascene1b">>
<<jessica>>At least it looks like the wait was worth it.<</jessica>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene1/blowjoba.mp4" >>
<p class="reflection">She grabs your dick and starts sucking it.</p>
<<jessica>>This dick is really good. I didn't expect it to be that big.<</jessica>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene1/blowjobb.mp4" >>
<<jessica>> *Gulp* *Gulp*<</jessica>><br>
<<say "You" $player.img>>Your mouth feels amazing.<</say>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene1/blowjobc.mp4" >>
<p class="reflection">She slowly takes your dick into her mouth. Little by little, she swallows it until it's completely inside her mouth.<br>You feel the warmth of her breath on your dick.</p>
<<linkreplace "She lies back on the bed">>
<<jessica>>It feels great to have that big dick between my big boobs, doesn’t it?<</jessica>><br>
<<say "You" $player.img>>I love your big boobs.<</say>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene1/titsfucka.mp4" >>
<p class="reflection">You slide your dick between her big boobs and start fucking them. Her boobs feel so soft.</p>
<<say "You" $player.img>>Oh my God... you have incredible boobs.<</say>><br>
<<jessica>>I love feeling your dick between them.<</jessica>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene1/titsfuckb.mp4" >>
<p class="reflection">She enjoys every second you fuck her boobs, but you’re enjoying it even more.</p>
[[She climbs on top of you|JessicaScene1D]]
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "jessicascene2b">>
<<jessica>>Mmm... It's so good.<</jessica>><br>
<<say "You" $player.img>>Ahhh... Ahhh...<</say>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene2/blowjoba.mp4" >>
<<jessica>>I couldn't wait to try this dick again.<</jessica>><br>
<<say "You" $player.img>>Ahhh... Ahhh...<</say>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene2/blowjobb.mp4" >>
<p class="reflection">She licks and kisses your penis and starts sucking your tip.</p>
[[She climbs on top of you|JessicaScene2D]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "juliascene2b">>
<<julia>>$player.name, I want you to teach me something new. I want to learn something you do on your planet.<</julia>><br>
<<say "You" $player.img>>All right, I'll teach you something.<</say>><br>
<<video "pizzamedia/videos/girls/julia/juliascene2/blowjoba.mp4" >>
<p class="reflection">She starts sucking your dick. When she asks you to teach her something new, you grab her by the head and start fucking her mouth.</p>
<<julia>> *Gulp* *Gulp* <br>Ahhhh... I almost choked.<</julia>><br>
<<video "pizzamedia/videos/girls/julia/juliascene2/blowjobb.mp4" >>
<p class="reflection">You keep fucking her mouth until she’s out of breath, while she strokes your balls.</p>
<<julia>>I hadn’t noticed how big your balls are. Don’t they hurt?<</julia>><br>
<<say "You" $player.img>>Ja, ja, ja, not ususally.<</say>><br>
<<julia>>They’re huge!! I love stroking them. They’re so soft.<</julia>><br>
<<video "pizzamedia/videos/girls/julia/juliascene2/blowjobc.mp4" >>
<p class="reflection">She grabs and sucks your balls. You feel her soft tongue swirling around them.</p>
[[She wants more of you|JuliaScene2D]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "juliascene1b">>
<<julia>>Hmm... come on, tell me about it.<</julia>><br>
<<say 'You' $player.img>>Seriously... fuck... I can't.<</say>><br>
<<video "pizzamedia/videos/girls/julia/juliascene1/blowjoba.mp4" >>
<p class="reflection">She starts gently sucking your dick. You feel her lips wrap around your dick.</p>
<<julia>>I hope I'm doing this right. It's my first time.<</julia>><br>
<<say 'You' $player.img>>You're doing great.<</say>><br>
<<video "pizzamedia/videos/girls/julia/juliascene1/blowjobb.mp4" >>
<p class="reflection">She picks up the pace, testing her limits with your dick. She's really excited to try a dick.</p>
<<julia>>I’ve been waiting so long to find out what a human penis is like...<</julia>><br>
<<say 'You' $player.img>>Wait, are you a virgin?<</say>><br>
<<julia>>On this planet, almost all of us are virgins. Only a lucky few have the pleasure of having a husband.<</julia>><br>
<<video "pizzamedia/videos/girls/julia/juliascene1/blowjobc.mp4" >>
<p class="reflection">She enjoys your penis, trying to take it all the way into her mouth.</p>
<<say 'You' $player.img>>Well, you’re doing pretty well.<</say>><br>
<<julia>>I’ve practiced a lot. I’ve spent my whole life dreaming of having this chance someday.<</julia>><br>
<<video "pizzamedia/videos/girls/julia/juliascene1/blowjoba.mp4" >>
<p class="reflection">She begins to gently suck your penis. You feel her lips wrap around your dick.</p>
[[Her first time|JuliaScene1D]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "lindseyscene1b">>
<<lindsey>>That's how I like my pizza. With extra salami.<</lindsey>><br>
<<say "You" $player.img>>Ohhh... it feels so good...<</say>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene1/blowjoba.mp4" >>
<p class="reflection">She grabs your penis and starts working on it. Soon your penis is completely hard.</p>
<<lindsey>>Let's take my girls out for a little walk.<</lindsey>><br>
<<say "You" $player.img>>Oh my God... you have perfect boobs.<</say>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene1/titsfucka.mp4" >>
<p class="reflection">She puts your penis between her big boobs and tells you to start moving your hips to fuck them.</p>
<<lindsey>>Yes... Yes... Yes... enjoy it, baby.<</lindsey>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene1/titsfuckb.mp4" >>
<p class="reflection">She enjoys watching you feel immense pleasure. Her big boobs feel incredibly soft.</p>
<<lindsey>>So fucking sexy... Oh my God.... Just like that, just like that...<</lindsey>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene1/titsfuckc.mp4" >>
<p class="reflection">Everything is soaked in her saliva. She playfully moves her big boobs.</p>
[[She wants to put your salami to another use|LindseyScene1C]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "lindseyscene2c">>
<<lindsey>>I've missed you so much... especially that huge salami of yours.<</lindsey>><br>
<<say "You" $player.img>>I've missed you too.<</say>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene2/blowjoba.mp4" >>
<p class="reflection">She kneels in front of you and starts to drench you with her saliva and suck your dick.</p>
<<lindsey>>Mmmm.... Mmmm... Just like that.<</lindsey>><br>
<<say "You" $player.img>>Oh my God... It's so good...<</say>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene2/blowjobb.mp4" >><br>
<<lindsey>>Get this my girls inside. I guess you wanna to see them that bad.<</lindsey>><br>
<<say "You" $player.img>>You can't imagine how much I've missed them.<</say>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene2/titsfucka.mp4" >>
<p class="reflection">She unhooks her bra and slips your dick between her big boobs.</p>
<<say "You" $player.img>>Yes... right there... Oh my God... your fucking tit is feeling amazing.<</say>><br>
<<lindsey>>I'm glad you like them, honey.<</lindsey>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene2/titsfuckb.mp4" >>
<p class="reflection">She starts playing with your dick, sliding it between her perfect boobs.</p>
[[She climbs on top of you|LindseyScene2E]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "rebeccascene1b">>
<<rebecca>>Mmmm... Ahhhh...<</rebecca>><br>
<<say "You" $player.img>>Yes...<</say>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene1/blowjoba.mp4" >>
<p class="reflection">She grabs your penis and begins to suck it gently. Soon she starts to swallow it whole, and you feel the warmth of her throat.</p>
<<rebecca>> *Gulp* *Gulp*<br>Ahhhhh...<</rebecca>><br>
<<say "You" $player.img>>Wow...<</say>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene1/blowjobb.mp4" >>
<p class="reflection">She grabs your balls as she chokes with your dick.</p>
<<rebecca>> *Ghhhh* *Ghhhh*<</rebecca>><br>
<<say "You" $player.img>>Jesus! Wow!<</say>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene1/blowjobc.mp4" >>
<p class="reflection">She takes your whole cock in her mouth over and over again, with her hands behind her back, savoring every inch of your penis as it slides into her mouth.</p>
<<rebecca>>Yeah, you wanna put it in these big tits?<</rebecca>><br>
<<say "You" $player.img>>I love those tits. They're so good.<</say>><br>
<<rebecca>>I'm going to trap that cock in there.<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene1/titsfucka.mp4" >>
<p class="reflection">You watch as she starts to pull down her top, then she leans toward you and slips your dick between her big boobs through her bra.</p>
<<say "You" $player.img>>This is real life?... Ohh...<</say>><br>
<<rebecca>>Yeeesss... That's even tighter on that dick.<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene1/titsfuckb.mp4" >>
<p class="reflection">She picks up the pace of her boobs bouncing. You watch them bounce over and over with your dick between them.</p>
<<say "You" $player.img>>Oh God, you don't understand how good that looks... Yeah, keep going, keep going.<</say>><br>
<<rebecca>>Ohh, yeeahh...<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene1/titsfuckc.mp4" >><br>
[[Fuck her|RebeccaScene1D]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "rebeccascene2b">>
<<rebecca>>Oh my God!! This is exactly what I needed.<</rebecca>><br>
<<say "You" $player.img>>Ahhh...<</say>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene2/blowjoba.mp4" >>
<p class="reflection">You unzip your pants and take out your dick. She immediately grabs it and starts sucking it.</p>
<<rebecca>>Oh, yes... honey, I've missed this big dick so much.<</rebecca>><br>
<<say "You" $player.img>>Ohhh.... fuck... yes, yes, yes.<</say>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene2/blowjobb.mp4" >>
<p class="reflection">She starts licking your balls, trying to swallow your whole dick.</p>
<<say "You" $player.img>>Ohhhh... fuckk... Ohhhh... fuck...<</say>><br>
<<rebecca>> *Gulp* *Gulp*<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene2/blowjobc.mp4" >>
<p class="reflection">She starts sucking your dick faster. Everything is soaked in her saliva. It’s as if she’s trying to devour you.</p>
<<rebecca>>Do you want to see my big fucking tits?<</rebecca>><br>
<<say "You" $player.img>>Yes, I love your big tits.<</say>><br>
<<rebecca>>Stick that fucking cock... Yeah, come on...<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene2/titsfucka.mp4" >>
<p class="reflection">She lowers the straps of her bodysuit and shows you her big boobs, then slides your dick between them and starts moving them up and down.</p>
[[She wants you inside her|RebeccaScene2E]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "savannahscene1a">>
<<savannah>>I hope you can last long enough to satisfy me.<</savannah>><br>
<<say "You" $player.img>>I'll try to hold back as long as I can.<</say>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene1/blowjoba.mp4" >>
<p class="reflection">She grabs your dick and starts sucking it. You can't believe this is really happening.</p>
<<savannah>>I didn't expect you to have such a nice dick. It's hard for me to take the whole thing in my mouth.<</savannah>><br>
<<say "You" $player.img>>Ohhh fuck...<</say>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene1/blowjobb.mp4" >>
<p class="reflection">She pushes her head hard against your dick and you feel the heat of her breath.</p>
<<savannah>>Do you like my boobs? Don’t you think they’re perfect?<</savannah>><br>
<<say "You" $player.img>>I’ve never seen boobs as perfect as yours.<</say>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene1/titsfucka.mp4" >>
<p class="reflection">She grabs your dick, soaked with her saliva, and starts jerking you off with her boobs.</p>
[[She climbs on top of you|SavannahScene1C]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "savannahscene2a">>
<<savannah>>What are you waiting for? Come and please your goddess.<</savannah>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene2/touchpussya.mp4" >>
<p class="reflection">She lies back on the bed and orders you to start caressing her pussy.</p>
<<say "You" $player.img>>Your pussy is so soft...<</say>><br>
<<savannah>>That's it, keep going. You're going to make me so wet.<</savannah>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene2/touchpussyb.mp4" >>
<p class="reflection">You caress her clitoris faster. She enjoys every touch you give her.</p>
<<savannah>>I think you've earned a reward.<</savannah>><br>
<<linkreplace "She gives you her gift">>
<p class="reflection">She starts sucking and licking your dick.</p>
<<video "pizzamedia/videos/girls/savannah/savannahscene2/blowjoba.mp4" >>
<<savannah>> *Ghhh* *Ghhh*<</savannah>><br>
<<say "You" $player.img>>God... your mouth feels incredible.<</say>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene2/blowjobb.mp4" >>
<p class="reflection">She swallows your dick completely over and over again, as if her mouth had no limits. You feel yourself getting soaked with her saliva.</p>
<<savannah>> *Gulp* *Gulp*`*Gulp*<</savannah>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene2/facefucka.mp4" >>
<p class="reflection">You climb on top of her and start fucking her mouth as if it were her pussy. She swallows your dick all the way down to your balls. It’s as if her throat has no end.</p>
[[She rides your dick|SavannahScene2C]]
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "allisonscene1b">>
<<allison>>Ahhh... Oh my God...<</allison>><br>
<<say "You" $player.img>>I love it when you go slow.<</say>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene1/cowgirla.mp4" >>
<p class="reflection">She climbs on top of you and starts moving up and down slowly...</p>
<<allison>>Mmm... Mmm... Ahhh...<</allison>><br>
<<say "You" $player.img>>Your pussy feels so good...<</say>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene1/cowgirlb.mp4" >>
<p class="reflection">While she's on top, you start moving your hips, trying to fuck her harder.</p>
<<linkreplace "She turns around">>
<p class="reflection">She turns around... you can see your dick slide into her tight pussy.</p>
<<video "pizzamedia/videos/girls/allison/allisonscene1/reversecowgirla.mp4" >><br>
<<say "You" $player.img>>I love your butt.<</say>><br>
<<allison>>Spank it! Spank it hard!<</allison>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene1/reversecowgirlb.mp4" >>
<p class="reflection">She picks up the pace, and you start spanking her ass hard.</p>
[[Put her on all fours|AllisonScene1E]]
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "allisonscene1b">>
<<say "You" $player.img>>Is that how you like it?<</say>><br>
<<allison>>Oh my God... I love it like that, don't stop, please...<</allison>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene1/doggya.mp4" >>
<p class="reflection">You put her on all fours and take control of the situation.</p>
<<allison>>Oh fuck... Oh fuck...<</allison>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene1/doggyb.mp4" >>
<p class="reflection">You pick up the pace and start thrusting into her harder. Her vagina begins to open up for you.</p>
<<linkreplace "She lies down on the sofa">>
<p class="reflection">She lies down on the sofa. As you fuck her, she starts to stroke her clitoris.</p>
<<video "pizzamedia/videos/girls/allison/allisonscene1/missionarya.mp4" >><br>
<<allison>>Fuck... fuck... fuck...<</allison>><br>
<<say "You" $player.img>>I can't hold back much longer.<</say>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene1/missionaryb.mp4" >>
<p class="reflection">She rubs her clitoris hard, and you feel her vagina squeeze your penis tightly.</p>
<<say "You" $player.img>>I can't hold back any longer!!<</say>><br>
<<allison>>Mmm, give me all your delicious cum...<</allison>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene1/blowjobcum.mp4" >>
<p class="reflection">You feel like you're about to explode. She kneels in front of you, waiting for you to cum in her mouth.</p>
<p class="reflection">Finally, you say goodbye to her and head back to the pizzeria.</p>
<<set $eventGirls.allison.scenes.scene1 = true>>
<<if $gameEngine.onRepetition === false>>
[[Back to the pizzeria|SuccessfulDelivery]]
<<else>>
<<link "End Replay">>
<<if $gameEngine.musicOn>>
<<audio "bgm_chill" play>>
<</if>>
<<goto $gameEngine.repetitionReturn>>
<</link>>
<</if>>
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "allisonscene2b">>
<p class="reflection">She climbs on top of you. Her tight vagina wraps around your penis, and you feel it start to get wet with her juices.</p>
<<video "pizzamedia/videos/girls/allison/allisonscene2/cowgirla.mp4" >><br>
<<allison>>Do you like my pussy?<</allison>><br>
<<say "You" $player.img>>Fuck, your pussy feels so good...<</say>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene2/cowgirlb.mp4" >>
<p class="reflection">She rides you harder. Her pussy is wide open for you.</p>
<<allison>>Ohhh.. Ohhhh God...<</allison>><br>
<<say "You" $player.img>>Don't stop, don't stop.<</say>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene2/cowgirlc.mp4" >>
<p class="reflection">She has complete control over you. You start to feel immense pleasure as she lowers herself all the way down and you feel your penis reach the deepest part of her.</p>
<<linkreplace "She turns around">>
<<allison>>Is that how you like it, baby?<</allison>><br>
<<say "You" $player.img>>I love it, don’t stop.<</say>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene2/reversecowgirla.mp4" >>
<p class="reflection">She climbs on top of you. Her boobs bounce nonstop as she moves up and down.</p>
<<say "You" $player.img>>I'm going to fuck you really hard.<</say>><br>
<<allison>>AHHHHH... FUCKK!!<</allison>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene2/reversecowgirlb.mp4" >>
<p class="reflection">You start moving your hips and fucking her as hard as you can. She can't stop screaming with pleasure.</p>
[[Get her on all fours|AllisonScene2E]]
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "allisonscene2b">>
<p class="reflection">She gets on all fours. In this position, you can see her perfect butt. She's eager to feel your dick inside her again.</p>
<<video "pizzamedia/videos/girls/allison/allisonscene2/doggya.mp4" >><br>
<<say "You" $player.img>>You have a perfect butt.<</say>><br>
<<allison>>Yes... Yes... fuck me harder, I want you to fuck me harder.<</allison>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene2/doggyb.mp4" >>
<p class="reflection">She spreads her buttocks with her hands so you can fuck her as deep as possible.</p>
<<say "You" $player.img>>I'm going to fuck you really hard.<</say>><br>
<<allison>>Yes... Yes... that's it, fuck me really hard!!<</allison>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene2/doggyc.mp4" >>
<p class="reflection">In this position, her pussy is completely at your disposal. She can’t stop moaning. You fuck her as hard as you can.</p>
[[She lies back on the sofa|AllisonScene2F]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "allisonscene3b">>
<p class="reflection">She lies back on the sofa waiting for you to fuck her. Your dick, soaked with her vaginal juices, slides right in.</p>
<<video "pizzamedia/videos/girls/allison/allisonscene3/missionarya.mp4" >>
<<allison>>Yeah, it feels so fucking good when you push it all the way inside me.<</allison>><br>
<<say "You" $player.img>>Shit, I'm already ready to cum.<</say>><br>
<<allison>>It’s because of the pill. Don’t hold back. Cum a lot for me.<</allison>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene3/missionaryb.mp4" >>
<p class="reflection">Everything’s soaked. You’ve only been inside her for a little while, but you feel like you’re about to cum.</p>
<<say "You" $player.img>>Im cumming, Im cumming!!<</say>><br>
<<allison>>Yeees, cum inside me!!<</allison>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene3/missionarycum.mp4" >>
<p class="reflection">You fill her vagina with your semen. As you pull your penis out, you watch a stream of your semen flowing out of her pussy.</p>
<<say "You" $player.img>>Ohhhh... yeah, push it out.<</say>><br>
<<allison>>Come on, I want a second round.<</allison>><br>
<<linkreplace "She climbs on top of you">>
<p class="reflection">She climbs on top of you. You just cum inside her, but you feel like you can fuck her again.</p>
<<video "pizzamedia/videos/girls/allison/allisonscene3/cowgirla.mp4" >><br>
<<allison>>Ohhh, make me cum.<</allison>><br>
<<say "You" $player.img>>Ohhhh... fuck yeah....<</say>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene3/cowgirlb.mp4" >>
<p class="reflection">You feel your dick reaching deep inside her vagina. Semen is dripping everywhere.</p>
<<say "You" $player.img>>Ohhhh... God... I'm going to cum inside you again!!<</say>><br>
<<allison>>Oh yeah, feels so fucking good...<</allison>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene3/cowgirlcum.mp4" >>
<p class="reflection">You feel yourself shooting your cum deep inside her vagina again. You've never cum like this before. It must be the effects of the pill.</p>
<<allison>>I feel so full of your cum... but I want more!<</allison>><br>
[[She's insatiable|AllisonScene3E]]
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "allisonscene3b">>
<<allison>>Oh my God... Oh my God... Yeah, fuck my pussy.<</allison>><br>
<<say "You" $player.img>>Ahhhh... yes...<</say>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene3/reversecowgirla.mp4" >>
<p class="reflection">She turns around, you grab her by the hips, and keep fucking her. Your penis remains fully erect.</p>
<<allison>>Make me cum, make me cum...<</allison>><br>
<<say "You" $player.img>>Ohhhhhh... yes... I'm going to make you cum.<</say>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene3/reversecowgirlb.mp4" >>
<p class="reflection">She's really horny. She starts rubbing her clitoris while you pick up the pace.</p>
<<say "You" $player.img>>Ohhhh, shit!! Ohhh, God!! Again!!<</say>><br>
<<allison>>Ahhhh... Ahhh...<</allison>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene3/reversecowgirlcum.mp4" >>
<p class="reflection">You can't hold back for even a second longer and end up exploding inside her once more.</p>
<<allison>>More!! More!!<</allison>><br>
<<say "You" $player.img>>I don’t know if I can.<</say>><br>
<<allison>>One last time!! Come on!!<</allison>><br>
<<linkreplace "One last time">>
<<allison>>Oh my God, oh my God... It's so big... It's so big...<</allison>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene3/doggya.mp4" >>
<p class="reflection">She gives herself to you. You grab her by the hips and start drilling her pussy with your dick.</p>
<<allison>>Ohhhh, ohhhh... you make me cum.<</allison>><br>
<<say "You" $player.img>>I’m going to break your pussy.<</say>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene3/doggyb.mp4" >>
<p class="reflection">Without mercy, you start fucking her harder. You feel her pussy give way to your big dick.</p>
<<say "You" $player.img>>I’m going to fill your pussy up again!!!<</say>><br>
<<allison>>Ohhh!! Ohhh!! Oh my God!!<</allison>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene3/doggycum.mp4" >>
<p class="reflection">You feel yourself filling her vagina for the fourth time. You’ve never cum so many times in a row before.</p>
[[Pull your dick out|AllisonScene3F]]
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "allisonscene3b">>
<<say "You" $player.img>>Wait, what are you doing?!<</say>><br>
<<allison>>I'm sure there's still something left inside those big balls.<</allison>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene3/blowjobc.mp4" >>
<p class="reflection">She kneels down and starts sucking your dick again. You grab her by the hair and start fucking her mouth.</p>
<<say "You" $player.img>>Shit, my balls are going to explode!!<</say>><br>
<<allison>>Yeah, yeah, give me everything you've got!! Cum for me!!!<</allison>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene3/blowjobcum.mp4" >>
<p class="reflection">You end up shooting your load into her mouth. She grabs your dick and swallows all your cum. Your balls are completely empty; you feel like there isn’t a single drop left inside.</p>
<p class="reflection">Finally, you say goodbye to her and head back to the pizzeria.</p>
<<set $eventGirls.allison.scene3 = true>>
<<if $gameEngine.onRepetition === false>>
[[Go back to the pizzeria|SuccessfulDelivery]]
<<else>>
<<link "End Replay">>
<<if $gameEngine.musicOn>>
<<audio "bgm_chill" play>>
<</if>>
<<goto $gameEngine.repetitionReturn>>
<</link>>
<</if>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "jessicascene1b">>
<<jessica>>Ahhh... it feels so good.<</jessica>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene1/cowgirla.mp4" >>
<p class="reflection">She climbs on top of you and guides your dick to her hole until you finally slide inside her.</p>
<<jessica>>Uhhh... my butt is bouncing on you...<</jessica>><br>
<<say "You" $player.img>>I love how your ass bounces on top of me.<</say>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene1/cowgirlb.mp4" >>
<p class="reflection">She picks up the pace. She starts moving up and down, and your dick starts getting soaked in her pussy juices.</p>
<<jessica>>Ahhhhh... Ahhhh... Ahhhh... Fuck! Fuck!!<</jessica>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene1/cowgirlc.mp4" >>
<p class="reflection">She picks up the pace. Her big boobs keep bouncing up and down to the rhythm of her wide hips.</p>
<<linkreplace "She turns around">>
<<jessica>>Is that how you like it, baby? Today you're mine.<</jessica>><br>
<<say "You" $player.img>>That’s how I love it. I love watching your ass.<</say>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene1/reversecowgirla.mp4" >>
<p class="reflection">She turns around, showing you her big ass. You quickly guide your dick into her hole.</p>
<<jessica>>You’re not getting away today. I’m going to milk every last drop out of you.<</jessica>><br>
<<say "You" $player.img>>Ohh... fuck...<</say>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene1/reversecowgirlb.mp4" >>
<p class="reflection">She picks up the pace, your penis goes deeper and deeper into her vagina, and you feel like you couldn't possibly escape right now.</p>
<<jessica>>Ahhhhhh... Ahhhh... fuck... fuck... yes...<</jessica>><br>
<<say "You" $player.img>>If you keep this up, I don't know how much longer I can hold back.<</say>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene1/reversecowgirlc.mp4" >>
<<jessica>>You'd better hold back for me. I want you to stay hard a little longer.<</jessica>><br>
[[Hold back|JessicaScene1E]]
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "jessicascene1b">>
<<jessica>>That's it, baby, show me what you can do with that big dick.<</jessica>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene1/doggya.mp4" >>
<p class="reflection">She gets on all fours and orders you to start fucking her.</p>
<<jessica>>Faster, I want you to fuck me harder.<</jessica>><br>
<<say "You" $player.img>>I can't. If I go any faster, I'm going to cum.<</say>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene1/doggyb.mp4" >>
<p class="reflection">Watching her big ass while you fuck her brings you quickly to the brink of orgasm.</p>
<<jessica>>Don't even think about it. You have to hold back for me.<br>Let’s change positions. I don’t want you to cum yet.<</jessica>><br>
<<linkreplace "She changes positions">>
<p class="reflection">She lies down on the bed, and you start fucking her in the missionary position. You feel like you’re very close to orgasm, but you try to hold back.</p>
<<video "pizzamedia/videos/girls/jessica/jessicascene1/missionarya.mp4" >>
<<jessica>>Ohh God, your dick feel so good. Yeah, all of that deep inside me.<</jessica>><br>
<<say "You" $player.img>>I'm going to shove it all the way in.<</say>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene1/missionaryb.mp4" >>
<p class="reflection">With every thrust, you try to reach the deepest part of her vagina.</p>
<<jessica>>Fuckkk! Ahhh... Fuckkk!! Fuckkk!!<</jessica>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene1/missionaryc.mp4" >>
<p class="reflection">Her vagina is wide open for you. She holds her legs apart so you can fill her vagina with your dick.</p>
[[You can't hold back any longer|JessicaScene1F]]
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "jessicascene2b">>
<<jessica>>Ahhhhh!! Yes! Fuck! fuck!<</jessica>><br>
<<say "You" $player.img>>Damn, your vagina feels so good.<</say>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene2/cowgirla.mp4" >>
<p class="reflection">She climbs on top of you and guides your dick into her pussy. She rides your dick.</p>
<<jessica>>Yeah give it to me, it's all I want.<</jessica>><br>
<<say "You" $player.img>>Ohh... fuck...<</say>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene2/cowgirlb.mp4" >>
<p class="reflection">She starts bouncing harder. Her pussy feels incredible.</p>
<<jessica>>Ohh, I like that deep inside me.<</jessica>><br>
<<say "You" $player.img>>It feels so good inside you.<</say>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene2/cowgirlc.mp4" >>
<p class="reflection">She slows down the pace and pushes down hard. You feel your dick completely inside her. You feel immense pleasure.</p>
<<linkreplace "She turns around">>
<<jessica>>Is that how you like it, baby?<</jessica>><br>
<<say "You" $player.img>>I love it in this position.<</say>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene2/reversecowgirla.mp4" >><br>
<p class="reflection">She climbs on top of you, and right in front of you are her big boobs.<br>You grab her big ass with your hands as she starts bouncing gently on top of you.</p>
<<jessica>>It feels so good to have this big hard dick inside me.<</jessica>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene2/reversecowgirlb.mp4" >><br>
<p class="reflection">She picks up the pace while she spreads her buttocks with her hands, trying to get your dick as deep inside her as possible.</p>
[[Put her on all fours|JessicaScene2E]]
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "jessicascene2b">>
<<jessica>>Ahhhh... Ohhh... Holy fuck...<</jessica>><br>
<<say "You" $player.img>>I love it in this position.<</say>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene2/doggya.mp4" >>
<p class="reflection">She gets on all fours, and you feel like you're in control now.</p>
<<jessica>>Yeah... Oh, much in... ahh, deep inside that pussy.<</jessica>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene2/doggyb.mp4" >><br>
<<jessica>>Wait, let me lie down. I want to see your face as you fuck a goddess like me.<</jessica>><br>
<<linkreplace "She lies down on the sofa">>
<<jessica>>Yeah, thats all i want... Yeah, give it to me. Your cock feels so good inside me.<</jessica>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene2/missionarya.mp4" >>
<p class="reflection">She lies back on the sofa and spreads her legs wide open for you. You start to penetrate her.</p>
<<say "You" $player.img>>I love watching your big boobs bounce.<</say>><br>
<<jessica>>Yes, fuck me harder so they bounce more. That's all I want.<</jessica>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene2/missionaryb.mp4" >>
<p class="reflection">With every thrust, you watch her boobs bounce over and over again.</p>
<<say "You" $player.img>>I’m getting close. Can I cum inside you?<</say>><br>
<<jessica>>This time I want you to fill me up. I want every last drop inside my pussy.<</jessica>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene2/missionarycuma.mp4" >>
<p class="reflection">You feel yourself getting close. Her vagina feels completely open and dilated for you.</p>
<<say "You" $player.img>>I don't know how much longer I can hold back. Are you sure I can cum inside you?<</say>><br>
<<jessica>>Ohhhh... that's right, that's all you want.<br>Give me that wet sperm deep inside me.<</jessica>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene2/missionarycumb.mp4" >>
<p class="reflection">You feel like your balls are about to explode. You don't think you can hold back for even a second longer inside her.</p>
<<say "You" $player.img>>Ohhhh... fuck...<</say>><br>
<<jessica>>Mmmm... Ahhh... Fuck...<</jessica>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene2/missionarycumc.mp4" >>
<p class="reflection">You unload all your semen inside her vagina. You feel yourself filling her completely.<br>As you pull your penis out, a stream of cum trickles from her pussy.</p>
<p class="reflection">Finally, you say goodbye to her and head back to the pizzeria.</p>
<<set $eventGirls.jessica.scene2 = true>>
<<if $gameEngine.onRepetition === false>>
[[Go back to the pizzeria|SuccessfulDelivery]]
<<else>>
<<link "End Replay">>
<<if $gameEngine.musicOn>>
<<audio "bgm_chill" play>>
<</if>>
<<goto $gameEngine.repetitionReturn>>
<</link>>
<</if>>
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "juliascene1b">>
<<julia>>I never thought it would feel this good to have a real penis inside me. This is like a dream come true for me.<</julia>><br>
<<video "pizzamedia/videos/girls/julia/juliascene1/cowgirla.mp4" >>
<p class="reflection">She climbs on top of you, guides your penis into her vagina, and you start fucking her. Her vagina feels incredibly tight.</p>
<<julia>>Fuuuuckkk... Do you guys all have them that big on your planet? Are they always that big?<</julia>><br>
<<say 'You' $player.img>>I don’t know, I don’t usually pay attention to that kind of thing, jajaja.<</say>><br>
<<video "pizzamedia/videos/girls/julia/juliascene1/cowgirlb.mp4" >>
<p class="reflection">She starts moving her hips, taking your penis deep inside her vagina.</p>
<<linkreplace "Put her on all fours">>
<<julia>>Ohhh... Fuckk... In this position, it feels even bigger. How is that possible?<</julia>><br>
<<video "pizzamedia/videos/girls/julia/juliascene1/doggya.mp4" >>
<p class="reflection">She gets on all fours. You have a perfect view of her ass as she moves it, enjoying your dick.</p>
<<say 'You' $player.img>>Let me move.<</say>><br>
<<julia>>Ohhh... yes... that’s so much better.<</julia>><br>
<<video "pizzamedia/videos/girls/julia/juliascene1/doggyb.mp4" >>
<p class="reflection">You take control and start fucking her hard. She feels immense pleasure.</p>
<<say 'You' $player.img>>Do you like that better?<</say>><br>
<<julia>>Yes... yes, I love the feeling of you filling me up with your penis.<</julia>><br>
<<video "pizzamedia/videos/girls/julia/juliascene1/doggyc.mp4" >>
<p class="reflection">You pick up the pace, trying to go as deep as possible inside her without hurting her.</p>
<<say 'You' $player.img>>Am I hurting you? Do you want me to go harder?<</say>><br>
<<julia>>Please, don't hold back. I want to make the most of this moment.<</julia>><br>
<<video "pizzamedia/videos/girls/julia/juliascene1/doggyd.mp4" >>
<p class="reflection">You grab her by the back of her neck and push her down onto the bed, starting to fuck her harder.</p>
[[She readjusts|JuliaScene1E]]
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "juliascene1b">>
<p class="reflection">She lies down on the bed. You start fucking her hard, feeling her vagina stretch with every thrust.</p>
<<video "pizzamedia/videos/girls/julia/juliascene1/missionarya.mp4" >><br>
<<julia>>Ohhh... Ahhhh...<</julia>><br>
<<say 'You' $player.img>>Fuck... you're so wet.<</say>><br>
<<video "pizzamedia/videos/girls/julia/juliascene1/missionaryb.mp4" >>
<p class="reflection">Her vagina is wide open for you. You feel her vaginal juices mixing with your pre-cum.</p>
<<julia>>Ohhhh... Yeah... Ahhh... Ahhh... Yes!!<</julia>><br>
<<video "pizzamedia/videos/girls/julia/juliascene1/sidefucka.mp4" >>
<p class="reflection">You lie down next to her and start fucking her in this new position, feeling your balls slap against her pussy.</p>
<<julia>>Yes, yes, touch me there. It feels so good while you fill me with your dick.<</julia>><br>
<<video "pizzamedia/videos/girls/julia/juliascene1/sidefuckb.mp4" >>
<p class="reflection">You start stimulating her clitoris and notice her vagina spasming around your penis.</p>
<<say 'You' $player.img>>Shit!! I’m gonna cum!!<</say>><br>
<<julia>>What do I do??<</julia>><br>
<<say 'You' $player.img>>Open your mouth.<</say>><br>
<<video "pizzamedia/videos/girls/julia/juliascene1/blowjobcum.mp4" >>
<p class="reflection">She follows your instructions and opens her mouth as she waits. You end up shooting your cum into her mouth.<br>She plays with your cum until she finally swallows it.</p>
<<julia>>Mmmm... I didn’t think it would taste so good.<</julia>><br>
<p class="reflection">Finally, you say goodbye to her and head back to the pizzeria.</p>
<<set $eventGirls.julia.scene1 = true>>
<<if $gameEngine.onRepetition === false>>
[[Go back to the pizzeria|SuccessfulDelivery]]
<<else>>
<<link "End Replay">>
<<if $gameEngine.musicOn>>
<<audio "bgm_chill" play>>
<</if>>
<<goto $gameEngine.repetitionReturn>>
<</link>>
<</if>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "juliascene2b">>
<<julia>>$player.name, tell me what you like most about me.<</julia>><br>
<<say "You" $player.img>>You have a really sexy butt.<</say>><br>
<<julia>>Do you like it when I move it like this?<</julia>><br>
<<video "pizzamedia/videos/girls/julia/juliascene2/reversecowgirla.mp4" >>
<p class="reflection">She turns around, giving you a perfect view of her butt as she rides your dick.</p>
<<say "You" $player.img>>I love it when you move it like that.<</say>><br>
<<julia>>Ohhhh... fuck... I love it when you stick it all the way inside me.<</julia>><br>
<<video "pizzamedia/videos/girls/julia/juliascene2/reversecowgirlb.mp4" >>
<p class="reflection">She starts thrusting harder and harder. You penetrate her deeply as you feel her vagina start to stretch wider.</p>
<<julia>>I want you to fuck me like last time, on all fours.<</julia>><br>
[[She wants to get on all fours|JuliaScene2E]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "juliascene2b">>
<<julia>>Don't hold back, $player.name. Do whatever you want to me.<</julia>><br>
<<say "You" $player.img>>Don't worry, I won't hold back with you.<</say>><br>
<<video "pizzamedia/videos/girls/julia/juliascene2/doggya.mp4" >>
<p class="reflection">You get her on all fours. She's completely at your mercy, and you start fucking her however you want.</p>
<<say "You" $player.img>>I want you to move with me. We're going to break that tight pussy of yours.<</say>><br>
<<julia>>AHHH... YEAHH... OHHHH... YES...<</julia>><br>
<<video "pizzamedia/videos/girls/julia/juliascene2/doggyb.mp4" >>
<p class="reflection">You order her to move at the same pace as you. You start thrusting harder and harder. You feel the urge to fuck her until you’re completely satisfied.</p>
<<say "You" $player.img>>Come here, I’m going to fuck you really hard.<</say>><br>
<<linkreplace "Position her">>
<<say "You" $player.img>>I want you to spread your legs as wide as you can.<</say>><br>
<<julia>>Ahhhh... yes, I’ll spread them as wide as I can for you.<</julia>><br>
<<video "pizzamedia/videos/girls/julia/juliascene2/missionarya.mp4" >>
<p class="reflection">You pick her up and lay her down on one of the edges of the sofa. She spreads her legs as wide as she can, giving you full access to her pussy.</p>
<<julia>>Ahhhh... yeah... yeah... yeah...<</julia>><br>
<<video "pizzamedia/videos/girls/julia/juliascene2/missionaryb.mp4" >>
<p class="reflection">By now, her vagina is completely dilated for you. You can feel how wet she is inside.</p>
[[Finish|JuliaScene2F]]
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "juliascene2b">>
<p class="reflection">She climbs on top of you, and you start moving your hips, thrusting into her repeatedly.</p>
<<video "pizzamedia/videos/girls/julia/juliascene2/cowgirla.mp4" >>
<<julia>>So good! It feels so good!! I want it harder, $player.name!!<</julia>><br>
<<say "You" $player.img>>Damn, you're so wet...<</say>><br>
<<video "pizzamedia/videos/girls/julia/juliascene2/cowgirlb.mp4" >>
<p class="reflection">She's really horny and wants you to fuck her as hard as you can.</p>
<<say "You" $player.img>>I'm about to cum! Where do you want it this time?<</say>><br>
<<julia>>I want to feel it inside!! Please don't stop!!<</julia>><br>
<<video "pizzamedia/videos/girls/julia/juliascene2/cowgirlcreampiea.mp4" >>
<p class="reflection">You pick up the pace until you explode inside her pussy.<br>You were so desperate to cum that you shoot a huge load inside her. Even before you pull your dick out, your cum is already overflowing from her pussy.</p>
<<julia>>Is it normal for there to be so much of it and for it to be so hot?<</julia>><br>
<<say "You" $player.img>>Shit, I wanted it so badly... I hope you're on the pill.<</say>><br>
<<julia>>It tastes so good, it's delicious.<br>What’s the pill?<</julia>>
<p class="reflection">Due to the lack of men, it’s possible that people on this planet don’t know about birth control methods.</p>
<<say "You" $player.img>>On my planet, there are pills so girls don’t get pregnant.<</say>><br>
<<julia>>Really? But that doesn’t make sense. Why wouldn’t a girl want to have a baby?<</julia>><br>
<<say "You" $player.img>>If you want, I can bring you a pill from my planet.<</say>><br>
<<julia>>No way!! Here, all of us girls dream of having a baby. You know how hard it is. More than ninety-five percent of women never have one.<</julia>><br>
<<video "pizzamedia/videos/girls/julia/juliascene2/cowgirlcreampieb.mp4" >><br>
<p class="reflection">Finally, you say goodbye to her and head back to the pizzeria.</p>
<<set $eventGirls.julia.scene2 = true>>
<<if $gameEngine.onRepetition === false>>
[[Go back to the pizzeria|SuccessfulDelivery]]
<<else>>
<<link "End Replay">>
<<if $gameEngine.musicOn>>
<<audio "bgm_chill" play>>
<</if>>
<<goto $gameEngine.repetitionReturn>>
<</link>>
<</if>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "lindseyscene1b">>
<<lindsey>>Ohhh... baby, you're so hard, it's so fucking good...<</lindsey>><br>
<<say "You" $player.img>>Your butt looks amazing in this position.<</say>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene1/doggya.mp4" >>
<p class="reflection">She gets on all fours and you start to penetrate her slowly. You try to test her limits, but she shows you she can take your whole huge dick inside her.</p>
<<say "You" $player.img>>I'm going to fuck you harder.<</say>><br>
<<lindsey>>Yes... baby, fuck me hard, I want you to fuck me really hard.<</lindsey>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene1/doggyb.mp4" >>
<p class="reflection">You start fucking her harder. She takes your whole dick deep inside her pussy.</p>
<<linkreplace "She settles in">>
<<lindsey>>That's it, baby, that's it. I want to feel your huge hard dick inside me.<</lindsey>><br>
<<say "You" $player.img>>I love watching your boobs bounce.<</say>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene1/missionarya.mp4" >>
<p class="reflection">She lies on her back while spreading her legs for you.</p>
<<lindsey>>Oh baby... yes... yes... yes... yes...<</lindsey>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene1/missionaryb.mp4" >>
<p class="reflection">She enjoys every inch of you. You penetrate her again, and she begins to stroke her clitoris to intensify the pleasure she feels.</p>
<<lindsey>>Let’s try something.<</lindsey>><br>
<<say "You" $player.img>>What do you want to try?<</say>><br>
<<lindsey>>You’ll see.<</lindsey>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene1/missionaryc.mp4" >>
<p class="reflection">She changes positions, lifting and holding her legs up to her chest.</p>
<<say "You" $player.img>>I don't think I can hold back much longer.<</say>><br>
<<lindsey>>I want you to let it out whenever you want, sweetheart. I want you to feel a lot of pleasure with me.<</lindsey>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene1/missionaryd.mp4" >>
<p class="reflection">You feel her vaginal walls begin to squeeze your penis. Little by little, you start to get closer. You don't think you can hold back much longer like this.</p>
[[You're very close|LindseyScene1D]]
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "lindseyscene1b">>
<<lindsey>>Ohhh... it feels even bigger when it's inside.<</lindsey>><br>
<<say "You" $player.img>>It feels so good inside you.<</say>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene1/reversecowgirla.mp4" >>
<p class="reflection">She climbs on top of you in the reverse cowgirl position. She moves up and down until your penis is almost completely inside her.</p>
<<lindsey>>You have such big balls. I bet you've got a lot of cum stored up in there.<</lindsey>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene1/reversecowgirlb.mp4" >>
<p class="reflection">She starts caressing your balls while she continues riding your dick.</p>
<<lindsey>>That’s it, baby. I don’t want you to hold back. Just enjoy it.<</lindsey>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene1/reversecowgirlc.mp4" >>
<p class="reflection">She picks up the pace and you feel yourself getting close. Her pussy is completely soaked with her juices and your pre-cum.</p>
<<say "You" $player.img>>Shit, I can’t hold back much longer, I can’t!!<</say>><br>
<<lindsey>>Shoot everything you’ve got for me, baby, shoot it all out!!<</lindsey>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene1/reversecowgirlcum.mp4" >>
<p class="reflection">You can't hold back any longer and end up shooting your load all over her ass. She quickly turns around and starts scooping up every last drop.</p>
<<lindsey>>Delicious cum...<</lindsey>><br>
<p class="reflection">Finally, you say goodbye to her and head back to the pizzeria.</p>
<<set $eventGirls.lindsey.scene1 = true>>
<<if $gameEngine.onRepetition === false>>
[[Go back to the pizzeria|SuccessfulDelivery]]
<<else>>
<<link "End Replay">>
<<if $gameEngine.musicOn>>
<<audio "bgm_chill" play>>
<</if>>
<<goto $gameEngine.repetitionReturn>>
<</link>>
<</if>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "lindseyscene2c">>
<p class="reflection">She climbs on top of you and starts riding your dick, and her pussy feels really wet.</p>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene2/cowgirla.mp4" >>
<<lindsey>>Give me that... give me that big dick...<</lindsey>><br>
<<say "You" $player.img>>Your pussy feels amazing.<</say>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene2/cowgirlb.mp4" >>
<p class="reflection">You can't take your eyes off her big boobs bouncing as she rides you.</p>
<<linkreplace "She turns around">>
<<lindsey>>Oh fuck! It's so good! It's so fucking good.<</lindsey>><br>
<<say "You" $player.img>>Yes, right there, baby.<</say>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene2/reversecowgirla.mp4" >>
<p class="reflection">She turns around and starts riding your dick while you watch her move her big butt.</p>
<<lindsey>>I love feeling it slide all the way inside my pussy.<</lindsey>><br>
<<say "You" $player.img>>Yeah... it feels so good to be inside you.<</say>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene2/reversecowgirlb.mp4" >>
<p class="reflection">You feel your dick go deep inside her pussy, getting completely soaked in her juices.</p>
<<say "You" $player.img>>Let me take control for a bit.<</say>><br>
<<lindsey>>Okay, but just a little.<</lindsey>><br>
[[Take control|LindseyScene2F]]
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "lindseyscene2c">>
<<say "You" $player.img>>Oh, yeah your fucking pussy is so good... yeah, give me that pussy, baby. Give me that fucking pussy.<</say>><br>
<<lindsey>>Yeah... I'm so wet.<</lindsey>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene2/doggya.mp4" >>
<p class="reflection">You put her on all fours and start fucking her hard. So hard that you can hear the sound of your bodies slamming together.</p>
<<say "You" $player.img>>I love fucking you hard.<</say>><br>
<<lindsey>>Yes, baby. It feels so good, fuck me harder.<</lindsey>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene2/doggyb.mp4" >>
<p class="reflection">You pick up the pace of your thrusts and start fucking her even harder. You feel her pussy start to give way to your big dick.</p>
<<say "You" $player.img>>I want to change positions. Lie down on the edge.<</say>><br>
<<linkreplace "You change to the missionary position">>
<<lindsey>>Ohhh... God... That's so good, that's so fucking good... God, damn, baby...<</lindsey>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene2/missionarya.mp4" >>
<p class="reflection">She lies on the edge of the bed, spreading her legs for you. You grab her by the legs and start fucking her.</p>
<<say "You" $player.img>>I want to break your pussy.<</say>><br>
<<lindsey>>Yes, break it, I want you to break it!!<</lindsey>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene2/missionaryb.mp4" >>
<p class="reflection">She enjoys it when you pick up the pace. You get hornier and hornier watching her big boobs bounce with every thrust.</p>
<<lindsey>>Do you know what I want?<</lindsey>><br>
<<say "You" $player.img>>What do you want?<</say>><br>
<<lindsey>>I want you to cum in me.<</lindsey>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene2/missionarycuma.mp4" >>
<p class="reflection">She feels you getting close. Her vaginal walls start squeezing your dick hard. You feel like you won’t be able to hold back.</p>
<<say "You" $player.img>>Ohhh!! I'm gonna cum so fucking good...<</say>><br>
<<lindsey>>Cum for me, cum for me!<</lindsey>><br>
<<video "pizzamedia/videos/girls/lindsey/lindseyscene2/missionarycumb.mp4" >>
<p class="reflection">You shoot several times until you fill her vagina with your load.<br>As you pull your cock out, you can see how you've filled her up completely.</p>
<<say "You" $player.img>>Wow! Your pussy is so tight...<</say>><br>
<p class="reflection">Finally, you say goodbye to her and head back to the pizzeria.</p>
<<set $eventGirls.lindsey.scene2 = true>>
<<if $gameEngine.onRepetition === false>>
[[Go back to the pizzeria|SuccessfulDelivery]]
<<else>>
<<link "End Replay">>
<<if $gameEngine.musicOn>>
<<audio "bgm_chill" play>>
<</if>>
<<goto $gameEngine.repetitionReturn>>
<</link>>
<</if>>
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "rebeccascene1b">>
<<rebecca>>Oh my God, yeah... That has my juice, looks so good.<</rebecca>><br>
<<say "You" $player.img>>It's so hot... it's so hot.<</say>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene1/missionarya.mp4" >>
<p class="reflection">She lies back and spreads her legs for you. You start to penetrate her shaved pussy and feel your dick getting completely soaked.</p>
<<rebecca>>Ohhhh fuck... that's good...<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene1/missionaryb.mp4" >>
<p class="reflection">You start fucking her harder and watch her boobs bounce in front of you. Her vagina starts to feel more and more dilated.</p>
<<rebecca>>Let me show you how it’s done.<</rebecca>><br>
<<linkreplace "She shows you how it’s done">>
<p class="reflection">She tells you to sit on the sofa. She climbs on top of you and starts riding your dick.</p>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene1/reversecowgirla.mp4" >>
<<rebecca>>OOHHH!!! FUCK!!! YES!! YES!!! YES!!!<</rebecca>><br>
<<say "You" $player.img>>Did you cum??<</say>><br>
<<rebecca>>Yes!! Fuck me harder!! Don’t stop!!<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene1/reversecowgirlb.mp4" >>
<p class="reflection">She rides you harder and harder. Suddenly you feel her vagina squeeze your penis tightly. You feel several contractions around your dick.</p>
[[She gets on all fours|RebeccaScene1E]]
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "rebeccascene1b">>
<<say "You" $player.img>>I'm trying... Oh yeah, right there... That's a good try.<</say>><br>
<<rebecca>>Oh God... your dick is so good...<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene1/doggya.mp4" >>
<p class="reflection">She gets on all fours, leaning against the sofa. You can tell she’s eager to feel your big dick inside her. Right away, you guide your dick to her hole and start penetrating her.</p>
<<rebecca>>Ohhhh... Ahhhhhh... Ohhhh...<</rebecca>><br>
<<say "You" $player.img>>Fuck, your pussy feels so good... <</say>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene1/doggyb.mp4" >>
<p class="reflection">You grab her by the hair and pick up the pace. Her boobs bounce with every thrust.</p>
<<rebecca>>Oh my God... God damned.<br>Yes... Your cock is so good.<</rebecca>><br>
<<say "You" $player.img>>Hell there... Get that... Ass.<</say>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene1/doggyc.mp4" >>
<p class="reflection">You grab her by her wide hips. Her pussy feels wide open for you. She’s so wet inside.</p>
<<say "You" $player.img>>I want to cum!<</say>><br>
<<rebecca>>Shoot it all over my big boobs.<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene1/titscum.mp4" >>
<p class="reflection">She grabs your dick tightly as you cum all over her boobs.</p>
<<rebecca>>Mmm, delicious...<</rebecca>><br>
<p class="reflection">Finally, you say goodbye to her and head back to the pizzeria.</p>
<<set $eventGirls.rebecca.scene1 = true>>
<<if $gameEngine.onRepetition === false>>
[[Go back to the pizzeria|SuccessfulDelivery]]
<<else>>
<<link "End Replay">>
<<if $gameEngine.musicOn>>
<<audio "bgm_chill" play>>
<</if>>
<<goto $gameEngine.repetitionReturn>>
<</link>>
<</if>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "rebeccascene2b">>
<<rebecca>>Oh It's so fucking deep like that... Ohh, my fucking God...<</rebecca>><br>
<<say "You" $player.img>>It feels so good inside you.<</say>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene2/cowgirla.mp4" >>
<p class="reflection">She climbs on top of you and starts riding your dick. She tries to take your penis as deep inside her as she can.</p>
<<say "You" $player.img>>Do you like that?<</say>><br>
<<rebecca>>Oh, yes... do that... do that... do that... do that... fuck...<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene2/cowgirlb.mp4" >>
<p class="reflection">You start moving your hips to fuck her, and she can't stop moaning.</p>
<<rebecca>>I'm so horny today... I think I'm going to give you a present.<</rebecca>><br>
<<say "You" $player.img>>A present?<</say>><br>
<<linkreplace "She gives you her present">>
<<rebecca>>Mmm... It's so fucking good... Which one do you want?<</rebecca>><br>
<<say "You" $player.img>>Any, any, any...<</say>><br>
<<rebecca>>Any?<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene2/analcowgirla.mp4" >>
<p class="reflection">She gives you her present. She climbs on top of you and starts sliding your dick into her ass.</p>
<<rebecca>>Oh God... it's so fucking good.<</rebecca>><br>
<<say "You" $player.img>>Yeess.<</say>><br>
<<rebecca>>Oh, it's fucking deep right there... Yeah, it's fucking deep right there.<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene2/analcowgirlb.mp4" >>
<p class="reflection">She starts riding your cock; in this position, you can feel your cock sliding all the way into her ass, and you can feel it pushing its way inside her.</p>
<<rebecca>>Ohhh my God, it looks so good...<</rebecca>><br>
<<say "You" $player.img>>Ahhh... Ahhhh...<</say>><br>
<<rebecca>>Oh yes, like that!!<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene2/analcowgirlc.mp4" >>
<<say "You" $player.img>>Oh my God...Do it like that.<</say>><br>
<<rebecca>>Just show me how you tease it... Fuck... Yeah, yeah, yeah...<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene2/analcowgirld.mp4" >>
<p class="reflection">She takes control and moves her hips in a sensual rhythm while your dick stays deep inside her anus.</p>
[[She turns around|RebeccaScene2F]]
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "rebeccascene2b">>
<<rebecca>>Mmm, fuuck, yeahh...<</rebecca>><br>
<<say "You" $player.img>>Oh my God...<</say>><br>
<<rebecca>>Just do some accounting.<</rebecca>><br>
<<say "You" $player.img>>Oh, keep going, please, keep going with that fucking move... More, more, more, plese...<</say>><br>
<<rebecca>>More?<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene2/analreversecowgirla.mp4" >>
<p class="reflection">She turns around to show you how you're penetrating her big ass..</p>
<<say "You" $player.img>>Oh my...<</say>><br>
<<rebecca>>Mmmm... yeah... yeahhh... yeahhhhh...<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene2/analreversecowgirlb.mp4" >>
<p class="reflection">She starts to pick up the pace. You feel her ass squeezing your dick hard, and the pleasure you feel is indescribable.</p>
<<rebecca>>OOOHHHHH... GOD... That's what I fucking wanted.<</rebecca>><br>
<<say "You" $player.img>>OOhhh...<</say>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene2/analreversecowgirlc.mp4" >>
<p class="reflection">You start fucking her ass by moving your hips, feeling her ass begin to give way to your big dick.</p>
<<linkreplace "She lies down on her side">>
<<say "You" $player.img>>Where do you want me to put it?<</say>><br>
<<rebecca>>I want you to put it in my pussy.<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene2/sidefucka.mp4" >>
<<say "You" $player.img>>My balls are about to explode!!<</say>><br>
<<rebecca>>Ohhhh... yes... yes... yes...<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene2/sidefuckb.mp4" >>
<<say "You" $player.img>>Ohhhh... Shhh...<</say>><br>
<<rebecca>>Mmm... Mmmm...<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene2/mouthcuma.mp4" >>
<p class="reflection">You can’t hold back any longer. You climb on top of her and aim for her mouth. She sticks out her tongue, waiting to receive your seed.</p>
<<rebecca>>It’s so warm!<</rebecca>><br>
<p class="reflection">Finally, you say goodbye to her and head back to the pizzeria.</p>
<<set $eventGirls.rebecca.scene2 = true>>
<<if $gameEngine.onRepetition === false>>
[[Go back to the pizzeria|SuccessfulDelivery]]
<<else>>
<<link "End Replay">>
<<if $gameEngine.musicOn>>
<<audio "bgm_chill" play>>
<</if>>
<<goto $gameEngine.repetitionReturn>>
<</link>>
<</if>>
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "savannahscene1a">>
<<say "You" $player.img>>I love your butt.<</say>><br>
<<savannah>>If you behave yourself today, maybe another day I'll let you do something with it.<</savannah>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene1/reversecowgirla.mp4" >>
<p class="reflection">She turns around and sits on top of you, and you start to penetrate her tight pussy.</p>
<<savannah>>I love how full you make me feel with your big dick.<</savannah>><br>
<<say "You" $player.img>>Oh my God...<</say>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene1/reversecowgirlb.mp4" >>
<p class="reflection">She grabs her buttocks tightly and spreads them, trying to get you as deep as possible into her vagina.</p>
<<savannah>>Ahhhh... Ahhh...<</savannah>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene1/reversecowgirlc.mp4" >>
<p class="reflection">She keeps riding your dick. You have a perfect view of her butt and feel her pussy getting wetter and wetter.</p>
<<say "You" $player.img>>Fuck... I don’t know how much longer I can hold back.<</say>><br>
<<savannah>>You have to hold back a little longer for me.<</savannah>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene1/reversecowgirld.mp4" >>
<p class="reflection">She moves faster and faster, and her pussy starts squeezing your dick tightly.</p>
<<linkreplace "She turns around">>
<<savannah>>Your dick is so hard... I can tell you really wanted me.<</savannah>><br>
<<say "You" $player.img>>You're incredible.<</say>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene1/cowgirla.mp4" >>
<p class="reflection">She climbs on top of you and starts riding your dick. Her pussy feels very tight, even though your penis slides in easily.</p>
<<say "You" $player.img>>It feels so good to be inside you. Everything is so smooth.<</say>><br>
<<savannah>>Isn’t it? But remember, you have to hold back for me.<</savannah>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene1/cowgirlb.mp4" >>
<p class="reflection">As she rides you, she starts caressing her boobs.</p>
<<savannah>>Come on, show me what you can do.<</savannah>><br>
[[Show her what you can do|SavannahScene1D]]
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "savannahscene1a">>
<<savannah>>Yeah, keep going!! I bet you never imagined you'd end up with a girl as perfect as me.<</savannah>><br>
<<say "You" $player.img>>You're a dream come true for me.<</say>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene1/doggya.mp4" >>
<p class="reflection">She leans back on the bed, giving you full access to her pussy. Your balls slam hard against her pussy. Everything feels so wet inside her.</p>
<<savannah>>I want you to compliment me.<</savannah>><br>
<<say "You" $player.img>>You're a goddess. You're really sexy.<</say>><br>
<<savannah>>Yes! Yes! I want you to tell me more!<</savannah>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene1/doggyb.mp4" >>
<p class="reflection">She repeatedly asks you to compliment her. As you say things to her, she gets hornier and hornier.</p>
<<say "You" $player.img>>Shit! I can't hold back any longer!!<</say>><br>
<<savannah>>I'm going to be nice and let you cum for me.<</savannah>><br>
<<say "You" $player.img>>Ohhh fuck...<</say>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene1/mouthcuma.mp4" >>
<p class="reflection">She kneels in front of you, opening her mouth and sticking out her tongue, waiting for you to cum so you can fill her mouth with your semen.</p>
<p class="reflection">Finally, you say goodbye to her and head back to the pizzeria.</p>
<<set $eventGirls.savannah.scene1 = true>>
<<if $gameEngine.onRepetition === false>>
[[Go back to the pizzeria|SuccessfulDelivery]]
<<else>>
<<link "End Replay">>
<<if $gameEngine.musicOn>>
<<audio "bgm_chill" play>>
<</if>>
<<goto $gameEngine.repetitionReturn>>
<</link>>
<</if>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "savannahscene2a">>
<<savannah>>You can see my pussy? It's so tight and sweet.<</savannah>><br>
<<say "You" $player.img>>Your pussy feels amazing.<</say>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene2/reversecowgirla.mp4" >>
<p class="reflection">She climbs on top of you. You can see her butt and her perfect pussy in this position. Everything starts to get wet with her vaginal juices.</p>
<<savannah>>I love feeling your dick fill my tight pussy.<</savannah>><br>
<<say "You" $player.img>>Shit...<</say>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene2/reversecowgirlb.mp4" >>
<p class="reflection">She grabs her buttocks with her hands, spreading her butt and pussy, trying to get your dick deep inside her vagina.</p>
<<savannah>>Come on!! Move for your goddess!!<</savannah>><br>
<<say "You" $player.img>>Fuck...<</say>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene2/cowgirla.mp4" >>
<p class="reflection">You start moving your hips, fucking her hard. </p>
<<say "You" $player.img>>You're so sexy...<</say>><br>
<<savannah>>Ahhhh... Ohhhh... Fuck...<</savannah>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene2/cowgirlb.mp4" >>
<p class="reflection">She bounces hard on your dick. Her vagina is completely dilated. She’s truly insatiable. </p>
<<say "You" $player.img>>My goddess, can I take control for a bit?<</say>><br>
<<savannah>>Okay, but don’t get used to it.<</savannah>><br>
[[Take control|SavannahScene2D]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "savannahscene2a">>
<<savannah>>Fuck me really hard!!<</savannah>><br>
<<say "You" $player.img>>I'm going to fuck you as hard as I can!!<</say>><br>
<<savannah>>Yes!! Yes!! Stretch my pussy as wide as you can!!<</savannah>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene2/missionarya.mp4" >>
<p class="reflection">You start fucking her as hard as you can. Her vagina has no chance of resisting your thrusts.</p>
<<say "You" $player.img>>GOD... I'M GOING TO BREAK YOUR TIGHT PUSSY!!!<</say>><br>
<<savannah>>YEESS!!! FUCK!! FUCK!!! YEEESSS!!<</savannah>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene2/missionaryb.mp4" >>
<p class="reflection">You pick up the pace even more and feel like you're about to reach your limit. Her pussy has completely given in to your thrusts, and she's totally wet and dilated out for you.<br>You feel her vagina contracting repeatedly.</p>
<<linkreplace "She gets on all fours">>
<<savannah>> want more! Put your dick inside.<</savannah>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene2/doggyc.mp4" >>
<p class="reflection">She gets on all fours and asks you to start fucking her.</p>
<<savannah>>Don’t move, let me do it.<</savannah>><br>
<<say "You" $player.img>>Why?<</say>><br>
<<savannah>>Shut up and do as I tell you.<</savannah>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene2/doggyd.mp4" >>
<p class="reflection">She takes control of the rhythm and starts moving. You feel like you won’t be able to hold back much longer.</p>
<<savannah>>Come on, I want to get on top of the chest of drawers.<</savannah>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene2/doggya.mp4" >>
<p class="reflection">She gets on all fours on top of the chest of drawers and orders you to stick your dick back inside her.</p>
<<say "You" $player.img>>Fuck... I feel like I'm about to cum.<</say>><br>
<<savannah>>Ohhhhh... Ahhhhh... Ahhhhhh... You have to hold back for me.<</savannah>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene2/doggyb.mp4" >>
<p class="reflection">She spreads her buttocks so that your dick can go deeper inside her. You pick up the pace and your balls slap against her pussy. Pre-cum starts to flow from your dick.</p>
<<say "You" $player.img>>I THINK MY BALLS ARE GOING TO EXPLODE!!<</say>><br>
<<savannah>>DO IT INSIDE ME, FILL ME WITH YOUR HOT CUM!!<</savannah>><br>
<<video "pizzamedia/videos/girls/savannah/savannahscene2/doggycum.mp4" >>
<p class="reflection">Unable to hold back for even a second longer, you start filling her pussy. As you pull your dick out, a huge amount of your cum flows out of her pussy.</p>
<p class="reflection">Finally, you say goodbye to her and head back to the pizzeria.</p>
<<set $eventGirls.savannah.scene2 = true>>
<<if $gameEngine.onRepetition === false>>
[[Go back to the pizzeria|SuccessfulDelivery]]
<<else>>
<<link "End Replay">>
<<if $gameEngine.musicOn>>
<<audio "bgm_chill" play>>
<</if>>
<<goto $gameEngine.repetitionReturn>>
<</link>>
<</if>>
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev7D1background">>
<<set $combatEngine.enemyId = "dwarf2">>
<<set $combatEngine.onWin = "EV7D4">>
<<set $combatEngine.onLose = "Resurrect">>
<<dwarf2>>Don't get too cocky just because you beat the weakest of my brothers.<</dwarf2>><br>
[img['pizzamedia/images/enemies/dwarfs/angryposedwarf2.jpg']]<br><br>
<<link "Defend yourself">>
<<goto "StartCombat">>
<</link>>
<!--
[[EV7D4]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev7D1background">>
<<set $combatEngine.enemyId = "dwarf3">>
<<set $combatEngine.onWin = "EV7D5">>
<<set $combatEngine.onLose = "Resurrect">>
<<dwarf3>>I'm going to rip your guts out!!!<</dwarf3>><br>
[img['pizzamedia/images/enemies/dwarfs/angryposedwarf3.jpg']]<br><br>
<<link "Defend yourself">>
<<goto "StartCombat">>
<</link>>
<!--
[[EV7D5]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev7D1background">>
<<set $combatEngine.enemyId = "dwarf4">>
<<set $combatEngine.onWin = "EV7D6">>
<<set $combatEngine.onLose = "Resurrect">>
<<dwarf4>>I want his ears!!!<</dwarf4>><br>
[img['pizzamedia/images/enemies/dwarfs/angryposedwarf4.jpg']]<br><br>
<<link "Defend yourself">>
<<goto "StartCombat">>
<</link>>
<!--
[[EV7D6]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev7D1background">>
<<set $combatEngine.enemyId = "dwarf5">>
<<set $combatEngine.onWin = "EV7D7">>
<<set $combatEngine.onLose = "Resurrect">>
<<dwarf5>>I'm going to avenge my brothers!!!<</dwarf5>><br>
[img['pizzamedia/images/enemies/dwarfs/angryposedwarf5.jpg']]<br><br>
<<link "Defend yourself">>
<<goto "StartCombat">>
<</link>>
<!--
[[EV7D7]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev7D1background">>
<<set $combatEngine.enemyId = "dwarf6">>
<<set $combatEngine.onWin = "EV7D8">>
<<set $combatEngine.onLose = "Resurrect">>
<<dwarf6>>I'm the strongest. Now you'll see what I'm made of!<</dwarf6>><br>
[img['pizzamedia/images/enemies/dwarfs/angryposedwarf6.jpg']]<br><br>
<<link "Defend yourself">>
<<goto "StartCombat">>
<</link>>
<!--
[[EV7D8]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev7D1background">>
<<set $combatEngine.enemyId = "dwarf7">>
<<set $combatEngine.onWin = "EV7D9">>
<<set $combatEngine.onLose = "Resurrect">>
<<dwarf7>>YOU'RE DEAD!!!<</dwarf7>><br>
[img['pizzamedia/images/enemies/dwarfs/angryposedwarf7.jpg']]<br><br>
<<link "Defend yourself">>
<<goto "StartCombat">>
<</link>>
<!--
[[EV7D9]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev7D1background">>
<<dwarf7>>FUCK YOU ALL!! I'M GOING TO THROW THAT DAMN FLOWER INTO THE CRATER!!<</dwarf7>><br>
[img['pizzamedia/images/enemies/dwarfs/flower.jpg']]
<p class="reflection">One of the dwarves threatens to throw the flower into a volcanic crater.</p>
<<say "You" $player.img>>WAIT!! DON'T DO ANYTHING STUPID!!<</say>><br>
<<dwarf7>>FUCK YOU ALL!!!<</dwarf7>><br>
<<linkreplace "Move fast">>
<<dwarf7>>IT'S ALREADY TOO LATE!!! SONS OF BITCHES!!<</dwarf7>><br>
[img['pizzamedia/images/enemies/dwarfs/dead.jpg']]
<p class="reflection">Quickly, you deliver a fatal blow with one of the knives. He drops the flower into the crater.</p>
<<olaf>>$player.name! Come on, grab it!!<</olaf>><br>
<<say "You" $player.img>>OLAF!!<</say>><br>
[img['pizzamedia/images/enemies/olaf/olafdead1.jpg']]
<p class="reflection">As you turn around, you realize that Olaf has jumped into the volcanic crater. You watch as he quickly melts. He hands you the flower.</p>
<<olaf>>No! It's too late, $player.name! Take the flower. I've melted too much.<br><</olaf>><br>
<<linkreplace "Grab both">>
<<say "You" $player.img>>You'll be okay. Hold on!<</say>><br>
<<olaf>>$player.name, tell me something. Is what you said earlier true?<br>That you're my friend?<</olaf>><br>
[img['pizzamedia/images/enemies/olaf/olafdead2.jpg']]
<p class="reflection">You grab the flower and Olaf. You feel your skin burning from the intense heat of the crater, but you manage to pull them both out. However, Olaf has melted too much.</p>
<<linkreplace "Answer him">>
<<say "You" $player.img>>Of course it is, and I'm going to get you out of this.<</say>><br>
<<olaf>>I’ve never had a friend before. I guess now that I’ve had one, I can rest in peace.<</olaf>><br>
[img['pizzamedia/images/enemies/olaf/olafdead3.jpg']]
<p class="reflection">You watch as Olaf disappears with a smile, knowing that he once had a friend.</p>
<<say "You" $player.img>>NOOOOOO!!!!! OLAFFF!!!!<</say>><br>
<p class="reflection">You take the flower and set off in search of his mistress’s house.</p>
[[Follow him|EV7D10]]<br><br>
<</linkreplace>>
<</linkreplace>>
<</linkreplace>>
<!--
[[EV7D10]]
-->
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "ev7D2background">>
<p class="reflection">You start exploring near where you found Olaf.</p>
[img['pizzamedia/images/events/ev7/house.jpg']]
<p class="reflection">You find a small wooden house in the middle of the snow.</p>
[[Go in|EV7D11]]<br><br>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "ev7D3background">>
<<set $combatEngine.enemyId = "elsa">>
<<audio "bgm_chill" pause>>
<<set $combatEngine.onWin = "EV7D15">>
<<set $combatEngine.onLose = "Resurrect">>
<<elsa>>Olaf? Eres tu?<</elsa>><br>
<<say "You" $player.img>>No, I'm a friend of Olaf's. He sacrificed himself to save the flower that he says will heal you.<</say>><br>
<<elsa>>Oh... right, the flower... Just leave it there. I'll make some tea with it later.<</elsa>><br>
<<video "pizzamedia/videos/girls/elsa/elsascene1/0.mp4" >><br>
<<say "You" $player.img>>A tea? I thought you had a deadly disease.<</say>><br>
<<elsa>>Yeah, that's the story I usually tell my snowmen. Don't worry, I'll make another one just like the one you found later.<</elsa>><br>
<<video "pizzamedia/videos/girls/elsa/elsascene1/1.mp4" >><br>
<<elsa>>But you do seem interesting. You look really handsome.<</elsa>><br>
<span id="choice">
<<link "To blame her for what she did to Olaf">>
<<replace "#choice">>
<<say "You" $player.img>>How can you say that about Olaf? You tricked him, and he ended up giving his life trying to cure you, and you don’t care in the slightest.<</say>><br>
<<elsa>>I’ve already told you they’re just puppets. You know, a little spell and I’ll have hundreds like him. Why should I care about that little pawn?<</elsa>><br>
<span id="choice2">
<<link "Tell her that you’re not going to give her the flower now">>
<<replace "#choice2">>
<<say "You" $player.img>>Well, I’m not going to give you the flower. Olaf sacrificed his life for it, and I don’t think you deserve it.<</say>><br>
<<elsa>>What did you say? That flower belongs to me. My little jester found it for me. Give it to me right now.<</elsa>><br>
<<say "You" $player.img>>Like hell. I’m not giving it to you.<</say>><br>
<<elsa>>Then face the consequences!!<</elsa>><br>
[img['pizzamedia/images/events/ev7/house.jpg']]
<p class="reflection">She starts to get angry with you. The room freezes instantly.</p>
[[Defend yourself|StartCombat]]
<</replace>>
<</link>><br><br>
<<link "Give her the flower and tell her to go to hell">>
<<replace "#choice2">>
<<say "You" $player.img>>Here’s your stupid flower. I hope you choke on your tea.<</say>><br>
<<elsa>>Thank you very much, you’re such a gentleman. I hope we see each other again<</elsa>><br>
<<say "You" $player.img>>I hope I never see you again. You're a despicable person. No wonder you're all alone in this frozen wasteland.<</say>><br>
[img['pizzamedia/images/events/ev7/magicflower.jpg']]
<p class="reflection">She looks very upset. You hand her the flower roughly and walk away.</p>
[[Leave|EV7D14]]<br><br>
<</replace>>
<</link>>
</span><br>
<</replace>>
<</link>><br><br>
<<link "Take an interest in her">>
<<replace "#choice">>
<<say "You" $player.img>>You're not so bad yourself.<</say>><br>
<<elsa>>I've been alone in this frozen wasteland for so long...<</elsa>><br>
<<video "pizzamedia/videos/girls/elsa/elsascene1/2.mp4" >><br>
<p class="reflection">She spreads her legs, revealing that she's wearing a set of blue lingerie.</p>
<<elsa>>Maybe you have something down there to... satisfy my loneliness.<</elsa>><br>
<<video "pizzamedia/videos/girls/elsa/elsascene1/3.mp4" >><br>
<p class="reflection">She notices that your dick is hard and pulls it out of your pants.</p>
<<elsa>>Mmmm... it's so hot...<</elsa>><br>
<<say "You" $player.img>>Shit...<</say>><br>
<<video "pizzamedia/videos/girls/elsa/elsascene1/4.mp4" >><br>
<p class="reflection">She starts playing with your dick, kissing and licking the tip.</p>
<<say "You" $player.img>>Let me help you.<</say>><br>
<<elsa>> *Gulp* *Gulp*<</elsa>><br>
<<video "pizzamedia/videos/girls/elsa/elsascene1/5.mp4" >><br>
<p class="reflection">You grab her by the hair and start fucking her mouth. She can barely swallow your tip before she gags.</p>
<<elsa>>I'm feeling a little hot.<</elsa>><br>
[[She's hot|EV7D12]]<br><br>
<</replace>>
<</link>>
</span><br>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "ev7Waitbackground">>
[img['pizzamedia/images/events/ev7/wait.jpg']]
<p class="reflection">The pizza has gone cold, and your friend is dead. Today isn't one of your best days.</p>
[[Back to the pizzeria|ResetDelivery]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "ev7Waitbackground">>
[img['pizzamedia/images/events/ev7/wait.jpg']]
<p class="reflection">The pizza has gone cold, your friend is dead, but you've avenged his death at the hands of that cold-blooded viper.</p>
<<olaf>>Thank you, $player.name.<</olaf>>
[img['pizzamedia/images/events/ev7/ghost1.jpg']]
<p class="reflection">You hear a faint whisper in the distance. For a second, you thought you saw Olaf.</p>
[img['pizzamedia/images/events/ev7/ghost2.jpg']]
<p class="reflection">It’s possible that Olaf is still by your side after all.</p>
[[Back to the pizzeria|ResetDelivery]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "allisonscene2b">>
<<say "You" $player.img>>Are you more comfortable this way?<</say>><br>
<<allison>>Yes, much better. Please don't hold back with me.<</allison>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene2/missionarya.mp4" >>
<p class="reflection">She lies back on the sofa. She spreads her legs for you, and you hold one of them. You start fucking her.</p>
<<allison>>Like that, don't stop. Please, don't stop.<</allison>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene2/missionaryb.mp4" >>
<p class="reflection">You feel how her vagina offers no resistance to your thrusts. She's completely open for you.</p>
<<say "You" $player.img>>It feels so good inside you.<</say>><br>
<<allison>>Oh yes... Oh my God... Oh my God...<</allison>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene2/missionaryc.mp4" >>
<p class="reflection">You try to reach as deep inside her as possible, picking up the pace and increasing the force of your thrusts.</p>
<<allison>>Can you feel how open I am?<</allison>><br>
<<say "You" $player.img>>I love how open you are for me.<</say>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene2/missionaryd.mp4" >>
<p class="reflection">You grab her legs with your hands and try to fuck her even harder. You’re both giving in to your most primal instincts.</p>
<<say "You" $player.img>>Shit, I’m cumming! I’m cumming!!<</say>><br>
<<allison>>Give it all to me, baby, cum for me.<</allison>><br>
<<video "pizzamedia/videos/girls/allison/allisonscene2/blowjobcum.mp4" >>
<p class="reflection">She kneels and opens her mouth, waiting for you to fill it with your cum. Unable to hold back any longer, you start shooting your load all over her face and mouth.</p>
<p class="reflection">Finally, you say goodbye to her and head back to the pizzeria.</p>
<<set $eventGirls.allison.scenes.scene2 = true>>
<<if $gameEngine.onRepetition === false>>
[[Back to the pizzeria|SuccessfulDelivery]]
<<else>>
<<link "End Replay">>
<<if $gameEngine.musicOn>>
<<audio "bgm_chill" play>>
<</if>>
<<goto $gameEngine.repetitionReturn>>
<</link>>
<</if>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "jessicascene1b">>
<p class="reflection">You start fucking her sideways while she stimulates her clitoris with her hand.</p>
<<video "pizzamedia/videos/girls/jessica/jessicascene1/sidefucka.mp4" >>
<<jessica>>Uhhhh... Ohh... Oh my God...<</jessica>><br>
<<say "You" $player.img>>I can't hold back any longer!!<</say>><br>
<<jessica>>Hold back for me!! I forbid you from cumming until I tell you to!!<</jessica>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene1/sidefuckb.mp4" >>
<<say "You" $player.img>>God, I can't hold back any longer, I can't!!<</say>><br>
<<jessica>>Now, baby, feed me your cum. Give me everything you've been saving there for me.<</jessica>><br>
<<video "pizzamedia/videos/girls/jessica/jessicascene1/blowjobcum.mp4" >>
<p class="reflection">She kneels in front of you, and after holding back for a long time, you end up shooting your cum all over her face and mouth, completely covering her face.</p>
<p class="reflection">Finally, you say goodbye to her and head back to the pizzeria.</p>
<<set $eventGirls.jessica.scene1 = true>>
<<if $gameEngine.onRepetition === false>>
[[Go back to the pizzeria|SuccessfulDelivery]]
<<else>>
<<link "End Replay">>
<<if $gameEngine.musicOn>>
<<audio "bgm_chill" play>>
<</if>>
<<goto $gameEngine.repetitionReturn>>
<</link>>
<</if>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "shop1backgroundA">>
<p class="reflection">You walk through the portal and find two adventurers sitting by a campfire.</p>
[img['pizzamedia/images/events/shop3/knights1.jpg']]<br><br>
<div id="shopPanel"></div>
<div id="mainButtons">
<div class="actionRow">
<span class="btnChoice">
<<link "Rest with them">>
<<set $delivery.pizzaHeat = 10, $playerCombat.hp = $playerCombat.maxHp>>
<<replace "#shopPanel">>
<p class="reflection">You sit down next to them and spend some time resting by the warmth of the fire until a portal opens nearby.</p>
[img['pizzamedia/images/events/shop3/knights2.jpg']]<br><br>
[[A new portal opens|NewPortal]]
<</replace>>
<<replace "#mainButtons">><</replace>>
<<run UIBar.update()>>
<</link>>
</span>
<span class="btnChoice">
<<link "Wait until another portal opens">>
<<goto "NewPortal">>
<</link>>
</span>
</div>
</div>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "shop1backgroundA">>
<p class="reflection">You decide not to touch anything inside the cave, then you go outside and wait for a new portal to open.</p>
[img['pizzamedia/images/events/shop1/cave.jpg']]<br><br>
[[A new portal opens|NewPortal]]
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.onScene = true>>
<<set $gameEngine.currentPassage = "personalarea">>
<<say "You" $player.img>>Hi $girls.melissa.displayName, what are you doing?<</say>><br>
<<melissa>>I wasn't doing much.<</melissa>><br>
[img['pizzamedia/images/girls/melissa/pose3.jpg']]<br><br>
<<say "You" $player.img>>Look, I found this. I don't know what it's for.<</say>><br>
[img['pizzamedia/images/boys/scientist/chip1.jpg']]<br>
<p class="reflection">You hand her the strange chip you found.</p>
<<melissa>>Wow! I don't know what it is either, but I think I can install it into my system. Do you want me to do it?<</melissa>><br>
<<say "You" $player.img>>Couldn't that be dangerous?<</say>><br>
<<melissa>>Don't worry, I have plenty of security measures in place so nothing will happen if there's something malicious inside.<</melissa>><br>
<<say "You" $player.img>>Okay, fine, install it into your system.<</say>><br>
[img['pizzamedia/images/boys/scientist/chip1.jpg']]<br>
<p class="reflection">She takes the chip. It pierces her skin and slides inside her.</p>
<<say "You" $player.img>>Is that normal?<</say>><br>
<<melissa>>No, that’s not how it’s supposed to work. Where did you find it?<</melissa>><br>
<<say "You" $player.img>>There was an old man in a cave. He said it was a great discovery.<br>Do you feel anything?<</say>><br>
<<melissa>>No, I don’t feel anything. In fact, I can’t even detect the chip inside me.<</melissa>><br>
<<say "You" $player.img>>That’s strange… Well, maybe it’s useless.<</say>><br>
<<if $girls.melissa.progress <= 0>>
<<set $girls.melissa.progress = 1, $girls.melissa.cooldown = 2>>
<</if>>
[[Leave|Pizzeria]]
</div>
<</nobr>>
<<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "shop1backgroundB">>
[img['pizzamedia/images/enemies/woodenman/defeat.jpg']]<br>
<p class="reflection">You defeat the strange wooden man. You feel like this fight never should have happened.</p>
[img['pizzamedia/images/boys/scientist/chip1.jpg']]<br>
<p class="reflection">Finally, a portal opens in front of you, and you leave with the strange chip.</p>
<<set $girls.melissa.strangeChip = true>>
[[A new portal opens|NewPortal]]
</div>
<</nobr>>
<<nobr>>
<<set $finishedText = "">>
<<set _girlsKeys = Object.keys($adventureGirls).sort()>>
<<set _renderKeys = []>>
/* =========================
1) Filtrar según showCompleted
- Si showCompleted === false: ocultar chicas COMPLETED
(COMPLETED = allScenesTrue && presentation === true)
- Si showCompleted === true: mostrar todas
========================= */
<<for _g = 0; _g < _girlsKeys.length; _g++>>
<<set _girl = $adventureGirls[_girlsKeys[_g]]>>
<<set _scenes = (_girl.scenes || {})>>
<<set _sceneKeys = Object.keys(_scenes)>>
<<set _allScenesTrue = (_sceneKeys.length > 0 ? true : false)>>
<<for _i = 0; _i < _sceneKeys.length; _i++>>
<<if _scenes[_sceneKeys[_i]] !== true>>
<<set _allScenesTrue = false>>
<</if>>
<</for>>
<<if $gameEngine.showCompleted === true>>
<<set _renderKeys.push(_girlsKeys[_g])>>
<<else>>
/* si NO queremos ver completadas, saltamos las completed */
<<if !(_allScenesTrue === true && _girl.presentation === true)>>
<<set _renderKeys.push(_girlsKeys[_g])>>
<</if>>
<</if>>
<</for>>
/* =========================
2) Render en parejas SIN spans
+ Click en imagen: set $selectedGirlName y goto a Collection
========================= */
<<set _html = "">>
<<for _p = 0; _p < _renderKeys.length; _p += 2>>
<<set _html += '<div class="collectionFlexBox">'>>
<<for _k = _p; _k < _p + 2 && _k < _renderKeys.length; _k++>>
<<set $currentGirl = $adventureGirls[_renderKeys[_k]]>>
<<set $girlPictureRoute = $currentGirl.img + "pose.jpg">>
/* ===== scenes: any/all ===== */
<<set _scenes = ($currentGirl.scenes || {})>>
<<set _sceneKeys = Object.keys(_scenes)>>
<<set _anySceneTrue = false>>
<<set _allScenesTrue = (_sceneKeys.length > 0 ? true : false)>>
<<for _i = 0; _i < _sceneKeys.length; _i++>>
<<if _scenes[_sceneKeys[_i]] === true>>
<<set _anySceneTrue = true>>
<<else>>
<<set _allScenesTrue = false>>
<</if>>
<</for>>
/* ===== unlocked ===== */
<<set _unlocked = ($currentGirl.presentation === true || _anySceneTrue === true)>>
<<set $CSSgirlBorderColor = "border: 2px solid var(--" + $currentGirl.name.toLowerCase() + ")" >>
<<set $CSSgirlTextColor = "color:var(--" + $currentGirl.name.toLowerCase() + ")" >>
<<set $girlCollectionPassage = $currentGirl.name + "Collection">>
<<if _allScenesTrue === true && $currentGirl.presentation === true>>
<<set $finishedText = $currentGirl.displayName + "(COMPLETED)">>
<<else>>
<<set $finishedText = $currentGirl.displayName>>
<</if>>
/* ===== locked ===== */
<<if _unlocked === false>>
<<set $lockedGirl = "blurryCollectionPicture">>
<<set $finishedText = "UNKNOWN">>
<<set $CSSgirlTextColor = "
color:var(--lockedGirl);
font-weight: 600;
text-align: center;
text-shadow: 1px 1px 2px black;
font-style: italic;
letter-spacing: 1px;
opacity: 0.8;">>
<<else>>
<<set $lockedGirl = "collectionPicture">>
<</if>>
/* ===== HTML de la card ===== */
<<set _html +=
'<div class="collectionFlexBox-fc">' +
'<span style="' + $CSSgirlTextColor + '">' + $finishedText + '</span>' +
(
_unlocked
? (
'<<link "<img class=\\"' + $lockedGirl + '\\" src=\\"' + $girlPictureRoute + '\\" style=\\"' + $CSSgirlBorderColor + '\\"/>">>' +
'<<set $selectedGirlName = "' + $currentGirl.name + '">>' +
'<<goto "GirlCollectionDisplay">>' +
'<</link>>'
)
: (
'<img class="' + $lockedGirl + '" src="' + $girlPictureRoute + '" style="' + $CSSgirlBorderColor + '">'
)
) +
'</div>'
>>
<</for>>
/* relleno invisible si queda impar */
<<if _p + 1 >= _renderKeys.length>>
<<set _html += '<div class="collectionFlexBox-fc" style="visibility:hidden;"></div>'>>
<</if>>
<<set _html += '</div>'>>
<</for>>
<<print _html>>
<</nobr>><<nobr>>
<<set $finishedText = "">>
<<set _girlsKeys = Object.keys($girls).sort()>>
<<set _renderKeys = []>>
/* =========================
1) Filtrar según showCompleted
- Si showCompleted === false: ocultar chicas COMPLETED
(COMPLETED = allScenesTrue && presentation === true)
- Si showCompleted === true: mostrar todas
========================= */
<<for _g = 0; _g < _girlsKeys.length; _g++>>
<<set _girl = $girls[_girlsKeys[_g]]>>
<<set _scenes = (_girl.scenes || {})>>
<<set _sceneKeys = Object.keys(_scenes)>>
<<set _allScenesTrue = (_sceneKeys.length > 0 ? true : false)>>
<<for _i = 0; _i < _sceneKeys.length; _i++>>
<<if _scenes[_sceneKeys[_i]] !== true>>
<<set _allScenesTrue = false>>
<</if>>
<</for>>
/* ===== Comprobar si tiene scenes o album con contenido ===== */
<<set _hasScenes = (_sceneKeys.length > 0)>>
<<set _albumKeys = Object.keys(_girl.album || {})>>
<<set _hasAlbum = (_albumKeys.length > 0)>>
<<if !(_hasScenes || _hasAlbum)>>
/* Sin scenes ni album: se omite */
<<elseif $gameEngine.showCompleted === true>>
<<set _renderKeys.push(_girlsKeys[_g])>>
<<else>>
<<if !(_allScenesTrue === true && _girl.presentation === true)>>
<<set _renderKeys.push(_girlsKeys[_g])>>
<</if>>
<</if>>
<</for>>
/* =========================
2) Render en parejas SIN spans
+ Click en imagen: set $selectedGirlName y goto a Walkthrough
========================= */
<<set _html = "">>
<<for _p = 0; _p < _renderKeys.length; _p += 2>>
<<set _html += '<div class="collectionFlexBox">'>>
<<for _k = _p; _k < _p + 2 && _k < _renderKeys.length; _k++>>
<<set $currentGirl = $girls[_renderKeys[_k]]>>
<<set $girlPictureRoute = $currentGirl.img + "pose.jpg">>
/* ===== scenes: any/all ===== */
<<set _scenes = ($currentGirl.scenes || {})>>
<<set _sceneKeys = Object.keys(_scenes)>>
<<set _anySceneTrue = false>>
<<set _allScenesTrue = (_sceneKeys.length > 0 ? true : false)>>
<<for _i = 0; _i < _sceneKeys.length; _i++>>
<<if _scenes[_sceneKeys[_i]] === true>>
<<set _anySceneTrue = true>>
<<else>>
<<set _allScenesTrue = false>>
<</if>>
<</for>>
/* ===== unlocked ===== */
<<set _unlocked = ($currentGirl.presentation === true || _anySceneTrue === true)>>
<<set $CSSgirlBorderColor = "border: 2px solid var(--" + $currentGirl.name.toLowerCase() + ");box-shadow:none;" >>
<<set $CSSgirlTextColor = "color:var(--" + $currentGirl.name.toLowerCase() + ")" >>
/* ===== CÁLCULO DEL PASAJE DE DESTINO ===== */
/* Capitaliza la primera letra y concatena "Walkthrough" */
<<set _girlNameCap = $currentGirl.name.charAt(0).toUpperCase() + $currentGirl.name.slice(1)>>
<<set _walkthroughPassage = _girlNameCap + "Walkthrough">>
<<if _allScenesTrue === true && $currentGirl.presentation === true>>
<<set $finishedText = $currentGirl.displayName + "(COMPLETED)">>
<<else>>
<<set $finishedText = $currentGirl.displayName>>
<</if>>
/* ===== locked ===== */
<<if _unlocked === false>>
<<set $lockedGirl = "blurryCollectionPicture">>
<<set $finishedText = "UNKNOWN">>
<<set $CSSgirlTextColor = "
color:var(--lockedGirl);
font-weight: 600;
text-align: center;
text-shadow: 1px 1px 2px black;
font-style: italic;
letter-spacing: 1px;
opacity: 0.8;">>
<<else>>
<<set $lockedGirl = "collectionPicture">>
<</if>>
/* ===== HTML de la card ===== */
<<set _html +=
'<div class="collectionFlexBox-fc">' +
'<span style="' + $CSSgirlTextColor + '">' + $finishedText + '</span>' +
(
_unlocked
? (
'<<link "<img class=\\"' + $lockedGirl + '\\" src=\\"' + $girlPictureRoute + '\\" style=\\"' + $CSSgirlBorderColor + '\\"/>">>' +
'<<set $selectedGirlName = "' + $currentGirl.name + '">>' +
'<<goto "' + _walkthroughPassage + '">>' +
'<</link>>'
)
: (
'<img class="' + $lockedGirl + '" src="' + $girlPictureRoute + '" style="' + $CSSgirlBorderColor + '">'
)
) +
'</div>'
>>
<</for>>
/* relleno invisible si queda impar */
<<if _p + 1 >= _renderKeys.length>>
<<set _html += '<div class="collectionFlexBox-fc" style="visibility:hidden;"></div>'>>
<</if>>
<<set _html += '</div>'>>
<</for>>
<<print _html>>
<!------------------------------------ BOYS --------------------------------------->
<<set _boysKeys = Object.keys($boys).sort()>>
<<set _renderBoysKeys = []>>
/* =========================
1) Filtrar según showCompleted y maxProgress > 0 (CHICOS)
========================= */
<<for _b = 0; _b < _boysKeys.length; _b++>>
<<set _boy = $boys[_boysKeys[_b]]>>
/* Filtramos para que SOLO entren los que tengan maxProgress superior a 0 */
<<if _boy.maxProgress > 0>>
<<if $gameEngine.showCompleted === true>>
<<set _renderBoysKeys.push(_boysKeys[_b])>>
<<else>>
/* si NO queremos ver completados, saltamos los que tienen progress >= maxProgress y presentation === true */
<<if !(_boy.progress >= _boy.maxProgress && _boy.presentation === true)>>
<<set _renderBoysKeys.push(_boysKeys[_b])>>
<</if>>
<</if>>
<</if>>
<</for>>
/* =========================
2) Render de Chicos (pares) usando las mismas clases que las chicas
========================= */
<<set _htmlBoys = "">>
<<for _p = 0; _p < _renderBoysKeys.length; _p += 2>>
/* Usamos collectionFlexBox en lugar de walkhroughFlexBox */
<<set _htmlBoys += '<div class="collectionFlexBox">'>>
<<for _k = _p; _k < _p + 2 && _k < _renderBoysKeys.length; _k++>>
<<set $currentBoy = $boys[_renderBoysKeys[_k]]>>
<<set $boyPictureRoute = $currentBoy.img + "pose.jpg">>
/* ===== unlocked ===== */
<<set _boyUnlocked = ($currentBoy.presentation === true || $currentBoy.progress > 0)>>
<<set $CSSboyBorderColor = "border: 2px solid var(--" + $currentBoy.name.toLowerCase() + ");box-shadow:none;" >>
<<set $CSSboyTextColor = "color:var(--" + $currentBoy.name.toLowerCase() + ")" >>
/* ===== CÁLCULO DEL PASAJE DE DESTINO ===== */
<<set _boyNameCap = $currentBoy.name.charAt(0).toUpperCase() + $currentBoy.name.slice(1)>>
<<set _boyWalkthroughPassage = _boyNameCap + "Walkthrough">>
<<if $currentBoy.progress >= $currentBoy.maxProgress && $currentBoy.presentation === true>>
<<set $finishedText = $currentBoy.name + " (FINISHED)">>
<<else>>
<<set $finishedText = $currentBoy.name>>
<</if>>
/* ===== locked ===== */
<<if _boyUnlocked === false>>
<<set $lockedBoy = "blurryCollectionPicture">>
<<set $finishedText = "UNKNOWN">>
<<set $CSSboyTextColor = "
color:var(--lockedGirl);
font-weight: 600;
text-align: center;
text-shadow: 1px 1px 2px black;
font-style: italic;
letter-spacing: 1px;
opacity: 0.8;">>
<<else>>
<<set $lockedBoy = "collectionPicture">>
<</if>>
/* ===== HTML de la card ===== */
/* Usamos collectionFlexBox-fc y la clase calculada para igualar el CSS de las chicas */
<<set _htmlBoys +=
'<div class="collectionFlexBox-fc">' +
'<span style="' + $CSSboyTextColor + '">' + $finishedText + '</span>' +
(
_boyUnlocked
? (
'<a data-passage="' + _boyWalkthroughPassage + '" style="background-color:transparent">' +
'<img class="' + $lockedBoy + '" src="' + $boyPictureRoute + '" style="' + $CSSboyBorderColor + '">' +
'</a>'
)
: (
'<img class="' + $lockedBoy + '" src="' + $boyPictureRoute + '" style="' + $CSSboyBorderColor + '">'
)
) +
'</div>'
>>
<</for>>
/* relleno invisible si queda impar */
<<if _p + 1 >= _renderBoysKeys.length>>
<<set _htmlBoys += '<div class="collectionFlexBox-fc" style="visibility:hidden;"></div>'>>
<</if>>
<<set _htmlBoys += '</div>'>>
<</for>>
<<print _htmlBoys>>
<!---------------------------------------- FINISH BOYS----------------------------- -->
<</nobr>><<nobr>>
<<set $adventureGirls = {
"shizuka": {
name: "Shizuka",
displayName: "Shizuka",
presentation: false,
actressName: "Obokozu",
actressSocialMedia: "https://www.fanhub.com/@obokozu",
img: "pizzamedia/images/girls/shizuka/",
scenes: {
"scene1": false,
},
SceneFirstPassage: {
"scene1": "ShizukaScene1B",
},
},
"succubus": {
name: "Succubus",
displayName: "Succubus",
presentation: false,
actressName: "Kitty K",
actressSocialMedia: "https://fancentro.com/kitty-k?ata=phprofile&atc=kittyK",
img: "pizzamedia/images/girls/succubus/",
scenes: {
"scene1": false,
},
SceneFirstPassage: {
"scene1": "EV14B",
},
},
"elsa": {
name: "Elsa",
displayName: "Elsa",
presentation: false,
actressName: "Eva Elfie",
actressSocialMedia: "https://www.fanhub.com/@eva-elfie",
img: "pizzamedia/images/girls/elsa/",
scenes: {
"scene1": false,
},
SceneFirstPassage: {
"scene1": "EV7D12",
},
},
"faelyn": {
name: "Faelyn",
displayName: "Faelyn",
presentation: false,
actressName: "Satanicabstract",
actressSocialMedia: "https://www.fanhub.com/@satanicabstract",
img: "pizzamedia/images/girls/faelyn/",
scenes: {
"scene1": false,
},
SceneFirstPassage: {
"scene1": "EV10C4",
},
},
"camila": {
name: "Camila",
displayName: "Camila",
presentation: false,
actressName: "Camila Herrera7",
actressSocialMedia: "https://www.fanhub.com/@camila-herrera7",
img: "pizzamedia/images/girls/camila/",
scenes: {
"scene1": false,
},
SceneFirstPassage: {
"scene1": "EV10B2",
},
},
"demoness": {
name: "Demoness",
displayName: "Demoness",
presentation: false,
actressName: "Valery Summer",
actressSocialMedia: "https://tour.valerysummervideos.com/tgp",
img: "pizzamedia/images/girls/demoness/",
scenes: {
"scene1": false,
},
SceneFirstPassage: {
"scene1": "EV6C3",
},
},
}>>
<<set $adventureGirlsSorted = {}>>
<<set $sortedKeys = Object.keys($adventureGirls).sort()>>
<<for _i = 0; _i < $sortedKeys.length; _i++>>
<<set _k = $sortedKeys[_i]>>
<<set $adventureGirlsSorted[_k] = $adventureGirls[_k]>>
<</for>>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "intro">>
<<set $girl = $girls.melissa>>
[[Go Back|Collection]]<br>
<<set _girlLower = $girl.name.toLowerCase()>>
<<set _girlCap = $girl.name.charAt(0).toUpperCase() + $girl.name.slice(1)>>
<<set _girlCssVar = "var(--" + _girlLower + ")" >>
<<set $girlColor = "var(--"+$girl.name.toLowerCase()+");">>
<style>
#girlProgressProgressBar::-webkit-progress-value {
background-color: var(--melissa);
border-radius: 5px;
box-shadow:none;
}
</style>
<<set $girlLoveProgressPercent = Math.round(($girl.love / $girl.maxLove) * 100)>>
<<set $girlProgressProgressPercent = Math.round(($girl.progress / $girl.maxProgress) * 100)>>
<<set $CSSgirlTextColor = "color: "+$girlColor>>
<<set $CSSgirlBorderColor = "border: 3px solid "+$girlColor+";box-shadow:none;">>
<<set $posingPictureRoute = $girl.img+"pose1.jpg">>
<<set $CSSprogressBackgroundColor = "background-color: var(--blue)">>
<div class="eachWalkhroughFlexBox">
<div class="eachWalkhroughFlexBox-fc">
<h1 @style="$CSSgirlTextColor">$girl.displayName</h1>
<img @src="$posingPictureRoute" @style="$CSSgirlBorderColor">
</div>
</div>
<br>
<div class="collectionWrap" @style="'--girlColor:' + _girlCssVar + ';'">
<div class="collectionTitle gradient-text">SCENES</div>
<div class="collectionGrid">
<<set _sceneKeys = Object.keys($girl.scenes || {})>>
<<for _i = 0; _i < _sceneKeys.length; _i++>>
<<set _key = _sceneKeys[_i]>>
<<set _unlocked = $girl.scenes[_key]>>
<<set _n = Number(_key.replace("scene",""))>>
/* AQUÍ USAMOS LA NUEVA VARIABLE */
<<set _targetPassage = $girl.SceneFirstPassage[_key]>>
<<set _thumb = "pizzamedia/images/girls/" + _girlLower + "/" + "scene" + _n + ".jpg">>
<<set _titleTop = "SCENE " + _n>>
<<if _unlocked>>
/* AÑADIDO DATA-SETTER AQUÍ */
<a class="collectionPassageLink collectionClickable" @data-passage="_targetPassage" data-setter="$gameEngine.onRepetition = true">
<div class="collectionCard collectionCardScene" @style="'border-color:' + _girlCssVar + ';'">
<div class="collectionCardTop">_titleTop</div>
<div class="collectionCardBody">
<img class="collectionPreview" @src="_thumb">
</div>
<div class="collectionCardBottom">Unlocked</div>
</div>
</a>
<br>
<<else>>
<div class="collectionCard collectionCardScene" style="border-color: rgba(255,255,255,0.10);">
<div class="collectionCardTop">_titleTop</div>
<div class="collectionCardBody">
<img class="collectionPreview collectionPreviewLocked" @src="_thumb">
</div>
<div class="collectionCardBottom">Locked</div>
</div>
<br>
<</if>>
<</for>>
</div>
<<if $girl.album>>
<div class="collectionTitle gradient-text">ALBUM</div>
<div class="collectionGrid">
<<set _picKeys = Object.keys($girl.album)>>
<<for _i = 0; _i < _picKeys.length; _i++>>
<<set _key = _picKeys[_i]>>
<<set _unlocked = $girl.album[_key]>>
<<set _n = Number(_key.replace("album",""))>>
<<set _img = "pizzamedia/images/girls/" + _girlLower + "/album" + _n + ".jpg">>
<<set _titleTop = "PICTURE " + _n>>
<<if _unlocked>>
<div class="collectionCard collectionCardAlbum" @style="'border-color:' + _girlCssVar + ';'">
<div class="collectionCardTop">_titleTop</div>
<div class="collectionCardBody" >
[img[_img][PictureWatcher][$pictureWatcher = _img]]
</div>
<div class="collectionCardBottom">Unlocked</div>
</div>
<br>
<<else>>
<div class="collectionCard collectionCardAlbum" style="border-color: rgba(255,255,255,0.10);">
<div class="collectionCardTop">_titleTop</div>
<div class="collectionCardBody">
<img class="collectionPreview collectionPreviewLocked" @src="_img">
</div>
<div class="collectionCardBottom">Locked</div>
</div>
<br>
<</if>>
<</for>>
</div>
<</if>>
</div>
<<set $girlColor = "var(--"+$girl.name.toLowerCase()+");">>
<style>
#girlProgressProgressBar::-webkit-progress-value {
background-color: var(--melissa);
border-radius: 5px;
box-shadow:none;
}
</style>
<<set $girlProgressProgressPercent = Math.round(($girl.progress / $girl.maxProgress) * 100)>>
<<set $CSSgirlTextColor = "color: "+$girlColor>>
<<set $CSSgirlBorderColor = "border: 3px solid "+$girlColor>>
<<set $posingPictureRoute = $girl.img+"pose2.jpg">>
<<set $CSSprogressBackgroundColor = "background-color: var(--blue)">>
<div class="captionProgressBar">
<progress id="girlProgressProgressBar" class="captionProgressBarBackground" max="100" @value="$girlProgressProgressPercent"></progress>
<br>
<span class="captionProgressBarText">Progress: $girl.progress / $girl.maxProgress</span>
</div>
<br>
<<if $girl.progress >= $girl.maxProgress && $girl.presentation === true >>
<span style="color:var(--purple)">You have reached the end of this girl's content.</span><br>
<span style="color:var(--purple)">For more content consider supporting on patreon.</span><br>
<</if>>
QUEST<br>
<<if $girl.strangeChip === false>>
<p class="reflection">You have to find something first; keep making deliveries until you find it.</p><br>
<<elseif $girl.strangeChipInstalled === false>>
<p class="reflection">Look for $girls.melissa.displayName and show her the strange chip you found on your adventures.</p><br>
<<elseif $girl.strangeChipInstalled === true>>
<p class="reflection">Talk to $girls.melissa.displayName later; she's still handing out some packages.</p><br>
<<elseif $girl.strangeChipInstalled === true && $girls.melissa.cooldown <= 0>>
<p class="reflection">Go check out $girls.melissa.displayName.</p><br>
<<elseif $girl.progress === 1 && $girls.melissa.cooldown > 0>>
<p class="reflection">Talk to $girls.melissa.displayName later; she's still handing out some packages.</p><br>
<<elseif $girl.progress === 1 && $girls.melissa.cooldown <= 0>>
<p class="reflection">Go check out $girls.melissa.displayName.</p><br>
<</if>>
<br>
[[Go Back|Collection]]<br>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "intro">>
<<set $boy = $boys.phallus>>
<<set $boyColor = "var(--"+$boy.name.toLowerCase()+");">>
<style>
#boyProgressProgressBar::-webkit-progress-value {
background-color: var(--phallus);
border-radius: 5px;
}
</style>
<<set $boyLoveProgressPercent = Math.round(($boy.love / $boy.maxLove) * 100)>>
<<set $boyProgressProgressPercent = Math.round(($boy.progress / $boy.maxProgress) * 100)>>
<<set $CSSboyTextColor = "color: "+$boyColor>>
<<set $CSSboyBorderColor = "border: 3px solid "+$boyColor>>
<<set $posingPictureRoute = $boy.img+"pose2.jpg">>
<<set $CSSprogressBackgroundColor = "background-color: var(--blue)">>
<div class="eachWalkhroughFlexBox">
<div class="eachWalkhroughFlexBox-fc">
<h1 @style="$CSSboyTextColor">$boy.name</h1>
<img @src="$posingPictureRoute" @style="$CSSboyBorderColor">
</div>
</div>
<br>
<div class="captionProgressBar">
<progress id="boyProgressProgressBar" class="captionProgressBarBackground" max="100" @value="$boyProgressProgressPercent"></progress>
<br>
<span class="captionProgressBarText">Progress: $boy.progress / $boy.maxProgress</span>
</div>
<br>
<<if $boy.progress >= $boy.maxProgress>>
<span style="color:var(--purple)">You have reached the end of this boy's content.</span><br>
<span style="color:var(--purple)">For more content consider supporting on patreon.</span><br>
<<else>>
QUEST<br>
<<if $boy.progress === 0>>
<p class="reflection">Complete successfully complete $gameEngine.deliveryCount / 6 pizza deliveries, and an event will pop up when you're at the pizzeria.</p><br>
<</if>>
<</if>>
[[Go Back|Collection]]<br>
</div>
<</nobr>>
<<nobr>>
/* Agrupamos los 3 objetos en un array temporal para no repetir código */
<<set _allGroups = [$adventureGirls, $girls, $boys]>>
/* Recorremos cada grupo (primero adventureGirls, luego girls, luego boys) */
<<for _g = 0; _g < _allGroups.length; _g++>>
<<set _currentGroup = _allGroups[_g]>>
<<set _keys = Object.keys(_currentGroup)>>
/* Recorremos cada personaje dentro del grupo actual */
<<for _i = 0; _i < _keys.length; _i++>>
<<set _char = _currentGroup[_keys[_i]]>>
/* Verificamos si el personaje tiene la variable cooldown definida */
<<if _char.cooldown !== undefined>>
<<set _char.cooldown-->>
/* Evitamos que baje de 0 */
<<if _char.cooldown < 0>>
<<set _char.cooldown = 0>>
<</if>>
<</if>>
<</for>>
<</for>>
<</nobr>><<nobr>>
<div align="center">
<<if $gameEngine.musicOn>>
<<audio "bgm_chill" play>>
<</if>>
<h3 style="color:orange">The delivery was successful!!</h3>
<<set $moneyImages = []>>
<<for $i = 0; $i < 7; $i++>>
<<set $moneyImages[$i] = "events/winningmoney/"+$i+".gif">>
<</for>>
<<set $randomImage = $moneyImages.random()>>
[img["pizzamedia/images/"+$randomImage]]<br><br>
<<if $delivery.currency === "regencoins">>
<<set $player.regencoins += $delivery.earnings>>
<span class="captionProgressBarText" id="regencore">You receive payment for it: $delivery.earnings RegenCoins.</span><br>
<<else>>
<<set $player.megaBits += $delivery.earnings>>
<span class="captionProgressBarText" id="megabits">You receive payment for it: $delivery.earnings MegaBits.</span><br>
<</if>>
<<set $gameEngine.deliveryCount++>>
<br>
[[Back to the pizzeria|ResetDelivery]]
</div>
<</nobr>><<set $boys = {
"jerry": {
name: "Jerry",
displayName: "Jerry",
presentation: false,
img: "pizzamedia/images/boys/jerry/",
},
"minerbot": {
name: "Minerbot",
displayName: "Minerbot",
presentation: false,
img: "pizzamedia/images/boys/minerbot/",
},
"vortex": {
name: "Vortex",
displayName: "Vortex",
presentation: false,
img: "pizzamedia/images/boys/vortex/",
},
"phallus": {
name: "Phallus",
displayName: "Mr. Phallus",
presentation: false,
cooldown: 0,
progress: 0,
maxProgress: 1,
img: "pizzamedia/images/boys/phallus/",
},
}>><<set $girls = {
"melissa": {
name: "Melissa",
displayName: "Melissa",
presentation: false,
actressName: "Jenny Kitty",
actressSocialMedia: "https://www.fanhub.com/@jenny-kitty",
cooldown: 0,
img: "pizzamedia/images/girls/melissa/",
progress: 0,
maxProgress: 3,
scenes: {
"scene1": false,
"scene2": false,
},
SceneFirstPassage: {
"scene1": "MelissaScene1A",
"scene2": "MelissaScene2A",
},
strangeChip: false,
},
"dan": {
name: "Dan",
displayName: "Dan",
presentation: false,
actressName: "Dan Dangler Kitty",
actressSocialMedia: "https://www.fanhub.com/@dan-dangler",
cooldown: 0,
img: "pizzamedia/images/girls/dan/",
progress: 0,
maxProgress: 0,
scenes: {
},
SceneFirstPassage: {
},
},
}>><<nobr>>
/* =========================================================
PASO 1: RESCATAR EL PROGRESO DEL JUGADOR
========================================================= */
<<script>>
const sv = State.variables;
setup.rescuedData = {
eventGirls: {}, adventureGirls: {}, girls: {}, boys: {},
items: {}, consumables: {}, mutations: {}, enemies: {}
};
function rescue(category, dict, keys) {
if (!dict) return;
for (let id in dict) {
setup.rescuedData[category][id] = {};
keys.forEach(k => {
if (dict[id][k] !== undefined) setup.rescuedData[category][id][k] = dict[id][k];
});
if (dict[id].scenes) setup.rescuedData[category][id].scenes = JSON.parse(JSON.stringify(dict[id].scenes));
if (dict[id].album) setup.rescuedData[category][id].album = JSON.parse(JSON.stringify(dict[id].album));
}
}
rescue("eventGirls", sv.eventGirls, ["presentation", "progress", "cooldown", "strangeChip"]);
rescue("adventureGirls", sv.adventureGirls, ["presentation", "progress", "cooldown", "strangeChip"]);
rescue("girls", sv.girls, ["presentation", "progress", "cooldown", "strangeChip"]);
rescue("boys", sv.boys, ["presentation", "cooldown", "progress"]);
rescue("enemies", sv.enemies, ["presentation"]);
if (sv.player) {
rescue("items", sv.player.items, ["obtained"]);
rescue("consumables", sv.player.consumables, ["obtained", "qty"]);
rescue("mutations", sv.player.mutations, ["obtained"]);
}
<</script>>
/* =========================================================
PASO 2: RECARGAR DATOS BASE
========================================================= */
<<include "SetWeapons">>
<<include "SetArmors">>
<<include "Consumables">>
<<include "Enemies">>
<<include "Mutations">>
<<include "EventGirls">>
<<include "AdventureGirls">>
<<include "Girls">>
<<include "Boys">>
<<include "SetSets">>
/* =========================================================
PASO 3: INYECTAR EL PROGRESO RESCATADO
========================================================= */
<<script>>
const sv = State.variables;
function restore(category, dict) {
if (!dict || !setup.rescuedData[category]) return;
let rescued = setup.rescuedData[category];
for (let id in rescued) {
if (dict[id]) {
for (let k in rescued[id]) {
if (k !== "scenes" && k !== "album") {
dict[id][k] = rescued[id][k];
}
}
if (rescued[id].scenes && dict[id].scenes) {
for (let s in rescued[id].scenes) {
if (dict[id].scenes[s] !== undefined) dict[id].scenes[s] = rescued[id].scenes[s];
}
}
if (rescued[id].album && dict[id].album) {
for (let a in rescued[id].album) {
if (dict[id].album[a] !== undefined) dict[id].album[a] = rescued[id].album[a];
}
}
}
}
}
restore("eventGirls", sv.eventGirls);
restore("adventureGirls", sv.adventureGirls);
restore("girls", sv.girls);
restore("boys", sv.boys);
restore("enemies", sv.enemies);
if (sv.player) {
restore("items", sv.player.items);
restore("consumables", sv.player.consumables);
restore("mutations", sv.player.mutations);
}
delete setup.rescuedData;
<</script>>
/* =========================================================
PASO 4: ORDENAR Y FINALIZAR
========================================================= */
<<set $eventGirlsSorted = {}>>
<<set _sortedKeys = Object.keys($eventGirls).sort()>>
<<for _i = 0; _i < _sortedKeys.length; _i++>>
<<set $eventGirlsSorted[_sortedKeys[_i]] = $eventGirls[_sortedKeys[_i]]>>
<</for>>
<<set $adventureGirlsSorted = {}>>
<<set _sortedKeysAdv = Object.keys($adventureGirls).sort()>>
<<for _i = 0; _i < _sortedKeysAdv.length; _i++>>
<<set $adventureGirlsSorted[_sortedKeysAdv[_i]] = $adventureGirls[_sortedKeysAdv[_i]]>>
<</for>>
<<set $sortedConsumables = {}>>
<<set _sortedConsKeys = Object.keys($player.consumables).sort()>>
<<for _i = 0; _i < _sortedConsKeys.length; _i++>>
<<set $sortedConsumables[_sortedConsKeys[_i]] = $player.consumables[_sortedConsKeys[_i]]>>
<</for>>
<<set $sortedMutations = {}>>
<<set _sortedMutKeys = Object.keys($player.mutations).sort()>>
<<for _i = 0; _i < _sortedMutKeys.length; _i++>>
<<set $sortedMutations[_sortedMutKeys[_i]] = $player.mutations[_sortedMutKeys[_i]]>>
<</for>>
<<goto "Pizzeria">>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "newportalbackground0">>
<p class="reflection">You manage to escape the battle, and a new portal opens in front of you.</p>
[img['pizzamedia/images/events/newportal/portal0.jpg']]
<<set _dice = random(1, 30)>>
<<if _dice == 1>>
<<if $player.dragonBalls == 0>>
[img['pizzamedia/images/items/ball1.jpg']]
<p class="reflection">A glowing orange sphere emerges from the portal. It has a reddish star inside it.</p>
<<set $player.dragonBalls++>>
<<elseif $player.dragonBalls == 1>>
[img['pizzamedia/images/items/ball2.jpg']]
<p class="reflection">A glowing orange sphere emerges from the portal. It has two reddish stars inside it.</p>
<<set $player.dragonBalls++>>
<<elseif $player.dragonBalls == 2>>
[img['pizzamedia/images/items/ball3.jpg']]
<p class="reflection">A glowing orange sphere emerges from the portal. It has three reddish stars inside it.</p>
<<set $player.dragonBalls++>>
<<elseif $player.dragonBalls == 3>>
[img['pizzamedia/images/items/ball4.jpg']]
<p class="reflection">A glowing orange sphere emerges from the portal. It has four reddish stars inside it.</p>
<<set $player.dragonBalls++>>
<<elseif $player.dragonBalls == 4>>
[img['pizzamedia/images/items/ball5.jpg']]
<p class="reflection">A glowing orange sphere emerges from the portal. It has five reddish stars inside it.</p>
<<set $player.dragonBalls++>>
<<elseif $player.dragonBalls == 5>>
[img['pizzamedia/images/items/ball6.jpg']]
<p class="reflection">A glowing orange sphere emerges from the portal. It has six reddish stars inside it.</p>
<<set $player.dragonBalls++>>
<<elseif $player.dragonBalls == 6>>
[img['pizzamedia/images/items/ball7.jpg']]
<p class="reflection">A glowing orange sphere emerges from the portal. It has seven reddish stars inside it.</p>
<<set $player.dragonBalls++>>
<</if>>
<</if>>
<br><br>
[[A new portal opens|EventSelector]]
</div>
<</nobr>><<nobr>>
<br>
<div class="creditsFlexBox">
<<set _keys = Object.keys($eventGirls)>>
<<for _i = 0; _i < _keys.length; _i++>>
<<set _k = _keys[_i]>>
<<set _g = $eventGirls[_k]>>
<<set _gpicture = _g.img + "face.jpg">>
<<set _varName = String(_g.name || _k).toLowerCase()>>
<<set _gColor = "var(--" + _varName + ")">>
<div class="creditsFlexBox-fc">
<div class="imagename-container">
<img
class="creditsPicture"
@src="_gpicture"
@style="'border: 2px solid ' + _gColor"
>
<span style="display:flex; flex-direction:column; gap:8px; justify-content:center;">
<span @style="'color:' + _gColor">
<<print _g.name>> -> <<print (_g.actressName || "")>>
</span>
<<if _g.actressSocialMedia>>
<span>
<a @href="_g.actressSocialMedia"
target="_blank"
class="actressLink"
@data-color="_gColor"
>
Official Actress Social Media
</a>
</span>
<</if>>
<span @style="'color:' + _gColor + '; font-size:0.85em; opacity:0.8;'">
Change character name?
</span>
<input
type="text"
class="girlNameInput"
@data-key="_k"
@value="(_g.displayName || _g.name || '')"
style="background:rgba(0,0,0,0.5);border:1px solid rgba(255,255,255,0.3);border-radius:8px;color:white;padding:8px 12px;font-size:16px;width:200px;text-align:center;"
>
</span>
</div>
</div><br>
<</for>>
</div>
<<button "Default All Names">>
<<run (function(){
var girls = State.variables.eventGirls;
Object.keys(girls).forEach(function(k){
if (girls[k] && girls[k].name){
girls[k].displayName = girls[k].name;
}
});
Engine.show();
})()>>
<</button>>
<<script>>
$(document).one(':passagedisplay', function(){
document.querySelectorAll('.actressLink').forEach(function(a){
var color = a.getAttribute('data-color');
if(color) a.style.color = color;
a.style.fontSize = '0.85em';
});
document.querySelectorAll('.girlNameInput').forEach(function(input){
input.addEventListener('change', function(){
var key = this.getAttribute('data-key');
if(key && State.variables.eventGirls[key]){
State.variables.eventGirls[key].displayName = this.value.trim();
}
});
});
});
<</script>>
<</nobr>><<nobr>>
<br>
<div class="creditsFlexBox">
<<set _keys = Object.keys($adventureGirls)>>
<<for _i = 0; _i < _keys.length; _i++>>
<<set _k = _keys[_i]>>
<<set _g = $adventureGirls[_k]>>
<<set _gpicture = _g.img + "face.jpg">>
<<set _varName = String(_g.name || _k).toLowerCase()>>
<<set _gColor = "var(--" + _varName + ")">>
<div class="creditsFlexBox-fc">
<div class="imagename-container">
<img
class="creditsPicture"
@src="_gpicture"
@style="'border: 2px solid ' + _gColor"
>
<span style="display:flex; flex-direction:column; gap:8px; justify-content:center;">
<span @style="'color:' + _gColor">
<<print _g.name>> -> <<print (_g.actressName || "")>>
</span>
<<if _g.actressSocialMedia>>
<span>
<a @href="_g.actressSocialMedia"
target="_blank"
class="actressLink"
@data-color="_gColor"
>
Official Actress Social Media
</a>
</span>
<</if>>
<span @style="'color:' + _gColor + '; font-size:0.85em; opacity:0.8;'">
Change character name?
</span>
<input
type="text"
class="girlNameInput"
@data-key="_k"
@value="(_g.displayName || _g.name || '')"
style="background:rgba(0,0,0,0.5);border:1px solid rgba(255,255,255,0.3);border-radius:8px;color:white;padding:8px 12px;font-size:16px;width:200px;text-align:center;"
>
</span>
</div>
</div><br>
<</for>>
</div>
<<button "Default All Names">>
<<run (function(){
var girls = State.variables.adventureGirls;
Object.keys(girls).forEach(function(k){
if (girls[k] && girls[k].name){
girls[k].displayName = girls[k].name;
}
});
Engine.show();
})()>>
<</button>>
<<script>>
$(document).one(':passagedisplay', function(){
document.querySelectorAll('.actressLink').forEach(function(a){
var color = a.getAttribute('data-color');
if(color) a.style.color = color;
a.style.fontSize = '0.85em';
});
document.querySelectorAll('.girlNameInput').forEach(function(input){
input.addEventListener('change', function(){
var key = this.getAttribute('data-key');
if(key && State.variables.adventureGirls[key]){
State.variables.adventureGirls[key].displayName = this.value.trim();
}
});
});
});
<</script>>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "rebeccascene1a">>
<<set $gameEngine.onScene = true>>
<<audio "bgm_chill" pause>>
<p class="reflection">Finally, you arrive at your destination.</p>
[img['pizzamedia/images/girls/rebecca/rebeccascene1/houseoutside.jpg']]<br>
<p class="reflection">You see that the front door is closed, so you decide to let them know you're here.</p>
<<say "You" $player.img>>Hello! Pizza delivery guy!<</say>>
<p class="reflection">You knock on the door, but no one answers. You'd better check around the back.</p>
[[Meanwhile, around the back of the house....|RebeccaScene3B]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "rebeccascene3a">>
<<rebecca>>You are way better at kissing than he is anyway..<</rebecca>><br>
<<dan>>Yeah, screw him... Oh my God.<</dan>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene3/0.mp4">>
<p class="reflection">They start kissing each other playfully and passionately.</p>
<<dan>>Uuhh, nipple poking...<</dan>><br>
<<rebecca>>Mmm, you're so sexy.<</rebecca>><br>
<<dan>>I wanna see them, let me see them... Get them out for me.<</dan>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene3/1.mp4">>
<p class="reflection">The blonde girl starts to pull down $eventGirls.rebecca.displayName's bodysuit, revealing her big boobs.</p>
<<rebecca>>Mmm, fuck. They're already coming out.<</rebecca>><br>
<<dan>>Uuhh, they fell out.<</dan>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene3/2.mp4">>
<p class="reflection">$eventGirls.rebecca.displayName pulls down the blonde girl’s bodysuit and starts licking her nipples.</p>
<<dan>>Ouh yeah...<</dan>><br>
<<rebecca>>That feels so good.<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene3/3.mp4">>
<p class="reflection">Just as they’re playing with her boobs, you appear at the back of the house and knock on the window.</p>
[[They come out to greet you|RebeccaScene3C]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "rebeccascene3b">>
<<say "You" $player.img>>Hello? Is anyone there?<</say>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene3/4.mp4">>
<p class="reflection">You hear noises coming from inside the house and try to look through the window.</p>
<<linkreplace "They let you in">>
<<rebecca>>We ordered a big sausage pizza.<</rebecca>><br>
<<dan>>Yeah, we are really hungry.<</dan>><br>
<<say "You" $player.img>>Oh, the big sausage comes in the box.<</say>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene3/5.mp4">>
<p class="reflection">You open the box and show them the pizza with extra sausage.<br>They’re really amazed when they see it.</p>
<<rebecca>>Oh my God, that is a big sausage pizza.<</rebecca>><br>
<<dan>>That is huge.<</dan>><br>
<<rebecca>>Oh my God, I'm so hungry.<</rebecca>><br>
<<linkreplace "They’re very hungry">>
<<rebecca>>Mmmmm... *Gulp* *gulp*<</rebecca>><br>
<<dan>>Mmm... yeeess... Ohh, good girl, yees...<</dan>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene3/6.mp4">>
<p class="reflection">$eventGirls.rebecca.displayName starts sucking your big dick non-stop, while $girls.dan.displayName helps her by holding it for her.</p>
<<dan>>Take that sausage down your thoat. Yeah...<</dan>><br>
<<rebecca>>Oh my God, yeess... Oh my God... You really were hungry.<</rebecca>><br>
<<dan>>*Gulp* *gulp*<</dan>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene3/7.mp4">>
<p class="reflection">Now $girls.dan.displayName shows just how hungry she was.</p>
<<dan>>So good... Mmm...<</dan>><br>
<<rebecca>>Mmm...<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene3/8.mp4">>
<p class="reflection">$eventGirls.rebecca.displayName tries to swallow your dick as much as she can. You try to help her by pushing her head until you feel her breath on your tip.</p>
[[They want more|RebeccaScene3D]]
<</linkreplace>>
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "rebeccascene3a">>
<<rebecca>>Yeah, yeah... Yes, fuck... I love the way you wrap that little clip like that.<</rebecca>><br>
<<dan>>Ohh, yeess...<</dan>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene3/9.mp4">>
<p class="reflection">$eventGirls.rebecca.displayName climbs on top of you and starts riding your big dick while $girls.dan.displayName strokes her clitoris.</p>
<<rebecca>>Oh my God, yes, yes, yes... Oh, fuck, fuck, fuck,... Oh God yes, make me come... Fuck, fuck, yes please...<</rebecca>><br>
<<say "You" $player.img>>Ohhhh....<</say>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene3/10.mp4">>
<p class="reflection">You grab her by the hips and thrust hard into her wet pussy.</p>
<<rebecca>>Oh my God, fuck...<</rebecca>><br>
<<dan>>Mmm, fuck, oohh...<</dan>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene3/11.mp4">>
<p class="reflection">$girls.dan.displayName takes her turn and climbs on top of you, riding your dick and showing you her big butt.</p>
<<dan>>Aja, aja... Oh, oh my God, yeah... Give me that dick... Oh, fuck yeah...<</dan>><br>
<<say "You" $player.img>>Oohh...<</say>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene3/12.mp4">>
<p class="reflection">$eventGirls.rebecca.displayName licks the nipples and strokes the clitoris of $girls.dan.displayName, while she continues to ride your dick.</p>
[[They get on all fours|RebeccaScene3E][$cumProgress = 0]]
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "rebeccascene3a">>
<<rebecca>>Aahh, mmm...<</rebecca>><br>
<<dan>>Oh, fuck yeah...<</dan>><br>
<<rebecca>>Aahh, aahh... Fuck... Yeess, that is so fucking good. Oohh, I love the way you use me like that.<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene3/13.mp4">>
<p class="reflection">You start fucking $eventGirls.rebecca.displayName on all fours. Meanwhile, she leans against the sofa and licks $girls.dan.displayName's pussy.</p>
<<rebecca>>Oohh, yes, yes, fuck me into the pussy...<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene3/14.mp4">>
<p class="reflection">Comienzas a embestirla con mas fuerza mientras le das cachetadas en el culo</p>
<<set $upper = "Fuck " + $girls.dan.displayName>>
<<linkreplace $upper>>
<<dan>>Oohh my God... Aahh, fuck...<</dan>><br>
<<rebecca>>Oohh, I love the way it jiggles, fuck... Yeah, back that also.<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene3/15.mp4">>
<p class="reflection">Now $girls.dan.displayName has taken the place of $eventGirls.rebecca.displayName, getting down on all fours on the sofa.</p>
<<dan>>I want you to make me come so bad. Make me come... Aja, yeah... Fuck, you wanna make me fucking come, yeah... Oohh, keep going, keep going, fuck, aahhh...<</dan>><br>
<<rebecca>>Oohh, fuck. Oh, shit...<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene3/16.mp4">>
<p class="reflection">You increase the force of your thrusts. You reach your limit and a little pre-cum ends up coming out.</p>
<<rebecca>>Look at all that pretty cum... Mmm, yeah...<</rebecca>><br>
<<dan>>Let me a taste...<</dan>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene3/17.mp4">>
<p class="reflection">$eventGirls.rebecca.displayName licks the pre-cum from $girls.dan.displayName’s butt and then starts sucking your dick to swallow every last drop of your pre-cum.</p>
[[They want to play a bit more|RebeccaScene3F][$cumProgress = 0]]
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "rebeccascene3a">>
<<rebecca>>Aahh, ah, ah... Oh, you wanna fucking cum?...<</rebecca>><br>
<<say "You" $player.img>>Yeah...<</say>><br>
<<rebecca>>Get the pizza... Mmm, we need some extra topping...<</rebecca>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene3/18.mp4">>
<p class="reflection">You feel like you're really close. $eventGirls.rebecca.displayName tells $girls.dan.displayName to get the pizza.</p>
<<rebecca>>You wanna fucking cum, you wanna fucking cum, yeess, fuck... Fuck, fuck, fuck, yes, yes, yes... Oh, oh. oh, fuck... oh, there it is...<</rebecca>><br>
<<dan>>Yeah...<</dan>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene3/19.mp4">>
<p class="reflection">$eventGirls.rebecca.displayName places the pizza box on top of her while you fuck her. You feel you can’t hold back for another second.</p>
<<rebecca>>Give it to us...<</rebecca>><br>
<<dan>>Yeess, all over... Ja, ja, ja, it's perfect...<</dan>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene3/20.mp4">>
<p class="reflection">They each take a slice of pizza and place it in front of you, waiting for you to add your special sauce.</p>
<<rebecca>>Give us sex sauce, that special sauce...<</rebecca>><br>
<<dan>>Mmm, yeess...<</dan>><br>
<<say "You" $player.img>>Oh my fucking God...<</say>><br>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene3/21.mp4">>
<p class="reflection">You end up shooting your load onto their slices of pizza.</p>
<<rebecca>>Mmm, Oh my God that looks so fucking delicious...<</rebecca>><br>
<<dan>>Mmm, yes, yes...<</dan>><br>
<<linkreplace "They eat their slices">>
<p class="reflection">$eventGirls.rebecca.displayName sucks your dick, licking up every last drop.</p>
<<video "pizzamedia/videos/girls/rebecca/rebeccascene3/22.mp4">>
<p class="reflection">They enjoy their slices of pizza with special sauce.</p>
<<dan>>Mmm, I think this is what I was missing...<</dan>><br>
<<rebecca>>This is the best pizza I ever had.<</rebecca>><br>
<p class="reflection">Finally, you say goodbye to them and head back to the pizzeria.</p>
<<set $eventGirls.rebecca.scene3 = true>>
<<if $gameEngine.onRepetition === false>>
[[Go back to the pizzeria|SuccessfulDelivery]]
<<else>>
<<link "End Replay">>
<<if $gameEngine.musicOn>>
<<audio "bgm_chill" play>>
<</if>>
<<goto $gameEngine.repetitionReturn>>
<</link>>
<</if>>
<</linkreplace>>
</div>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "pizzeriacustomer1">>
<<set $gameEngine.onScene = true>>
<<melissa>>$player.name, the phone is ringing. Could you answer it? Someone wants to place an order.<</melissa>>
<<say "You" $player.img>>Sure.<</say>><br>
[img['pizzamedia/images/places/pizzeria/specialdeliveries.jpg']]<br>
<p class="reflection">Someone is calling to place an order.</p>
<<linkreplace "Answer the call">>
<<say "You" $player.img>>Hello! $player.pizzeriaName Pizzeria!<br>What would you like to order?<</say>>
<<rebecca>>Hi, $player.name. You know what? I was still hungry after the last time.<</rebecca>>
<p class="reflection">You recognize her by her voice.</p>
<<say "You" $player.img>>Oh, hi, $eventGirls.rebecca.displayName. Don’t worry. Tell me, what kind of pizza would you like?<</say>>
<<rebecca>>I was thinking of ordering a sausage pizza, you know, extra large.<</rebecca>>
<<say "You" $player.img>>I’m sorry, but we don’t have that pizza on our menu. Anyway, if you want, I can tell you about the other options we have.<</say>>
<<rebecca>>Hmm... I think it is on the menu. It's just that you didn't understand the order, $player.name.<br>Una grande y caliente, con extra de salsa, hoy no estoy sola.<</rebecca>>
<<say "You" $player.img>>Oh, I think I know which pizza you mean. <br>I'll make it right away and bring it to you.<</say>>
<<rebecca>>Don’t take too long. We’re really hungry, $player.name.<</rebecca>>
<p class="reflection">She hangs up the phone.</p>
[[Start the delivery|EventSelector]]
<</linkreplace>>
</div>
<</nobr>>
<<nobr>>
<<if $delivery.isSpecial>>
<<set _sceneNum = $delivery.targetSceneNum>>
<<set _introPassage = $delivery.girl.name + "Scene" + _sceneNum + "SpecialOrder">>
<<goto _introPassage>>
<<else>>
<<goto "EventSelector">>
<</if>>
<</nobr>><<nobr>>
<div align="center">
<<set $gameEngine.currentPassage = "phone">>
<<if ndef $bestiaryFilter>><<set $bestiaryFilter = "all">><</if>>
<<if ndef $bestiarySort>><<set $bestiarySort = "az">><</if>>
<<if ndef $bestiarySelected>><<set $bestiarySelected = null>><</if>>
<<script>>
$(document).off("toggle.bstDrop", ".eqDrop").on("toggle.bstDrop", ".eqDrop", function(){
if(this.open){
$(".eqDrop").not(this).prop("open", false);
}
});
<</script>>
<<if !Macro.get("Bestiary_Render_OnePassage")>>
<<widget "Bestiary_Render_OnePassage">>
<<set _bstUnknownEnemyImg = "pizzamedia/images/enemies/unknown.jpg">>
<<set _bstUnknownItemImg = "pizzamedia/images/items/unknown.jpg">>
<<set _filter = ($bestiaryFilter ? $bestiaryFilter : "all")>>
<<set _sort = ($bestiarySort ? $bestiarySort : "az")>>
<<set _sel = $bestiarySelected>>
<<set _diffRank = { easy:1, medium:2, hard:3, elite:4, boss:5 }>>
<<set _diffColor = {
easy: "rgba(120,220,140,.95)",
medium: "rgba(255,210,74,.95)",
hard: "rgba(255,140,60,.95)",
elite: "rgba(190,120,255,.95)",
boss: "rgba(255,70,90,.95)"
}>>
<<set _filterOptions = [
{ key:"all", label:"All" },
{ key:"discovered", label:"Discovered" },
{ key:"undiscovered", label:"Undiscovered" },
{ key:"incomplete", label:"Incomplete" }
]>>
<<set _sortOptions = [
{ key:"az", label:"A → Z" },
{ key:"za", label:"Z → A" },
{ key:"difficulty_hi", label:"Difficulty (Higher)" },
{ key:"difficulty_lo", label:"Difficulty (Lower)" }
]>>
<<set _filterLabel = "All">>
<<for _i = 0; _i < _filterOptions.length; _i++>>
<<if _filterOptions[_i].key === _filter>><<set _filterLabel = _filterOptions[_i].label>><</if>>
<</for>>
<<set _sortLabel = "A → Z">>
<<for _i = 0; _i < _sortOptions.length; _i++>>
<<if _sortOptions[_i].key === _sort>><<set _sortLabel = _sortOptions[_i].label>><</if>>
<</for>>
<<set _keys = Object.keys($enemies || {})>>
<<set _list = []>>
<<for _k = 0; _k < _keys.length; _k++>>
<<set _key = _keys[_k]>>
<<set _en = $enemies[_key]>>
<<set _disc = (_en.presentation === true)>>
<<set _isPhase2 = (_en.secondPhase === true)>>
<<set _fullyDone = _disc>>
<<if _disc>>
<<set _lootItems = ($enemyLoot[_key] && $enemyLoot[_key].items) ? $enemyLoot[_key].items : []>>
<<for _li = 0; _li < _lootItems.length; _li++>>
<<set _liIt = $player.items[_lootItems[_li].key]>>
<<if !_liIt || _liIt.obtained !== true>>
<<set _fullyDone = false>>
<</if>>
<</for>>
<</if>>
<<if !_isPhase2>>
<<if _filter === "all"
|| (_filter === "discovered" && _disc)
|| (_filter === "undiscovered" && !_disc)
|| (_filter === "incomplete" && !_fullyDone)>>
<<run _list.push({
key: _key,
en: _en,
disc: _disc,
nm: ((_en.name||"")+"").toLowerCase(),
dr: (_diffRank[_en.difficulty] ? _diffRank[_en.difficulty] : 0)
})>>
<</if>>
<</if>>
<</for>>
<<if _sort === "az">>
<<run _list.sort(function(a,b){ return a.nm.localeCompare(b.nm); })>>
<<elseif _sort === "za">>
<<run _list.sort(function(a,b){ return b.nm.localeCompare(a.nm); })>>
<<elseif _sort === "difficulty_hi">>
<<run _list.sort(function(a,b){ return (b.dr - a.dr) || a.nm.localeCompare(b.nm); })>>
<<elseif _sort === "difficulty_lo">>
<<run _list.sort(function(a,b){ return (a.dr - b.dr) || a.nm.localeCompare(b.nm); })>>
<</if>>
<<set _validSel = false>>
<<for _i = 0; _i < _list.length; _i++>>
<<if _list[_i].key === _sel>><<set _validSel = true>><</if>>
<</for>>
<<if !_validSel && _list.length > 0>>
<<set _sel = _list[0].key>>
<<set $bestiarySelected = _sel>>
<</if>>
<div class="eqWrap">
<div class="bstTopRow">
<div class="bstTitle">BESTIARY</div>
<div class="eqFilters">
<details class="eqDrop" name="bstDropGroup">
<summary>STATUS: <<=_filterLabel>> ▾</summary>
<div class="eqMenu">
<<for _i = 0; _i < _filterOptions.length; _i++>>
<<set _opt = _filterOptions[_i]>>
<<capture _opt>>
<span class="eqMenuOpt">
<<link _opt.label>>
<<set $bestiaryFilter = _opt.key>>
<<replace "#bstShell">><<Bestiary_Render_OnePassage>><</replace>>
<</link>>
</span>
<</capture>>
<</for>>
</div>
</details>
<details class="eqDrop" name="bstDropGroup">
<summary>SORT: <<=_sortLabel>> ▾</summary>
<div class="eqMenu">
<<for _i = 0; _i < _sortOptions.length; _i++>>
<<set _opt = _sortOptions[_i]>>
<<capture _opt>>
<span class="eqMenuOpt">
<<link _opt.label>>
<<set $bestiarySort = _opt.key>>
<<replace "#bstShell">><<Bestiary_Render_OnePassage>><</replace>>
<</link>>
</span>
<</capture>>
<</for>>
</div>
</details>
</div>
</div>
<div class="eqMain">
<!-- LEFT: listado de enemigos -->
<div class="eqLeft">
<div class="bstListScroll">
<div class="bstList">
<<if _list.length === 0>>
<div class="eqEmpty">There are no enemies with this filter.</div>
<<else>>
<<for _j = 0; _j < _list.length; _j++>>
<<set _row = _list[_j]>>
<<set _en = _row.en>>
<<set _key = _row.key>>
<<set _isSel = (_key === _sel)>>
<<set _img = (_row.disc && _en.img) ? _en.img : _bstUnknownEnemyImg>>
<<set _dispName = (_row.disc ? _en.name : "???")>>
<<set _dCol = (_diffColor[_en.difficulty] ? _diffColor[_en.difficulty] : "rgba(255,255,255,.85)")>>
<<set _badgeStyle = "color:" + _dCol + "; border-color:" + _dCol + ";">>
<<set _rowClass = "bstListRow" + (_isSel ? " bstListRowActive" : "")>>
<<set _thumbClass = "nx-imgbox bstListThumb" + (_row.disc ? "" : " nx-locked")>>
<<capture _key, _thumbClass, _img, _row, _dispName, _en, _badgeStyle, _isSel>>
<<set _rowOuterClass = "bstListRow" + (_isSel ? " bstListRowActive" : "")>>
<<set _badgeHTML = _row.disc
? "<div class=\"eqBadge\" style=\"" + _badgeStyle + "\">" + _en.difficulty.toUpperCase() + "</div>"
: "<div class=\"eqBadge bstDiffUnknown\">???</div>">>
<<set _rowHTML = "<div class=\"" + _rowOuterClass + "\"><div class=\"bstListRowInner\">"
+ "<div class=\"" + _thumbClass + "\"><img src=\"" + _img + "\">" + "</div>"
+ "<div class=\"bstListInfo\"><div class=\"bstListName\">" + _dispName + "</div>" + _badgeHTML + "</div>"
+ "</div></div>">>
<<link _rowHTML>>
<<set $bestiarySelected = _key>>
<<replace "#bstShell">><<Bestiary_Render_OnePassage>><</replace>>
<</link>>
<</capture>>
<</for>>
<</if>>
</div>
</div>
</div>
<!-- RIGHT: detalle -->
<div class="eqRight">
<<if _sel && $enemies[_sel]>>
<<set _en = $enemies[_sel]>>
<<set _disc = (_en.presentation === true)>>
<<set _img = (_disc && _en.img) ? _en.img : _bstUnknownEnemyImg>>
<<set _dCol = (_diffColor[_en.difficulty] ? _diffColor[_en.difficulty] : "rgba(255,255,255,.85)")>>
<<set _badgeStyle = "color:" + _dCol + "; border-color:" + _dCol + ";">>
<<set _detailImgClass = "bstDetailImgBox" + (_disc ? "" : " bstImgLocked")>>
<<set _imgBorderColor = _disc ? _dCol : "rgba(255,255,255,.35)">>
<<set _detailImgStyle = "border-color:" + _imgBorderColor + "; box-shadow:0 12px 30px rgba(0,0,0,.5), 0 0 20px " + _imgBorderColor + ", 0 0 42px " + _imgBorderColor + ";">>
<div @class="_detailImgClass" @style="_detailImgStyle">
<img @src="_img">
</div>
<div class="bstDetailName"><<=(_disc ? _en.name : "???")>></div>
<div class="bstDetailBadgeWrap">
<<if _disc>>
<div class="eqBadge" @style="_badgeStyle"><<=_en.difficulty.toUpperCase()>></div>
<<else>>
<div class="eqBadge bstDiffUnknown">UNKNOWN</div>
<</if>>
</div>
<div class="eqRightTitle bstLootTitle">Well-known Drops</div>
<div class="bstLootGrid">
<<set _loot = ($enemyLoot[_sel] && $enemyLoot[_sel].items) ? $enemyLoot[_sel].items : []>>
<<if _loot.length === 0>>
<div class="eqEmpty">No known items.</div>
<<else>>
<<set _rarColorMap = {
common: "rgba(255,255,255,.85)",
rare: "rgba(78,165,255,.95)",
legendary: "rgba(255,210,74,.98)",
mythic: "rgba(255,122,26,.98)",
set: "rgba(49,208,74,.98)",
none: "rgba(255,255,255,.35)"
}>>
<<for _l = 0; _l < _loot.length; _l++>>
<<set _lk = _loot[_l].key>>
<<set _it = $player.items[_lk]>>
<<if _it>>
<<set _owned = (_it.obtained === true)>>
<<set _itImg = _owned ? (_it.img ? _it.img : _bstUnknownItemImg) : _bstUnknownItemImg>>
<<set _itName = _owned ? _it.name : "???">>
<<set _itRar = _owned ? ((_it.rarity||"common")+"") : "none">>
<<set _rarLabel = _owned ? _itRar.toUpperCase() : "???">>
<<set _rarColor = _rarColorMap[_itRar] ? _rarColorMap[_itRar] : _rarColorMap.common>>
<<set _imgBoxClass = "bstLootImgBox" + (_owned ? "" : " nx-locked")>>
<<set _imgBoxStyle = "width:76px!important;height:76px!important;min-width:76px!important;max-width:76px!important;flex:0 0 76px!important;border-radius:20px!important;border-color:" + _rarColor + "!important;box-shadow:0 0 10px " + _rarColor + "!important;">>
<<set _imgFilter = _owned ? "" : "filter:grayscale(100%) brightness(.75)!important;">>
<<set _imgStyle = "width:100%!important;height:100%!important;border:none!important;box-shadow:none!important;border-radius:18px!important;object-fit:cover!important;" + _imgFilter>>
<<set _rarStyle = "border-color:" + _rarColor + "!important;color:" + _rarColor + "!important;">>
<div class="bstLootCard" data-rarity="<<=_itRar>>">
<div class="<<=_imgBoxClass>>" @style="_imgBoxStyle">
<img @src="_itImg" @style="_imgStyle">
</div>
<div class="bstLootInfo">
<div class="bstLootName"><<=_itName>></div>
<div class="bstLootRarity" @style="_rarStyle"><<=_rarLabel>></div>
</div>
</div>
<</if>>
<</for>>
<</if>>
</div>
<<else>>
<div class="eqEmpty">Select an enemy to view details.</div>
<</if>>
</div>
</div>
</div>
<</widget>>
<</if>>
<div id="bstShell">
<<Bestiary_Render_OnePassage>>
</div>
<br><br>
[[Go back|Menu]]
</div>
<</nobr>>