Work Life (Visual Novel / Game)
Loading...
Searching...
No Matches
weekend_event Namespace Reference

various weekend event functions More...

Functions

void handle_event ()
 maybe handle a weekend event
 
void playtest_event ()
 playtest menu for each story
 
void playtest_emergency ()
 playtest menu for each emergency
 
vnlib::SayOptions diable_block_options ()
 function to create non-blocking, skippable options
 
void emergency_response ()
 pass control to the main character to decide how to handle the emergency (yes/no)
 
void ino_emergency_prompt_0 ()
 ino needs help with microwave
 
void ino_emergency_0 ()
 her microwave is fine (either park or room conversation)
 
void ino_emergency_prompt_1 ()
 ino wants to play tennis
 
void ino_emergency_1 ()
 tennis goes well (convience store)
 
void ino_emergency_prompt_2 ()
 Ino wants to get some pizza.
 
void ino_emergency_2 ()
 head to pizza place, make some choices
 
void ino_emergency_prompt_3 ()
 Ino wants to see some music (favorite genre concert)
 
void ino_emergency_3 ()
 concert (default rock) + ??
 
void kanade_emergency_prompt_0 ()
 Kanade's cat isn't feeling well.
 
void kanade_emergency_0 ()
 Kanade's cat ends up fine.
 
void kanade_emergency_prompt_1 ()
 Kanade needs to return some library books.
 
void kanade_emergency_1 ()
 Kanade talks in the park outside, you buy a book inside during the sale.
 
void kanade_emergency_prompt_2 ()
 Kanade is getting a limited time release.
 
void kanade_emergency_2 ()
 We acommonpany Kanade for the book release, and get some food after.
 
