LOCDATA* init_orz_comm (void) { LOCDATA *retval; orz_desc.init_encounter_func = Intro; orz_desc.post_encounter_func = post_orz_enc; orz_desc.uninit_encounter_func = uninit_orz; luaUqm_comm_init(NULL, NULL_RESOURCE); // Initialise Lua for string interpolation. This will be // generalised in the future. orz_desc.AlienTextBaseline.x = TEXT_X_OFFS + (SIS_TEXT_WIDTH >> 1); orz_desc.AlienTextBaseline.y = 0; orz_desc.AlienTextWidth = SIS_TEXT_WIDTH - 16; if (GET_GAME_STATE (ORZ_MANNER) == 3 || LOBYTE (GLOBAL (CurrentActivity)) == WON_LAST_BATTLE) { setSegue (Segue_peace); } else { setSegue (Segue_hostile); } retval = &orz_desc; return (retval); }
LOCDATA* init_shofixti_comm (void) { static LOCDATA shofixti_desc; LOCDATA *retval; shofixti_desc = (RESOLUTION_FACTOR == 0 ? shofixti_desc_1x : shofixti_desc_4x); shofixti_desc.init_encounter_func = Intro; shofixti_desc.post_encounter_func = post_shofixti_enc; shofixti_desc.uninit_encounter_func = uninit_shofixti; luaUqm_comm_init (NULL, NULL_RESOURCE); // Initialise Lua for string interpolation. This will be // generalised in the future. shofixti_desc.AlienTextBaseline.x = TEXT_X_OFFS + (SIS_TEXT_WIDTH >> 1); shofixti_desc.AlienTextBaseline.y = 0; shofixti_desc.AlienTextWidth = SIS_TEXT_WIDTH; setSegue (Segue_peace); retval = &shofixti_desc; return (retval); }
LOCDATA* init_spahome_comm () { LOCDATA *retval; spahome_desc.init_encounter_func = Intro; spahome_desc.post_encounter_func = post_spahome_enc; spahome_desc.uninit_encounter_func = uninit_spahome; luaUqm_comm_init (NULL, NULL_RESOURCE); // Initialise Lua for string interpolation. This will be // generalised in the future. spahome_desc.AlienTextBaseline.x = TEXT_X_OFFS + (SIS_TEXT_WIDTH >> 1); spahome_desc.AlienTextBaseline.y = 0; spahome_desc.AlienTextWidth = SIS_TEXT_WIDTH - 16; // use alternate "Safe Ones" track if available spahome_desc.AlienAltSongRes = SPAHOME_MUSIC; spahome_desc.AlienSongFlags |= LDASF_USE_ALTERNATE; if (GET_GAME_STATE (SPATHI_MANNER) == 3) { setSegue (Segue_peace); } else { setSegue (Segue_hostile); } retval = &spahome_desc; return (retval); }
LOCDATA* init_melnorme_comm (void) { LOCDATA *retval; melnorme_desc.init_encounter_func = Intro; melnorme_desc.post_encounter_func = post_melnorme_enc; melnorme_desc.uninit_encounter_func = uninit_melnorme; luaUqm_comm_init (NULL, NULL_RESOURCE); // Initialise Lua for string interpolation. This will be // generalised in the future. melnorme_desc.AlienTextBaseline.x = TEXT_X_OFFS + (SIS_TEXT_WIDTH >> 1); melnorme_desc.AlienTextBaseline.y = 0; melnorme_desc.AlienTextWidth = SIS_TEXT_WIDTH - 16; local_stack0 = 0; local_stack1 = 0; prevMsgMode = SMM_UNDEFINED; setSegue (Segue_peace); AskedToBuy = FALSE; retval = &melnorme_desc; return (retval); }
LOCDATA* init_commander_comm () { static LOCDATA commander_desc; LOCDATA *retval; commander_desc = (RESOLUTION_FACTOR == 0 ? commander_desc_1x : commander_desc_4x); commander_desc.init_encounter_func = Intro; commander_desc.post_encounter_func = post_commander_enc; commander_desc.uninit_encounter_func = uninit_commander; luaUqm_comm_init(NULL, NULL_RESOURCE); // Initialise Lua for string interpolation. This will be // generalised in the future. if (GET_GAME_STATE (RADIOACTIVES_PROVIDED)) { // JMS_GFX: Disable noisy static animation in hi-res. if (RESOLUTION_FACTOR > 0) { commander_desc.AlienTalkDesc.AnimFlags &= ~PAUSE_TALKING; commander_desc.AlienAmbientArray[0].AnimFlags &= ~ANIM_DISABLED; commander_desc.AlienAmbientArray[1].AnimFlags &= ~ANIM_DISABLED; } commander_desc.AlienAmbientArray[2].AnimFlags |= ANIM_DISABLED; // regular track -- let's make sure commander_desc.AlienSongFlags &= ~LDASF_USE_ALTERNATE; } else { // JMS_GFX: Enable noisy static animation in hi-res. if (RESOLUTION_FACTOR > 0) { commander_desc.AlienTalkDesc.AnimFlags |= PAUSE_TALKING; commander_desc.AlienAmbientArray[0].AnimFlags |= ANIM_DISABLED; commander_desc.AlienAmbientArray[1].AnimFlags |= ANIM_DISABLED; } commander_desc.AlienAmbientArray[2].AnimFlags &= ~ANIM_DISABLED; // use alternate 'low-power' track if available commander_desc.AlienAltSongRes = COMMANDER_LOWPOW_MUSIC; commander_desc.AlienSongFlags |= LDASF_USE_ALTERNATE; } // JMS_GFX commander_desc.AlienTextWidth = RES_SIS_SCALE(143); // JMS_GFX commander_desc.AlienTextBaseline.x = RES_SIS_SCALE(164); // JMS_GFX commander_desc.AlienTextBaseline.y = RES_SIS_SCALE(20); // JMS_GFX setSegue (Segue_peace); retval = &commander_desc; return (retval); }