本文整理汇总了C++中WorldMap::FindNearestEntry方法的典型用法代码示例。如果您正苦于以下问题:C++ WorldMap::FindNearestEntry方法的具体用法?C++ WorldMap::FindNearestEntry怎么用?C++ WorldMap::FindNearestEntry使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WorldMap
的用法示例。
在下文中一共展示了WorldMap::FindNearestEntry方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1:
WorldMapControl::WorldMapControl(const char *font, int direction)
{
ScrollX = 0;
ScrollY = 0;
MouseIsDown = false;
Changed = true;
Area = NULL;
Value = direction;
Game* game = core->GetGame();
WorldMap* worldmap = core->GetWorldMap();
CopyResRef(currentArea, game->CurrentArea);
int entry = core->GetAreaAlias(currentArea);
if (entry >= 0) {
WMPAreaEntry *m = worldmap->GetEntry(entry);
CopyResRef(currentArea, m->AreaResRef);
}
//if there is no trivial area, look harder
if (!worldmap->GetArea(currentArea, (unsigned int &) entry) &&
core->HasFeature(GF_FLEXIBLE_WMAP) ) {
WMPAreaEntry *m = worldmap->FindNearestEntry(currentArea, (unsigned int &) entry);
if (m) {
CopyResRef(currentArea, m->AreaResRef);
}
}
//this also updates visible locations
worldmap->CalculateDistances(currentArea, Value);
// alpha bit is unfortunately ignored
if (font[0]) {
ftext = core->GetFont(font);
} else {
ftext = NULL;
}
// initialize label colors
// NOTE: it would be better to initialize these colors from
// some 2da file
Color normal = { 0xf0, 0xf0, 0xf0, 0xff };
Color selected = { 0xf0, 0x80, 0x80, 0xff };
Color notvisited = { 0x80, 0x80, 0xf0, 0xff };
Color black = { 0x00, 0x00, 0x00, 0x00 };
pal_normal = core->CreatePalette ( normal, black );
pal_selected = core->CreatePalette ( selected, black );
pal_notvisited = core->CreatePalette ( notvisited, black );
ResetEventHandler( WorldMapControlOnPress );
ResetEventHandler( WorldMapControlOnEnter );
}