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

Function SavePlayer

Source/loadsave.cpp:994–1191  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

992}
993
994void SavePlayer(int i)
995{
996 PlayerStruct *pPlayer = &plr[i];
997
998 CopyInt(&pPlayer->_pmode, tbuff);
999 CopyBytes(&pPlayer->walkpath, MAX_PATH_LENGTH, tbuff);
1000 CopyBytes(&pPlayer->plractive, 1, tbuff);
1001 tbuff += 2; // Alignment
1002 CopyInt(&pPlayer->destAction, tbuff);
1003 CopyInt(&pPlayer->destParam1, tbuff);
1004 CopyInt(&pPlayer->destParam2, tbuff);
1005 CopyInt(&pPlayer->destParam3, tbuff);
1006 CopyInt(&pPlayer->destParam4, tbuff);
1007 CopyInt(&pPlayer->plrlevel, tbuff);
1008 CopyInt(&pPlayer->WorldX, tbuff);
1009 CopyInt(&pPlayer->WorldY, tbuff);
1010 CopyInt(&pPlayer->_px, tbuff);
1011 CopyInt(&pPlayer->_py, tbuff);
1012 CopyInt(&pPlayer->_ptargx, tbuff);
1013 CopyInt(&pPlayer->_ptargy, tbuff);
1014 CopyInt(&pPlayer->_pownerx, tbuff);
1015 CopyInt(&pPlayer->_pownery, tbuff);
1016 CopyInt(&pPlayer->_poldx, tbuff);
1017 CopyInt(&pPlayer->_poldy, tbuff);
1018 CopyInt(&pPlayer->_pxoff, tbuff);
1019 CopyInt(&pPlayer->_pyoff, tbuff);
1020 CopyInt(&pPlayer->_pxvel, tbuff);
1021 CopyInt(&pPlayer->_pyvel, tbuff);
1022 CopyInt(&pPlayer->_pdir, tbuff);
1023 CopyInt(&pPlayer->_nextdir, tbuff);
1024 CopyInt(&pPlayer->_pgfxnum, tbuff);
1025 tbuff += 4; // Skip pointer _pAnimData
1026 CopyInt(&pPlayer->_pAnimDelay, tbuff);
1027 CopyInt(&pPlayer->_pAnimCnt, tbuff);
1028 CopyInt(&pPlayer->_pAnimLen, tbuff);
1029 CopyInt(&pPlayer->_pAnimFrame, tbuff);
1030 CopyInt(&pPlayer->_pAnimWidth, tbuff);
1031 CopyInt(&pPlayer->_pAnimWidth2, tbuff);
1032 CopyInt(&pPlayer->_peflag, tbuff);
1033 CopyInt(&pPlayer->_plid, tbuff);
1034 CopyInt(&pPlayer->_pvid, tbuff);
1035
1036 CopyInt(&pPlayer->_pSpell, tbuff);
1037 CopyChar(&pPlayer->_pSplType, tbuff);
1038 CopyChar(&pPlayer->_pSplFrom, tbuff);
1039 tbuff += 2; // Alignment
1040 CopyInt(&pPlayer->_pTSpell, tbuff);
1041 CopyChar(&pPlayer->_pTSplType, tbuff);
1042 tbuff += 3; // Alignment
1043 CopyInt(&pPlayer->_pRSpell, tbuff);
1044 CopyChar(&pPlayer->_pRSplType, tbuff);
1045 tbuff += 3; // Alignment
1046 CopyInt(&pPlayer->_pSBkSpell, tbuff);
1047 CopyChar(&pPlayer->_pSBkSplType, tbuff);
1048 CopyBytes(&pPlayer->_pSplLvl, 64, tbuff);
1049 tbuff += 7; // Alignment
1050 CopyInt64(&pPlayer->_pMemSpells, tbuff);
1051 CopyInt64(&pPlayer->_pAblSpells, tbuff);

Callers 1

SaveGameFunction · 0.85

Calls 8

CopyIntFunction · 0.85
CopyBytesFunction · 0.85
CopyCharFunction · 0.85
CopyInt64Function · 0.85
CopyIntsFunction · 0.85
SaveItemsFunction · 0.85
SaveItemFunction · 0.85
CopyShortsFunction · 0.85

Tested by

no test coverage detected