Added 'non-stop' mode option for speedrunners
This commit is contained in:
parent
b87421dd9d
commit
7787d7b673
|
@ -945,7 +945,9 @@ u32 interact_star_or_key(struct MarioState *m, UNUSED u32 interactType, struct O
|
|||
return set_mario_action(m, ACT_JUMBO_STAR_CUTSCENE, 0);
|
||||
}
|
||||
|
||||
return set_mario_action(m, starGrabAction, noExit + 2 * grandStar);
|
||||
if (!noExit || gServerSettings.stayInLevelAfterStar != 2) {
|
||||
return set_mario_action(m, starGrabAction, noExit + 2 * grandStar);
|
||||
}
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
|
|
|
@ -126,7 +126,7 @@ unsigned int configHostPort = DEFAULT_PORT;
|
|||
unsigned int configHostSaveSlot = 1;
|
||||
unsigned int configPlayerInteraction = 1;
|
||||
unsigned int configPlayerKnockbackStrength = 25;
|
||||
bool configStayInLevelAfterStar = 0;
|
||||
unsigned int configStayInLevelAfterStar = 0;
|
||||
unsigned int configNetworkSystem = 0;
|
||||
char configPlayerName[MAX_PLAYER_STRING] = "";
|
||||
unsigned int configPlayerModel = 0;
|
||||
|
@ -208,7 +208,7 @@ static const struct ConfigOption options[] = {
|
|||
{.name = "coop_player_model", .type = CONFIG_TYPE_UINT , .uintValue = &configPlayerModel},
|
||||
{.name = "coop_player_name", .type = CONFIG_TYPE_STRING, .stringValue = (char*)&configPlayerName, .maxStringLength = MAX_PLAYER_STRING},
|
||||
{.name = "coop_player_palette", .type = CONFIG_TYPE_UINT , .uintValue = &configPlayerPalette},
|
||||
{.name = "coop_stay_in_level_after_star", .type = CONFIG_TYPE_UINT , .boolValue = &configStayInLevelAfterStar},
|
||||
{.name = "coop_stay_in_level_after_star", .type = CONFIG_TYPE_UINT , .uintValue = &configStayInLevelAfterStar},
|
||||
{.name = "share_lives", .type = CONFIG_TYPE_BOOL , .boolValue = &configShareLives},
|
||||
};
|
||||
|
||||
|
|
|
@ -82,7 +82,7 @@ extern unsigned int configHostPort;
|
|||
extern unsigned int configHostSaveSlot;
|
||||
extern unsigned int configPlayerInteraction;
|
||||
extern unsigned int configPlayerKnockbackStrength;
|
||||
extern bool configStayInLevelAfterStar;
|
||||
extern unsigned int configStayInLevelAfterStar;
|
||||
extern unsigned int configNetworkSystem;
|
||||
extern char configPlayerName[];
|
||||
extern unsigned int configPlayerModel;
|
||||
|
|
|
@ -45,7 +45,7 @@ static void debug_warp_level1() {
|
|||
}
|
||||
|
||||
static void debug_warp_level2() {
|
||||
dynos_warp_to_level(LEVEL_WF, 1, 1);
|
||||
dynos_warp_to_level(LEVEL_BOWSER_1, 1, 1);
|
||||
}
|
||||
|
||||
static void debug_grand_star(void) {
|
||||
|
|
|
@ -63,9 +63,10 @@ void djui_panel_host_settings_create(struct DjuiBase* caller) {
|
|||
djui_base_set_size(&selectionbox2->base, 1.0f, 32);
|
||||
djui_interactable_hook_value_change(&selectionbox2->base, djui_panel_host_settings_knockback_change);
|
||||
|
||||
struct DjuiCheckbox* checkbox1 = djui_checkbox_create(&body->base, "Stay in level after star", &configStayInLevelAfterStar);
|
||||
djui_base_set_size_type(&checkbox1->base, DJUI_SVT_RELATIVE, DJUI_SVT_ABSOLUTE);
|
||||
djui_base_set_size(&checkbox1->base, 1.0f, 32);
|
||||
char* lChoices[3] = { "Leave level", "Stay in level", "Non-stop" };
|
||||
struct DjuiSelectionbox* selectionbox3 = djui_selectionbox_create(&body->base, "On star collection", lChoices, 3, &configStayInLevelAfterStar);
|
||||
djui_base_set_size_type(&selectionbox3->base, DJUI_SVT_RELATIVE, DJUI_SVT_ABSOLUTE);
|
||||
djui_base_set_size(&selectionbox3->base, 1.0f, 32);
|
||||
|
||||
struct DjuiCheckbox* checkbox2 = djui_checkbox_create(&body->base, "Skip intro cutscene", &configSkipIntro);
|
||||
djui_base_set_size_type(&checkbox2->base, DJUI_SVT_RELATIVE, DJUI_SVT_ABSOLUTE);
|
||||
|
|
Loading…
Reference in New Issue