MCPcopy Create free account
hub / github.com/bfbbdecomp/bfbb / zEntPlayer_LoadCheckPoint

Function zEntPlayer_LoadCheckPoint

src/SB/Game/zEntPlayer.cpp:4956–4989  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

4954}
4955
4956void zEntPlayer_LoadCheckPoint()
4957{
4958 xEnt& p = globals.player.ent;
4959 xModelInstance& m = *p.model;
4960 xEntFrame& f = *p.frame;
4961 zCheckPoint& cp = globals.player.cp;
4962
4963 f.mat.pos = cp.pos;
4964 f.oldmat.pos = cp.pos;
4965 f.rot.angle = cp.rot;
4966 f.rot.axis = xVec3::create(0.0f, 1.0f, 0.0f);
4967
4968 xMat3x3Euler(&f.mat, f.rot.angle, 0, 0);
4969 *(xMat4x3*)(m.Mat) = f.mat;
4970 xCameraSetTargetMatrix(&globals.camera, xEntGetFrame(&globals.player.ent));
4971 xCameraSetTargetOMatrix(&globals.camera, &sCameraLastMat);
4972
4973 if (sPlayerDiedLastTime != 0)
4974 {
4975 sPlayerDiedLastTime = 0;
4976 zEntPlayer_SNDPlayStreamRandom(0x00, 0x01, ePlayerStreamSnd_EnterScene1,
4977 ePlayerStreamSnd_EnterScene3, 0.3f);
4978 zEntPlayer_SNDPlayStreamRandom(0x02, 0x04, ePlayerStreamSnd_EnterScene1,
4979 ePlayerStreamSnd_EnterScene4, 0.3f);
4980 zEntPlayer_SNDPlayStreamRandom(0x05, 0x0A, ePlayerStreamSnd_EnterScene1,
4981 ePlayerStreamSnd_EnterScene5, 0.3f);
4982 zEntPlayer_SNDPlayStreamRandom(0x0B, 0x19, ePlayerStreamSnd_EnterScene1,
4983 ePlayerStreamSnd_EnterScene6, 0.3f);
4984 zEntPlayer_SNDPlayStreamRandom(0x1A, 0x64, ePlayerStreamSnd_EnterScene1,
4985 ePlayerStreamSnd_EnterScene7, 0.3f);
4986 }
4987
4988 zCameraReset(&globals.camera);
4989}
4990
4991static void _SetupRumble(_tagePlayerSnd player_snd, _tagRumbleType type, float time)
4992{

Callers 1

zSceneResetFunction · 0.70

Calls 7

xMat3x3EulerFunction · 0.85
xCameraSetTargetMatrixFunction · 0.85
xEntGetFrameFunction · 0.85
xCameraSetTargetOMatrixFunction · 0.85
zCameraResetFunction · 0.85
createFunction · 0.50

Tested by

no test coverage detected