LOCDATA* init_commander_comm () { LOCDATA *retval; commander_desc.init_encounter_func = Intro; commander_desc.post_encounter_func = post_commander_enc; commander_desc.uninit_encounter_func = uninit_commander; if (GET_GAME_STATE (RADIOACTIVES_PROVIDED)) { //commander_desc.AlienAmbientArray[2].AnimFlags |= ANIM_DISABLED; // JMS // regular track -- let's make sure commander_desc.AlienSongFlags &= ~LDASF_USE_ALTERNATE; } else { //commander_desc.AlienAmbientArray[2].AnimFlags &= ~ANIM_DISABLED; // JMS // use alternate 'low-power' track if available commander_desc.AlienAltSongRes = COMMANDER_LOWPOW_MUSIC; commander_desc.AlienSongFlags |= LDASF_USE_ALTERNATE; } 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 SET_GAME_STATE (BATTLE_SEGUE, 0); retval = &commander_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); }
LOCDATA* init_druuge_comm (void) { LOCDATA *retval; SlaveryCount = 0; AttemptedSalvage = FALSE; druuge_desc.init_encounter_func = Intro; druuge_desc.post_encounter_func = post_druuge_enc; druuge_desc.uninit_encounter_func = uninit_druuge; druuge_desc.AlienTextBaseline.x = TEXT_X_OFFS + (SIS_TEXT_WIDTH >> 1); druuge_desc.AlienTextBaseline.y = RES_SIS_SCALE(70); druuge_desc.AlienTextWidth = SIS_TEXT_WIDTH - 16; if ((GET_GAME_STATE (DRUUGE_MANNER) == 0 && (GET_GAME_STATE (GLOBAL_FLAGS_AND_DATA) & (1 << 7))) || LOBYTE (GLOBAL (CurrentActivity)) == WON_LAST_BATTLE) { SET_GAME_STATE (BATTLE_SEGUE, 0); } else { SET_GAME_STATE (BATTLE_SEGUE, 1); } retval = &druuge_desc; return (retval); }
LOCDATA* init_ilwrath_comm (void) { LOCDATA *retval; ilwrath_desc.init_encounter_func = Intro; ilwrath_desc.post_encounter_func = post_ilwrath_enc; ilwrath_desc.uninit_encounter_func = uninit_ilwrath; ilwrath_desc.AlienTextBaseline.x = TEXT_X_OFFS + (SIS_TEXT_WIDTH >> 1); ilwrath_desc.AlienTextBaseline.y = RES_SIS_SCALE(70); ilwrath_desc.AlienTextWidth = SIS_TEXT_WIDTH - 16; if (GET_GAME_STATE (PROBE_ILWRATH_ENCOUNTER) || (GET_GAME_STATE (GLOBAL_FLAGS_AND_DATA) & ((1 << 4) | (1 << 5))) || LOBYTE (GLOBAL (CurrentActivity)) == WON_LAST_BATTLE) { setSegue (Segue_peace); } else { setSegue (Segue_hostile); } retval = &ilwrath_desc; return (retval); }
LOCDATA* init_yehat_comm (void) { LOCDATA *retval; yehat_desc.init_encounter_func = Intro; yehat_desc.post_encounter_func = post_yehat_enc; yehat_desc.uninit_encounter_func = uninit_yehat; yehat_desc.AlienTextBaseline.x = SIS_SCREEN_WIDTH * 2 / 3; yehat_desc.AlienTextBaseline.y = RES_SIS_SCALE(60); yehat_desc.AlienTextWidth = (SIS_TEXT_WIDTH - 16) * 2 / 3; if (LOBYTE (GLOBAL (CurrentActivity)) != WON_LAST_BATTLE) { SET_GAME_STATE (BATTLE_SEGUE, 1); } else { SET_GAME_STATE (BATTLE_SEGUE, 0); } retval = &yehat_desc; return (retval); }
LOCDATA* init_utwig_comm (void) { LOCDATA *retval; utwig_desc.init_encounter_func = Intro; utwig_desc.post_encounter_func = post_utwig_enc; utwig_desc.uninit_encounter_func = uninit_utwig; utwig_desc.AlienTextBaseline.x = TEXT_X_OFFS + (SIS_TEXT_WIDTH >> 1); utwig_desc.AlienTextBaseline.y = RES_SIS_SCALE(70); utwig_desc.AlienTextWidth = SIS_TEXT_WIDTH - 16; if (GET_GAME_STATE (UTWIG_HAVE_ULTRON)) { // use alternate 'Happy Utwig!' track utwig_desc.AlienAltSongRes = UTWIG_ULTRON_MUSIC; utwig_desc.AlienSongFlags |= LDASF_USE_ALTERNATE; } else { // regular track -- let's make sure utwig_desc.AlienSongFlags &= ~LDASF_USE_ALTERNATE; } if (GET_GAME_STATE (UTWIG_HAVE_ULTRON) || LOBYTE (GLOBAL (CurrentActivity)) == WON_LAST_BATTLE) { SET_GAME_STATE (BATTLE_SEGUE, 0); } else { SET_GAME_STATE (BATTLE_SEGUE, 1); } retval = &utwig_desc; return (retval); }