1
0
Fork 0
mirror of https://github.com/jugeeya/UltimateTrainingModpack.git synced 2025-06-13 23:10:37 +00:00

fix up ledges, selection

This commit is contained in:
jugeeya 2019-07-09 09:23:06 -07:00
parent 44b718e37f
commit 180c4c1c24
4 changed files with 18 additions and 10 deletions

BIN
romfs/msg_melee_edited.msbt Normal file

Binary file not shown.

View file

@ -50,8 +50,8 @@ int TOGGLE_STATE = MASH_TOGGLES;
// Mash States // Mash States
#define MASH_AIRDODGE 1 #define MASH_AIRDODGE 1
#define MASH_JUMP 2 #define MASH_JUMP 2
#define MASH_RANDOM 3 #define MASH_ATTACK 3
#define MASH_ATTACK 4 #define MASH_RANDOM 4
int MASH_STATE = NONE; int MASH_STATE = NONE;
#define NUM_MASH_STATES 5 #define NUM_MASH_STATES 5

View file

@ -5,11 +5,11 @@ void force_option(u64 module_accessor) {
if (StatusModule::status_kind(module_accessor) == FIGHTER_STATUS_KIND_CLIFF_WAIT) { if (StatusModule::status_kind(module_accessor) == FIGHTER_STATUS_KIND_CLIFF_WAIT) {
if (WorkModule::is_enable_transition_term(module_accessor, FIGHTER_STATUS_TRANSITION_TERM_ID_CONT_CLIFF_CLIMB)) { if (WorkModule::is_enable_transition_term(module_accessor, FIGHTER_STATUS_TRANSITION_TERM_ID_CONT_CLIFF_CLIMB)) {
int random_getup = app::sv_math::rand( int random_frame = app::sv_math::rand(
hash40("fighter"), hash40("fighter"),
(int) WorkModule::get_float(module_accessor, FIGHTER_STATUS_CLIFF_WORK_FLOAT_HIT_NORMAL_FRAME)); (int) MotionModule::end_frame(module_accessor));
if (random_getup == 0) { if (MotionModule::frame(module_accessor) == random_frame) {
int status = 0; int status = 0;
int ledge_case = LEDGE_STATE; int ledge_case = LEDGE_STATE;
@ -41,10 +41,10 @@ void defensive_option(u64 module_accessor, int category, int& flag) {
flag |= FIGHTER_PAD_CMD_CAT1_FLAG_AIR_ESCAPE; flag |= FIGHTER_PAD_CMD_CAT1_FLAG_AIR_ESCAPE;
} }
int prev_status = StatusModule::prev_status_kind(module_accessor, 0); if ((status == FIGHTER_STATUS_KIND_CLIFF_CLIMB ||
if (prev_status == FIGHTER_STATUS_KIND_CLIFF_CLIMB || status == FIGHTER_STATUS_KIND_CLIFF_ATTACK ||
prev_status == FIGHTER_STATUS_KIND_CLIFF_ATTACK || status == FIGHTER_STATUS_KIND_CLIFF_ESCAPE) &&
prev_status == FIGHTER_STATUS_KIND_CLIFF_ESCAPE) { WorkModule::is_enable_transition_term(module_accessor, FIGHTER_STATUS_TRANSITION_TERM_ID_CONT_ESCAPE)) {
const int NUM_GROUND_STATUSES = 3; const int NUM_GROUND_STATUSES = 3;
int random_statuses[NUM_GROUND_STATUSES] = { int random_statuses[NUM_GROUND_STATUSES] = {
FIGHTER_STATUS_KIND_ESCAPE, FIGHTER_STATUS_KIND_ESCAPE,

View file

@ -31,6 +31,14 @@ int vsnprintf_intercept(char* s, size_t maxlen, const char* format, va_list arg)
format = "mel_shortmsg_10"; format = "mel_shortmsg_10";
} }
// For Shulk
if (strcmp(format, "mel_info_fighter_shulk_special_00") == 0)
format = "mel_shortmsg_101"; // SMASH
else if (strcmp(format, "mel_info_fighter_shulk_special_03") == 0)
format = "mel_shortmsg_102"; // SPEED
else if (strcmp(format, "mel_info_fighter_shulk_special_02") == 0)
format = "mel_shortmsg_103"; // SHIELD
if (strcmp(format, "mel_training_shift0") == 0) if (strcmp(format, "mel_training_shift0") == 0)
format = "mel_info_fighter_shulk_special_00"; // SMASH format = "mel_info_fighter_shulk_special_00"; // SMASH
else if (strcmp(format, "mel_training_shift1") == 0) else if (strcmp(format, "mel_training_shift1") == 0)
@ -52,7 +60,7 @@ if (motion_kind == hash40("appeal_lw_l") || motion_kind == hash40("appeal_lw_r")
if (TOGGLE_STATE == MASH_TOGGLES) { if (TOGGLE_STATE == MASH_TOGGLES) {
MASH_STATE = (MASH_STATE + 1) % NUM_MASH_STATES; MASH_STATE = (MASH_STATE + 1) % NUM_MASH_STATES;
const char* toggle_strings[NUM_MASH_STATES] = const char* toggle_strings[NUM_MASH_STATES] =
{"NONE", "AIRDODGE", "JUMP", "RANDOM", "ATTACK"}; {"NONE", "AIRDODGE", "JUMP", "ATTACK", "RANDOM"};
print_string(module_accessor, toggle_strings[MASH_STATE]); print_string(module_accessor, toggle_strings[MASH_STATE]);
} }