| 992 | } |
| 993 | |
| 994 | void 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); |