SSBM Decomp
Loading...
Searching...
No Matches
CmSubject Struct Reference

A point of interest ("camera box") that the match camera tries to keep in frame. More...

#include <types.h>

Data Fields

CmSubjectnext
CmSubjectprev
CmSubjectState state
u8 on_ledge: 1
 Set while the owning fighter is in a Cliff motion state. Never read.
u8 force_inactive: 1
 Excludes the subject from framing regardless of CmSubject::state.
u8 was_framed: 1
 Set while the subject is framed.
s16 state_timer
 CmSubjectState_Auto lockout.
Vec3 pos
 Anchor point of the subject's framing box. Only x/y are read.
Vec3 bone_pos
 Position of the owning fighter's camera bone (ftLib_800866DC).
float facing_dir
 Facing direction of the subject (±1).
CmSubjectExtents ext
 Current framing extents, eased toward CmSubject::target_ext by 0.5 per frame in Camera_800293E0.
CmSubjectExtents target_ext
 Target framing extents, set by the subject's owner.
Vec3 x54
 Zeroed but unused.
Vec3 x60
 Zeroed but unused.

Detailed Description

A point of interest ("camera box") that the match camera tries to keep in frame.

Note
Name from the "couldn't get CmSubject struct." OSReport in Camera_80029044 at 80029070.

Field Documentation

◆ next

CmSubject* CmSubject::next

◆ prev

CmSubject* CmSubject::prev

◆ state

CmSubjectState CmSubject::state

◆ on_ledge

u8 CmSubject::on_ledge

Set while the owning fighter is in a Cliff motion state. Never read.

◆ force_inactive

u8 CmSubject::force_inactive

Excludes the subject from framing regardless of CmSubject::state.

Set only by Home-Run Contest, cleared only by Camera_80028F5C.

◆ was_framed

u8 CmSubject::was_framed

Set while the subject is framed.

CmSubjectState_Auto uses it as an edge detector: cleared when the subject leaves the bounds, arming CmSubject::state_timer.

◆ state_timer

s16 CmSubject::state_timer

CmSubjectState_Auto lockout.

Armed to 600 when the subject leaves the bounds; while non-zero it counts down once per framing check and the subject is not framed.

◆ pos

Vec3 CmSubject::pos

Anchor point of the subject's framing box. Only x/y are read.

◆ bone_pos

Vec3 CmSubject::bone_pos

Position of the owning fighter's camera bone (ftLib_800866DC).

◆ facing_dir

float CmSubject::facing_dir

Facing direction of the subject (±1).

◆ ext

CmSubjectExtents CmSubject::ext

Current framing extents, eased toward CmSubject::target_ext by 0.5 per frame in Camera_800293E0.

◆ target_ext

CmSubjectExtents CmSubject::target_ext

Target framing extents, set by the subject's owner.

◆ x54

Vec3 CmSubject::x54

Zeroed but unused.

◆ x60

Vec3 CmSubject::x60

Zeroed but unused.


The documentation for this struct was generated from the following file: