MCPcopy Create free account
hub / github.com/TombEngine/TombEngine / LaraCollideStopMonkey

Function LaraCollideStopMonkey

TombEngine/Game/Lara/lara_collide.cpp:330–364  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

328}
329
330void LaraCollideStopMonkey(ItemInfo* item, CollisionInfo* coll)
331{
332 switch (coll->Setup.PrevState)
333 {
334 case LS_MONKEY_IDLE:
335 case LS_MONKEY_TURN_LEFT:
336 case LS_MONKEY_TURN_RIGHT:
337 item->Animation.AnimObjectID = coll->Setup.PrevAnimObjectID;
338 item->Animation.AnimNumber = coll->Setup.PrevAnimNumber;
339 item->Animation.FrameNumber = coll->Setup.PrevFrameNumber;
340 item->Animation.ActiveState = coll->Setup.PrevState;
341
342 if (IsHeld(In::Left))
343 item->Animation.TargetState = LS_MONKEY_TURN_LEFT;
344 else if (IsHeld(In::Right))
345 item->Animation.TargetState = LS_MONKEY_TURN_RIGHT;
346 else
347 item->Animation.TargetState = LS_MONKEY_IDLE;
348
349 AnimateItem(item);
350 break;
351
352 default:
353 item->Animation.ActiveState = LS_MONKEY_IDLE;
354 item->Animation.TargetState = LS_MONKEY_IDLE;
355
356 if (item->Animation.AnimNumber != LA_MONKEY_IDLE)
357 {
358 item->Animation.AnimNumber = LA_MONKEY_IDLE;
359 item->Animation.FrameNumber = 0;
360 }
361
362 break;
363 }
364}
365
366void LaraSnapToEdgeOfBlock(ItemInfo* item, CollisionInfo* coll, short angle)
367{

Callers 4

lara_col_monkey_forwardFunction · 0.85
lara_col_monkey_backFunction · 0.85

Calls 2

IsHeldFunction · 0.85
AnimateItemFunction · 0.85

Tested by

no test coverage detected