Math::Vector3d Actor::getPuckVector() const { Math::Vector3d forwardVec = getSimplePuckVector(); Set * currSet = g_grim->getCurrSet(); if (!currSet) return forwardVec; Sector *sector = currSet->findPointSector(_pos, Sector::WalkType); if (!sector) return forwardVec; else return sector->getProjectionToPuckVector(forwardVec); }
void Lua_V2::GetSectorName() { lua_Object xObj = lua_getparam(1); lua_Object yObj = lua_getparam(2); lua_Object zObj = lua_getparam(3); if (!lua_isnumber(xObj) || !lua_isnumber(yObj) || !lua_isnumber(zObj)) { lua_pushnil(); return; } float x, y, z; x = lua_getnumber(xObj); y = lua_getnumber(yObj); z = lua_getnumber(zObj); Math::Vector3d pos(x, y, z); Set *set = g_grim->getCurrSet(); Sector *sector = set->findPointSector(pos, Sector::NoneType); if (sector) { lua_pushstring(sector->getName()); } }