2020-05-27 09:21:20 +02:00
|
|
|
#include "framework.h"
|
2019-11-21 07:43:34 +01:00
|
|
|
#include "Lara.h"
|
2020-08-14 17:54:25 -05:00
|
|
|
#include "lara_basic.h"
|
2020-08-08 15:15:15 -05:00
|
|
|
#include "lara_tests.h"
|
2020-08-09 19:18:29 -05:00
|
|
|
#include "lara_monkey.h"
|
2020-08-10 00:21:45 -05:00
|
|
|
#include "lara_crawl.h"
|
2020-08-13 19:53:13 -05:00
|
|
|
#include "lara_objects.h"
|
2020-08-11 03:55:34 -05:00
|
|
|
#include "lara_hang.h"
|
2020-08-14 04:08:10 -05:00
|
|
|
#include "lara_slide.h"
|
2019-11-18 07:48:35 +01:00
|
|
|
#include "inventory.h"
|
2020-08-09 22:09:14 -03:00
|
|
|
#include "lara_fire.h"
|
|
|
|
#include "lara_surface.h"
|
|
|
|
#include "lara_swim.h"
|
|
|
|
#include "lara_one_gun.h"
|
|
|
|
#include "lara_two_guns.h"
|
2019-11-21 07:43:34 +01:00
|
|
|
#include "laramisc.h"
|
2020-08-09 22:09:14 -03:00
|
|
|
#include "lara_climb.h"
|
2018-08-19 09:46:58 +02:00
|
|
|
|
2020-05-27 09:21:20 +02:00
|
|
|
#include "motorbike.h"
|
|
|
|
#include "cannon.h"
|
|
|
|
#include "quad.h"
|
|
|
|
#include "snowmobile.h"
|
|
|
|
#include "jeep.h"
|
|
|
|
#include "boat.h"
|
|
|
|
#include "upv.h"
|
|
|
|
#include "kayak.h"
|
|
|
|
#include "minecart.h"
|
2020-06-20 23:39:08 +02:00
|
|
|
using std::function;
|
2019-11-21 07:43:34 +01:00
|
|
|
|
2020-06-16 19:45:06 +02:00
|
|
|
extern Inventory g_Inventory;
|
2019-11-18 07:48:35 +01:00
|
|
|
|
2019-12-02 09:11:21 +01:00
|
|
|
short elevation = 57346;
|
2020-04-27 14:01:00 +02:00
|
|
|
LaraInfo Lara;
|
2020-04-23 19:22:01 +02:00
|
|
|
ITEM_INFO* LaraItem;
|
2020-05-28 15:17:34 +02:00
|
|
|
byte LaraNodeUnderwater[NUM_LARA_MESHES];
|
2019-12-02 06:39:51 +01:00
|
|
|
|
2020-05-28 15:17:34 +02:00
|
|
|
function<LaraRoutineFunction> lara_control_routines[NUM_LARA_STATES + 1] = {
|
2019-12-02 06:39:51 +01:00
|
|
|
lara_as_walk,
|
|
|
|
lara_as_run,
|
|
|
|
lara_as_stop,
|
|
|
|
lara_as_forwardjump,
|
2020-08-14 17:54:25 -05:00
|
|
|
lara_void_func,//4
|
|
|
|
lara_as_fastback,//5
|
|
|
|
lara_as_turn_r,//6
|
|
|
|
lara_as_turn_l,//7
|
|
|
|
lara_as_death,//8
|
2019-12-02 06:39:51 +01:00
|
|
|
lara_as_fastfall,
|
|
|
|
lara_as_hang,
|
|
|
|
lara_as_reach,
|
|
|
|
lara_as_splat,
|
|
|
|
lara_as_tread,
|
|
|
|
lara_void_func,
|
2020-08-14 17:54:25 -05:00
|
|
|
lara_as_compress,//15
|
|
|
|
lara_as_back,//16
|
|
|
|
lara_as_swim,//17
|
|
|
|
lara_as_glide,//18
|
|
|
|
lara_as_null,//19
|
|
|
|
lara_as_fastturn,//20
|
|
|
|
lara_as_stepright,//21
|
|
|
|
lara_as_stepleft,//22
|
2019-12-02 06:39:51 +01:00
|
|
|
lara_void_func,
|
2020-08-14 04:08:10 -05:00
|
|
|
lara_as_slide,//24
|
|
|
|
lara_as_backjump,//25
|
|
|
|
lara_as_rightjump,//26
|
|
|
|
lara_as_leftjump,//27
|
|
|
|
lara_as_upjump,//28
|
|
|
|
lara_as_fallback,//29
|
2020-08-11 03:55:34 -05:00
|
|
|
lara_as_hangleft,//30
|
|
|
|
lara_as_hangright,//31
|
2020-08-14 04:08:10 -05:00
|
|
|
lara_as_slideback,//32
|
2019-12-02 06:39:51 +01:00
|
|
|
lara_as_surftread,
|
|
|
|
lara_as_surfswim,
|
|
|
|
lara_as_dive,
|
2020-08-13 19:53:13 -05:00
|
|
|
lara_as_pushblock,//36
|
|
|
|
lara_as_pullblock,//37
|
|
|
|
lara_as_ppready,//38
|
|
|
|
lara_as_pickup,//39
|
|
|
|
lara_as_switchon,//40
|
|
|
|
lara_as_switchoff,//41
|
|
|
|
lara_as_usekey,//42
|
|
|
|
lara_as_usepuzzle,//43
|
2020-08-14 17:54:25 -05:00
|
|
|
lara_as_uwdeath,//44
|
|
|
|
lara_void_func,//45
|
|
|
|
lara_as_special,//46
|
|
|
|
lara_as_surfback,//47
|
|
|
|
lara_as_surfleft,//48
|
|
|
|
lara_as_surfright,//49
|
|
|
|
lara_void_func,//50
|
|
|
|
lara_void_func,//51
|
|
|
|
lara_as_swandive,//52
|
|
|
|
lara_as_fastdive,//53
|
|
|
|
lara_as_gymnast,//54
|
2019-12-02 06:39:51 +01:00
|
|
|
lara_as_waterout,
|
|
|
|
lara_as_climbstnc,
|
|
|
|
lara_as_climbing,
|
|
|
|
lara_as_climbleft,
|
|
|
|
lara_as_climbend,
|
|
|
|
lara_as_climbright,
|
2020-08-14 17:54:25 -05:00
|
|
|
lara_as_climbdown,//
|
2019-12-02 06:39:51 +01:00
|
|
|
lara_void_func,
|
|
|
|
lara_void_func,
|
|
|
|
lara_void_func,
|
2020-08-14 17:54:25 -05:00
|
|
|
lara_as_wade,//65
|
|
|
|
lara_as_waterroll,//66
|
|
|
|
lara_as_pickupflare,//67
|
|
|
|
lara_void_func,//68
|
|
|
|
lara_void_func,//69
|
2020-08-14 04:08:10 -05:00
|
|
|
lara_as_deathslide,//70
|
2020-08-10 00:21:45 -05:00
|
|
|
lara_as_duck,//71
|
|
|
|
lara_as_crouch_roll,//72
|
2019-12-02 06:39:51 +01:00
|
|
|
lara_as_dash,
|
|
|
|
lara_as_dashdive,
|
|
|
|
lara_as_hang2,
|
|
|
|
lara_as_monkeyswing,
|
|
|
|
lara_as_monkeyl,
|
|
|
|
lara_as_monkeyr,
|
|
|
|
lara_as_monkey180,
|
2020-08-10 00:21:45 -05:00
|
|
|
lara_as_all4s,//80
|
|
|
|
lara_as_crawl,//81
|
2019-12-02 06:39:51 +01:00
|
|
|
lara_as_hangturnl,
|
|
|
|
lara_as_hangturnr,
|
2020-08-10 00:21:45 -05:00
|
|
|
lara_as_all4turnl,//84
|
|
|
|
lara_as_all4turnr,//85
|
|
|
|
lara_as_crawlb,//86
|
2019-12-02 06:39:51 +01:00
|
|
|
lara_as_null,
|
|
|
|
lara_as_null,
|
|
|
|
lara_as_controlled,
|
|
|
|
lara_as_ropel,
|
|
|
|
lara_as_roper,
|
|
|
|
lara_as_controlled,
|
|
|
|
lara_as_controlled,
|
|
|
|
lara_as_controlled,
|
|
|
|
lara_as_controlledl,
|
|
|
|
lara_as_controlledl,
|
|
|
|
lara_as_controlled,
|
2020-08-13 19:53:13 -05:00
|
|
|
lara_as_pickup,//98
|
|
|
|
lara_as_null,//99
|
|
|
|
lara_as_null,//100
|
|
|
|
lara_as_null,//101
|
|
|
|
lara_as_poleleft,//102
|
|
|
|
lara_as_poleright,//103
|
|
|
|
lara_as_pulley,//104
|
2020-08-10 00:21:45 -05:00
|
|
|
lara_as_duckl,//105
|
|
|
|
lara_as_duckr,//106
|
2020-08-11 03:55:34 -05:00
|
|
|
lara_as_extcornerl,//107
|
|
|
|
lara_as_extcornerr,//108
|
|
|
|
lara_as_intcornerl,//109
|
|
|
|
lara_as_intcornerr,//110
|
2020-08-13 19:53:13 -05:00
|
|
|
lara_as_rope,//111
|
|
|
|
lara_as_climbrope,//112
|
|
|
|
lara_as_climbroped,//113
|
|
|
|
lara_as_rope,//114
|
|
|
|
lara_as_rope,//115
|
2019-12-02 06:39:51 +01:00
|
|
|
lara_void_func,
|
|
|
|
lara_as_controlled,
|
|
|
|
lara_as_swimcheat,
|
2020-08-13 19:53:13 -05:00
|
|
|
lara_as_trpose,//119
|
|
|
|
lara_as_null,//120
|
|
|
|
lara_as_trwalk,//121
|
|
|
|
lara_as_trfall,//122
|
|
|
|
lara_as_trfall,//123
|
|
|
|
lara_as_null,//124
|
|
|
|
lara_as_null,//125
|
|
|
|
lara_as_switchon,//126
|
|
|
|
lara_as_null,//127
|
|
|
|
lara_as_parallelbars,//128
|
|
|
|
lara_as_pbleapoff,//129
|
|
|
|
lara_as_null,//130
|
|
|
|
lara_as_null,//131
|
|
|
|
lara_as_null,//132
|
|
|
|
lara_as_null,//133
|
|
|
|
lara_as_null,//134
|
|
|
|
lara_as_null,//135
|
|
|
|
lara_as_null,//136
|
|
|
|
lara_as_null,//137
|
|
|
|
lara_as_null,//138
|
2020-08-11 03:55:34 -05:00
|
|
|
lara_as_hang_feet,//139
|
|
|
|
lara_as_hang_feet_shimmyr,//140
|
|
|
|
lara_as_hang_feet_shimmyl,//141
|
|
|
|
lara_as_hang_feet_inRcorner,//142
|
|
|
|
lara_as_hang_feet_inLcorner,//143
|
|
|
|
lara_as_hang_feet_outRcorner,//144
|
|
|
|
lara_as_hang_feet_outLcorner,//145
|
2020-06-13 14:51:13 -05:00
|
|
|
lara_as_controlledl,
|
2020-07-23 23:26:19 +02:00
|
|
|
lara_as_null,
|
|
|
|
lara_as_null,
|
|
|
|
lara_as_null,
|
|
|
|
lara_as_stepoff_left,
|
|
|
|
lara_as_stepoff_right
|
2019-12-02 06:39:51 +01:00
|
|
|
};
|
2020-05-28 15:17:34 +02:00
|
|
|
function<LaraRoutineFunction> lara_collision_routines[NUM_LARA_STATES + 1] = {
|
2019-12-02 06:39:51 +01:00
|
|
|
lara_col_walk,
|
|
|
|
lara_col_run,
|
|
|
|
lara_col_stop,
|
|
|
|
lara_col_forwardjump,
|
|
|
|
lara_col_pose,
|
|
|
|
lara_col_fastback,
|
|
|
|
lara_col_turn_r,
|
|
|
|
lara_col_turn_l,
|
|
|
|
lara_col_death,
|
|
|
|
lara_col_fastfall,
|
|
|
|
lara_col_hang,
|
|
|
|
lara_col_reach,
|
|
|
|
lara_col_splat,
|
|
|
|
lara_col_tread,
|
|
|
|
lara_col_land,
|
|
|
|
lara_col_compress,
|
|
|
|
lara_col_back,
|
|
|
|
lara_col_swim,
|
|
|
|
lara_col_glide,
|
|
|
|
lara_default_col,
|
|
|
|
lara_col_fastturn,
|
|
|
|
lara_col_stepright,
|
|
|
|
lara_col_stepleft,
|
|
|
|
lara_col_roll2,
|
|
|
|
lara_col_slide,
|
|
|
|
lara_col_backjump,
|
|
|
|
lara_col_rightjump,
|
|
|
|
lara_col_leftjump,
|
|
|
|
lara_col_upjump,
|
|
|
|
lara_col_fallback,
|
|
|
|
lara_col_hangleft,
|
|
|
|
lara_col_hangright,
|
|
|
|
lara_col_slideback,
|
|
|
|
lara_col_surftread,
|
|
|
|
lara_col_surfswim,
|
|
|
|
lara_col_dive,
|
|
|
|
lara_default_col,
|
|
|
|
lara_default_col,
|
|
|
|
lara_default_col,
|
|
|
|
lara_default_col,
|
|
|
|
lara_default_col,
|
|
|
|
lara_default_col,
|
|
|
|
lara_default_col,
|
|
|
|
lara_default_col,
|
|
|
|
lara_col_uwdeath,
|
|
|
|
lara_col_roll,
|
|
|
|
lara_void_func,
|
|
|
|
lara_col_surfback,
|
|
|
|
lara_col_surfleft,
|
|
|
|
lara_col_surfright,
|
|
|
|
lara_void_func,
|
|
|
|
lara_void_func,
|
|
|
|
lara_col_swandive,
|
|
|
|
lara_col_fastdive,
|
|
|
|
lara_default_col,
|
|
|
|
lara_default_col,
|
|
|
|
lara_col_climbstnc,
|
|
|
|
lara_col_climbing,
|
|
|
|
lara_col_climbleft,
|
|
|
|
lara_col_climbend,
|
|
|
|
lara_col_climbright,
|
|
|
|
lara_col_climbdown,
|
|
|
|
lara_void_func,
|
|
|
|
lara_void_func,
|
|
|
|
lara_void_func,
|
|
|
|
lara_col_wade,
|
|
|
|
lara_col_waterroll,
|
|
|
|
lara_default_col,
|
|
|
|
lara_void_func,
|
|
|
|
lara_void_func,
|
|
|
|
lara_void_func,
|
|
|
|
lara_col_duck,
|
2020-08-10 00:21:45 -05:00
|
|
|
lara_col_crouch_roll,
|
2019-12-02 06:39:51 +01:00
|
|
|
lara_col_dash,
|
|
|
|
lara_col_dashdive,
|
|
|
|
lara_col_hang2,
|
|
|
|
lara_col_monkeyswing,
|
|
|
|
lara_col_monkeyl,
|
|
|
|
lara_col_monkeyr,
|
|
|
|
lara_col_monkey180,
|
|
|
|
lara_col_all4s,
|
|
|
|
lara_col_crawl,
|
|
|
|
lara_col_hangturnlr,
|
|
|
|
lara_col_hangturnlr,
|
|
|
|
lara_col_all4turnlr,
|
|
|
|
lara_col_all4turnlr,
|
|
|
|
lara_col_crawlb,
|
|
|
|
lara_void_func,
|
|
|
|
lara_col_crawl2hang,
|
|
|
|
lara_default_col,
|
|
|
|
lara_void_func,
|
|
|
|
lara_void_func,
|
|
|
|
lara_default_col,
|
|
|
|
lara_void_func,
|
|
|
|
lara_void_func,
|
|
|
|
lara_col_turnswitch,
|
|
|
|
lara_void_func,
|
|
|
|
lara_void_func,
|
|
|
|
lara_default_col,
|
|
|
|
lara_col_polestat,
|
|
|
|
lara_col_poleup,
|
|
|
|
lara_col_poledown,
|
|
|
|
lara_void_func,
|
|
|
|
lara_void_func,
|
|
|
|
lara_default_col,
|
|
|
|
lara_col_ducklr,
|
|
|
|
lara_col_ducklr,
|
|
|
|
lara_default_col,
|
|
|
|
lara_default_col,
|
|
|
|
lara_default_col,
|
|
|
|
lara_default_col,
|
|
|
|
lara_col_rope,
|
|
|
|
lara_void_func,
|
|
|
|
lara_void_func,
|
|
|
|
lara_col_ropefwd,
|
|
|
|
lara_col_ropefwd,
|
|
|
|
lara_void_func,
|
|
|
|
lara_void_func,
|
|
|
|
lara_col_swim,
|
|
|
|
lara_default_col,
|
|
|
|
lara_default_col,
|
|
|
|
lara_default_col,
|
|
|
|
lara_default_col,
|
|
|
|
lara_default_col,
|
|
|
|
lara_default_col,
|
|
|
|
lara_default_col,
|
|
|
|
lara_default_col,
|
|
|
|
lara_default_col,
|
|
|
|
lara_default_col,
|
|
|
|
lara_default_col,
|
|
|
|
lara_void_func,
|
|
|
|
lara_void_func,
|
|
|
|
lara_void_func,
|
|
|
|
lara_void_func,
|
|
|
|
lara_void_func,
|
|
|
|
lara_void_func,
|
|
|
|
lara_void_func,
|
|
|
|
lara_void_func,
|
2020-05-23 15:59:18 -05:00
|
|
|
lara_void_func,
|
|
|
|
lara_col_hang_feet,
|
|
|
|
lara_col_hang_feet_shimmyr,
|
|
|
|
lara_col_hang_feet_shimmyl,
|
2020-05-24 03:10:00 -05:00
|
|
|
lara_default_col,
|
|
|
|
lara_default_col,
|
|
|
|
lara_default_col,
|
|
|
|
lara_default_col,
|
2020-06-13 14:51:13 -05:00
|
|
|
lara_void_func,
|
2020-07-23 23:26:19 +02:00
|
|
|
lara_void_func,
|
|
|
|
lara_void_func,
|
|
|
|
lara_void_func,
|
|
|
|
lara_default_col,
|
|
|
|
lara_default_col
|
2019-12-02 06:39:51 +01:00
|
|
|
};
|
|
|
|
|
2020-08-09 00:54:57 -05:00
|
|
|
void LaraAboveWater(ITEM_INFO* item, COLL_INFO* coll) //hmmmm
|
2018-09-16 15:05:16 +02:00
|
|
|
{
|
|
|
|
coll->old.x = item->pos.xPos;
|
|
|
|
coll->old.y = item->pos.yPos;
|
|
|
|
coll->old.z = item->pos.zPos;
|
|
|
|
coll->oldAnimState = item->currentAnimState;
|
|
|
|
coll->enableBaddiePush = true;
|
|
|
|
coll->enableSpaz = true;
|
|
|
|
coll->slopesAreWalls = false;
|
|
|
|
coll->slopesArePits = false;
|
|
|
|
coll->lavaIsPit = false;
|
|
|
|
coll->oldAnimNumber = item->animNumber;
|
|
|
|
coll->oldFrameNumber = item->frameNumber;
|
2020-05-19 13:20:44 +02:00
|
|
|
coll->radius = LARA_RAD;
|
|
|
|
coll->trigger = NULL;
|
2018-09-16 15:05:16 +02:00
|
|
|
|
2020-05-28 15:17:34 +02:00
|
|
|
if ((TrInput & IN_LOOK) && Lara.ExtraAnim == NO_ITEM && Lara.look)
|
2018-11-12 20:15:55 +01:00
|
|
|
LookLeftRight();
|
2018-09-16 15:05:16 +02:00
|
|
|
else
|
|
|
|
ResetLook();
|
|
|
|
|
|
|
|
Lara.look = true;
|
|
|
|
|
2018-11-24 09:39:37 +01:00
|
|
|
// Process Vehicles
|
2020-04-27 14:01:00 +02:00
|
|
|
if (Lara.Vehicle != NO_ITEM)
|
2018-09-16 15:05:16 +02:00
|
|
|
{
|
2020-07-21 09:56:47 +02:00
|
|
|
switch (g_Level.Items[Lara.Vehicle].objectNumber)
|
2018-09-16 15:05:16 +02:00
|
|
|
{
|
2020-06-07 22:24:22 +02:00
|
|
|
case ID_QUAD:
|
|
|
|
if (QuadBikeControl())
|
|
|
|
return;
|
|
|
|
break;
|
2019-06-16 21:59:20 +02:00
|
|
|
|
2020-06-07 22:24:22 +02:00
|
|
|
case ID_JEEP:
|
|
|
|
if (JeepControl())
|
|
|
|
return;
|
|
|
|
break;
|
2019-06-16 21:59:20 +02:00
|
|
|
|
2020-06-07 22:24:22 +02:00
|
|
|
case ID_MOTORBIKE:
|
|
|
|
if (MotorbikeControl())
|
|
|
|
return;
|
|
|
|
break;
|
2020-05-19 13:20:44 +02:00
|
|
|
|
2020-06-07 22:24:22 +02:00
|
|
|
case ID_KAYAK:
|
|
|
|
if (KayakControl())
|
|
|
|
return;
|
|
|
|
break;
|
2019-06-16 21:59:20 +02:00
|
|
|
|
2020-06-07 22:24:22 +02:00
|
|
|
case ID_SNOWMOBILE:
|
|
|
|
if (SkidooControl())
|
|
|
|
return;
|
|
|
|
break;
|
2019-11-20 14:12:21 +01:00
|
|
|
|
2020-05-27 09:21:20 +02:00
|
|
|
//case ID_SPEEDBOAT:
|
|
|
|
// if (BoatControl())
|
|
|
|
// return;
|
|
|
|
// break;
|
|
|
|
|
|
|
|
//case ID_RUBBERBOAT:
|
|
|
|
// if (RubberBoatControl())
|
|
|
|
// return;
|
|
|
|
// break;
|
|
|
|
|
2019-12-02 14:49:19 +01:00
|
|
|
//case ID_UPV:
|
|
|
|
// if (SubControl())
|
|
|
|
// return;
|
|
|
|
// break;
|
|
|
|
|
|
|
|
//case ID_MINECART:
|
|
|
|
// if (MineCartControl())
|
|
|
|
// return;
|
|
|
|
// break;
|
2019-06-16 21:59:20 +02:00
|
|
|
|
2020-06-07 22:24:22 +02:00
|
|
|
default:
|
|
|
|
break;
|
2018-09-16 15:05:16 +02:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
// Handle current Lara status
|
2020-05-28 15:17:34 +02:00
|
|
|
lara_control_routines[item->currentAnimState](item, coll);
|
2018-09-16 15:05:16 +02:00
|
|
|
|
2020-05-19 13:20:44 +02:00
|
|
|
if (item->pos.zRot >= -ANGLE(1.0f) && item->pos.zRot <= ANGLE(1.0f))
|
2020-06-07 22:24:22 +02:00
|
|
|
item->pos.zRot = 0;
|
2020-05-19 13:20:44 +02:00
|
|
|
else if (item->pos.zRot < -ANGLE(1.0f))
|
|
|
|
item->pos.zRot += ANGLE(1.0f);
|
2018-09-16 15:05:16 +02:00
|
|
|
else
|
2020-05-19 13:20:44 +02:00
|
|
|
item->pos.zRot -= ANGLE(1.0f);
|
2018-09-16 15:05:16 +02:00
|
|
|
|
2020-05-19 13:20:44 +02:00
|
|
|
if (Lara.turnRate >= -ANGLE(2.0f) && Lara.turnRate <= ANGLE(2.0f))
|
2020-06-07 22:24:22 +02:00
|
|
|
Lara.turnRate = 0;
|
2020-05-19 13:20:44 +02:00
|
|
|
else if (Lara.turnRate < -ANGLE(2.0f))
|
|
|
|
Lara.turnRate += ANGLE(2.0f);
|
2018-09-16 15:05:16 +02:00
|
|
|
else
|
2020-05-19 13:20:44 +02:00
|
|
|
Lara.turnRate -= ANGLE(2.0f);
|
2018-09-16 15:05:16 +02:00
|
|
|
item->pos.yRot += Lara.turnRate;
|
|
|
|
|
|
|
|
// Animate Lara
|
|
|
|
AnimateLara(item);
|
|
|
|
|
2020-05-28 15:17:34 +02:00
|
|
|
if (Lara.ExtraAnim == NO_ITEM)
|
2019-06-18 21:21:11 +02:00
|
|
|
{
|
|
|
|
// Check for collision with items
|
|
|
|
LaraBaddieCollision(item, coll);
|
2018-09-16 15:05:16 +02:00
|
|
|
|
2019-06-18 21:21:11 +02:00
|
|
|
// Handle Lara collision
|
2020-04-27 14:01:00 +02:00
|
|
|
if (Lara.Vehicle == NO_ITEM)
|
2020-05-28 15:17:34 +02:00
|
|
|
lara_collision_routines[item->currentAnimState](item, coll);
|
2019-06-18 21:21:11 +02:00
|
|
|
}
|
2018-09-16 15:05:16 +02:00
|
|
|
|
2020-06-07 22:24:22 +02:00
|
|
|
UpdateLaraRoom(item, -LARA_HITE / 2);
|
2018-09-16 15:05:16 +02:00
|
|
|
|
2018-11-15 18:39:13 +01:00
|
|
|
//if (Lara.gunType == WEAPON_CROSSBOW && !LaserSight)
|
|
|
|
// TrInput &= ~IN_ACTION;
|
2018-09-16 15:05:16 +02:00
|
|
|
|
|
|
|
// Handle weapons
|
|
|
|
LaraGun();
|
|
|
|
|
|
|
|
// Test if there's a trigger
|
2019-12-11 18:07:27 +01:00
|
|
|
TestTriggers(coll->trigger, FALSE, 0);
|
2018-09-16 15:05:16 +02:00
|
|
|
}
|