(if: $HinataConfession is true)[.....]
The first condition statement in Passage 3 will always evaluate to true because you set the $HinataConfession variable to true each time you transition to the Passage 2 passage. A better way to track the progress of a series of related events is to use a number to indicate which stage of the event series you are currently up to, and to increment that number to obtain the next stage.
1. Initialise your story variables within a startup tagged special passage.
(set: $HinataConfession to 0)
2. The First passage.
This is the first passage.
[[Next->Second]]
3. The Second passage.
This is the second passage.
[[Next->Hinata Confession]]
4. The Hinata Confession passage.
(set: $HinataConfession to it + 1)\
(if: $HinataConfession is 1)[\
So this is the first event.
[[Go back|Second]]]\
\
(else-if: $HinataConfession is 2)[\
So this is the second event.
[[Go back|Second]]]\
\
(else-if: $HinataConfession is 3)[\
So this is the third event.
[[Go back|Second]]]\
\
(else-if: $HinataConfession is 4)[\
So this is the fourth event.
[[Go back|Second]]]\
\
(else:)[So this is the last event.]
NOTE: Do the following to test if a variable's value is equal to either true or false.
(set: $var to true)
(if: $var)[Var is true.]
(set: $var to false)
(if: not $var)[Var is false.]