MCPcopy Create free account
hub / github.com/diasurgical/devilution / StartPlrBlock

Function StartPlrBlock

Source/player.cpp:1508–1529  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1506}
1507
1508void StartPlrBlock(int pnum, int dir)
1509{
1510 if ((DWORD)pnum >= MAX_PLRS) {
1511 app_fatal("StartPlrBlock: illegal player %d", pnum);
1512 }
1513
1514 if (plr[pnum]._pInvincible && !plr[pnum]._pHitPoints && pnum == myplr) {
1515 SyncPlrKill(pnum, -1);
1516 return;
1517 }
1518
1519 PlaySfxLoc(IS_ISWORD, plr[pnum].WorldX, plr[pnum].WorldY);
1520
1521 if (!(plr[pnum]._pGFXLoad & PFILE_BLOCK)) {
1522 LoadPlrGFX(pnum, PFILE_BLOCK);
1523 }
1524 NewPlrAnim(pnum, plr[pnum]._pBAnim[dir], plr[pnum]._pBFrames, 2, plr[pnum]._pBWidth);
1525
1526 plr[pnum]._pmode = PM_BLOCK;
1527 FixPlayerLocation(pnum, dir);
1528 SetPlayerOld(pnum);
1529}
1530
1531void StartSpell(int pnum, int d, int cx, int cy)
1532{

Callers 4

M_TryH2HHitFunction · 0.85
PlayerMHitFunction · 0.85
Plr2PlrMHitFunction · 0.85
PlrHitPlrFunction · 0.85

Calls 7

app_fatalFunction · 0.85
SyncPlrKillFunction · 0.85
PlaySfxLocFunction · 0.85
LoadPlrGFXFunction · 0.85
NewPlrAnimFunction · 0.85
FixPlayerLocationFunction · 0.85
SetPlayerOldFunction · 0.85

Tested by

no test coverage detected