MessageDialog::MessageDialog(char const *_name, char const *_message) : DarwiniaWindow(_name), m_numLines(0) { char const *lineStart = _message; int longestLine = 0; while(1) { if (_message[0] == '\n' || _message[0] == '\0') { int lineLen = _message - lineStart; if (lineLen > longestLine) longestLine = lineLen; m_messageLines[m_numLines] = new char [lineLen + 1]; strncpy(m_messageLines[m_numLines], lineStart, lineLen); m_messageLines[m_numLines][lineLen] = '\0'; m_numLines++; lineStart = _message + 1; } if (_message[0] == '\0') { break; } _message++; } m_w = g_editorFont.GetTextWidth(longestLine) + 10; m_w = max(m_w, 100); m_h = 65 + m_numLines * DEF_FONT_SIZE; m_h = max(m_h, 85); SetMenuSize( m_w, m_h ); m_x = g_app->m_renderer->ScreenW()/2 - m_w/2; m_y = g_app->m_renderer->ScreenH()/2 - m_h/2; }
bool Window_UseSkillBase::Setup( Game_AliceDollList* _pDollList, Record_Item* _pItemRecord, Record_AliceInfo* _pAliceInfo){ SetFrame(&g_wndSkins.skin[WNDSKIN_DOLLMANAGE], PRESETCOLORSET_BROWN); if(!SetPtr(_pDollList, _pItemRecord, _pAliceInfo)){ return false; } // 一体を選択しての左のメニューは使用しない SetMenuSize(1); // アイテムマネージャ・スキルマネージャのセットアップ SetupItemManager(true); SetupSkillManager(); // 使用スキルマネージャのセットアップ useSkillManager.Setup(_pDollList, _pAliceInfo); // フェイズと人形の設定 phaze = WND_USESKILL_PHAZE_SKILLSELECT; managingDollIndex = -1; // リフレッシュ(クラスによって異なる) // ここで、使用可能なスキルのインポートを行う。 ImportSkills(); return true; }