public static void outputPlayerParty(CharaParty chara_party) { for (int idx = 0; idx < chara_party.getPartyMemberMaxCount(); idx++) { CharaOnce chara_once = chara_party.getPartyMember((GlobalDefine.PartyCharaIndex)idx, CharaParty.CharaCondition.EXIST); if (chara_once != null) { DebugBattleLog.writeText(DebugBattleLog.StrOpe + "プレイヤー情報(" + ((GlobalDefine.PartyCharaIndex)idx).ToString() + ")" + " FixID:" + chara_once.m_CharaMasterDataParam.fix_id.ToString() + " DrawID:" + chara_once.m_CharaMasterDataParam.draw_id.ToString() + " LV:" + chara_once.m_CharaLevel.ToString() + " 属性:" + chara_once.m_CharaMasterDataParam.element.ToString() + " 種族1:" + chara_once.m_CharaMasterDataParam.kind.ToString() + " 種族2:" + chara_once.m_CharaMasterDataParam.sub_kind.ToString() + " [" + chara_once.m_CharaMasterDataParam.name.ToString() + "]" ); DebugBattleLog.writeText(DebugBattleLog.StrOpe + " " + " HP:" + chara_party.m_HPCurrent.getValue((GlobalDefine.PartyCharaIndex)idx).ToString() + "/" + chara_party.m_HPMax.getValue((GlobalDefine.PartyCharaIndex)idx).ToString() + " SkillTurn:" + chara_once.GetTrunToLimitBreak().ToString() + "/" + chara_once.GetMaxTurn().ToString() + " Hate:" + chara_party.m_Hate.getValue((GlobalDefine.PartyCharaIndex)idx).ToString() ); // 状態変化 StatusAilmentChara ailment = chara_party.m_Ailments.getAilment((GlobalDefine.PartyCharaIndex)idx); outputAilment(ailment); } } }
// Use this for initialization void Start() { #if BUILD_TYPE_DEBUG BattleParam.m_IsUseDebugJsonMasterData = m_UseJsonMasterData; #endif if (BattleSceneManager.Instance != null) { BattleSceneManager.Instance.setBattleScenePhase(BattleSceneManager.BattleScenePhase.NOT_BATTLE); } DebugBattleLog.setEnable(true); BattleSceneManager.Instance.PRIVATE_FIELD.CreateBattleGameObject(); }
public static void outputAilmentChara(StatusAilmentChara chara_ailment, string text) { if (chara_ailment == null) { return; } string owner_chara_name = null; if (BattleParam.m_PlayerParty != null) { for (int idx = 0; idx < BattleParam.m_PlayerParty.getPartyMemberMaxCount(); idx++) { StatusAilmentChara work_ailment = BattleParam.m_PlayerParty.m_Ailments.getAilment((GlobalDefine.PartyCharaIndex)idx); if (work_ailment == chara_ailment) { owner_chara_name = ((GlobalDefine.PartyCharaIndex)idx).ToString(); break; } } } if (owner_chara_name == null && BattleParam.m_EnemyParam != null ) { for (int idx = 0; idx < BattleParam.m_EnemyParam.Length; idx++) { if (BattleParam.m_EnemyParam[idx].m_StatusAilmentChara == chara_ailment) { owner_chara_name = "敵" + idx.ToString(); break; } } } if (owner_chara_name == null) { owner_chara_name = ""; } DebugBattleLog.writeText(DebugBattleLog.StrOpe + owner_chara_name + text); }
public static void outputEnemyParty(BattleEnemy[] enemy_party) { for (int idx_enemy = 0; idx_enemy < enemy_party.Length; idx_enemy++) { BattleEnemy battle_enemy = enemy_party[idx_enemy]; DebugBattleLog.writeText(DebugBattleLog.StrOpe + "敵情報(" + idx_enemy.ToString() + ")" + " EnemyFixID:" + battle_enemy.getMasterDataParamEnemy().fix_id.ToString() + " CharaFixID:" + battle_enemy.getMasterDataParamChara().fix_id.ToString() + " 属性:" + battle_enemy.getMasterDataParamChara().element.ToString() + " 種族1:" + battle_enemy.getMasterDataParamChara().kind.ToString() + " 種族2:" + battle_enemy.getMasterDataParamChara().sub_kind.ToString() + " [" + battle_enemy.getMasterDataParamChara().name + "]" ); uint[] enemy_abilitys = battle_enemy.getEnemyAbilitys(); for (int idx_ability = 0; idx_ability < enemy_abilitys.Length; idx_ability++) { uint ability_fix_id = enemy_abilitys[idx_ability]; if (ability_fix_id != 0) { string ability_name = ""; MasterDataEnemyAbility ability_master = BattleParam.m_MasterDataCache.useEnemyAbility(ability_fix_id); if (ability_master != null) { ability_name = ability_master.name; } DebugBattleLog.writeText(DebugBattleLog.StrOpe + " 特性" + (idx_ability + 1).ToString() + "(FixId:" + ability_fix_id.ToString() + "):" + ability_name ); } } DebugBattleLog.writeText(DebugBattleLog.StrOpe + " " + " HP:" + battle_enemy.m_EnemyHP.ToString() + "/" + battle_enemy.m_EnemyHPMax.ToString() + " SkillTurn:" + battle_enemy.m_EnemyTurn.ToString() + "/" + battle_enemy.m_EnemyTurnMax.ToString() ); // 状態変化 StatusAilmentChara ailment = battle_enemy.m_StatusAilmentChara; outputAilment(ailment); } }
public static void outputAilment(StatusAilmentChara chara_ailment) { for (int idx = 0; idx < chara_ailment.cAilment.Length; idx++) { StatusAilment ailment = chara_ailment.cAilment[idx]; if (ailment != null && ailment.bUsed ) { MasterDataStatusAilmentParam ailment_master = BattleParam.m_MasterDataCache.useAilmentParam((uint)ailment.nMasterDataStatusAilmentID); DebugBattleLog.writeText(DebugBattleLog.StrOpe + " 状態変化" + " FixID:" + ailment.nMasterDataStatusAilmentID.ToString() + " 効果種類:" + ailment.nType.ToString() + " 残ターン数:" + ailment.nLife + " 発動者ATK:" + ailment.nBaseAtk + " 受動者HP:" + ailment.nBaseHPMax + ((ailment_master != null) ? " 効果値(割合):" + ailment_master.Get_VALUE_RATE() : "") + ((ailment_master != null) ? " 効果値(固定):" + ailment_master.Get_VALUE_FIX() : "") + " [" + ((ailment_master != null) ? ailment_master.name : "") + "]" ); } } }
public void OnPushButtonDebugLogClear() { DebugBattleLog.clearLog(); }
public void OnPushButtonDebugLog() { // クリップボードへコピー DebugBattleLog.exportLog(); }
/// <summary> /// ヒーロースキルのスキルアクティビティを取得 /// </summary> /// <returns></returns> public BattleSkillActivity getHeroSkillActivity() { //-------------------------------- // 追加効果の有無 //-------------------------------- uint hero_skill_id = HERO_SKILL_ATK_ONLY_ID; if (BattleSceneUtil.checkChancePercentSkill(getAdditionalEffectPercent())) { hero_skill_id = HERO_SKILL_ID; DebugBattleLog.writeText(DebugBattleLog.StrOpe + "主人公スキル追加効果:あり(追加効果発動確率:" + getAdditionalEffectPercent().ToString() + "%)"); } else { DebugBattleLog.writeText(DebugBattleLog.StrOpe + "主人公スキル追加効果:なし(追加効果発動確率:" + getAdditionalEffectPercent().ToString() + "%)"); } MasterDataSkillLimitBreak param = BattleParam.m_MasterDataCache.useSkillLimitBreak(hero_skill_id); if (param == null) { return(null); } //-------------------------------- // スキル発動情報 //-------------------------------- BattleSkillActivity activity = new BattleSkillActivity(); activity.m_SkillParamOwnerNum = GlobalDefine.PartyCharaIndex.HERO; activity.m_SkillParamFieldID = InGameDefine.SELECT_NONE; activity.m_SkillParamSkillID = hero_skill_id; activity.m_Effect = param.skill_effect; activity.m_Type = param.skill_type; activity.m_Element = param.skill_elem; activity.m_SkillType = ESKILLTYPE.eLIMITBREAK; activity.m_Category_SkillCategory_PROPERTY = param.skill_cate; activity.m_SkillParamTarget = null; activity.m_skill_power = param.skill_power; activity.m_skill_power_fix = param.skill_power_fix; activity.m_skill_power_hp_rate = param.skill_power_hp_rate; activity.m_skill_absorb = param.skill_absorb; activity.m_skill_kickback = param.skill_kickback; activity.m_skill_kickback_fix = param.skill_kickback_fix; activity.m_skill_chk_atk_affinity = param.skill_chk_atk_affinity; activity.m_skill_chk_atk_leader = param.skill_chk_atk_leader; activity.m_skill_chk_atk_passive = param.skill_chk_atk_passive; activity.m_skill_chk_atk_ailment = param.skill_chk_atk_ailment; activity.m_skill_chk_atk_combo = MasterDataDefineLabel.BoolType.DISABLE; // コンボレートはのらない activity.m_skill_chk_def_defence = param.skill_chk_def_defence; activity.m_skill_chk_def_ailment = param.skill_chk_def_ailment; activity.m_skill_chk_def_barrier = param.skill_chk_def_barrier; activity.m_statusAilment_target = param.status_ailment_target; activity.m_statusAilment = new int[] { param.status_ailment1, param.status_ailment2, param.status_ailment3, param.status_ailment4 }; activity._setParam(param); return(activity); }
//---------------------------------------------------------------------------- /*! @brief キャラ情報セットアップ:マスターデータ指定 @param MasterDataParamChara cMasterData キャラマスター @param int nLevel キャラレベル @param int lbsLv リミットブレイクスキルレベル @param int nPlusPow プラス値:攻撃 @param int nPlusHP プラス値:体力 @param int nLOLevel プラス値:限界突破値 @note */ //---------------------------------------------------------------------------- public bool CharaSetupFromParam(MasterDataParamChara cMasterData, int nLevel, int lbsLv, int nPlusPow, int nPlusHP, int nLOLevel) { m_CharaMasterDataParam = cMasterData; m_bHasCharaMasterDataParam = (null != m_CharaMasterDataParam); if (m_CharaMasterDataParam == null) { Debug.LogError("CharaSetup Error! - InstanceNone!! "); return false; } // @change Developer 2015/09/03 ver300 #region ==== 通常処理 ==== int nPlusValuePow = 0; int nPlusValueHP = 0; m_CharaLevel = nLevel; m_CharaLBSLv = lbsLv; float fLimitOverHP = 0; float fLimitOverATK = 0; #region ==== スキルレベルまるめ処理 ==== MasterDataSkillLimitBreak cSkillLimitBreak = BattleParam.m_MasterDataCache.useSkillLimitBreak(cMasterData.skill_limitbreak); if (cSkillLimitBreak != null) { if (lbsLv > cSkillLimitBreak.level_max) { m_CharaLBSLv = cSkillLimitBreak.level_max; } } #endregion #region ==== リミットオーバーまるめ処理 ==== MasterDataLimitOver _masterMainLO = MasterFinder<MasterDataLimitOver>.Instance.Find((int)cMasterData.limit_over_type); if (_masterMainLO != null) { if (nLOLevel > _masterMainLO.limit_over_max) { nLOLevel = _masterMainLO.limit_over_max; } } #endregion m_CharaPow = CharaUtil.GetStatusValue(m_CharaMasterDataParam, nLevel, CharaUtil.VALUE.POW); m_CharaDef = CharaUtil.GetStatusValue(m_CharaMasterDataParam, nLevel, CharaUtil.VALUE.DEF); m_CharaHP = CharaUtil.GetStatusValue(m_CharaMasterDataParam, nLevel, CharaUtil.VALUE.HP); m_CharaLimitBreak = 0; m_CharaPlusPow = nPlusPow; m_CharaPlusDef = 0; m_CharaPlusHP = nPlusHP; m_CharaLimitOver = nLOLevel; m_CharaCharm = CharaLimitOver.GetParamCharm((uint)nLOLevel, cMasterData.limit_over_type); // レベルMAXなら限界突破の値を追加 float fLimitOverAddHp = CharaLimitOver.GetParam((uint)nLOLevel, cMasterData.limit_over_type, (int)CharaLimitOver.EGET.ePARAM_HP); float fLimitOverAddAtk = CharaLimitOver.GetParam((uint)nLOLevel, cMasterData.limit_over_type, (int)CharaLimitOver.EGET.ePARAM_ATK); fLimitOverHP = m_CharaHP * (fLimitOverAddHp / 100); fLimitOverATK = m_CharaPow * (fLimitOverAddAtk / 100); // プラス値を算出 nPlusValuePow = m_CharaPlusPow * GlobalDefine.PLUS_RATE_POW; nPlusValueHP = m_CharaPlusHP * GlobalDefine.PLUS_RATE_HP; #endregion // @add Developer 2015/09/03 ver300 #region ==== リンクシステム処理 ==== int nElemValuePow = 0; int nElemValueHP = 0; int nRaceValuePow = 0; int nRaceValueHP = 0; int nLinkPlusValuePow = 0; int nLinkPlusValueHP = 0; double nLinkCharm = 0; // リンク中の場合 //MasterDataParamChara cLinkCharaMaster = BattleParam.m_MasterDataCache.useCharaParam(m_LinkParam.m_CharaID); MasterDataParamChara cLinkCharaMaster = m_LinkParam.m_cCharaMasterDataParam; if (cLinkCharaMaster != null) { float fWork = 0.0f; // 属性ボーナスを加算 nElemValuePow = CharaLinkUtil.GetLinkUnitBonusElement(cLinkCharaMaster, m_LinkParam.m_CharaLv, (uint)m_LinkParam.m_CharaLOLevel, CharaUtil.VALUE.POW); nElemValueHP = CharaLinkUtil.GetLinkUnitBonusElement(cLinkCharaMaster, m_LinkParam.m_CharaLv, (uint)m_LinkParam.m_CharaLOLevel, CharaUtil.VALUE.HP); // 種族ボーナス:攻撃力の+%値を算出 fWork = CharaLinkUtil.GetLinkUnitBonusRace(cLinkCharaMaster, cLinkCharaMaster.kind, CharaUtil.VALUE.POW); // %値取得(メイン) fWork += CharaLinkUtil.GetLinkUnitBonusRace(cLinkCharaMaster, cLinkCharaMaster.sub_kind, CharaUtil.VALUE.POW); // %値取得(サブ) fWork = InGameUtilBattle.GetDBRevisionValue(fWork); // 数値変換 nRaceValuePow = (int)InGameUtilBattle.AvoidErrorMultiple((float)m_CharaPow, fWork); // 増加量 // 種族ボーナス:体力の実値を取得 nRaceValueHP = (int)CharaLinkUtil.GetLinkUnitBonusRace(cLinkCharaMaster, cLinkCharaMaster.kind, CharaUtil.VALUE.HP); // 実値取得(メイン) nRaceValueHP += (int)CharaLinkUtil.GetLinkUnitBonusRace(cLinkCharaMaster, cLinkCharaMaster.sub_kind, CharaUtil.VALUE.HP); // 実値取得(サブ) // +値の算出 nLinkPlusValuePow = CharaLinkUtil.GetLinkUnitBonusPlus(m_LinkParam.m_CharaPlusPow, CharaUtil.VALUE.POW); nLinkPlusValueHP = CharaLinkUtil.GetLinkUnitBonusPlus(m_LinkParam.m_CharaPlusHP, CharaUtil.VALUE.HP); nLinkCharm = CharaLimitOver.GetParamCharm((uint)m_LinkParam.m_CharaLOLevel, cLinkCharaMaster.limit_over_type); } else { // リンク用変数の初期化 m_LinkParam.Setup(); } #endregion #if BUILD_TYPE_DEBUG DebugBattleLog.writeText(DebugBattleLog.StrOpe + "キャラ基本情報" + "[" + cMasterData.name + "]" + " FixID:" + cMasterData.fix_id + " DrawID:" + cMasterData.draw_id + " LV:" + m_CharaLevel.ToString() + " SkillLV:" + m_CharaLBSLv.ToString() + " LimOverLv:" + m_CharaLimitOver.ToString() + " PlusPow:" + m_CharaPlusPow.ToString() + " PlusHp:" + m_CharaPlusHP.ToString() + " 属性:" + cMasterData.element.ToString() + " 種族1:" + cMasterData.kind.ToString() + " 種族2:" + cMasterData.sub_kind.ToString() ); DebugBattleLog.writeText(DebugBattleLog.StrOpe + " HP(" + (m_CharaHP + nPlusValueHP + nElemValueHP + nRaceValueHP + nLinkPlusValueHP + (int)fLimitOverHP).ToString() + ")" + " = LV(" + m_CharaHP.ToString() + ")" + " + PlusHP(" + nPlusValueHP.ToString() + ")" + " + LinkElem(" + nElemValueHP.ToString() + ")" + " + LinkRace(" + nRaceValueHP.ToString() + ")" + " + LinkPlus(" + nLinkPlusValueHP.ToString() + ")" + " + LimitOver(" + ((int)fLimitOverHP).ToString() + ")" ); DebugBattleLog.writeText(DebugBattleLog.StrOpe + " POW(" + (m_CharaPow + nPlusValuePow + nElemValuePow + nRaceValuePow + nLinkPlusValuePow + (int)fLimitOverATK).ToString() + ")" + " = LV(" + m_CharaPow.ToString() + ")" + " + PlusPow(" + nPlusValuePow.ToString() + ")" + " + LinkElem(" + nElemValuePow.ToString() + ")" + " + LinkRace(" + nRaceValuePow.ToString() + ")" + " + LinkPlus(" + nLinkPlusValuePow.ToString() + ")" + " + LimitOver(" + ((int)fLimitOverATK).ToString() + ")" ); const int ADD_SKILL_COUNT_LIMIT = 50; // スキル連結数の上限 if (cMasterData.skill_leader != 0) { DebugBattleLog.writeText(DebugBattleLog.StrOpe + " リーダースキル(fixid:" + cMasterData.skill_leader.ToString(), false); MasterDataSkillLeader master_data = BattleParam.m_MasterDataCache.useSkillLeader(cMasterData.skill_leader); if (master_data == null) { DebugBattleLog.writeText(DebugBattleLog.StrOpe + "ERROR!(存在しないfix_id))"); } else { DebugBattleLog.writeText(DebugBattleLog.StrOpe + ")[" + master_data.name + "]" + master_data.detail); } } if (cMasterData.skill_limitbreak != 0) { DebugBattleLog.writeText(DebugBattleLog.StrOpe + " リミブレスキル(fixid:" + cMasterData.skill_limitbreak.ToString(), false); MasterDataSkillLimitBreak master_data = BattleParam.m_MasterDataCache.useSkillLimitBreak(cMasterData.skill_limitbreak); if (master_data == null) { DebugBattleLog.writeText(DebugBattleLog.StrOpe + "ERROR!(存在しないfix_id))"); } else { int loop_limit = ADD_SKILL_COUNT_LIMIT; int add_fix_id = master_data.add_fix_id; while (add_fix_id != 0) { DebugBattleLog.writeText(DebugBattleLog.StrOpe + "+" + add_fix_id.ToString(), false); MasterDataSkillLimitBreak add_master_data = BattleParam.m_MasterDataCache.useSkillLimitBreak((uint)add_fix_id); if (add_master_data == null) { DebugBattleLog.writeText(DebugBattleLog.StrOpe + "ERROR!(存在しないfix_id))"); break; } add_fix_id = add_master_data.add_fix_id; loop_limit--; if (loop_limit <= 0) { DebugBattleLog.writeText(DebugBattleLog.StrOpe + "ERROR!(無限ループ))"); } } DebugBattleLog.writeText(DebugBattleLog.StrOpe + ")[" + master_data.name + "]" + master_data.detail); } } if (cMasterData.skill_active0 != 0) { DebugBattleLog.writeText(DebugBattleLog.StrOpe + " ノーマルスキル1(fixid:" + cMasterData.skill_active0.ToString(), false); MasterDataSkillActive master_data = BattleParam.m_MasterDataCache.useSkillActive(cMasterData.skill_active0); if (master_data == null) { DebugBattleLog.writeText(DebugBattleLog.StrOpe + "ERROR!(存在しないfix_id))"); } else { DebugBattleLog.writeText(DebugBattleLog.StrOpe + ")[" + master_data.name + "]" + master_data.detail); } } if (cMasterData.skill_active1 != 0) { DebugBattleLog.writeText(DebugBattleLog.StrOpe + " ノーマルスキル2(fixid:" + cMasterData.skill_active1.ToString(), false); MasterDataSkillActive master_data = BattleParam.m_MasterDataCache.useSkillActive(cMasterData.skill_active1); if (master_data == null) { DebugBattleLog.writeText(DebugBattleLog.StrOpe + "ERROR!(存在しないfix_id))"); } else { DebugBattleLog.writeText(DebugBattleLog.StrOpe + ")[" + master_data.name + "]" + master_data.detail); } } if (cMasterData.skill_passive != 0) { DebugBattleLog.writeText(DebugBattleLog.StrOpe + " パッシブスキル(fixid:" + cMasterData.skill_passive.ToString(), false); MasterDataSkillPassive master_data = BattleParam.m_MasterDataCache.useSkillPassive(cMasterData.skill_passive); if (master_data == null) { DebugBattleLog.writeText(DebugBattleLog.StrOpe + "ERROR!(存在しないfix_id))"); } else { int loop_limit = ADD_SKILL_COUNT_LIMIT; int add_fix_id = master_data.add_fix_id; while (add_fix_id != 0) { DebugBattleLog.writeText(DebugBattleLog.StrOpe + "+" + add_fix_id.ToString(), false); MasterDataSkillPassive add_master_data = BattleParam.m_MasterDataCache.useSkillPassive((uint)add_fix_id); if (add_master_data == null) { DebugBattleLog.writeText(DebugBattleLog.StrOpe + "ERROR!(存在しないfix_id))"); break; } add_fix_id = add_master_data.add_fix_id; loop_limit--; if (loop_limit <= 0) { DebugBattleLog.writeText(DebugBattleLog.StrOpe + "ERROR!(無限ループ))"); } } DebugBattleLog.writeText(DebugBattleLog.StrOpe + ")[" + master_data.name + "]" + master_data.detail); } } if (cLinkCharaMaster != null) { DebugBattleLog.writeText(DebugBattleLog.StrOpe + " リンクキャラ" + "[" + cLinkCharaMaster.name + "]" + " FixID:" + cLinkCharaMaster.fix_id + " DrawID:" + cLinkCharaMaster.draw_id + " LV:" + m_LinkParam.m_CharaLv.ToString() + " LimOverLv:" + m_LinkParam.m_CharaLOLevel.ToString() + " PlusPow:" + m_LinkParam.m_CharaPlusPow.ToString() + " PlusHp:" + m_LinkParam.m_CharaPlusHP.ToString() + " LinkPoint:" + m_LinkParam.m_CharaLinkPoint.ToString() ); if (cLinkCharaMaster.link_skill_active != 0) { DebugBattleLog.writeText(DebugBattleLog.StrOpe + " リンクスキル(fixid:" + cLinkCharaMaster.link_skill_active.ToString(), false); MasterDataSkillActive master_data = BattleParam.m_MasterDataCache.useSkillActive(cLinkCharaMaster.link_skill_active); if (master_data == null) { DebugBattleLog.writeText(DebugBattleLog.StrOpe + "ERROR!(存在しないfix_id))"); } else { DebugBattleLog.writeText(DebugBattleLog.StrOpe + ")[" + master_data.name + "]" + master_data.detail); } } if (cLinkCharaMaster.link_skill_passive != 0) { DebugBattleLog.writeText(DebugBattleLog.StrOpe + " リンクパッシブスキル(fixid:" + cLinkCharaMaster.link_skill_passive.ToString(), false); MasterDataSkillPassive master_data = BattleParam.m_MasterDataCache.useSkillPassive(cLinkCharaMaster.link_skill_passive); if (master_data == null) { DebugBattleLog.writeText(DebugBattleLog.StrOpe + "ERROR!(存在しないfix_id))"); } else { int loop_limit = ADD_SKILL_COUNT_LIMIT; int add_fix_id = master_data.add_fix_id; while (add_fix_id != 0) { DebugBattleLog.writeText(DebugBattleLog.StrOpe + "+" + add_fix_id.ToString(), false); MasterDataSkillPassive add_master_data = BattleParam.m_MasterDataCache.useSkillPassive((uint)add_fix_id); if (add_master_data == null) { DebugBattleLog.writeText(DebugBattleLog.StrOpe + "ERROR!(存在しないfix_id))"); break; } add_fix_id = add_master_data.add_fix_id; loop_limit--; if (loop_limit <= 0) { DebugBattleLog.writeText(DebugBattleLog.StrOpe + "ERROR!(無限ループ))"); } } DebugBattleLog.writeText(DebugBattleLog.StrOpe + ")[" + master_data.name + "]" + master_data.detail); } } } #endif //BUILD_TYPE_DEBUG // 攻撃力、体力の増加値を加算 m_CharaPow += nPlusValuePow + nElemValuePow + nRaceValuePow + nLinkPlusValuePow + (int)fLimitOverATK; m_CharaHP += nPlusValueHP + nElemValueHP + nRaceValueHP + nLinkPlusValueHP + (int)fLimitOverHP; m_CharaCharm += nLinkCharm; if (m_CharaPow > GlobalDefine.VALUE_MAX_POW) { m_CharaPow = GlobalDefine.VALUE_MAX_POW; } if (m_CharaHP > GlobalDefine.VALUE_MAX_HP) { m_CharaHP = GlobalDefine.VALUE_MAX_HP; } return true; }
/// <summary> /// 敵にしゃべらせる /// </summary> /// <param name="enemyIndex"></param> /// <param name="enemyActionParam"></param> public void talk(int enemyIndex, MasterDataEnemyActionParam enemyActionParam) { if (enemyActionParam == null) { return; } //---------------------------------------- // エラーチェック //---------------------------------------- if (enemyIndex < 0 || enemyIndex >= BattleParam.m_EnemyParam.Length) { return; } string message = enemyActionParam.skill_name; if (message != null && message != "") { if (m_BossTalkArea != null && m_BossTalkAreaFrame != null && m_BossTalkAreaMessage != null) { TextMeshPro text_mesh = m_BossTalkAreaMessage.GetComponent <TextMeshPro>(); text_mesh.text = message; // 行数を調べる int line_count = 1; int start_index = 0; while (true) { int idx = message.IndexOf('\n', start_index); if (idx >= 0) { line_count++; start_index = idx + 1; } else { break; } } // 表示行数に合わせて下地のサイズを広げる const float FRAME_LINE_HEIGHT = 0.66f; // 文字一行分の高さ const float FRAME_BORDER_HEIGHT = 1.0f - FRAME_LINE_HEIGHT; // 下地枠の高さ float talk_area_frame_y_scale = FRAME_BORDER_HEIGHT + FRAME_LINE_HEIGHT * line_count; m_BossTalkAreaFrame.transform.localScale = new Vector3(14.0f, talk_area_frame_y_scale, 1.0f); // 表示時間設定 m_BossTalkTimer = enemyActionParam.wait_time / 1000.0f; // 表示時間(ミリ秒を秒へ変換) if (m_BossTalkTimer > 0.0f) { if (m_BossTalkTimer < 0.3f) { // 短すぎる時間は設定ミスの可能性があるので一瞬だけ見えるようにする(何も見えないとバグに気付けない) m_BossTalkTimer = 0.3f; } } else { const float TALK_TIME_DEFAULT = 1.5f; // デフォルトの表示時間(1.5秒) m_BossTalkTimer = TALK_TIME_DEFAULT; } m_BossTalkArea.SetActive(true); } playAnimation(enemyIndex, AnimationType.TALK); DebugBattleLog.writeText(DebugBattleLog.StrOpe + "敵行動:セリフ「" + message + "」"); } }
public static void outputCard(BattleScene._BattleCardManager battle_card_manager) { // 場札 DebugBattleLog.writeText(DebugBattleLog.StrOpe + "場札"); DebugBattleLog.writeText(DebugBattleLog.StrOpe + " 0左[" + battle_card_manager.m_FieldAreas.getFieldArea(0).getCardElement(0).ToString() + " ," + battle_card_manager.m_FieldAreas.getFieldArea(0).getCardElement(1).ToString() + " ," + battle_card_manager.m_FieldAreas.getFieldArea(0).getCardElement(2).ToString() + " ," + battle_card_manager.m_FieldAreas.getFieldArea(0).getCardElement(3).ToString() + " ," + battle_card_manager.m_FieldAreas.getFieldArea(0).getCardElement(4).ToString() + "]" + (BattleSceneManager.Instance.PRIVATE_FIELD.m_abBoostField[0] ? "(BOOST)" : "") ); DebugBattleLog.writeText(DebugBattleLog.StrOpe + " 1 [" + battle_card_manager.m_FieldAreas.getFieldArea(1).getCardElement(0).ToString() + " ," + battle_card_manager.m_FieldAreas.getFieldArea(1).getCardElement(1).ToString() + " ," + battle_card_manager.m_FieldAreas.getFieldArea(1).getCardElement(2).ToString() + " ," + battle_card_manager.m_FieldAreas.getFieldArea(1).getCardElement(3).ToString() + " ," + battle_card_manager.m_FieldAreas.getFieldArea(1).getCardElement(4).ToString() + "]" + (BattleSceneManager.Instance.PRIVATE_FIELD.m_abBoostField[1] ? "(BOOST)" : "") ); DebugBattleLog.writeText(DebugBattleLog.StrOpe + " 2中[" + battle_card_manager.m_FieldAreas.getFieldArea(2).getCardElement(0).ToString() + " ," + battle_card_manager.m_FieldAreas.getFieldArea(2).getCardElement(1).ToString() + " ," + battle_card_manager.m_FieldAreas.getFieldArea(2).getCardElement(2).ToString() + " ," + battle_card_manager.m_FieldAreas.getFieldArea(2).getCardElement(3).ToString() + " ," + battle_card_manager.m_FieldAreas.getFieldArea(2).getCardElement(4).ToString() + "]" + (BattleSceneManager.Instance.PRIVATE_FIELD.m_abBoostField[2] ? "(BOOST)" : "") ); DebugBattleLog.writeText(DebugBattleLog.StrOpe + " 3 [" + battle_card_manager.m_FieldAreas.getFieldArea(3).getCardElement(0).ToString() + " ," + battle_card_manager.m_FieldAreas.getFieldArea(3).getCardElement(1).ToString() + " ," + battle_card_manager.m_FieldAreas.getFieldArea(3).getCardElement(2).ToString() + " ," + battle_card_manager.m_FieldAreas.getFieldArea(3).getCardElement(3).ToString() + " ," + battle_card_manager.m_FieldAreas.getFieldArea(3).getCardElement(4).ToString() + "]" + (BattleSceneManager.Instance.PRIVATE_FIELD.m_abBoostField[3] ? "(BOOST)" : "") ); DebugBattleLog.writeText(DebugBattleLog.StrOpe + " 4右[" + battle_card_manager.m_FieldAreas.getFieldArea(4).getCardElement(0).ToString() + " ," + battle_card_manager.m_FieldAreas.getFieldArea(4).getCardElement(1).ToString() + " ," + battle_card_manager.m_FieldAreas.getFieldArea(4).getCardElement(2).ToString() + " ," + battle_card_manager.m_FieldAreas.getFieldArea(4).getCardElement(3).ToString() + " ," + battle_card_manager.m_FieldAreas.getFieldArea(4).getCardElement(4).ToString() + "]" + (BattleSceneManager.Instance.PRIVATE_FIELD.m_abBoostField[4] ? "(BOOST)" : "") ); // 手札 DebugBattleLog.writeText(DebugBattleLog.StrOpe + "手札" + " [" + battle_card_manager.m_HandArea.getCardElement(0).ToString() + "]" + " [" + battle_card_manager.m_HandArea.getCardElement(1).ToString() + "]" + " [" + battle_card_manager.m_HandArea.getCardElement(2).ToString() + "]" + " [" + battle_card_manager.m_HandArea.getCardElement(3).ToString() + "]" + " [" + battle_card_manager.m_HandArea.getCardElement(4).ToString() + "]" ); // 次手札 DebugBattleLog.writeText(DebugBattleLog.StrOpe + "次札" + " [" + battle_card_manager.m_NextArea.getCardElement(0).ToString() + "]" + " [" + battle_card_manager.m_NextArea.getCardElement(1).ToString() + "]" + " [" + battle_card_manager.m_NextArea.getCardElement(2).ToString() + "]" + " [" + battle_card_manager.m_NextArea.getCardElement(3).ToString() + "]" + " [" + battle_card_manager.m_NextArea.getCardElement(4).ToString() + "]" ); }