// getCheckpointTargetPosition(checkpointid) SQInteger CCheckpointNatives::GetTargetPosition(SQVM * pVM) { EntityId checkpointId; sq_getentity(pVM, -1, &checkpointId); CCheckpoint * pCheckpoint = g_pCheckpointManager->Get(checkpointId); if(pCheckpoint) { CVector3 vecTargetPosition; pCheckpoint->GetTargetPosition(vecTargetPosition); sq_newtable(pVM); sq_pushinteger(pVM, 0); sq_pushfloat(pVM, vecTargetPosition.fX); sq_createslot(pVM, -3); sq_pushinteger(pVM, 1); sq_pushfloat(pVM, vecTargetPosition.fY); sq_createslot(pVM, -3); sq_pushinteger(pVM, 2); sq_pushfloat(pVM, vecTargetPosition.fZ); sq_createslot(pVM, -3); return 1; } sq_pushbool(pVM, false); return 1; }
// getCheckpointTargetPosition(checkpointid) CVector3 CCheckpointModuleNatives::GetTargetPosition(EntityId checkpointId) { CCheckpoint * pCheckpoint = g_pCheckpointManager->Get(checkpointId); if(pCheckpoint) { CVector3 vecTargetPosition; pCheckpoint->GetTargetPosition(vecTargetPosition); return vecTargetPosition; } return CVector3(); }