Alchemy

kalay_tolbi_docks.c

The Kalay and Tolbi docks: tickets, boarding, the crossing's aftermath, and the passengers waiting for the ship to leave again.

games/tbs/src/scene/kalay_tolbi_docks.c on GitHub

The Kalay and Tolbi docks: tickets, boarding, the crossing's aftermath, and the passengers waiting for the ship to leave again.

Functions

KalayTolbiDocks_RecruitVenusDjinni

static void KalayTolbiDocks_RecruitVenusDjinni(void)

Adds the Venus Djinni waiting at the Kalay docks.

Used by gKalayTolbiDocks_KalayEvents, gKalayTolbiDocks_KalayEventsShipGone.

Line 67

KalayTolbiDocks_GetEntrances

const struct SceneEntrance *KalayTolbiDocks_GetEntrances(void)

Selects the entrance positions for the departure, arrival or ticket office.

Line 72

KalayTolbiDocks_GetExits

const u32 *KalayTolbiDocks_GetExits(void)

The docks list no numbered exits.

Line 90

KalayTolbiDocks_GetPlacements

const struct ScenePlacement *KalayTolbiDocks_GetPlacements(void)

Each map has its people before the ship sails, once it has gone and not come back (flag 0x93e), and once the passengers are stranded (flag 0x950).

Line 94

KalayTolbiDocks_PassengerGreetsArrivals

static void KalayTolbiDocks_PassengerGreetsArrivals(void)

Stepping off the ship at Tolbi, the leader walks a few steps and a passenger hurries over to stand beside the party.

Used by gKalayTolbiDocks_TolbiEvents.

Line 126

KalayTolbiDocks_GetEvents

const struct SceneEvent *KalayTolbiDocks_GetEvents(void)

Selects dialogue and interactions for the current port and voyage state.

Line 138

KalayTolbiDocks_AskAboutTolbiCrossing

static void KalayTolbiDocks_AskAboutTolbiCrossing(void)

A man on the Kalay docks asks whether the party wants to go to Tolbi.

Used by gKalayTolbiDocks_KalayEvents.

Line 169

KalayTolbiDocks_TalkToWorriedFather

static void KalayTolbiDocks_TalkToWorriedFather(void)

The father asks whether the party is taking the ship. If it is, he asks it to tell his daughter in Tolbi that the tickets were too expensive for her mother to come; afterwards he repeats the message.

Used by gKalayTolbiDocks_KalayEvents.

Line 179

KalayTolbiDocks_RemindBoardShip

static void KalayTolbiDocks_RemindBoardShip(void)

Spoken to on the shore after boarding, the gatekeeper asks the party to board the ship when it is finished.

Used by gKalayTolbiDocks_KalayEvents.

Line 200

KalayTolbiDocks_TalkToGatekeeper

static void KalayTolbiDocks_TalkToGatekeeper(void)

The gatekeeper at the gangway. Facing him from the east, the party is asked for its tickets: with one bought he steps aside, takes it and lets the party aboard. Once aboard, he offers to let the party go ashore again.

Used by gKalayTolbiDocks_KalayEvents.

Line 223

KalayTolbiDocks_TalkToDockWorker

static void KalayTolbiDocks_TalkToDockWorker(void)

The dock worker explains the tickets: hand one over to board, give it to the gatekeeper, or wait on board for the ship to sail.

Used by gKalayTolbiDocks_KalayEvents.

Line 283

KalayTolbiDocks_TalkToTicketSeller

static void KalayTolbiDocks_TalkToTicketSeller(void)

The ticket seller offers tickets for the four of them at 600 coins, with the party's coins shown beside the question. Declining, the leader shakes his head; without enough coins the seller refuses; otherwise the party gets its ticket and pays.

Used by gKalayTolbiDocks_TicketOfficeEvents.

Line 304

KalayTolbiDocks_AskAboutRoughCrossing

static void KalayTolbiDocks_AskAboutRoughCrossing(void)

A passenger at Tolbi has heard the party was attacked by a monster on the crossing, and asks whether that is true.

Used by gKalayTolbiDocks_TolbiEvents.

Line 378

KalayTolbiDocks_AskAboutSeasickTourists

static void KalayTolbiDocks_AskAboutSeasickTourists(void)

A man at Tolbi asks whether the upset tourists got seasick.

Used by gKalayTolbiDocks_TolbiEvents.

Line 386

KalayTolbiDocks_TalkToWaitingDaughter

static void KalayTolbiDocks_TalkToWaitingDaughter(void)

The daughter at Tolbi looks for her parents among the passengers. If the party carries her father's message she asks for it and thanks them once it is given; otherwise she turns back to the sea.

Used by gKalayTolbiDocks_TolbiEvents.

Line 396

KalayTolbiDocks_OpenDoorAndLeave

static void KalayTolbiDocks_OpenDoorAndLeave(void)

Walking north into the docks' door, the door opens and the leader walks through it to the town.

Used by gKalayTolbiDocks_KalayEvents, gKalayTolbiDocks_KalayEventsShipGone, gKalayTolbiDocks_TolbiEvents, gKalayTolbiDocks_TolbiEventsStranded.

Line 438

KalayTolbiDocks_Initialize

s32 KalayTolbiDocks_Initialize(void)

