本文整理汇总了C++中AStarNode::GetID方法的典型用法代码示例。如果您正苦于以下问题:C++ AStarNode::GetID方法的具体用法?C++ AStarNode::GetID怎么用?C++ AStarNode::GetID使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类AStarNode
的用法示例。
在下文中一共展示了AStarNode::GetID方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Save
bool AStar::Save(IFileSystem *filesystem, const char *Filename)
{
CUtlBuffer buf;
AStarNode *Node;
NodeList_t Links;
int TotalNumLinks = 0;
int NodeTotal = Nodes.Count();
//////////////////////////////////////////////
// Nodes
buf.PutInt(NodeTotal);
for(int i = 0; i < NodeTotal; i++)
{
Node = Nodes[i];
buf.PutFloat(Node->GetPos().x);
buf.PutFloat(Node->GetPos().y);
buf.PutFloat(Node->GetPos().z);
TotalNumLinks += Node->GetLinks().Count();
}
//////////////////////////////////////////////
//////////////////////////////////////////////
// Links
buf.PutInt(TotalNumLinks);
for(int i = 0; i < NodeTotal; i++)
{
Node = Nodes[i];
Links = Node->GetLinks();
for(int li = 0; li < Links.Count(); li++)
{
buf.PutInt(Node->GetID());
buf.PutInt(Links[li]->GetID());
}
}
//////////////////////////////////////////////
//////////////////////////////////////////////
// Write File
FileHandle_t fh = filesystem->Open(Filename, "wb");
if(!fh)
{
return false;
}
filesystem->Write(buf.Base(), buf.TellPut(), fh);
filesystem->Close(fh);
//////////////////////////////////////////////
return true;
}