void kanade_emergency_prompt_3 ()
 Kanade wants to practice some baseball (but she won't tell us!)
 
void kanade_emergency_3 ()
 Kanade is pretty good at baseball.
 
void rika_emergency_prompt_0 ()
 Rika's team is down a player.
 
void rika_emergency_0 ()
 Rika invittes us to fill in her basketball team.
 
void rika_emergency_prompt_1 ()
 Rika needs to buy a gift for a party.
 
void rika_emergency_1 ()
 Rika is shopping for a card.
 
void rika_emergency_prompt_2 ()
 Rika has billiards tournament at the bar.
 
void rika_emergency_2 ()
 head to the bar for the billiards game
 
void rika_emergency_prompt_3 ()
 Rika wants to have a game night with friends.
 
void rika_emergency_3 ()
 We head over to hang out with Rika.
 
void rin_emergency_prompt_0 ()
 Rin is playing games, get her some snacks.
 
void rin_emergency_0 ()
 Rin plays some Bosco Party if you bring something over (alcohol or chips)
 
void rin_emergency_prompt_1 ()
 Rin is playing games, get her a slice of pizza.
 
void rin_emergency_1 ()
 Pizza (Bosco Party but no mini games)
 
void rin_emergency_prompt_2 ()
 Rin is playing games, get her some alcohol from the convenience store.
 
void rin_emergency_2 ()
 head to conveneince store for some alcohol, finally learn more about Rin (SuperCooked 2)
 
void rin_emergency_prompt_3 ()
 Rin is sick, cheer her up by buying the correct items.
 
void rin_emergency_3_chips_loop ()
 chip confirmation loop
 
void rin_emergency_3_pizza_loop ()
 pizza confirmation loop
 
void rin_emergency_3 ()
 Rin is sick, we head over to get our confession (Bosco Cart)
 
vnlib::story_fx get_emergency_prompt (character::CHAR_ENUM c)
 get the latest emergency prompt per character. no bounds check
 
vnlib::story_fx get_emergency_story (character::CHAR_ENUM c)
 get the latest emergency story per character. no bounds check
 
void saturday_emergency_excuse ()
 excuse used on Saturday when handling a real emergency
 
void generic_emergency ()
 a generic emergency prompt to keep the flow of text simple
 
void reject_excuse (character::CHAR_ENUM c)
 respond to character c with rejection
 
bool handle_emergency (vnlib::story_fx emergency_excuse)
 call during a weekend event to prompt for emergency story
 
void ino_weekend_0 ()
 ino's first weekend (park + cafe)
 
void ino_weekend_1 ()
 ino is taking care of a friends pet
 
void ino_weekend_2 ()
 ino is heading to an open mic at the bar
 
void ino_weekend_3_beer_purchase ()
 ino needs to visit her family in the countryside
 
void ino_weekend_3 ()
 
void kanade_weekend_0 ()
 kanade is heading to buy some groceries
 
void kanade_weekend_1 ()
 kanade is doing some volunteer work
 
void kanade_weekend_2 ()
 kanade is sick from doing too much work (family is also gone camping)
 
void kanade_weekend_3 ()
 kanade is baking food for her family
 
void rika_weekend_0 ()
 rika is shopping for garden supplies
 
void rika_weekend_1 ()
 rika is planting her garden
 
void rika_weekend_2 ()
 rika is heading to a street festival (learn about sister)
 
void rika_weekend_3_no_high_relation_conv ()
 shared conversation when mc doesn't talk to others before rika_weekend_3
 
void rika_weekend_3 ()
 rika is going to karaoke with friends
 
void rin_weekend_0 ()
 rin is shopping for some games
 
void rin_weekend_1_td ()
 play the td game. bonus conversation for asking Rin for help
 
void rin_weekend_1 ()
 rin is going to the video game lounge
 
void rin_weekend_2_game ()
 play the specific game, note that the emergency happens before this so the game could be none
 
void rin_weekend_2 ()
 rin wants to play the game you bought earlier
 
void rin_weekend_3 ()
 rin wants to go cycling
 
vnlib::story_fx get_next_story (character::CHAR_ENUM c)
 get the next weekend event for a character. no bounds check!
 
bool handled_event ()
 if a character relationship is high enough, have an event
 
void handle_sunday_event (character::CHAR_ENUM saturday_char)
 a generic sunday event. created to support runtime_state::EMERGENCIES_ON_SUNDAY
 
void playtest_emergency_setup (character::CHAR_ENUM c, int story)
 setup variables to test both emergency prompts and stories
 

Variables

constexpr int WEEKEND_REL_PROGRESS_MULTIPLIER = 9
 point increase needed between weekend events
 
constexpr int EMERGENCY_REL_PROGRESS_MULTIPLIER = 6
 point increase needed between weekend events
 
constexpr int MAX_STORY_COUNT = 4
 array bounds for various weekend event arrays
 
constexpr int MAX_EMERGENCY_COUNT = 4
 array bounds for various weekend emergency arrays
 
character::CHAR_ENUM original_story
 set when a weekend event starts
 
character::CHAR_ENUM current_story
 set when a weekend event starts and overridden when emergency starts
 
bool helped = false
 global state recording if an emergency was helped or not
 
const vnlib::SayOptions no_block_options = diable_block_options()
 global options to avoid blocking. used for various game prompts
 
bool kanade_emergency_3_leave_early
 internal
 
bool rika_emergency_2_leave_early
 internal
 
bool rin_emergency_3_confirmed
 internal
 
const vnlib::story_fx EMERGENCY_PROMPT_INO [] = {ino_emergency_prompt_0, ino_emergency_prompt_1, ino_emergency_prompt_2, ino_emergency_prompt_3}
 ino's emergency prompts
 
const vnlib::story_fx EMERGENCY_PROMPT_KANADE [] = {kanade_emergency_prompt_0, kanade_emergency_prompt_1, kanade_emergency_prompt_2, kanade_emergency_prompt_3}
 kanade's emergency prompts
 
const vnlib::story_fx EMERGENCY_PROMPT_RIKA [] = {rika_emergency_prompt_0, rika_emergency_prompt_1, rika_emergency_prompt_2, rika_emergency_prompt_3}
 rika's emergency prompts
 
const vnlib::story_fx EMERGENCY_PROMPT_RIN [] = {rin_emergency_prompt_0, rin_emergency_prompt_1, rin_emergency_prompt_2, rin_emergency_prompt_3}
 rin's emergency prompts
 
const vnlib::story_fx EMERGENCY_STORY_INO [] = {ino_emergency_0, ino_emergency_1, ino_emergency_2, ino_emergency_3}
 ino's emergency stories
 
const vnlib::story_fx EMERGENCY_STORY_KANADE [] = {kanade_emergency_0, kanade_emergency_1, kanade_emergency_2, kanade_emergency_3}
 kanade's emergency stories
 
const vnlib::story_fx EMERGENCY_STORY_RIKA [] = {rika_emergency_0, rika_emergency_1, rika_emergency_2, rika_emergency_3}
 rika's emergency stories
 
const vnlib::story_fx EMERGENCY_STORY_RIN [] = {rin_emergency_0, rin_emergency_1, rin_emergency_2, rin_emergency_3}
 rin's emergency stories
 
bool ino_weekend_3_agreement
 internal
 
bool ino_weekend_3_mom_happy
 internal
 
bool rika_weekend_3_deny_sister
 internal
 
bool rika_weekend_3_perfect
 internal
 
bool rin_weekend_0_accepted
 internal
 
bool rin_weekend_1_td_skip
 internal
 
bool rin_weekend_2_ignored
 internal
 
bool rin_weekend_3_no
 internal
 
const vnlib::story_fx WEEKEND_INO [] = {ino_weekend_0, ino_weekend_1, ino_weekend_2, ino_weekend_3}
 ino's weekend events
 
const vnlib::story_fx WEEKEND_KANADE [] = {kanade_weekend_0, kanade_weekend_1, kanade_weekend_2, kanade_weekend_3}
 kanade's weekend events
 
const vnlib::story_fx WEEKEND_RIKA [] = {rika_weekend_0, rika_weekend_1, rika_weekend_2, rika_weekend_3}
 rika's weekend events
 
const vnlib::story_fx WEEKEND_RIN [] = {rin_weekend_0, rin_weekend_1, rin_weekend_2, rin_weekend_3}
 rin's weekend events
 
character::CHAR_ENUM saturday_character
 ephemeral state to avoid sat+sun having same char. only possible as saves don't happen on weekends
 

Detailed Description

various weekend event functions

these will reveal information about each character (along with the mc) it will establish preferences that will eventually culminate in a confession.

Function Documentation

◆ generic_emergency()

void weekend_event::generic_emergency ( )

a generic emergency prompt to keep the flow of text simple

most weekend events will have some respones from the main character after the emergency happens. example : "is everything alright?" instead of adding a more complex emergency state, have a generic emergency. This can potentially be used to create more content for this type of runtime mode (runtime_state::EMERGENCIES_ON_SUNDAY)

◆ handle_emergency()

bool weekend_event::handle_emergency ( vnlib::story_fx emergency_excuse)

call during a weekend event to prompt for emergency story

characters are sorted by relationship decreasing so that the second liked character invokes an emergency. The emergency progress does not advance when ignoring. This means a character will have the same emergency across multiple weekends. This is so players get the opportunity to see all parts of an emergency path without needing relationship planning. Note that the emergency decision will increase the relationship of the chosen characters path and reduce the "ignored" character's path.

◆ handled_event()

bool weekend_event::handled_event ( )

if a character relationship is high enough, have an event

sort characters by relationship decreasing, use the first character that has a relationship above the story progress threshold. currently: WEEKEND_REL_PROGRESS_MULTIPLIER points per story

◆ ino_emergency_0()

void weekend_event::ino_emergency_0 ( )

her microwave is fine (either park or room conversation)

depending on choice, we learn that Ino
is tough (quitting is easy)

◆ ino_emergency_1()

void weekend_event::ino_emergency_1 ( )

tennis goes well (convience store)

depending on choice, we learn that Ino
is not picky with food
depending on choice, we learn that Ino
played badminton in college
depending on choice, we learn that Ino
likes pressure and staying focused
depending on choice, we learn that Ino
doesn't mind losing
depending on choice, we learn that Ino
likes working hard
depending on choice, we learn that Ino
is not superstitious and respects rules

◆ ino_emergency_2()

void weekend_event::ino_emergency_2 ( )

head to pizza place, make some choices

we learn that Ino
loves veggie pizza
depending on choice, we learn that Ino
Ino prefers pepperoni to sausage
depending on choice, we learn that Ino
Ino loves veggie pizza
depending on choice, we learn that Ino
is not picky
depending on choice, we learn that Ino
loves beer

◆ ino_emergency_3()

void weekend_event::ino_emergency_3 ( )

concert (default rock) + ??

depending on choice, we learn that Ino
would pick 100 acquaintances over 1 friend
depending on choice, we learn that Ino
doesn't have anyone very close

◆ ino_weekend_0()

void weekend_event::ino_weekend_0 ( )

ino's first weekend (park + cafe)

we learn that Ino
like to exercise
depending on choice, we learn that Ino
doesn't watch movies
depending on choice, we learn that Ino
enjoys repition

◆ ino_weekend_1()

void weekend_event::ino_weekend_1 ( )

ino is taking care of a friends pet

we learn that Ino
was a loud, opinionated kid
we learn that Ino
is a bit worried about being approachable

◆ ino_weekend_2()

void weekend_event::ino_weekend_2 ( )

ino is heading to an open mic at the bar

depending on choice, we learn that Ino
is a bit sick of indoors
depending on choice, we learn that Ino
would like to work out more seriously

◆ ino_weekend_3()

void weekend_event::ino_weekend_3 ( )
we learn that Ino
family lives in Flower City

◆ kanade_emergency_0()

void weekend_event::kanade_emergency_0 ( )

Kanade's cat ends up fine.

we learn that Kanade
has a cat named Chester
we learn that Kanade
sometimes thinks of the worst possible outcome
depending on choice, we learn that Kanade
wants to help the animal shelter

◆ kanade_emergency_1()

void weekend_event::kanade_emergency_1 ( )

Kanade talks in the park outside, you buy a book inside during the sale.

depending on choice, we learn that Kanade
was into occult stuff in middle school
we learn that Kanade
imagines herself in the stories

◆ kanade_emergency_2()

void weekend_event::kanade_emergency_2 ( )

We acommonpany Kanade for the book release, and get some food after.

depending on choice, we learn that Kanade
likes sausage pizza
depending on choice, we learn that Kanade
doesn't drink much alcohol
depending on choice, we learn that Kanade
is willing to try new things
depending on choice, we learn that Kanade
doesn't like lying

◆ kanade_weekend_0()

void weekend_event::kanade_weekend_0 ( )

kanade is heading to buy some groceries

depending on choice, we learn that Kanade
can't stand when things are dirty
depending on choice, we learn that Kanade
watches anime
we learn that Kanade
likes reading either at the park or the library
we learn that Kanade
feels guilty about not playing sports
we learn that Kanade
goes for walks early in the morning
we learn that Kanade
likes cats

◆ kanade_weekend_1()

void weekend_event::kanade_weekend_1 ( )

kanade is doing some volunteer work

we learn that Kanade
's brother likes starberries

◆ kanade_weekend_2()

void weekend_event::kanade_weekend_2 ( )

kanade is sick from doing too much work (family is also gone camping)

we learn that Kanade
sick from working or from stress

◆ kanade_weekend_3()

void weekend_event::kanade_weekend_3 ( )

kanade is baking food for her family

we learn that Kanade
's brother's name is Greg

◆ rika_weekend_0()

void weekend_event::rika_weekend_0 ( )

rika is shopping for garden supplies

depending on choice, we learn that Rika
has never had any pets
depending on choice, we learn that Rika
got job through networking
depending on choice, we learn that Rika
has been at WidgetCorp for four years

◆ rika_weekend_1()

void weekend_event::rika_weekend_1 ( )

rika is planting her garden

we learn that Rika
likes presents (and maybe unexpected things)
we learn that Rika
prefers tea to coffee
depending on choice, we learn that Rika
likes comedy movies
depending on choice, we learn that Rika
has an older borhter (several years)
depending on choice, we learn that Rika
s brother also works in software

◆ rika_weekend_2()

void weekend_event::rika_weekend_2 ( )

rika is heading to a street festival (learn about sister)

depending on choice, we learn that Rika
listens to electronic music
depending on choice, we learn that Rika
loves crunchy foods
depending on choice, we learn that Rika
likes vanilla ice cream with extra toppings
depending on choice, we learn that Rika
is definitely the type to gamble and think she will win
depending on choice, we learn that Rika
is not picky with alcohol
we learn that Rika
lives with her sister. her sister does not work a job.

◆ rika_weekend_3()

void weekend_event::rika_weekend_3 ( )

rika is going to karaoke with friends

depending on choice, we learn that Rika
does not know Italian

◆ rin_emergency_0()

void weekend_event::rin_emergency_0 ( )

Rin plays some Bosco Party if you bring something over (alcohol or chips)

depending on choice, we learn that Rin
doesn't have time for useless people
we learn that Rin
will destroy us at Bosco Party 5 mini-games

◆ rin_emergency_1()

void weekend_event::rin_emergency_1 ( )

Pizza (Bosco Party but no mini games)

we learn that Rin
always eats cheese pizza (family story)
depending on choice, we learn that Rin
does not enjoy puzzles
depending on choice, we learn that Rin
is very good at fighting games
depending on choice, we learn that Rin
does not like cooking
depending on choice, we learn that Rin
is short-tempered and impatient

◆ rin_emergency_2()

void weekend_event::rin_emergency_2 ( )

head to conveneince store for some alcohol, finally learn more about Rin (SuperCooked 2)

we learn that Rin
sees herself as decisive
we learn that Rin
knows she doesn't have lots of energy
we learn that Rin
has a big family
we learn that Rin
misses having people around to casually play with

◆ rin_emergency_3()

void weekend_event::rin_emergency_3 ( )

Rin is sick, we head over to get our confession (Bosco Cart)

we learn that Rin
had to fight with her brothers to play games
we learn that Rin
has always solved problems on her own

◆ rin_weekend_2()

void weekend_event::rin_weekend_2 ( )

rin wants to play the game you bought earlier

depending on choice, we learn that Rin
doesn't have any plans or dreams for the future