/////////////// // SetPrompt // /////////////// void PlayerPrompt::SetPrompt( uint playerNum, std::string prompt, SelectionList selections, HotKeyList hotKeys ) { GameUtilities::IGraphicsProvider::TextInfo textInfo; textInfo.contents = "Player " + NumToStr( playerNum ) + ": " + prompt; textInfo.fontSize = 1; textInfo.position.x = 100; textInfo.position.y = 720; textInfo.argb[0] = 255; textInfo.argb[1] = 155; textInfo.argb[2] = 155; textInfo.argb[3] = 155; ServProvider()->GetGraphicsProvider()->SetText( m_promptID, "prompt", textInfo ); std::string selectionStr; uint hotKeyCounter = 0; for( SelectionList::iterator selectionItemItr = selections.begin(); selectionItemItr != selections.end(); ++selectionItemItr ) { std::stringstream s; s << hotKeys[hotKeyCounter++]; selectionStr += s.str() + " - " + *selectionItemItr + " "; } textInfo.contents = selectionStr; textInfo.position.y = 760; textInfo.argb[1] = 255; textInfo.argb[2] = 255; textInfo.argb[3] = 255; ServProvider()->GetGraphicsProvider()->SetText( m_promptID, "selections", textInfo ); }
SelectionList TrajectoryAnalysisModuleData::parallelSelections(const SelectionList &selections) { // TODO: Consider an implementation that does not allocate memory every time. SelectionList newSelections; newSelections.reserve(selections.size()); SelectionList::const_iterator i = selections.begin(); for (; i != selections.end(); ++i) { newSelections.push_back(parallelSelection(*i)); } return newSelections; }