|
SSBM Decomp
|
#include "it_26B1.h"#include <placeholder.h>#include "ft/ftlib.h"#include "ft/types.h"#include "gm/gm_unsplit.h"#include "it/inlines.h"#include "it/it_266F.h"#include "it/it_2725.h"#include "it/itCommonItems.h"#include "it/item.h"#include "it/items/itbat.h"#include "it/items/itbombhei.h"#include "it/items/itbox.h"#include "it/items/itfflower.h"#include "it/items/itflipper.h"#include "it/items/itheart.h"#include "it/items/itkusudama.h"#include "it/items/itlinkbomb.h"#include "it/items/itmarumine.h"#include "it/items/itmsbomb.h"#include "it/items/itrabbitc.h"#include "it/items/itsscope.h"#include "it/items/itsword.h"#include "it/items/ittomato.h"#include "it/types.h"#include <baselib/forward.h>#include <common_structs.h>#include <baselib/gobj.h>#include <baselib/jobj.h>#include <MetroTRK/intrinsics.h>Functions | |
| static float | _sqrtfItem (float x) |
| f32 | it_8026B1D4 (HSD_GObj *gobj, HitCapsule *itemHitboxUnk) |
| Apply Item Damage. | |
| void | it_8026B294 (HSD_GObj *gobj, Vec3 *pos) |
| Copy Item position vector. | |
| bool | it_8026B2B4 (HSD_GObj *gobj) |
| Check if item is heavy. | |
| bool | it_8026B2D8 (HSD_GObj *gobj) |
| Check if item is heavy again? | |
| s32 | itGetKind (HSD_GObj *gobj) |
| Get Item ID. | |
| enum_t | it_8026B30C (Item_GObj *gobj) |
| Return flag from Item Attributes. | |
| enum_t | it_8026B320 (HSD_GObj *gobj) |
| Return item hold kind. | |
| f32 | it_8026B334 (HSD_GObj *gobj) |
| Return item damage multiplier. | |
| void | it_8026B344 (HSD_GObj *gobj, Vec3 *pos) |
| Unknown item position math, related to velocity? | |
| f32 | it_8026B378 (HSD_GObj *gobj) |
| Return item's X-Axis grab range? | |
| f32 | it_8026B384 (HSD_GObj *gobj) |
| Return item's Y-Axis grab range? | |
| void | it_8026B390 (HSD_GObj *gobj) |
| Toggle item flag 0x15 in 0xDC8 word ON. | |
| void | it_8026B3A8 (HSD_GObj *gobj) |
| Toggle item flag 0x15 in 0xDC8 word OFF. | |
| int | it_8026B3C0 (ItemKind kind) |
| Count item entities of identical kind? | |
| void | it_8026B3F8 (Article *article, s32 kind) |
| Store Item article pointer to table. | |
| void | it_8026B40C (Article *article, s32 kind) |
| Store Stage Item article pointer to table. | |
| f32 | it_8026B424 (s32 damage) |
| Item Damage Math. | |
| s32 | it_8026B47C (HSD_GObj *gobj) |
| Get heal value of healing items. | |
| bool | it_8026B4F0 (HSD_GObj *gobj) |
| Check if item is a healing item. | |
| f32 | it_8026B54C (HSD_GObj *gobj) |
| Get unknown float from 0x0 of item's special attributes. | |
| f32 | it_8026B560 (HSD_GObj *gobj) |
| Identical to it_8026B54C but likely using a different itAttributes struct. | |
| f32 | it_8026B574 (HSD_GObj *gobj) |
| Get unknown float from 0x4 of item's special attributes. | |
| s32 | it_8026B588 (void) |
| Get unknown integer from itCommonData. | |
| bool | it_8026B594 (HSD_GObj *gobj) |
| Check if item can fire projectiles and if ammo is remaining. | |
| HSD_GObj * | it_8026B5E4 (Vec3 *vector, Vec3 *vector2, HSD_GObj *gobj) |
| Unknown item camera check? | |
| Fighter_GObj * | it_8026B634 (Vec3 *arg0, Vec3 *arg1, Item_GObj *arg2, f32 farg0) |
| Unknown item camera check 2? | |
| f32 | it_8026B684 (Vec3 *pos) |
| Get facing direction of fighter (?) with NULL. | |
| f32 | it_8026B6A8 (Vec3 *pos, HSD_GObj *arg1) |
| Get facing direction of fighter (?) with variable argument. | |
| bool | it_8026B6C8 (HSD_GObj *gobj) |
| Check if item is a stage item? | |
| void | it_8026B718 (HSD_GObj *gobj, f32 hitlagFrames) |
| Set item's hitlag frames. | |
| void | it_8026B724 (HSD_GObj *gobj) |
| Toggle bit 3 of 0xDC8 word ON. | |
| void | it_8026B73C (HSD_GObj *gobj) |
| Toggle bits in 0xDC8 word. | |
| bool | it_8026B774 (HSD_GObj *gobj, u8 arg1) |
| Bitwise operations in 0xDC8 word. | |
| s32 | it_8026B7A4 (HSD_GObj *gobj) |
| Get Item State ID. | |
| u8 | it_8026B7B0 (HSD_GObj *gobj) |
| Get Item Team ID. | |
| s32 | it_8026B7BC (HSD_GObj *gobj) |
| Get flag 0x14 of 0xDC8 word. | |
| s32 | it_8026B7CC (HSD_GObj *gobj) |
| Get 0x1C of Item - something to do with stale moves? | |
| s32 | it_8026B7D8 (void) |
| Get unknown var from global data. | |
| s32 | it_8026B7E0 (void) |
| Get unknown var from global data. | |
| s32 | it_8026B7E8 (HSD_GObj *gobj) |
| Get bit 1 of 0xDC8 word. | |
| void | RunCallbackUnk (HSD_GObjInteraction proc, HSD_GObj *gobj0, HSD_GObj *gobj1) |
| void | it_8026B7F8 (HSD_GObj *fighter_gobj) |
| Remove item from player on death? | |
| bool | it_8026B894 (HSD_GObj *gobj, HSD_GObj *ref_gobj) |
| Remove all GObj interaction references from item. | |
| s32 | it_8026B924 (HSD_GObj *gobj) |
| Return result of unk item check. | |
| f32 | it_8026B960 (HSD_GObj *gobj) |
| Return float result of item kind and state checks. | |
| void | lb_8000B804 (HSD_JObj *, HSD_Joint *) |
| void | lb_8000BA0C (HSD_JObj *, f32) |
| void | HSD_JObjRemoveAnimAll (HSD_JObj *) |
| static void | What (HSD_GObj *gobj, struct ItemStateDesc *itemStateDesc, Item *ip, HSD_JObj *item_jobj2) |
| void | it_8026B9A8 (HSD_GObj *gobj, HSD_GObj *arg1, Fighter_Part arg2) |
| Transfer item on character transformation (Zelda <-> Sheik) | |
| void | it_8026BAE8 (HSD_GObj *gobj, f32 scl_mul) |
| Multiply item's scale. | |
| void | it_8026BB20 (HSD_GObj *gobj) |
| Clear JObj flags on item model. | |
| void | it_8026BB44 (HSD_GObj *gobj) |
| Set JObj flags on item model. | |
| void | ftLib_80086990 (HSD_GObj *, Vec3 *) |
| void | it_8026BB68 (HSD_GObj *fighter_gobj, Vec3 *pos) |
| Adjust item's position to fp bone. | |
| void | it_8026BB88 (HSD_GObj *gobj, Vec3 *pos) |
| Adjust item's position based on ECB? | |
| void | it_8026BBCC (HSD_GObj *gobj, Vec3 *pos) |
| Adjust item's ECB position? | |
| bool | ftLib_80086960 (HSD_GObj *) |
| Check if the HSD_GObj* class is a fighter. | |
| void | ftLib_80086A4C (HSD_GObj *, f32) |
| void | it_8026BC14 (HSD_GObj *gobj) |
| Check if item owner is a fighter + decrement hitlag. | |
| bool | it_8026BC68 (HSD_GObj *gobj) |
| Return bit 0 of 0xDD0. | |
| HSD_GObj * | it_8026BC78 (HSD_GObj *gobj) |
| Get item owner. | |
| bool | it_8026BC84 (HSD_GObj *gobj) |
| Get item attack kind. | |
| void | ftLib_80086644 (HSD_GObj *, Vec3 *) |
| void | it_8026BC90 (HSD_GObj *gobj, Vec3 *pos) |
| Unknown item ECB / position update. | |
| void | it_8026BCF4 (HSD_GObj *gobj) |
Unsets #Item::xDCD_flag::bits::b2 of gobj. | |
| void | it_8026BD0C (HSD_GObj *gobj) |
Sets #Item::xDCD_flag::bits::b2 of gobj. | |
| void | it_8026BD24 (HSD_GObj *gobj) |
Sets #Item::xDD0_flag::bits::b3 of gobj. | |
| void | it_8026BD3C (HSD_GObj *gobj) |
Sets #Item::xDCC_flag::bits::b3 of gobj. | |
| void | it_8026BD54 (HSD_GObj *gobj) |
Unsets #Item::xDCC_flag::bits::b3 of gobj. | |
| void | it_8026BD6C (HSD_GObj *gobj) |
Sets #Item::xDCD_flag::bits::b3 of gobj. | |
| void | it_8026BD84 (HSD_GObj *gobj) |
Sets #Item::xDCD_flag::bits::b4 of gobj. | |
| void | it_8026BD9C (HSD_GObj *gobj) |
Sets #Item::xDC8_word::flags::x1A of gobj. | |
| void | it_8026BDB4 (HSD_GObj *gobj) |
| 0x8026BDB4 // Identical to previous function except for the toggle bit | |
| void | it_8026BDCC (HSD_GObj *gobj) |
| Toggles several item flags. | |
| void | it_8026BE28 (HSD_GObj *gobj) |
| Toggle several item flags. The inverse of it_8026BDCC. | |
| HSD_GObj * | it_8026BE84 (BobOmbRain *bobOmbRain) |
| Bob-Omb Rain Switch. | |
| CollData * | ftLib_80086984 (HSD_GObj *) |
| CollData * | it_8026C100 (HSD_GObj *gobj) |
| Get item's CollData pointer. | |
| void | it_8026C16C (HSD_GObj *gobj, bool is_headless) |
| Check if Hammer item's head should break off. | |
| bool | it_8026C1B4 (HSD_GObj *gobj) |
| Check if item has a hitbox. | |
| u32 | it_8026C1D4 (void) |
| Get unknown var from r13 pointer. | |
| bool | it_8026C1E8 (HSD_GObj *gobj) |
| Check if item has grabbed a GObj? | |
| void | it_8026C220 (HSD_GObj *gobj, HSD_GObj *fighter_gobj) |
| Get item owner's port number. | |
| HSD_GObj * | it_8026C258 (Vec3 *pos, f32 facing_dir) |
| Find the closest item to the given position? | |
| void | it_8026C334 (HSD_GObj *gobj, Vec3 *pos) |
| Unknown item position / ECB update. | |
| void | it_8026C368 (HSD_GObj *gobj) |
| Run bomb item explosion callbacks. | |
| void | it_8026C3FC (void) |
| Toggle bit 3 of 0xDC8 ON for all active item GObjs? | |
| void | it_8026C42C (void) |
| Toggle bits in 0xDC8 for all active item GObjs? | |
Variables | |
| s32 | it_804D6D08 |
|
inlinestatic |
| f32 it_8026B1D4 | ( | HSD_GObj * | gobj, |
| HitCapsule * | itemHitboxUnk | ||
| ) |
Apply Item Damage.
| f32 it_8026B334 | ( | HSD_GObj * | gobj | ) |
Return item damage multiplier.
| f32 it_8026B378 | ( | HSD_GObj * | gobj | ) |
Return item's X-Axis grab range?
| f32 it_8026B384 | ( | HSD_GObj * | gobj | ) |
Return item's Y-Axis grab range?
| void it_8026B390 | ( | HSD_GObj * | gobj | ) |
Toggle item flag 0x15 in 0xDC8 word ON.
| void it_8026B3A8 | ( | HSD_GObj * | gobj | ) |
Toggle item flag 0x15 in 0xDC8 word OFF.
| int it_8026B3C0 | ( | ItemKind | kind | ) |
Count item entities of identical kind?
| f32 it_8026B54C | ( | HSD_GObj * | gobj | ) |
Get unknown float from 0x0 of item's special attributes.
| f32 it_8026B560 | ( | HSD_GObj * | gobj | ) |
Identical to it_8026B54C but likely using a different itAttributes struct.
| f32 it_8026B574 | ( | HSD_GObj * | gobj | ) |
Get unknown float from 0x4 of item's special attributes.
| s32 it_8026B588 | ( | void | ) |
Get unknown integer from itCommonData.
Check if item can fire projectiles and if ammo is remaining.
Check if item can fire projectiles.
Unknown item camera check?
| Fighter_GObj * it_8026B634 | ( | Vec3 * | arg0, |
| Vec3 * | arg1, | ||
| Item_GObj * | arg2, | ||
| f32 | farg0 | ||
| ) |
Unknown item camera check 2?
| f32 it_8026B684 | ( | Vec3 * | pos | ) |
Get facing direction of fighter (?) with NULL.
Get facing direction of fp (?) with argument 0.
| f32 it_8026B6A8 | ( | Vec3 * | pos, |
| HSD_GObj * | arg1 | ||
| ) |
Get facing direction of fighter (?) with variable argument.
Get facing direction of fp (?) with variable argument.
| void it_8026B718 | ( | HSD_GObj * | gobj, |
| f32 | hitlagFrames | ||
| ) |
Set item's hitlag frames.
| void it_8026B724 | ( | HSD_GObj * | gobj | ) |
Toggle bit 3 of 0xDC8 word ON.
| void it_8026B73C | ( | HSD_GObj * | gobj | ) |
Toggle bits in 0xDC8 word.
| s32 it_8026B7D8 | ( | void | ) |
Get unknown var from global data.
| s32 it_8026B7E0 | ( | void | ) |
Get unknown var from global data.
|
inline |
| void it_8026B7F8 | ( | HSD_GObj * | fighter_gobj | ) |
Remove item from player on death?
Remove all GObj interaction references from item.
ref_gobj was the Item::owner. | f32 it_8026B960 | ( | HSD_GObj * | gobj | ) |
Return float result of item kind and state checks.
|
extern |
|
extern |
|
inlinestatic |
| void it_8026B9A8 | ( | HSD_GObj * | gobj, |
| HSD_GObj * | arg1, | ||
| Fighter_Part | arg2 | ||
| ) |
| void it_8026BAE8 | ( | HSD_GObj * | gobj, |
| f32 | scl_mul | ||
| ) |
Multiply item's scale.
| void it_8026BB20 | ( | HSD_GObj * | gobj | ) |
Clear JObj flags on item model.
| void it_8026BB44 | ( | HSD_GObj * | gobj | ) |
Set JObj flags on item model.
|
extern |
| void it_8026BB68 | ( | HSD_GObj * | fighter_gobj, |
| Vec3 * | pos | ||
| ) |
Adjust item's position to fp bone.
| void it_8026BB88 | ( | HSD_GObj * | gobj, |
| Vec3 * | pos | ||
| ) |
Adjust item's position based on ECB?
| void it_8026BBCC | ( | HSD_GObj * | gobj, |
| Vec3 * | pos | ||
| ) |
Adjust item's ECB position?
Check if the HSD_GObj* class is a fighter.
true if gobj is a Fighter, otherwise false.
|
extern |
| void it_8026BC14 | ( | HSD_GObj * | gobj | ) |
Check if item owner is a fighter + decrement hitlag.
Check if item owner is a fp + decrement hitlag.
Return bit 0 of 0xDD0.
gobj. Get item owner.
gobj. Get item attack kind.
gobj.
|
extern |
| void it_8026BCF4 | ( | HSD_GObj * | gobj | ) |
Unsets #Item::xDCD_flag::bits::b2 of gobj.
Toggle bit 2 of 0xDCD OFF.
| void it_8026BD0C | ( | HSD_GObj * | gobj | ) |
Sets #Item::xDCD_flag::bits::b2 of gobj.
Toggle bit 2 of 0xDCD ON.
| void it_8026BD24 | ( | HSD_GObj * | gobj | ) |
Sets #Item::xDD0_flag::bits::b3 of gobj.
Toggle bit 3 of 0xDD0 ON.
| void it_8026BD3C | ( | HSD_GObj * | gobj | ) |
Sets #Item::xDCC_flag::bits::b3 of gobj.
Toggle bit 3 of 0xDCC ON.
| void it_8026BD54 | ( | HSD_GObj * | gobj | ) |
Unsets #Item::xDCC_flag::bits::b3 of gobj.
Toggle bit 3 of 0xDCC OFF.
| void it_8026BD6C | ( | HSD_GObj * | gobj | ) |
Sets #Item::xDCD_flag::bits::b3 of gobj.
Toggle bit 3 of 0xDCD ON.
| void it_8026BD84 | ( | HSD_GObj * | gobj | ) |
Sets #Item::xDCD_flag::bits::b4 of gobj.
Toggle bit 4 of 0xDCD ON.
| void it_8026BD9C | ( | HSD_GObj * | gobj | ) |
Sets #Item::xDC8_word::flags::x1A of gobj.
Toggle 0x1A of 0xDC8 word ON.
| void it_8026BDB4 | ( | HSD_GObj * | gobj | ) |
0x8026BDB4 // Identical to previous function except for the toggle bit
Toggle 0x1A of 0xDC8 word OFF.
| void it_8026BDCC | ( | HSD_GObj * | gobj | ) |
Toggles several item flags.
Toggle several item flags.
| void it_8026BE28 | ( | HSD_GObj * | gobj | ) |
Toggle several item flags. The inverse of it_8026BDCC.
Toggle several item flags, inverted.
| HSD_GObj * it_8026BE84 | ( | BobOmbRain * | bobOmbRain | ) |
Bob-Omb Rain Switch.
Check if Hammer item's head should break off.
| u32 it_8026C1D4 | ( | void | ) |
Get unknown var from r13 pointer.
| HSD_GObj * it_8026C258 | ( | Vec3 * | pos, |
| f32 | facing_dir | ||
| ) |
| void it_8026C368 | ( | HSD_GObj * | gobj | ) |
Run bomb item explosion callbacks.
| void it_8026C3FC | ( | void | ) |
Toggle bit 3 of 0xDC8 ON for all active item GObjs?
| void it_8026C42C | ( | void | ) |
Toggle bits in 0xDC8 for all active item GObjs?
|
extern |