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