Rename more propobj functions

This commit is contained in:
Ryan Dwyer
2024-10-27 21:02:45 +10:00
parent b7c4828289
commit 8319a25c5a
29 changed files with 533 additions and 520 deletions
+92 -92
View File
@@ -3013,7 +3013,7 @@
#define OBJFLAG_XTOPADBOUNDS 0x00000020
#define OBJFLAG_YTOPADBOUNDS 0x00000040
#define OBJFLAG_ZTOPADBOUNDS 0x00000080
#define OBJFLAG_CORE_GEO_INUSE 0x00000100 // G5 mines, Air Base brown door, AF1 grate and escape door, Defense shuttle, Ruins mines, MBR lift door. Editor suggests "Force Collisions" but this seems wrong
#define OBJFLAG_CORE_GEO_INUSE 0x00000100 // G5 mines, Air Base brown door, AF1 grate and escape door, Defense shuttle, Ruins mines, MBR lift door. Editor suggests "Force Collisions" but this seems wrong
#define OBJFLAG_ORTHOGONAL 0x00000200
#define OBJFLAG_IGNOREFLOORCOLOUR 0x00000400
#define OBJFLAG_PATHBLOCKER 0x00000800 // Glass and explodable scenery which may be blocking a path segment
@@ -3106,38 +3106,38 @@
#define OBJFLAG2_WEAPON_HUGEEXP 0x80000000
// obj->flags3
#define OBJFLAG3_PUSHABLE 0x00000001
#define OBJFLAG3_GRABBABLE 0x00000002
#define OBJFLAG3_DOOR_STICKY 0x00000004 // eg. Skedar Ruins
#define OBJFLAG3_00000008 0x00000008 // Not used in scripts
#define OBJFLAG3_FINDROOMSFAST 0x00000010 // Can use if obj never goes out of bounds or in overlapping rooms
#define OBJFLAG3_AUTOCUTSCENESOUNDS 0x00000020 // For doors and objs - play default open/close noises
#define OBJFLAG3_RTRACKED_YELLOW 0x00000040
#define OBJFLAG3_CANHARDFREE 0x00000080 // Can free prop while on screen (MP weapons only)
#define OBJFLAG3_HARDFREEING 0x00000100
#define OBJFLAG3_00000200 0x00000200 // Not used in scripts
#define OBJFLAG3_WALKTHROUGH 0x00000400
#define OBJFLAG3_RTRACKED_BLUE 0x00000800
#define OBJFLAG3_SHOWSHIELD 0x00001000 // Show shield effect around object (always)
#define OBJFLAG3_HTMTERMINAL 0x00002000 // Terminal for Hacker Central scenario (HTM = Hack That Mac)
#define OBJFLAG3_ISFETCHTARGET 0x00004000 // AI bot is fetching this obj
#define OBJFLAG3_REACTTOSIGHT 0x00008000 // Turn sight blue or red when targeted with R
#define OBJFLAG3_INTERACTABLE 0x00010000
#define OBJFLAG3_SHIELDHIT 0x00020000 // Turns off when shield no longer visible
#define OBJFLAG3_RENDERPOSTBG 0x00040000
#define OBJFLAG3_DRAWONTOP 0x00080000
#define OBJFLAG3_HOVERBEDSHIELD 0x00100000
#define OBJFLAG3_INTERACTSHORTRANGE 0x00200000
#define OBJFLAG3_PLAYERUNDROPPABLE 0x00400000 // Player does not drop item when dead
#define OBJFLAG3_LONGPUSHRANGE 0x00800000 // Not used in scripts
#define OBJFLAG3_PUSHFREELY 0x01000000 // Not used in scripts
#define OBJFLAG3_GEOCYL 0x02000000 // Use cylinder geometry rather than block
#define OBJFLAG3_04000000 0x04000000 // Not used in scripts
#define OBJFLAG3_08000000 0x08000000 // Not used in scripts
#define OBJFLAG3_10000000 0x10000000 // Editor: "Keep Collisions After Fully Destroyed"
#define OBJFLAG3_ONSHELF 0x20000000 // Obj is on a shelf - use bigger pickup range for Small Jo and Play as Elvis cheats and skip line of sight checks
#define OBJFLAG3_INFRARED 0x40000000 // Obj is highlighted on IR scanner
#define OBJFLAG3_80000000 0x80000000 // Not used in scripts
#define OBJFLAG3_PUSHABLE 0x00000001
#define OBJFLAG3_GRABBABLE 0x00000002
#define OBJFLAG3_DOOR_STICKY 0x00000004 // eg. Skedar Ruins
#define OBJFLAG3_00000008 0x00000008 // Not used in scripts
#define OBJFLAG3_FINDROOMSFAST 0x00000010 // Can use if obj never goes out of bounds or in overlapping rooms
#define OBJFLAG3_AUTOCUTSCENESOUNDS 0x00000020 // For doors and objs - play default open/close noises
#define OBJFLAG3_RTRACKED_YELLOW 0x00000040
#define OBJFLAG3_CANHARDFREE 0x00000080 // Can free prop while on screen (MP weapons only)
#define OBJFLAG3_HARDFREEING 0x00000100
#define OBJFLAG3_00000200 0x00000200 // Not used in scripts
#define OBJFLAG3_WALKTHROUGH 0x00000400
#define OBJFLAG3_RTRACKED_BLUE 0x00000800
#define OBJFLAG3_SHOWSHIELD 0x00001000 // Show shield effect around object (always)
#define OBJFLAG3_HTMTERMINAL 0x00002000 // Terminal for Hacker Central scenario (HTM = Hack That Mac)
#define OBJFLAG3_ISFETCHTARGET 0x00004000 // AI bot is fetching this obj
#define OBJFLAG3_REACTTOSIGHT 0x00008000 // Turn sight blue or red when targeted with R
#define OBJFLAG3_INTERACTABLE 0x00010000
#define OBJFLAG3_SHIELDHIT 0x00020000 // Turns off when shield no longer visible
#define OBJFLAG3_RENDERPOSTBG 0x00040000
#define OBJFLAG3_DRAWONTOP 0x00080000
#define OBJFLAG3_HOVERBEDSHIELD 0x00100000
#define OBJFLAG3_INTERACTSHORTRANGE 0x00200000
#define OBJFLAG3_PLAYERUNDROPPABLE 0x00400000 // Player does not drop item when dead
#define OBJFLAG3_LONGPUSHRANGE 0x00800000 // Not used in scripts
#define OBJFLAG3_PUSHFREELY 0x01000000 // Not used in scripts
#define OBJFLAG3_GEOCYL 0x02000000 // Use cylinder geometry rather than block
#define OBJFLAG3_04000000 0x04000000 // Not used in scripts
#define OBJFLAG3_08000000 0x08000000 // Not used in scripts
#define OBJFLAG3_KEEPGEOWHENDESTROYED 0x10000000
#define OBJFLAG3_ONSHELF 0x20000000 // Obj is on a shelf - use bigger pickup range for Small Jo and Play as Elvis cheats and skip line of sight checks
#define OBJFLAG3_INFRARED 0x40000000 // Obj is highlighted on IR scanner
#define OBJFLAG3_80000000 0x80000000 // Not used in scripts
// obj->hidden
#define OBJHFLAG_LIFTDOOR 0x00000001
@@ -3178,65 +3178,65 @@
#define OBJH2FLAG_DESTROYED 0x40
#define OBJH2FLAG_DEFORMED 0x80
#define OBJTYPE_DOOR 0x01
#define OBJTYPE_DOORSCALE 0x02
#define OBJTYPE_BASIC 0x03
#define OBJTYPE_KEY 0x04
#define OBJTYPE_ALARM 0x05
#define OBJTYPE_CCTV 0x06
#define OBJTYPE_AMMOCRATE 0x07
#define OBJTYPE_WEAPON 0x08
#define OBJTYPE_CHR 0x09
#define OBJTYPE_SINGLEMONITOR 0x0a
#define OBJTYPE_MULTIMONITOR 0x0b
#define OBJTYPE_HANGINGMONITORS 0x0c
#define OBJTYPE_AUTOGUN 0x0d
#define OBJTYPE_LINKGUNS 0x0e
#define OBJTYPE_DEBRIS 0x0f
#define OBJTYPE_10 0x10
#define OBJTYPE_HAT 0x11
#define OBJTYPE_GRENADEPROB 0x12
#define OBJTYPE_LINKLIFTDOOR 0x13
#define OBJTYPE_MULTIAMMOCRATE 0x14
#define OBJTYPE_SHIELD 0x15
#define OBJTYPE_TAG 0x16
#define OBJTYPE_BEGINOBJECTIVE 0x17
#define OBJTYPE_ENDOBJECTIVE 0x18
#define OBJECTIVETYPE_DESTROYOBJ 0x19
#define OBJECTIVETYPE_COMPFLAGS 0x1a
#define OBJECTIVETYPE_FAILFLAGS 0x1b
#define OBJECTIVETYPE_COLLECTOBJ 0x1c
#define OBJECTIVETYPE_THROWOBJ 0x1d
#define OBJECTIVETYPE_HOLOGRAPH 0x1e
#define OBJECTIVETYPE_1F 0x1f
#define OBJECTIVETYPE_ENTERROOM 0x20
#define OBJECTIVETYPE_THROWINROOM 0x21
#define OBJTYPE_22 0x22
#define OBJTYPE_BRIEFING 0x23
#define OBJTYPE_GASBOTTLE 0x24
#define OBJTYPE_RENAMEOBJ 0x25
#define OBJTYPE_PADLOCKEDDOOR 0x26
#define OBJTYPE_TRUCK 0x27
#define OBJTYPE_HELI 0x28
#define OBJTYPE_29 0x29
#define OBJTYPE_GLASS 0x2a
#define OBJTYPE_SAFE 0x2b
#define OBJTYPE_SAFEITEM 0x2c
#define OBJTYPE_TANK 0x2d
#define OBJTYPE_CAMERAPRESET 0x2e
#define OBJTYPE_TINTEDGLASS 0x2f
#define OBJTYPE_LIFT 0x30
#define OBJTYPE_CONDITIONALSCENERY 0x31
#define OBJTYPE_BLOCKEDPATH 0x32
#define OBJTYPE_HOVERBIKE 0x33
#define OBJTYPE_END 0x34
#define OBJTYPE_HOVERPROP 0x35 // Hovercrates and hoverbeds
#define OBJTYPE_FAN 0x36
#define OBJTYPE_HOVERCAR 0x37 // Datadyne cars, Chicago taxi and limo, and hoverbots
#define OBJTYPE_PADEFFECT 0x38
#define OBJTYPE_CHOPPER 0x39 // Extraction hovercopter and A51 interceptors
#define OBJTYPE_MINE 0x3a
#define OBJTYPE_ESCASTEP 0x3b
#define OBJTYPE_DOOR 0x01
#define OBJTYPE_DOORSCALE 0x02
#define OBJTYPE_BASIC 0x03
#define OBJTYPE_KEY 0x04
#define OBJTYPE_ALARM 0x05
#define OBJTYPE_CCTV 0x06
#define OBJTYPE_AMMOCRATE 0x07
#define OBJTYPE_WEAPON 0x08
#define OBJTYPE_CHR 0x09
#define OBJTYPE_SINGLEMONITOR 0x0a
#define OBJTYPE_MULTIMONITOR 0x0b
#define OBJTYPE_HANGINGMONITORS 0x0c
#define OBJTYPE_AUTOGUN 0x0d
#define OBJTYPE_LINKGUNS 0x0e
#define OBJTYPE_DEBRIS 0x0f
#define OBJTYPE_10 0x10
#define OBJTYPE_HAT 0x11
#define OBJTYPE_GRENADEPROB 0x12
#define OBJTYPE_LINKLIFTDOOR 0x13
#define OBJTYPE_MULTIAMMOCRATE 0x14
#define OBJTYPE_SHIELD 0x15
#define OBJTYPE_TAG 0x16
#define OBJTYPE_BEGINOBJECTIVE 0x17
#define OBJTYPE_ENDOBJECTIVE 0x18
#define OBJECTIVETYPE_DESTROYOBJ 0x19
#define OBJECTIVETYPE_COMPFLAGS 0x1a
#define OBJECTIVETYPE_FAILFLAGS 0x1b
#define OBJECTIVETYPE_COLLECTOBJ 0x1c
#define OBJECTIVETYPE_THROWOBJ 0x1d
#define OBJECTIVETYPE_HOLOGRAPH 0x1e
#define OBJECTIVETYPE_1F 0x1f
#define OBJECTIVETYPE_ENTERROOM 0x20
#define OBJECTIVETYPE_THROWINROOM 0x21
#define OBJECTIVETYPE_COPYGOLDENEYE 0x22
#define OBJTYPE_BRIEFING 0x23
#define OBJTYPE_GASBOTTLE 0x24
#define OBJTYPE_RENAMEOBJ 0x25
#define OBJTYPE_PADLOCKEDDOOR 0x26
#define OBJTYPE_TRUCK 0x27
#define OBJTYPE_HELI 0x28
#define OBJTYPE_29 0x29
#define OBJTYPE_GLASS 0x2a
#define OBJTYPE_SAFE 0x2b
#define OBJTYPE_SAFEITEM 0x2c
#define OBJTYPE_TANK 0x2d
#define OBJTYPE_CAMERAPRESET 0x2e
#define OBJTYPE_TINTEDGLASS 0x2f
#define OBJTYPE_LIFT 0x30
#define OBJTYPE_CONDITIONALSCENERY 0x31
#define OBJTYPE_BLOCKEDPATH 0x32
#define OBJTYPE_HOVERBIKE 0x33
#define OBJTYPE_END 0x34
#define OBJTYPE_HOVERPROP 0x35 // Hovercrates and hoverbeds
#define OBJTYPE_FAN 0x36
#define OBJTYPE_HOVERCAR 0x37 // Datadyne cars, Chicago taxi and limo, and hoverbots
#define OBJTYPE_PADEFFECT 0x38
#define OBJTYPE_CHOPPER 0x39 // Extraction hovercopter and A51 interceptors
#define OBJTYPE_MINE 0x3a
#define OBJTYPE_ESCASTEP 0x3b
#define OPERATOR_LESS_THAN 0
#define OPERATOR_GREATER_THAN 1
+1 -1
View File
@@ -27,7 +27,7 @@ bool bg_room_is_on_player_standby(s32 room, u32 aibotindex);
void bg_garbage_collect_rooms(s32 bytesneeded, bool desparate);
bool bg_test_line_intersects_int_bbox(struct coord *arg0, struct coord *arg1, s32 *arg2, s32 *arg3);
bool bg_test_line_intersects_bbox(struct coord *arg0, struct coord *arg1, struct coord *arg2, struct coord *arg3);
bool bg_test_hit_on_obj(struct coord *arg0, struct coord *arg1, struct coord *arg2, Gfx *gdl, Gfx *gdl2, Vtx *vertices, struct hitthing *hitthing);
bool bg_find_hitthing_by_gfx_tris(struct coord *arg0, struct coord *arg1, struct coord *arg2, Gfx *gdl, Gfx *gdl2, Vtx *vertices, struct hitthing *hitthing);
bool bg_test_hit_on_chr(struct model *model, struct coord *arg1, struct coord *arg2, struct coord *arg3, Gfx *arg4, Gfx *arg5, Vtx *vertices, f32 *arg7, struct hitthing *hitthing);
bool bg_test_hit_in_room(struct coord *frompos, struct coord *topos, s32 roomnum, struct hitthing *hitthing);
bool bg_room_is_loaded(s32 room);
+1 -1
View File
@@ -43,6 +43,6 @@ f32 cam_get_persp_aspect(void);
void cam0f0b5838(void);
bool cam0f0b5b9c(struct coord *arg0, f32 arg1);
bool cam_is_pos_in_screen_box(struct coord *pos, f32 arg1, struct drawslot *drawslot);
bool cam_is_pos_in_fov_and_visible_room(RoomNum *rooms, struct coord *pos, f32 arg2);
bool cam_is_pos_in_fov_and_visible_room(RoomNum *rooms, struct coord *pos, f32 modelscale);
#endif
+20 -20
View File
@@ -33,10 +33,10 @@ f32 obj_get_rotated_local_y_min_by_mtx3(struct modelrodata_bbox *bbox, f32 realr
f32 obj_get_rotated_local_y_max_by_mtx3(struct modelrodata_bbox *bbox, f32 realrot[3][3]);
f32 obj_get_rotated_local_z_min_by_mtx3(struct modelrodata_bbox *bbox, f32 realrot[3][3]);
f32 obj_get_rotated_local_z_max_by_mtx3(struct modelrodata_bbox *bbox, f32 realrot[3][3]);
bool func0f0679ac(struct model *model, f32 *max, f32 *min, f32 arg3[2], f32 arg4[2]);
bool obj_is_any_node_in_range(struct model *model, f32 *max, f32 *min, f32 arg3[2], f32 arg4[2]);
void model_get_screen_coords3(struct model *model, f32 *xmax, f32 *xmin, f32 *ymax, f32 *ymin);
bool model_get_screen_coords(struct model *model, f32 *x2, f32 *x1, f32 *y2, f32 *y1);
void func0f06803c(struct coord *arg0, f32 *arg1, f32 *arg2, f32 *arg3, f32 *arg4);
void obj_get_screeninfo(struct coord *arg0, f32 *arg1, f32 *arg2, f32 *arg3, f32 *arg4);
struct defaultobj *obj_find_by_pad_num(s32 padnum);
void projectiles_unref_owner(struct prop *owner);
void func0f0685e4(struct prop *prop);
@@ -46,27 +46,27 @@ s32 obj_get_destroyed_level(struct defaultobj *obj);
struct modelrodata_bbox *modeldef_find_bbox_rodata(struct modeldef *modeldef);
struct modelrodata_bbox *model_find_bbox_rodata(struct model *model);
struct modelrodata_bbox *obj_find_bbox_rodata(struct defaultobj *obj);
s32 func0f068fc8(struct prop *prop, bool arg1);
s32 obj_get_brightness(struct prop *prop, s32 type);
void prop_calculate_shade_colour(struct prop *prop, u8 *nextcol, u16 floorcol);
void colour_tween(u8 *col, u8 *nextcol);
void obj_merge_colour_fracs(s32 *colour, s32 shademode, f32 fracs[4]);
void obj_onmoved(struct defaultobj *obj, bool update_geometry, bool update_rooms);
struct prop *obj_init_with_modeldef(struct defaultobj *obj, struct modeldef *modeldef);
struct prop *obj_init_with_auto_model(struct defaultobj *obj);
void func0f06a580(struct defaultobj *obj, struct coord *pos, Mtxf *matrix, RoomNum *rooms);
void func0f06a730(struct defaultobj *obj, struct coord *arg1, Mtxf *matrix, RoomNum *rooms, struct coord *arg4);
void func0f06ab60(struct defaultobj *obj, struct coord *arg1, Mtxf *matrix, RoomNum *rooms, struct coord *arg4);
void obj_place(struct defaultobj *obj, struct coord *pos, Mtxf *rotmtx, RoomNum *rooms);
void obj_place_3d(struct defaultobj *obj, struct coord *arg1, Mtxf *matrix, RoomNum *rooms, struct coord *arg4);
void obj_place_2d(struct defaultobj *obj, struct coord *arg1, Mtxf *matrix, RoomNum *rooms, struct coord *arg4);
void obj_free_projectile(struct defaultobj *obj);
void obj_free_embedment_or_projectile(struct prop *prop);
void obj_free(struct defaultobj *obj, bool freeprop, bool canregen);
void obj_free_permanently(struct defaultobj *obj, bool freeprop);
bool func0f06b39c(struct coord *pos, struct coord *dir, struct coord *aimpos, f32 arg3);
bool func0f06bea0(struct model *model, struct modelnode *arg1, struct modelnode *arg2, struct coord *arg3, struct coord *arg4, void *arg5, f32 *arg6, struct modelnode **arg7, s32 *hitpart, s32 *arg9, struct modelnode **arg10);
bool pos_is_facing_pos(struct coord *pos, struct coord *dir, struct coord *aimpos, f32 arg3);
bool projectile_0f06bea0(struct model *model, struct modelnode *arg1, struct modelnode *arg2, struct coord *arg3, struct coord *arg4, void *arg5, f32 *arg6, struct modelnode **arg7, s32 *hitpart, s32 *arg9, struct modelnode **arg10);
void apply_speed(f32 *distdone, f32 maxdist, f32 *speed, f32 accel, f32 decel, f32 maxspeed);
void apply_rotation(f32 *angle, f32 maxrot, f32 *speed, f32 accel, f32 decel, f32 maxspeed);
void func0f07063c(struct prop *prop, bool fulltick);
void obj_child_tick_player(struct prop *prop, bool fulltick);
void obj_drop_recursively(struct prop *prop, bool arg1);
void func0f0706f8(struct prop *prop, bool fulltick);
void obj_child_tick_player_offscreen(struct prop *prop, bool fulltick);
void lift_activate(struct prop *prop, u8 liftnum);
struct prop *lift_find_by_pad(s16 padnum);
f32 lift_get_y(struct liftobj *lift);
@@ -102,17 +102,17 @@ Gfx *obj_render(struct prop *prop, Gfx *gdl, bool xlupass);
void obj_set_dropped(struct prop *prop, u32 droptype);
void obj_apply_momentum(struct defaultobj *obj, struct coord *speed, f32 rotation, bool addspeed, bool addrotation);
void piracy_restore(void);
void func0f082e84(struct defaultobj *obj, struct coord *pos, struct coord *dir, struct coord *tween, bool addrotation);
void obj_push(struct defaultobj *obj, struct coord *pos, struct coord *dir, struct coord *tween, bool addrotation);
void obj_detach(struct prop *prop);
bool obj_drop(struct prop *prop, bool lazy);
bool func0f084594(struct model *model, struct modelnode *node, struct coord *arg2, struct coord *arg3, struct hitthing *arg4, s32 *arg5, struct modelnode **arg6);
bool obj_find_hitthing_by_bboxrodata_mtx(struct model *model, struct modelnode *node, struct coord *arg2, struct coord *arg3, struct hitthing *arg4, s32 *arg5, struct modelnode **arg6);
void glass_destroy(struct defaultobj *obj);
void door_destroy_glass(struct doorobj *door);
void func0f085050(struct prop *prop, f32 damage, struct coord *pos, s32 arg3, s32 playernum);
bool func0f085194(struct defaultobj *obj);
void obj_take_gunfire(struct defaultobj *obj, f32 damage, struct coord *pos, s32 weaponnum, s32 playernum);
void obj_damage_by_explosion(struct prop *prop, f32 damage, struct coord *pos, s32 weaponnum, s32 playernum);
bool obj_defaults_to_bounceable_invincible_pickupable(struct defaultobj *obj);
void obj_damage_by_gunfire(struct defaultobj *obj, f32 damage, struct coord *pos, s32 weaponnum, s32 playernum);
void obj_damage(struct defaultobj *obj, f32 damage, struct coord *pos, s32 weaponnum, s32 playernum);
void func0f0859a0(struct prop *prop, struct shotdata *shotdata);
void obj_attachment_test_hit(struct prop *prop, struct shotdata *shotdata);
void obj_test_hit(struct prop *prop, struct shotdata *shotdata);
void obj_hit(struct shotdata *shotdata, struct hit *hit);
bool obj_is_healthy(struct defaultobj *obj);
@@ -129,7 +129,7 @@ s32 weapon_get_pickup_ammo_qty(struct weaponobj *weapon);
void current_player_queue_pickup_weapon_hudmsg(u32 weaponnum, bool dual);
s32 prop_pickup_by_player(struct prop *prop, bool showhudmsg);
s32 obj_test_for_pickup(struct prop *prop);
bool func0f0899dc(struct prop *prop, struct coord *arg1, f32 *xrange, f32 *yrange);
bool prop_get_screen_coords(struct prop *prop, struct coord *arg1, f32 xrange[2], f32 yrange[2]);
void model_free_vtxstores(s32 vtxstoretype, struct model *model);
void hat_assign_to_chr(struct hatobj *hat, struct chrdata *chr);
struct prop *hat_create_for_chr(struct chrdata *chr, s32 modelnum, u32 flags);
@@ -139,7 +139,7 @@ void coord_trigger_proxies(struct coord *pos, bool arg1);
void weapon_set_dual(struct weaponobj *weapon1, struct weaponobj *weapon2);
struct prop *weapon_init_with_modeldef(struct weaponobj *weapon, struct modeldef *modeldef);
bool chr_equip_weapon(struct weaponobj *weapon, struct chrdata *chr);
void func0f08b25c(struct weaponobj *weapon, struct chrdata *chr);
void weapon_assign_to_chr(struct weaponobj *weapon, struct chrdata *chr);
struct autogunobj *laptop_deploy(s32 modelnum, struct gset *gset, struct chrdata *chr);
struct weaponobj *weapon_create_projectile_from_gset(s32 modelnum, struct gset *gset, struct chrdata *chr);
struct weaponobj *weapon_create_projectile_from_weapon_num(s32 modelnum, s32 weaponnum, struct chrdata *chr);
@@ -158,9 +158,9 @@ struct prop *door_init(struct doorobj *door, struct coord *pos, Mtxf *mtx, RoomN
void door_finish_close(struct doorobj *door);
void door_set_mode(struct doorobj *door, s32 newmode);
void doors_request_mode(struct doorobj *door, s32 newmode);
s32 func0f08e5a8(RoomNum *rooms, struct screenbox *box);
s32 rooms_get_cumulative_screenbox(RoomNum *rooms, struct screenbox *box);
f32 obj_calculate_fade_dist_opacity_frac(struct prop *prop, f32 modelscale);
bool func0f08e8ac(struct prop *prop, struct coord *pos, f32 arg2, bool arg3);
bool pos_is_onscreen(struct prop *prop, struct coord *pos, f32 modelscale, bool arg3);
bool pos_is_in_draw_distance(struct coord *arg);
bool door_test_for_interact(struct prop *prop);
void doors_activate(struct prop *prop, bool allowliftclose);
+1 -1
View File
@@ -17,7 +17,7 @@ void cd_get_obstacle_normal(struct coord *normal);
u32 cd_get_geo_flags(void);
void cd_set_saved_pos(struct coord *pos1, struct coord *pos2);
bool cd_get_saved_pos(struct coord *arg0, struct coord *arg1);
bool cd_000266a4(f32 x, f32 z, struct geo *tile);
bool cd_is_2d_point_in_geo(f32 x, f32 z, struct geo *tile);
void cd_get_props_on_platform(struct prop *platform, s16 *propnums, s32 len);
s32 cd_000274e0_block(struct geoblock *tile, f32 x, f32 z, f32 width, struct prop *prop, struct collision *collision);
bool cd_000276c8_cyl(struct geocyl *tile, f32 x, f32 z, f32 width, struct prop *prop, struct collision *collision);