本文整理汇总了C++中THMap::getNodeOwner方法的典型用法代码示例。如果您正苦于以下问题:C++ THMap::getNodeOwner方法的具体用法?C++ THMap::getNodeOwner怎么用?C++ THMap::getNodeOwner使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类THMap
的用法示例。
在下文中一共展示了THMap::getNodeOwner方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: l_map_getcellflags
/**
* Get the value of all cell flags at a position.
* @param L Lua context.
* @return Number of results of the call.
*/
static int l_map_getcellflags(lua_State *L)
{
THMap* pMap = luaT_testuserdata<THMap>(L);
int iX = static_cast<int>(luaL_checkinteger(L, 2) - 1); // Lua arrays start at 1 - pretend
int iY = static_cast<int>(luaL_checkinteger(L, 3) - 1); // the map does too.
THMapNode* pNode = pMap->getNode(iX, iY);
if(pNode == nullptr)
return luaL_argerror(L, 2, "Map co-ordinates out of bounds");
if(lua_type(L, 4) != LUA_TTABLE)
{
lua_settop(L, 3);
lua_createtable(L, 0, 1);
}
else
{
lua_settop(L, 4);
}
// Fill Lua table with the flags and numbers of the node.
for (auto val : lua_node_flag_map)
{
add_cellflag(L, pNode, val.second, val.first);
}
add_cellint(L, pNode->iRoomId, "roomId");
add_cellint(L, pNode->iParcelId, "parcelId");
add_cellint(L, pMap->getNodeOwner(pNode), "owner");
add_cellint(L, static_cast<int>(pNode->objects.empty() ? THObjectType::no_object : pNode->objects.front()), "thob");
return 1;
}