Prepares whichever of the three maps is entered. Entrance 90 sets flag 0x950, which leaves the tour's passengers stranded on the Tolbi docks.

Line 459

KalayTolbiDocks_PrepareKalayDocks

static void KalayTolbiDocks_PrepareKalayDocks(void)

On the first arrival at the Kalay docks, Garet runs to see the Karagol. Coming back from the ship clears the shore leave, and once the tour has left the gatekeeper stands at the gangway until the party goes ashore.

Used by KalayTolbiDocks_Initialize.

Line 476

KalayTolbiDocks_PrepareTolbiDocks

static void KalayTolbiDocks_PrepareTolbiDocks(void)

On the Tolbi docks the two blocks settle into the pier's cells. The passenger who met the party stays beside the ship, and after the confrontation the guide, the bodyguard and the two passengers keep where it left them, the angry one still lying on the ground.

Used by KalayTolbiDocks_Initialize.

Line 500

KalayTolbiDocks_PrepareTicketOffice

static void KalayTolbiDocks_PrepareTicketOffice(void)

The ticket office opens with a window transition and no location name.

Used by KalayTolbiDocks_Initialize.

Line 546

KalayTolbiDocks_UpdateBlockCells

static void KalayTolbiDocks_UpdateBlockCells(void)

After either block is moved, the pier's cells under both are rebuilt.

Used by KalayTolbiDocks_PrepareTolbiDocks, gKalayTolbiDocks_TolbiEvents, gKalayTolbiDocks_TolbiEventsStranded.

Line 552

KalayTolbiDocks_SettleBlock

static void KalayTolbiDocks_SettleBlock(s32 actorId)

Stops a dock block's idle motion and sets its sprite priority.

Used by KalayTolbiDocks_UpdateBlockCells.

Line 568

KalayTolbiDocks_GaretSeesTheKaragol

static void KalayTolbiDocks_GaretSeesTheKaragol(void)

Garet runs to the edge of the Kalay docks and marvels at the sea. "Incredible! So this is the ocean Kraden was talking about!" The man who asks travellers about Tolbi (actor 8) walks over, shaking his head: the Karagol is surrounded by land, so it is not a real ocean. Garet means to see a real one someday, nods with the leader and rejoins the party.

Used by KalayTolbiDocks_PrepareKalayDocks.

Line 582

KalayTolbiDocks_PassengersConfrontTourGuide

static void KalayTolbiDocks_PassengersConfrontTourGuide(void)

Stepping onto the stranded Tolbi docks, the party watches the tour guide tell an angry passenger his ticket was refunded. The passengers demand to be taken home; when the angry one charges, the guides' hired bodyguard steps in, and after a second try the passenger is knocked flat and the bodyguard spins on the spot.

Used by gKalayTolbiDocks_TolbiEventsStranded.

Line 675

Also, functions without a comment: KalayTolbiDocks_GetRegions.

Enumerations

KalayTolbiDocksActor

enum KalayTolbiDocksActor

The three maps share actor numbers; each is named on the map it is proved.

Value=
ACTOR_WORRIED_FATHER11his daughter waits on the Tolbi docks
ACTOR_GATEKEEPER12takes the tickets at the gangway
ACTOR_DOCK_WORKER13
ACTOR_VENUS_DJINNI14
ACTOR_ARRIVALS_GREETER8hears of the party's scary trip
ACTOR_WAITING_DAUGHTER11
ACTOR_FIRST_BLOCK14the two blocks Move pushes
ACTOR_SECOND_BLOCK15
ACTOR_ANGRY_PASSENGER10Tolbi docks, once the tour's passengers are stranded there
ACTOR_STRANDED_PASSENGER11
ACTOR_TOUR_GUIDE13refunded the angry passenger's ticket
ACTOR_BODYGUARD16hired by the tour guides
ACTOR_TICKET_SELLER8Ticket office

Line 39

Globals, without a comment: gKalayTolbiDocks_KalayDoorCells, gKalayTolbiDocks_TolbiDoorCells, gKalayTolbiDocks_BodyguardSpinScript, gKalayTolbiDocks_NoEntrances, gKalayTolbiDocks_KalayEntrances, gKalayTolbiDocks_TolbiEntrances, gKalayTolbiDocks_TicketOfficeEntrances, gKalayTolbiDocks_Exits, gKalayTolbiDocks_NoPlacements, gKalayTolbiDocks_TolbiPlacements, gKalayTolbiDocks_TolbiPlacementsStranded, gKalayTolbiDocks_KalayPlacements, gKalayTolbiDocks_KalayPlacementsShipGone, gKalayTolbiDocks_TicketOfficePlacements, gKalayTolbiDocks_TicketOfficePlacementsShipGone, gKalayTolbiDocks_TicketOfficePlacementsStranded, gKalayTolbiDocks_NoEvents, gKalayTolbiDocks_KalayEvents, gKalayTolbiDocks_KalayEventsShipGone, gKalayTolbiDocks_TolbiEvents, gKalayTolbiDocks_TolbiEventsStranded, gKalayTolbiDocks_TicketOfficeEvents, gKalayTolbiDocks_TicketOfficeEventsShipGone, gKalayTolbiDocks_TicketOfficeEventsStranded.

On this page