mirror of
https://github.com/Cesarus85/ringfall-mjolnir-vr.git
synced 2026-10-25 22:04:46 +01:00
The debug build this port comes from unlocked every campaign level on
every difficulty for each new profile. Retail Xbox Halo does not: a new
profile starts at The Pillar of Autumn and each level opens when the one
before it is finished. New profiles now start that way.
- game.unlock_all_levels (off by default) keeps the old behavior for new
profiles, for those who want it.
- profile_reset_campaign in the console clears the current profile's
finished levels and last played level, after a confirmation
("profile_reset_campaign yes"). Profiles made by earlier versions had
every level open and cannot be told apart from a real full clear, so
nothing is changed automatically.
(cherry picked from commit 224d9a757575509efb0dedab094bd0d34df59e96, without its top README
table, which OpenCE does not have)
133 lines
3.6 KiB
C
133 lines
3.6 KiB
C
/*
|
|
PLAYER_UI.H
|
|
|
|
header included in hcex build.
|
|
*/
|
|
|
|
#ifndef __PLAYER_UI_H
|
|
#define __PLAYER_UI_H
|
|
#pragma once
|
|
|
|
/* ---------- headers */
|
|
|
|
#include "cseries/cseries.h"
|
|
|
|
/* ---------- constants */
|
|
|
|
/* ---------- macros */
|
|
|
|
/* ---------- structures */
|
|
|
|
struct player_profile;
|
|
struct game_variant;
|
|
|
|
/* ---------- prototypes/PLAYER_UI.C */
|
|
|
|
void player_ui_dispose(
|
|
void);
|
|
void player_ui_initialize(
|
|
void);
|
|
void player_ui_clear_multiplayer_joins(
|
|
void);
|
|
void player_ui_reset_single_player_local_player_controllers(
|
|
void);
|
|
short player_ui_get_single_player_local_player_controller(
|
|
short local_player_index);
|
|
short player_ui_get_single_player_local_player_from_controller(
|
|
short controller_index);
|
|
void player_ui_autojoin_players_to_next_multiplayer_game(
|
|
void);
|
|
void player_ui_clear_multiplayer_variant(
|
|
void);
|
|
long player_ui_get_active_player_profile_index(
|
|
short local_player_index);
|
|
struct player_profile *player_ui_get_edit_player_profile(
|
|
void);
|
|
/* port: the saved game file being edited (NONE for none) */
|
|
long player_ui_get_edit_profile_index(
|
|
void);
|
|
struct game_variant *player_ui_get_edit_playlist_profile(
|
|
void);
|
|
/* port: the PC options (game_engine.h) of the gametype being edited, and of
|
|
the multiplayer gametype (player_ui_set_game_variant's) */
|
|
struct game_variant_options;
|
|
struct game_variant_options *player_ui_get_edit_playlist_options(
|
|
void);
|
|
void player_ui_set_game_variant_options(
|
|
struct game_variant_options const *options);
|
|
struct game_variant_options const *player_ui_get_game_variant_options(
|
|
void);
|
|
boolean player_ui_edit_profile_is_dirty(
|
|
void);
|
|
boolean player_ui_save_profile(
|
|
void);
|
|
boolean player0_look_pitch_is_inverted(
|
|
void);
|
|
boolean player0_joystick_set_is_normal(
|
|
void);
|
|
void player_ui_end_editing_profile(
|
|
void);
|
|
boolean player_ui_local_player_wants_to_play_multiplayer(
|
|
short local_player_index);
|
|
void player_ui_clear_multiplayer_autojoin_for_local_player(
|
|
short local_player_index);
|
|
short player_ui_get_last_single_player_level_played(
|
|
short local_player_index);
|
|
void player_ui_local_player_joined_multiplayer_game(
|
|
short local_player_index);
|
|
/* port: the local player out of this game and the next */
|
|
void player_ui_local_player_left_multiplayer_game(
|
|
short local_player_index);
|
|
boolean player_ui_rumble_disabled(
|
|
short local_player_index);
|
|
boolean player_ui_get_path_to_local_player_profile_directory(
|
|
short local_player_index,
|
|
char *path);
|
|
void player_ui_get_active_player_profile(
|
|
short local_player_index,
|
|
void *profile);
|
|
void player_ui_activate_all_solo_levels(
|
|
void);
|
|
boolean player_ui_reset_campaign_progress(
|
|
boolean reset,
|
|
wchar_t *name,
|
|
long name_length);
|
|
void player_ui_set_game_variant(
|
|
struct game_variant *variant);
|
|
boolean player_ui_game_variant_specified(
|
|
struct game_variant *variant);
|
|
void player_ui_set_single_player_local_player_controller(
|
|
short local_player_index,
|
|
short controller_index);
|
|
long player_ui_get_player1_last_used_profile_index(
|
|
void);
|
|
void player_ui_fast_setup_network_server(
|
|
void);
|
|
boolean player_ui_edit_profile_is_default_profile(
|
|
void);
|
|
void player_ui_remember_player1_profile(
|
|
boolean save);
|
|
void player_ui_begin_editing_profile(
|
|
long profile_index);
|
|
void player_ui_set_active_player_profile(
|
|
short local_player_index,
|
|
long profile_index,
|
|
struct player_profile *profile);
|
|
boolean player_ui_autolevel_enabled(
|
|
short controller_index);
|
|
boolean player_ui_edit_profile_name_is_dirty(
|
|
void);
|
|
boolean player_ui_prompt_user_to_rename_edit_profile(
|
|
void);
|
|
void player0_look_invert_pitch(
|
|
boolean invert);
|
|
/* port: a saved game file deleted (saved_game_files.c) */
|
|
void player_ui_saved_game_file_removed(
|
|
long removed_index);
|
|
|
|
/* ---------- globals */
|
|
|
|
/* ---------- public code */
|
|
|
|
#endif // __PLAYER_UI_H
|