/// <summary> /// ステータスを表示する /// </summary> /// <param name="monster"></param> /// <param name="panelType"></param> public void ShowStatus( BattleMapMonster monster, BattleMapStatusPanelType panelType, BattleMapStatusPanelPositionType positionType = BattleMapStatusPanelPositionType.NORMAL) { Initialize(); ShowStatus(panelOperator, monster, panelType, positionType); }
/// <summary> /// ステータスを表示する /// </summary> /// <param name="monster"></param> /// <param name="panelType"></param> private void ShowStatus( BattleMapStatusPanelOperator panelOperator, BattleMapMonster monster, BattleMapStatusPanelType panelType, BattleMapStatusPanelPositionType positionType = BattleMapStatusPanelPositionType.NORMAL) { panelOperator.ShowStatus(monster, panelType, positionType); // アイコンを削除 mapIconGenerator.UninstallSelectionMarker(); // アイコンの表示 mapIconGenerator.InstallSelectionMarker(monster); }
/// <summary> /// モードごとに設定 /// </summary> /// <param name="panelType"></param> /// <param name="monster"></param> /// <param name="panelPositionType"></param> private void SetPanelMode( BattleMapMonster monster, BattleMapStatusPanelType panelType, BattleMapStatusPanelPositionType panelPositionType) { float panelHeight = PANEL_HEIGHT; if (panelType == BattleMapStatusPanelType.NORMAL) { spObject.PaperGameObject.SetActive(true); spObject.PaperSubGameObject.SetActive(false); spObject.SkillButton.SetActive(false); spObject.CancelButton.SetActive(false); panelHeight = PANEL_HEIGHT; } else if (panelType == BattleMapStatusPanelType.SKILL1) { spObject.PaperGameObject.SetActive(false); spObject.PaperSubGameObject.SetActive(true); spObject.SkillButton.SetActive(true); spObject.CancelButton.SetActive(true); panelHeight = PANEL_HEIGHT_SKILL; } RectTransform goRect = spObject.GameObject.GetComponent <RectTransform>(); goRect.anchorMin = new Vector2(0, 0); goRect.anchorMax = new Vector2(0, 0); // 本体の高さ goRect.sizeDelta = new Vector2(goRect.sizeDelta.x, panelHeight); // 本体の位置 float posY = PANEL_POSY_MARGIN + (goRect.sizeDelta.y / 2); // スキル表示ありの場合 if (panelPositionType == BattleMapStatusPanelPositionType.ON_SKILL_PANEL) { posY += BattleMapSkillSelectOperator.GetPanelHeight(monster.GetAvailableSkillList().Count); } // 控えありの場合 else if (panelPositionType == BattleMapStatusPanelPositionType.ON_RESERVE) { posY += goRect.sizeDelta.y + PANEL_POSY_RESERVE_MARGIN; } goRect.anchoredPosition = new Vector2(PANEL_POSX, posY); }
/// <summary> /// ステータスを表示 /// </summary> /// <param name="monster"></param> /// <param name="panelType"></param> /// <param name="panelPositionType"></param> public void ShowStatus( BattleMapMonster monster, BattleMapStatusPanelType panelType, BattleMapStatusPanelPositionType panelPositionType) { // アクティブにする SetActive(true); // パネルのモード変更 SetPanelMode(monster, panelType, panelPositionType); // テキストを描画 SetStatusText(monster); // 顔を差し替え SetFaceImage(monster); // 顔の色を差し替え SetFaceColorImage(monster); }
/// <summary> /// 通常タイプのステータスを表示する /// </summary> /// <param name="monster"></param> /// <param name="positionType"></param> public void ShowStatus( BattleMapMonster monster, BattleMapStatusPanelPositionType positionType = BattleMapStatusPanelPositionType.NORMAL) { ShowStatus(monster, BattleMapStatusPanelType.NORMAL, positionType); }