SSBM Decomp
Loading...
Searching...
No Matches
types.h
Go to the documentation of this file.
1#ifndef MELEE_FT_CHARA_FTNESS_TYPES_H
2#define MELEE_FT_CHARA_FTNESS_TYPES_H
3
4#include <platform.h>
5
6#include "ftNess/forward.h" // IWYU pragma: export
8#include <baselib/forward.h>
9
10#include "lb/types.h"
11
12#include <common_structs.h>
13
15 /* 0x222C */ HSD_GObj* yoyo_gobj;
16 /* 0x2230 */ Vec3 yoyo_hitbox_pos;
17 /* 0x223C */ float x223C;
18 /* 0x2240 */ HSD_GObj* pkflash_gobj;
19 /* 0x2244 */ HSD_GObj* pkthunder_gobj;
20 /* 0x2248 */ HSD_GObj* bat_gobj;
22 /* 0x224C */ u32 pkthunder_gfx;
23};
24
102
103// Special Attributes
104
105typedef struct ftNessAttributes {
106 // Neutral Special - PK Flash
114 float x1C_PKFLASH_LANDING_LAG; // If set to 0, Ness does not enter freefall
115 // after aerial PK Flash, but loses his
116 // double jump.
117 // Side Special - PK Fire
125 // Up Special - PK Thunder
132 // Up Special - PK Thunder 2 (Self-Hit)
136 float x60_PK_THUNDER_2_KNOCKDOWN_ANGLE; // Angle to determine whether to
137 // enter PK Thunder 2 or DownBound
138 // state (Ground Only)
139 float x64_PK_THUNDER_2_WALLHUG_ANGLE; // Surface angle to determine whether
140 // PK Thunder 2 wallhugs or bounces
142 float
143 x6C_PK_THUNDER_2_FREEFALL_ANIM_BLEND; // Amount of animation blend
144 // frames Ness goes through when
145 // entering FallSpecial through
146 // his SpecialHi Motion States
147 float x70_PK_THUNDER_2_LANDING_LAG; // If set to 0, Ness does not enter
148 // freefall after aerial PK Thunder,
149 // but loses his double jump.
150 // Down Special - PSI Magnet
151 float x74_PSI_MAGNET_RELEASE_LAG; // Auto lag frames after initializing PSI
152 // Magnet if B is not being held. PSI
153 // Magnet is immediately released with no
154 // lag once these frames have passed.
155 float x78_PSI_MAGNET_UNK1; // Note: Reminiscent of Fox and Falco's
156 // Reflector turn duration attribute? Unused.
157 float x7C_PSI_MAGNET_UNK2; // Note: Reminiscent of Fox and Falco's
158 // Reflector Unk1 attribute? Unused.
159 float x80_PSI_MAGNET_UNK3; // Unused.
163 float x90_PSI_MAGNET_UNK4; // Unused.
164 float x94_PSI_MAGNET_HEAL_MUL; // Multiplies projectile damage by this
165 // value and heals result
167 // Up/Down Smash - Yo-Yo
168 float xAC_YOYO_CHARGE_DURATION; // Amount of frames Yo-Yo can be charged
169 float
170 xB0_YOYO_DAMAGE_MUL; // Charged Yo-Yo damage multiplier; 350 by
171 // default, identical to the Smash Charge standard
172 float xB4_YOYO_REHIT_RATE; // Amount of frames needed for the Yo-Yo to hit
173 // again after colliding with a hurtbox
174 // Forward Smash - Baseball Bat
176
178
179#endif
unsigned long u32
An unsigned 32-bit integer.
Definition platform.h:26
signed long s32
A signed 32-bit integer.
Definition platform.h:14
Definition types.h:151
Definition gobj.h:25
Definition types.h:138
Definition types.h:13
Definition types.h:105
AbsorbDesc x98_PSI_MAGNET_ABSORPTION
Definition types.h:166
ReflectDesc xB8_BASEBALL_BAT
Definition types.h:175
float x68_PK_THUNDER_2_UNK2
Definition types.h:141
float x3C_PK_THUNDER_UNK1
Definition types.h:126
float x34_PKFIRE_SPAWN_Y
Definition types.h:123
float x10_PKFLASH_UNK1
Definition types.h:111
float x50_PK_THUNDER_FALL_ACCEL
Definition types.h:131
s32 x8_PKFLASH_GRAVITY_DELAY
Definition types.h:109
s32 x4_PKFLASH_TIMER2_LOOPFRAMES
Definition types.h:108
float x4C_PK_THUNDER_UNK2
Definition types.h:130
float x80_PSI_MAGNET_UNK3
Definition types.h:159
u32 x44_PK_THUNDER_LOOP2
Definition types.h:128
float x2C_PKFIRE_GROUNDED_VELOCITY
Definition types.h:121
float x1C_PKFLASH_LANDING_LAG
Definition types.h:114
s32 x0_PKFLASH_TIMER1_LOOPFRAMES
Definition types.h:107
s32 x84_PSI_MAGNET_FRAMES_BEFORE_GRAVITY
Definition types.h:160
float x70_PK_THUNDER_2_LANDING_LAG
Definition types.h:147
float xB4_YOYO_REHIT_RATE
Definition types.h:172
float x30_PKFIRE_SPAWN_X
Definition types.h:122
float xB0_YOYO_DAMAGE_MUL
Definition types.h:170
float x38_PKFIRE_LANDING_LAG
Definition types.h:124
float x60_PK_THUNDER_2_KNOCKDOWN_ANGLE
Definition types.h:136
float x90_PSI_MAGNET_UNK4
Definition types.h:163
float x7C_PSI_MAGNET_UNK2
Definition types.h:157
float x58_PK_THUNDER_2_UNK1
Definition types.h:134
s32 xC_PKFLASH_MINCHARGEFRAMES
Definition types.h:110
float x64_PK_THUNDER_2_WALLHUG_ANGLE
Definition types.h:139
u32 x40_PK_THUNDER_LOOP1
Definition types.h:127
u32 x48_PK_THUNDER_GRAVITY_DELAY
Definition types.h:129
float x8C_PSI_MAGNET_FALL_ACCEL
Definition types.h:162
float x74_PSI_MAGNET_RELEASE_LAG
Definition types.h:151
float x14_PKFLASH_FALL_ACCEL
Definition types.h:112
float x20_PKFIRE_AERIAL_LAUNCH_TRAJECTORY
Definition types.h:118
float x88_PSI_MAGNET_MOMENTUM_PRESERVATION
Definition types.h:161
float x54_PK_THUNDER_2_MOMENTUM
Definition types.h:133
float x28_PKFIRE_GROUNDED_LAUNCH_TRAJECTORY
Definition types.h:120
float xAC_YOYO_CHARGE_DURATION
Definition types.h:168
float x94_PSI_MAGNET_HEAL_MUL
Definition types.h:164
float x18_PKFLASH_UNK2
Definition types.h:113
float x5C_PK_THUNDER_2_DECELERATION_RATE
Definition types.h:135
float x6C_PK_THUNDER_2_FREEFALL_ANIM_BLEND
Definition types.h:143
float x24_PKFIRE_AERIAL_VELOCITY
Definition types.h:119
float x78_PSI_MAGNET_UNK1
Definition types.h:155
Definition types.h:14
HSD_GObj * pkflash_gobj
Definition types.h:18
HSD_GObj * yoyo_gobj
Definition types.h:15
HSD_GObj * bat_gobj
Definition types.h:20
Vec3 yoyo_hitbox_pos
Definition types.h:16
HSD_GObj * pkthunder_gobj
Definition types.h:19
u32 pkthunder_gfx
bool for PK Thunder GFX?
Definition types.h:22
float x223C
Definition types.h:17
s32 thunderTimerLoop1
0x2344 - Number of frames Ness remains in the "control loop" animation after PK Thunder despawns
Definition types.h:60
s32 thunderColl
0x2340 - PK Thunder collision type? Used to check if PK Thunder is colliding with Ness
Definition types.h:57
float unkVar3
0x2388 - Set various times but never actually used?
Definition types.h:83
s32 gravityDelay
0x234C - Number of frames to pass before gravity takes effect
Definition types.h:65
float facingDir
0x2370 - Facing direction change frorm PK Thunder collision
Definition types.h:75
s32 thunderTimerLoop2
0x2348 - Number of extra frames Ness remains in the "control loop" animation after PK Thunder despawn...
Definition types.h:63
Vec3 collPos1
0x2350 - ???
Definition types.h:67
float aerialVel
0x2368 - Aerial velocity of PK Thunder 2 (Self-Hit)
Definition types.h:71
float fallAccel
0x2384 - Fall acceleration of PK Thunder 2 (Self-Hit)
Definition types.h:81
Vec3 collPos2
0x235C - ???
Definition types.h:69
float unkVar4
0x238C - Set various times but never actually used?
Definition types.h:85
float unkVar
0x236C - Set various times but never actually used?
Definition types.h:73
s32 jibakuGFX
0x2380 - bool used in a weird way to switch to PK Thunder 2 GFX
Definition types.h:79
Vec3 unkVector1
0x2374 through 0x237C - Unused vector
Definition types.h:77
s32 releaseLag
0x2340 - Auto lag frames after initializing PSI Magnet if B is not being held; PSI Magnet is immediat...
Definition types.h:92
s32 turnFrames
0x2344 - Unused turnaround timer
Definition types.h:94
bool isRelease
0x2348 - Check if Ness is no longer holding B
Definition types.h:96
s32 gravityDelay
0x234C - Number of frames to pass before gravity takes effect
Definition types.h:98
int charge_release_delay
0x234C - Minimum number of frames required to pass for PK Flash to auto-release if B is not being hel...
Definition types.h:51
int frames_to_loop_charge_ground
0x2340 - Number of frames Ness remains in the "charge loop" animation after releasing PK Flash
Definition types.h:43
int frames_to_loop_charge_air
0x2344 - Number of extra frames Ness remains in the "charge loop" animation after releasing PK Flash?
Definition types.h:46
int falling_acceleration_delay
0x2348 - Number of frames to pass before gravity takes effect
Definition types.h:48
s32 yoyoCurrentFrame
0x2340 - Current frame of Up/Down Smash animation as an integer
Definition types.h:28
bool isPosUpdateMod
0x234C - bool to indicate whether Yo-Yo hitbox position should update based on raw Vec3 input (false)...
Definition types.h:37
bool isChargeDisable
0x2348 - bool to indicate whether Ness can charge the Yo-Yo
Definition types.h:33
s32 yoyoRehitTimer
0x2344 - Frames until Up/Down Smash hitbox automatically refreshes; part of why the Yo-Yo Glitch occu...
Definition types.h:31
Definition types.h:25
struct ftNess_MotionVars::ftNess_SpecialLwVars speciallw
struct ftNess_MotionVars::ftNess_YoyoVars attacklw4
struct ftNess_MotionVars::ftNess_SpecialHiVars specialhi
struct ftNess_MotionVars::ftNess_SpecialNVars specialn
struct ftNess_MotionVars::ftNess_YoyoVars attackhi4