本文整理汇总了C++中Sector::getName方法的典型用法代码示例。如果您正苦于以下问题:C++ Sector::getName方法的具体用法?C++ Sector::getName怎么用?C++ Sector::getName使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Sector
的用法示例。
在下文中一共展示了Sector::getName方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: L1_IsActorInSector
void L1_IsActorInSector() {
lua_Object actorObj = lua_getparam(1);
lua_Object nameObj = lua_getparam(2);
if (!lua_isuserdata(actorObj) || lua_tag(actorObj) != MKTAG('A','C','T','R'))
return;
if (!lua_isstring(nameObj)) {
lua_pushnil();
return;
}
Actor *actor = getactor(actorObj);
const char *name = lua_getstring(nameObj);
int numSectors = g_grim->getCurrScene()->getSectorCount();
for (int i = 0; i < numSectors; i++) {
Sector *sector = g_grim->getCurrScene()->getSectorBase(i);
if (strstr(sector->getName(), name)) {
if (sector->isPointInSector(actor->getPos())) {
lua_pushnumber(sector->getSectorId());
lua_pushstring(sector->getName());
lua_pushnumber(sector->getType());
return;
}
}
}
lua_pushnil();
}
示例2: L1_IsPointInSector
void L1_IsPointInSector() {
lua_Object xObj = lua_getparam(1);
lua_Object yObj = lua_getparam(2);
lua_Object zObj = lua_getparam(3);
lua_Object nameObj = lua_getparam(4);
if (!lua_isstring(nameObj)) {
lua_pushnil();
return;
}
const char *name = lua_getstring(nameObj);
float x = lua_getnumber(xObj);
float y = lua_getnumber(yObj);
float z = lua_getnumber(zObj);
Graphics::Vector3d pos(x, y, z);
int numSectors = g_grim->getCurrScene()->getSectorCount();
for (int i = 0; i < numSectors; i++) {
Sector *sector = g_grim->getCurrScene()->getSectorBase(i);
if (strstr(sector->getName(), name)) {
if (sector->isPointInSector(pos)) {
lua_pushnumber(sector->getSectorId());
lua_pushstring(sector->getName());
lua_pushnumber(sector->getType());
return;
}
}
}
lua_pushnil();
}
示例3: L1_MakeSectorActive
void L1_MakeSectorActive() {
lua_Object sectorObj = lua_getparam(1);
if (!lua_isnumber(sectorObj) && !lua_isstring(sectorObj))
return;
// FIXME: This happens on initial load. Are we initting something in the wrong order?
if (!g_grim->getCurrScene()) {
warning("!!!! Trying to call MakeSectorActive without a scene");
return;
}
bool visible = !lua_isnil(lua_getparam(2));
int numSectors = g_grim->getCurrScene()->getSectorCount();
if (lua_isstring(sectorObj)) {
const char *name = lua_getstring(sectorObj);
for (int i = 0; i < numSectors; i++) {
Sector *sector = g_grim->getCurrScene()->getSectorBase(i);
if (strmatch(sector->getName(), name)) {
sector->setVisible(visible);
return;
}
}
} else if (lua_isnumber(sectorObj)) {
int id = (int)lua_getnumber(sectorObj);
for (int i = 0; i < numSectors; i++) {
Sector *sector = g_grim->getCurrScene()->getSectorBase(i);
if (sector->getSectorId() == id) {
sector->setVisible(visible);
return;
}
}
}
}
示例4: L1_GetPointSector
/* Find the sector (of any type) which contains
* the requested coordinate (x,y,z).
*/
void L1_GetPointSector() {
lua_Object xObj = lua_getparam(1);
lua_Object yObj = lua_getparam(2);
lua_Object zObj = lua_getparam(3);
lua_Object typeObj = lua_getparam(4);
Sector::SectorType sectorType;
if (!lua_isnumber(xObj) || !lua_isnumber(yObj) || !lua_isnumber(zObj)) {
lua_pushnil();
return;
}
if (lua_isnil(typeObj))
sectorType = Sector::WalkType;
else
sectorType = (Sector::SectorType)(int)lua_getnumber(typeObj);
float x = lua_getnumber(xObj);
float y = lua_getnumber(yObj);
float z = lua_getnumber(zObj);
Graphics::Vector3d point(x, y, z);
Sector *result = g_grim->getCurrScene()->findPointSector(point, sectorType);
if (result) {
lua_pushnumber(result->getSectorId());
lua_pushstring(const_cast<char *>(result->getName()));
lua_pushnumber(result->getType());
} else {
lua_pushnil();
}
}
示例5:
Sector *Set::getSector(const Common::String &name, const Math::Vector3d &pos) {
for (int i = 0; i < _numSectors; i++) {
Sector *sector = _sectors[i];
if (strstr(sector->getName(), name.c_str()) && sector->isPointInSector(pos)) {
return sector;
}
}
return NULL;
}
示例6: removeSector
void Sector::removeSector(string sectorName){
Sector* tmp;
for(vector<Sector*>::iterator it = _children.begin();it!=_children.end();++it){
tmp = *it;
if (tmp->getName().compare(sectorName)==0) {
_children.erase(it);
tmp->setSuperior(NULL);
tmp->release();
break;
}
}
tmp=NULL;
}
示例7: L1_GetSectorOppositeEdge
void L1_GetSectorOppositeEdge() {
lua_Object actorObj = lua_getparam(1);
lua_Object nameObj = lua_getparam(2);
if (!lua_isuserdata(actorObj) || lua_tag(actorObj) != MKTAG('A','C','T','R'))
return;
if (!lua_isstring(nameObj)) {
lua_pushnil();
return;
}
Actor *actor = getactor(actorObj);
const char *name = lua_getstring(nameObj);
int numSectors = g_grim->getCurrScene()->getSectorCount();
for (int i = 0; i < numSectors; i++) {
Sector *sector = g_grim->getCurrScene()->getSectorBase(i);
if (strmatch(sector->getName(), name)) {
if (sector->getNumVertices() != 4)
warning("GetSectorOppositeEdge(): cheat box with %d (!= 4) edges!", sector->getNumVertices());
Graphics::Vector3d* vertices = sector->getVertices();
Sector::ExitInfo e;
sector->getExitInfo(actor->getPos(), -actor->getPuckVector(), &e);
float frac = (e.exitPoint - vertices[e.edgeVertex + 1]).magnitude() / e.edgeDir.magnitude();
e.edgeVertex -= 2;
if (e.edgeVertex < 0)
e.edgeVertex += sector->getNumVertices();
Graphics::Vector3d edge = vertices[e.edgeVertex + 1] - vertices[e.edgeVertex];
Graphics::Vector3d p = vertices[e.edgeVertex] + edge * frac;
lua_pushnumber(p.x());
lua_pushnumber(p.y());
lua_pushnumber(p.z());
return;
}
}
lua_pushnil();
}
示例8: pos
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());
}
}
示例9: L1_GetActorSector
void L1_GetActorSector() {
lua_Object actorObj = lua_getparam(1);
lua_Object typeObj = lua_getparam(2);
if (!lua_isuserdata(actorObj) || lua_tag(actorObj) != MKTAG('A','C','T','R'))
return;
if (!lua_isnumber(typeObj))
return;
Actor *actor = getactor(actorObj);
Sector::SectorType sectorType = (Sector::SectorType)(int)lua_getnumber(typeObj);
Graphics::Vector3d pos = actor->getPos();
Sector *result = g_grim->getCurrScene()->findPointSector(pos, sectorType);
if (result) {
lua_pushnumber(result->getSectorId());
lua_pushstring(const_cast<char *>(result->getName()));
lua_pushnumber(result->getType());
} else {
lua_pushnil();
}
}
示例10: main
int main(void) {
MyManager * mgr = new MyManager();
Sector* s = new Sector("root",mgr);
MyFunc* f = new MyFunc(s);
s->addFunction(f);
Command* cmd = new Command("MyFunc");
s->sendCommand(cmd);
cmd->release();
Request* req = new Request("");
s->sendRequest(req);
req->release();
cout<<s->getName()<<endl;
f->release();
s->release();
mgr->release();
return EXIT_SUCCESS;
}