<div id="story">
<div id="passages"></div>
</div><<silently>>
<<cacheaudio "bell" "audio/bell.wav">>
<<cacheaudio "rain" "audio/rain2.wav">>
<<cacheaudio "church" "audio/church-ambience.wav">>
<<cacheaudio "door" "audio/door.wav">>
<<cacheaudio "clicking" "audio/click.wav">>
<<cacheaudio "ambience" "audio/ambience.wav">>
<<preload 'images/window.png'>>
<</silently>><<silently>>
/* Navigation noises */
<<on 'click' 'button'>><<audio clicking volume 0.1 play>><</on>>
/* Keyboard navigation */
<<on 'keyup'>><<which 81>><<script>>UI.settings();<</script>><</on>>
<<on 'keyup'>><<which 13>><<trigger 'click' '.continue button'>><</on>>
<<on 'keyup'>><<which 32>><<trigger 'click' '.continue button'>><</on>>
<<on 'keyup'>><<which 39>><<trigger 'click' '.continue button'>><</on>>
<<on 'keyup'>><<which 37>><<trigger 'click' '.back button'>><</on>>
/* Forward button navigation */
/* <<on 'click' '.continue button'>>
<<if _ctp.log.index gt 0>>
<<if $('.back').is(":hidden")>><<run $(".back").css("display", "block")>><</if>>
<</if>>
<</on>> */
/* Backwards button navigation */
/* <<on 'click' '.back button'>>
<<if _ctp.log.index is 0>>
<<if $('.back').is(":visible")>><<run $(".back").css("display", "none")>><</if>>
<</if>>
<</on>> */
<</silently>><<silently>>
<<audio church loop volume 0.10 play>>
<<audio ambience loop volume 0.25 play>>
<<audio rain loop volume 0.10 play>>
<<crossfade "windowbox" "images/window.png" 2s>>
<</silently>>
<div class="passage">
<div class="startbox">
<h1>Camillus</h1>
<div class="menu-items">
<<button "Start" "I">><</button>>
<<button "Warnings" "Warnings">><</button>>
<<button "Credits" "Credits">><</button>>
</div>
</div>
</div><div class="buttons"><div class="back" style="visibility:hidden;"><<button "←" "Main Menu">><</button>></div></div><<silently>>
/* Initial variables */
/* Starting audio */
<<audio church fadeoverto 1 0>>
/* <<audio ambience fadeoverto 1 0>> */
<<audio rain fadeoverto 1 0>>
<<audio door play>>
/* Starting variables */
<<set $section to "section1">> /* Sets the starting pasage */
<<set $input to false>> /* Allows input in textboxes */
<<set $choice to false>> /* Allows choice selection in textboxes */
<<set $continue to false>> /* Allows nav forward */
<<set $back to false>> /* Allows nav back */
<<set _new to [22, 24, 26]>> /* Lines where you cannot go back */
<</silently>>
<div id="textbox">
<<ctp "section1">>
/* Set the ctp to the section to access index attribute */
<<liveblock>><<set _ctp to CTP.getCTP($section)>><</liveblock>>
/* Checks if textbox input prompt can be disabled */
<<ctpHead>>
<<if _ctp.log.index is 0>><<set $back to true>><<else>><<set $back to false>><</if>>
<<if _ctp.log.index gt 5>>
<<set $choice to true>><<update>>
<</if>>
<<if _new.includes(_ctp.log.index)>>
<<set $back to true>><<update>>
<</if>>
<<ctpNext t8n>>
<<set $continue to true>><<set $back to true>><<update>>
<<timed 0.5s>><<ctpAdvance $section>><</timed>><<ctpNext t8n>>
----
<span class="c">I am in no rush.</span>
<<timed 2s>><<ctpAdvance $section>><</timed>><<ctpNext t8n>>
<span class="c">Neither is the Lord.</span>
<<timed 2s>> <<ctpAdvance $section>><</timed>><<ctpNext t8n>>
<span class="c">Begin when you feel it is right.</span>
<<timed 2s>> <<ctpAdvance $section>><</timed>>
<<ctpNext t8n>>
----
<<disable $choice>><<button "Read the confession script" "Jump Test">><<set $option to 1>><<ctpAdvance $section>><</button>><</disable>>
<<disable $choice>><<button "Ask for clarification">><<set $option to 2>><<ctpAdvance $section>><</button>><</disable>>
<<disable $choice>><<button "Be honest">><<set $option to 3>><<ctpAdvance $section>><</button>><</disable>>
<<ctpNext t8n>>
<<timed 0s>>
<<type 50ms>>I actually haven't confessed in...<</type>>
<<next 3s>><<type 50ms>>A while.<</type>><<next 2s>><<ctpAdvance $section>>
<</timed>>
<<ctpNext t8n>><<timed 0s>><span class="c">...A while?</span>
<<next 3s>><<type 50ms>>....By a while I mean //never//, actually.<</type>><<next 2s>><<type 50ms>>I don't know why I'm here!<</type>><<next 2s>><<type 50ms>>It's a //pain in the ass// even //getting// to this stupid church.<</type>><<next 2s>><<type 20ms>>
I just thought, maybe, i don't know, my friends said that new priest seemed kind of hot and he'd be my type, not that I'd know because I //don't go to mass//, and Come on, what kind of priest would be available for a drink anyway. <</type>><<next 3s>><<type 20ms>>So here I am sitting all alone with you trying to see if my friends were right, except I have //no idea// what I'm doing here, or what you're even supposed to //say//.
<</type>>
<<next 2s>><<type 60ms>>I just wanted and an excuse to meet you, and I can't even -- <</type>>
<<next 3s>><<type 60ms>>I --<</type>>
<<next 3s>><<type 50ms>><div class="shake"> //''I can't even see your face!''// </div><</type>><<next 8s>><<ctpAdvance $section>>
<</timed>>
<<ctpNext t8n>>
<span class="c">Dios mio, hijo.</span>
<</ctp>>
</div><div class="buttons"><div class="continue"><<liveblock>><<disable $continue>><<button "→">><<ctpAdvance $section>><</button>><</disable>><</liveblock>></div><div class="back"><<liveblock>><<disable $back>><<button "←">><<ctpBack $section>><</button>><</disable>><</liveblock>></div><div><<button 'pop'>>
<<popover 'noclick'>>\
Hi there! Welcome to my game!
<div class="imgbox">[img[images/test.png]]</div>
<<button "Continue">><<script>>Dialog.close()<</script>><</button>>
<</popover>>
<</button>>
</div>
</div><<silently>>
/* Initial variables */
/* Starting audio */
<<audio church fadeoverto 1 0>>
<<audio ambience fadeoverto 1 0>>
<<audio rain fadeoverto 1 0>>
<<audio door play>>
/* Starting variables */
<<set $section to "section1">> /* Sets the starting pasage */
<<set $img to "images/window.png">> /* Sets the starting image */
<<set $input to false>> /* Allows input in textboxes */
<<set $continue to false>> /* Allows nav forward */
<<set $back to false>> /* Allows nav back */
<<set _new to [22, 24, 26]>> /* Lines where you cannot go back */
/* <<live '<img @src=$img>'>> */ /* Alternative way of setting images */
<</silently>>
<div class="imgbox"> <<crossfadecontainer "windowbox" $img>></div>
<div id="textbox">
<<ctp "section1">>
/* Set the ctp to the section to access index attribute */
<<liveblock>><<set _ctp to CTP.getCTP($section)>><</liveblock>>
<<ctpHead>><<silently>>
<<if _ctp.log.index gt 9>>
<<set $input to true>><<update>>
<</if>>
<<if _new.includes(_ctp.log.index)>>
<<set $back to true>><<update>>
<</if>><</silently>>
/* Example lines */
/* <<set $img to "images/window.png">><<update>> */ /* Alternative way to set images */
<<ctpNext t8n>>
Line with scroll-up transition.
<<ctpNext>>
Line without scroll-up transition.
<<ctpNext t8n>>
<<crossfade "windowbox" "images/test.png">>Advancing to this line changes the image.
<<ctpNext t8n>>
<<crossfade "windowbox" "images/window.png">>Advancing to this line changes the image again. Going back will not revert the image.
<<ctpNext t8n clear>>
Clear (undoable).
<<ctpNext t8n nobr>>
Because max-width: 100%, can no longer do same-line additions using CTP.
<<ctpNext t8n 1s>>
Delayed response. (Not overriden, but clickable).
<<ctpNext t8n>>
<div class="shake">Shaking text.</div>
<<ctpNext t8n>>/* Creating and disabling textboxes */
<<liveblock>> <<disable $input>><<textbox "$name" "">><</disable>><</liveblock>>
<<ctpNext t8n>> /* Handling inputs from textboxes */
<<if $name.length is 0>>
Response if no input.
<<else>>
<<set $name to $name.toUpperFirst()>>
Response if there is an input.
Inputted value in correct format: $name
<</if>>
<<ctpNext t8n>>
<<textarea "$pieEssay" "">>
<<ctpNext t8n>> /* Dropdowns */
<<message 'Create a dropdown link'>>This is text in the dropdown.<</message>><<message 'Create a dropdown button' btn>> This is text in the dropdown button.<</message>><<message 'Same Title' btn 'ID_1'>>This is text in the dropdown of a same-title.<</message>><<message 'Same Title' btn 'ID_2'>>This is text in the dropdown of a same-title.<</message>>
<<ctpNext t8n>> /* Typing effect */
<<type 40ms keep>> Type characters, Including [[links]] and ''other markup''<</type>>
<<set $continue to true>><<set $back to true>><<update>>
<<timed 3s>><<ctpAdvance $section>><</timed>><<ctpNext t8n>>Text after.
<<set $continue to false>><<set $back to false>> <<update>>
<<ctpNext t8n>> /* Clickable text changes */
<<linkreplace "Text to be replaced when clicked." t8n>>Replacement text.<</linkreplace>>
The beginning of a sentence, <<linkappend "clickable text to trigger." t8n>> Text added after clickable.<</linkappend>> End of the sentence.
The beginning of a sentence, <<linkprepend "clickable text to trigger." t8n>> Text added before clicakble. <</linkprepend>> End of the sentence.
<<ctpNext t8n>> /* Self-timed no-click sentence adding */
Incoming timed text.
<<set $continue to true>><<set $back to true>><<update>>
<<timed 2s>><<ctpAdvance $section>><</timed>><<ctpNext t8n>>Text after 2s. Has fade-up.
<<timed 2s>> <<ctpAdvance $section>><</timed>><<ctpNext t8n>>Another line after 2s.
<<timed 2s>><<ctpAdvance $section>><</timed>><<ctpNext t8n clear>>Cleared screen, then another line after 2s.
<<set $continue to false>><<set $back to false>> <<update>>
<<ctpNext t8n>> /* Manual passage navigation still possible */
[[Main Menu]] [[Jump Test]]
<<ctpNext t8n>> /* Cycling choices */
<<set $continue to true>><<set $back to true>><<update>>
The answer to the //Ultimate Question of Life, the Universe, and Everything// is?
<<cycle "$answer" autoselect>>
<<option "Towel">>
<<option "π" 3.14159>>
<<option 42>>
<<option 69>>
<<option "∞" Infinity>>
<</cycle>>
<<button "Submit">><<ctpAdvance $section>><</button>>
<<ctpNext t8n clear>> <<print _ctp.log.index>>
<<set $continue to false>><<set $back to false>> <<update>>
<<= $answer>>
<<ctpNext t8 clear>> /* Button choices */
<<set $continue to true>><<set $back to true>><<update>>
<<set $choice to "default">>
<<message "Ready to decide. (img load)" btn>>
<<button "Choice 1">><<set $choice to "choice 1">><<ctpAdvance $section>><</button>>
<div class="multichoice">
<<button "Choice 2">><<set $choice to "choice 2">><<ctpAdvance $section>><</button>>
<<button "Choice 3">><<set $choice to "choice 3">><<ctpAdvance $section>><</button>>
<<button "Choice the Fourth">><<set $choice to "choice 4">><<ctpAdvance $section>><</button>></div><div class="multichoice transparent">
<<button [img[images/test.png]]>><<set $choice to "image 1">><<ctpAdvance $section>><</button>>
<<button [img[images/test.png]]>><<set $choice to "image 2">><<ctpAdvance $section>><</button>>
<<button [img[images/test.png]]>><<set $choice to "image 3">><<ctpAdvance $section>><</button>></div><div class="multichoice">
<<button [img[images/test.png]]>><<set $choice to "image 1">><<ctpAdvance $section>><</button>>
<<button [img[images/test.png]]>><<set $choice to "image 2">><<ctpAdvance $section>><</button>>
<<button [img[images/test.png]]>><<set $choice to "image 3">><<ctpAdvance $section>><</button>></div><</message>>
<<ctpNext t8n clear>> <<print _ctp.log.index>>
<<set $continue to false>><<set $back to false>> <<update>>
<<= $choice>>
<<ctpNext t8n clear>> /* Checkbox, radiobutton, listbox, numberbox choices */
<<set $continue to true>><<set $back to true>><<update>>
<<set $pie to "no pie">>
What pies do you enjoy?
<label><<checkbox "$pieBlueberry" false true>> Blueberry?</label>
<label><<checkbox "$pieCherry" false true>> Cherry?</label>
<label><<checkbox "$pieCoconutCream" false true>> Coconut cream?</label>
What's your favorite pie?
<<radiobutton "$pie" "blueberry" autocheck>> Blueberry?
<<radiobutton "$pie" "cherry" autocheck>> Cherry?
<<radiobutton "$pie" "coconut cream" autocheck>> Coconut cream?
<<listbox "$lbanswer" autoselect>>
<<option "Towel">>
<<option "π" 3.14159>>
<<option 42>>
<<option 69>>
<<option "∞" Infinity>>
<</listbox>>
Wager? <<numberbox "$wager" 100>>
<<button "Submit">><<ctpAdvance $section>><</button>>
<<ctpNext t8n clear>> <<print _ctp.log.index>>
<<set $continue to false>><<set $back to false>> <<update>>
<<= $pieBlueberry>>
<<= $pie>>
<<= $lbanswer>>
<<= $wager>>
<<ctpNext t8n>> <span style="font-size:20px; color: gold;">⚜</span> /* end section marker */
<<ctpNext t8n clear>> /* Required empty ending passage to move to next section */
/* Checks when to change sections */
<<ctpTail>>
<<if _ctp.log.index is _ctp.stack.length - 1>>
<<run _ctp.goTo(0);>>
<<set $section to "section2">><<update>>
<</if>>
<</ctp>>
<<ctp "section2">>
<<set _ctp to CTP.getCTP($section)>><<update>>
<<ctpNext t8n>>
<<script>>
var element = document.getElementById("textbox");
element.scrollTop = -2000;
<</script>>
This is a new section. (not undoable)
<</ctp>>
</div><div class="buttons"><div class="continue"><<liveblock>><<disable $continue>><<button "→">><<ctpAdvance $section>><</button>><</disable>><</liveblock>></div><div class="back"><<liveblock>><<disable $back>><<button "←">><<ctpBack $section>><</button>><</disable>><</liveblock>></div></div><<silently>>
<<audio bell volume 0.1 play>>
<<crossfade "windowbox" "images/windowred.png" 2s>>
<</silently>>
<div id="textbox" style="flex-direction:column;">
<h1 style="font-size:16px;">Content Warnings</h1><ul>
<li>Death</li><li>Self-harm</li></ul>
</div><div class="buttons"><div class="back"><<button "←" "Main Menu">><</button>></div></div><<silently>>
<<audio bell volume 0.1 play>>
<<crossfade "windowbox" "images/windowpink.png" 2s>>
<</silently>>
<div id="textbox" style="flex-direction:column;">
<h1 style="font-size:16px;">Credits</h1><ul>
<li>Stevie</li><li>Other people</li></ul>
</div><div class="buttons"><div class="back"><<button "←" "Main Menu">><</button>></div></div><div id="textbox">[[Main Menu]]</div><div class="buttons"><div class="continue"><<liveblock>><<disable $continue>><<button "→">><<ctpAdvance $section>><</button>><</disable>><</liveblock>></div><div class="back"><<liveblock>><<disable $back>><<button "←">><<ctpBack $section>><</button>><</disable>><</liveblock>></div></div><<if not tags().includes("menu")>>
<div class="miniUI"><<message "☰" btn>>
<<link "settings">><<script>>UI.settings();<</script>><</link>>
<<link "saves">><<script>>UI.saves();<</script>><</link>>
<<link "restart">><<script>>UI.restart();<</script>><</link>>
<</message>></div>
<</if>>
/* <<if tags.includes("red")>>
<<silently>>
<<script>>
$("button").css("background-color", "orangered")
$("button:disabled").css("background-color", "#444")
<</script>>
<</silently>>
<</if>> */