void inCarUpdateFollow(PLAYERID followID, VEHICLEID withVehicleID) { if(playerInfo[g_myPlayerID].iAreWeInAVehicle) { INCAR_SYNC_DATA icSync; memset(&icSync, 0, sizeof(INCAR_SYNC_DATA)); icSync.VehicleID = withVehicleID; SendInCarFullSyncData(&icSync, 0, followID); AIM_SYNC_DATA aimSync; memset(&aimSync, 0, sizeof(AIM_SYNC_DATA)); SendAimSyncData(&aimSync, 0, 0, followID); } if(inCarUpdateTick && inCarUpdateTick < (GetTickCount() - 10000)) { if(!playerInfo[g_myPlayerID].iAreWeInAVehicle) { if(playerInfo[followID].incarData.VehicleID == (VEHICLEID)-1) return; SendEnterVehicleNotification((VEHICLEID)settings.iFollowingWithVehicleID, 0); playerInfo[g_myPlayerID].iAreWeInAVehicle = 1; inCarUpdateTick = 0; } inCarUpdateTick = GetTickCount(); } else { if(!playerInfo[g_myPlayerID].iAreWeInAVehicle) onFootUpdateFollow(followID); } }
// following functions void onFootUpdateAtNormalPos() { ONFOOT_SYNC_DATA ofSync; memset(&ofSync, 0, sizeof(ONFOOT_SYNC_DATA)); ofSync.byteHealth = (BYTE)settings.fPlayerHealth; ofSync.byteArmour = (BYTE)settings.fPlayerArmour; ofSync.fQuaternion[3] = settings.fNormalModeRot; ofSync.vecPos[0] = settings.fNormalModePos[0]; ofSync.vecPos[1] = settings.fNormalModePos[1]; ofSync.vecPos[2] = settings.fNormalModePos[2]; SendOnFootFullSyncData(&ofSync, 0, -1); AIM_SYNC_DATA aimSync; memset(&aimSync, 0, sizeof(AIM_SYNC_DATA)); playerInfo[g_myPlayerID].aimData.byteCamMode = 4; playerInfo[g_myPlayerID].aimData.vecAimf1[0] = 0.1f; playerInfo[g_myPlayerID].aimData.vecAimf1[1] = 0.1f; playerInfo[g_myPlayerID].aimData.vecAimf1[2] = 0.1f; playerInfo[g_myPlayerID].aimData.vecAimPos[0] = settings.fNormalModePos[0]; playerInfo[g_myPlayerID].aimData.vecAimPos[1] = settings.fNormalModePos[1]; playerInfo[g_myPlayerID].aimData.vecAimPos[2] = settings.fNormalModePos[2]; SendAimSyncData(0, 0, -1); }
void onFootUpdateFollow(PLAYERID followID) { ONFOOT_SYNC_DATA ofSync; memset(&ofSync, 0, sizeof(ONFOOT_SYNC_DATA)); SendOnFootFullSyncData(&ofSync, 0, followID); SendAimSyncData(0, 0, followID); }
// following functions void onFootUpdateAtNormalPos() { ONFOOT_SYNC_DATA ofSync; memset(&ofSync, 0, sizeof(ONFOOT_SYNC_DATA)); ofSync.byteHealth = 100; ofSync.fQuaternion[3] = settings.fNormalModeRot; ofSync.vecPos[0] = settings.fNormalModePos[0]; ofSync.vecPos[1] = settings.fNormalModePos[1]; ofSync.vecPos[2] = settings.fNormalModePos[2]; SendOnFootFullSyncData(&ofSync, 0, -1); AIM_SYNC_DATA aimSync; memset(&aimSync, 0, sizeof(AIM_SYNC_DATA)); aimSync.byteCamMode = 4; aimSync.vecAimf1[1] = 0.25f; SendAimSyncData(&aimSync, 0, 0, -1); }
void spectatorUpdate() { SPECTATOR_SYNC_DATA spSync; memset(&spSync, 0, sizeof(SPECTATOR_SYNC_DATA)); spSync.vecPos[0] = settings.fNormalModePos[0]; spSync.vecPos[1] = settings.fNormalModePos[1]; spSync.vecPos[2] = settings.fNormalModePos[2]; SendSpectatorData(&spSync); AIM_SYNC_DATA aimSync; memset(&aimSync, 0, sizeof(AIM_SYNC_DATA)); playerInfo[g_myPlayerID].aimData.byteCamMode = 4; playerInfo[g_myPlayerID].aimData.vecAimf1[0] = 0.1f; playerInfo[g_myPlayerID].aimData.vecAimf1[1] = 0.1f; playerInfo[g_myPlayerID].aimData.vecAimf1[2] = 0.1f; playerInfo[g_myPlayerID].aimData.vecAimPos[0] = settings.fNormalModePos[0]; playerInfo[g_myPlayerID].aimData.vecAimPos[1] = settings.fNormalModePos[1]; playerInfo[g_myPlayerID].aimData.vecAimPos[2] = settings.fNormalModePos[2]; SendAimSyncData(0, 0, -1); }