Shipwright/soh/src/overlays/actors/ovl_En_Trap/z_en_trap.h
M4xw 39cc86c260 git subrepo clone https://github.com/HarbourMasters/soh.git
subrepo:
  subdir:   "soh"
  merged:   "ba904bbd0"
upstream:
  origin:   "https://github.com/HarbourMasters/soh.git"
  branch:   "master"
  commit:   "ba904bbd0"
git-subrepo:
  version:  "0.4.1"
  origin:   "???"
  commit:   "???"
2022-03-22 02:51:23 +01:00

36 lines
1.0 KiB
C

#ifndef Z_EN_TRAP_H
#define Z_EN_TRAP_H
#include "ultra64.h"
#include "global.h"
// Different movement modes (set in params):
#define SPIKETRAP_MODE_LINEAR 0x10
#define SPIKETRAP_MODE_CIRCULAR 0x20
#define SPIKETRAP_MODE_FOUR_WAY 0x30
// When four-way mode is set, these flags decide on which directions are allowed:
#define SPIKETRAP_FOURWAY_FWD_ALLOWED (1 << 0)
#define SPIKETRAP_FOURWAY_BACK_ALLOWED (1 << 1)
#define SPIKETRAP_FOURWAY_LEFT_ALLOWED (1 << 2)
#define SPIKETRAP_FOURWAY_RIGHT_ALLOWED (1 << 3)
struct EnTrap;
typedef struct EnTrap {
/* 0x0000 */ Actor actor;
/* 0x014C */ s32 playerDmgTimer;
/* 0x0150 */ s16 upperParams;
/* 0x0152 */ s16 genericVar1;
/* 0x0154 */ f32 genericVar2;
/* 0x0158 */ Vec3f targetPosLeft;
/* 0x0164 */ Vec3f targetPosRight;
/* 0x0170 */ Vec3f targetPosFwd;
/* 0x017C */ Vec3f targetPosBack;
/* 0x0188 */ Vec3f moveSpeedLeftRight;
/* 0x0194 */ Vec3f moveSpeedForwardBack;
/* 0x01A0 */ ColliderCylinder collider;
} EnTrap; // size = 0x01EC
#endif