If Condition. what am I doing wrong?

I am trying to insert additional text on page10, using an if condition, which is activated if the player has read page2.
But even if I pass by page2, the condition is not activated.

Can you help me?


<!--Saved by Quest 5.8.6836.13983-->
<asl version="580">
  <include ref="GamebookCore.aslx" />
  <game name="Una Sfortunata Giornata di Lavoro">
    <gameid>3d0f190b-fe4b-47bf-8799-b09a46a5439e</gameid>
    <version>Pre Alpha 0.1</version>
    <firstpublished>2019</firstpublished>
    <category>Comedy</category>
    <roomenter type="script"><![CDATA[
      SetCounter ("pazienza", 5)
      if (GetInt(game, "pazienza") < 0) {
        SetCounter ("pazienza", 5)
      }
      if (GetInt(game, "pazienza") > 5) {
        SetCounter ("pazienza", 5)
      }
    ]]></roomenter>
    <object name="Intro">
      <inherit name="script" />
      <description type="string"></description>
      <options type="stringdictionary" />
      <script type="script"><![CDATA[
        PrintCentered ("Tu sei Alex.<br/>Un giovane ed ambizioso, per quanto pigro, imprenditore, e stai per affrontare quella che sarà probabilmente la peggiore giornata della tua vita.<br/>Dovrai prendere scelte difficili che influiranno sulla tua pazienza e quindi sulla storia, plasmata solo dalle tue decisioni e dalla tua immaginazione.<br/>Cerca di arrivare alla fine della giornata senza dare di matto.<br/><br/>{page:Page1:Cominciamo.}")
      ]]></script>
      <object name="player">
        <inherit name="defaultplayer" />
      </object>
    </object>
  </game>
  <object name="Parte 1">
    <description type="string"></description>
    <object name="Page1">
      <inherit name="script" />
      <script type="script"><![CDATA[
        ClearScreen
        OutputTextNoBr ("E' un normale giovedì, in quel di Borgosesia.<br/>Manca ancora mezz'ora perchè scatti la sveglia, impostata tra perfezionamenti continui di Fantozziana memoria alle spaccate 6.30 del mattino, con un posticipo fisso alle 6.40.<br/>Una breve sonno/veglia ti concede qualche minuto di preparazione psicologica a quella che sarà la tua solita routine, o così pare;<br/>quando, improvvisamente, un acuto e fastidioso abbaiare proveniente dalla stazione ferroviaria, a pochi metri dal tuo appartamento, si manifesta.<br/>Tenti invano di ignorarlo ma la costanza del suono si fa sempre più vivida nella tua testa, creando non poca irritazione.<br/>Decidi quindi che tra {page:Page2:l'ignorare la cosa} ed {page:Page3:esprimere il tuo profondo dissenso verso il padrone}, ")
        RemovePageLink (Page1, Page3)
      ]]></script>
      <object name="Page2">
        <inherit name="script" />
        <description type="string"></description>
        <script type="script"><![CDATA[
          OutputTextNoBr ("sia il caso di mandare giù il primo boccone della giornata.<br/>Completamente attonito dal rimbombare nelle orecchie di questo suono sempre più snervante, aspetti solo di alzarti dal letto.")
          DecreaseCounter ("pazienza")
          MovePlayer (Page4)
        ]]></script>
      </object>
      <object name="Page3">
        <inherit name="script" />
        <description type="string"></description>
        <script type="script"><![CDATA[
          OutputTextNoBr ("debba partire quasi involontariamente e ad alta voce una minaccia fisica rivolta alla faccia del proprietario dell'animale.<br/>Dopo 10 secondi buoni di silenzio cupo ed imbarazzante, avverti in lontananza un borbottare di alfabeto asemico misto a dialetto campagnolo. Se non altro il cane ha smesso di abbaiare. Soddisfatto ed orgoglioso della tua fuori uscita mattutina, attendi il momento di alzarsi.")
          MovePlayer (Page4)
        ]]></script>
      </object>
    </object>
    <object name="Page4">
      <inherit name="script" />
      <script type="script"><![CDATA[
        OutputTextNoBr ("<br/>Come di consueto, l'alba rieccheggia su un'assolvente suoneria proveniente dallo smartphone. Nonostante l'idea istintiva nel cervello sia usualmente di posticipare e {page:Page5:chiudere ancora gli occhi}, ti chiedi se questa volta sia il caso di {page:Page6:alzarsi prima}")
        RemovePageLink (Page4, Page6)
      ]]></script>
      <object name="Page5">
        <inherit name="script" />
        <description type="string"></description>
        <script type="script"><![CDATA[
          OutputTextNoBr (". Non ci pensi due volte e torni a dormire, giusto il tempo di realizzare, come ogni giorno, quanto questa decisione faccia più male che bene.<br/>Dopo 10 minuti, percepiti come 10 secondi, avvicini il tuo telefono alla faccia e spegni la sveglia. ")
          MovePlayer (Page7)
        ]]></script>
      </object>
      <object name="Page6">
        <inherit name="script" />
        <description type="string"></description>
        <script type="script">
          OutputTextNoBr (", e miracolosamente, qualcosa di inizialmente ineccepibile accade. Prima che tu riesca a pensare, decidi in modo scattante di metterti in piedi. Nemmeno il rapido calo di pressione può ostacolare la tua eroica decisione. Prendi quindi il telefono e spegni la sveglia. ")
          MovePlayer (Page7)
        </script>
      </object>
    </object>
    <object name="Page7">
      <inherit name="script" />
      <script type="script">
        OutputTextNoBr ("Parte quindi il calvario di ogni inizio giornata. Pensi però a cosa dare priorità. Se {page:Page8:vestirti}, {page:Page9:andare in bagno} o {page:Page10:guardare le news sul cellulare}. ")
        RemovePageLink (Page7, Page10)
      </script>
      <object name="Page8">
        <inherit name="script" />
      </object>
      <object name="Page9">
        <inherit name="script" />
      </object>
      <object name="Page10">
        <inherit name="script" />
        <script type="script"><![CDATA[
          OutputTextNoBr ("E non avessi mai deciso per l'ultima opzione. Un colpo basso colpisce il tuo cuore, e ancora prima la meritocrazia in generale.<br/>Sullo schermo, una vivace Elettra Lamborghini, sul palco di Deejay Radio a Riccione, impegnata a simulare un'esibizione a tratti canora, sotto le urla dei fan accaniti. Pensi a quanto la musica stia soffrendo di un male incurabile e ricordi quanto sul palco ci saresti voluto essere te, nei tuoi sogni adolescenziali.<br/>Abbattuto da tanto poco rispetto nei confronti della cultura, ")
          DecreaseCounter ("pazienza")
          if (HasSeenPage(Page2)) {
            OutputTextNoBr ("con il cane in stazione che ancora abbaia senza frontiere, ")
          }
          OutputTextNoBr ("rigiri lo sguardo tra la porta del {page:Page9:bagno} e l'armadio dei {page:Page8:vestiti}. ")
          RemovePageLink (Page10, Page7)
        ]]></script>
      </object>
    </object>
  </object>
</asl>

The HasSeenPage function actually checks if the player has ended their turn on a page. As the script on Page2 moves the player to Page4 immediately, HasSeenPage (Page2) will still be false.

You could change Page2's script to set the visited attribute manually:

OutputTextNoBr ("sia il caso di mandare giù il primo boccone della giornata.
Completamente attonito dal rimbombare nelle orecchie di questo suono sempre più snervante, aspetti solo di alzarti dal letto.") DecreaseCounter ("pazienza") set (this, "visited", true) MovePlayer (Page4)

The extra line will make HasSeenPage recognise that the player has been to this page, even though they haven't ended the turn there.


You are my hero!


Log in to post a reply.

Support

Forums