private void Start() { if (UnityEngine.Object.op_Equality((UnityEngine.Object) this.mConditionObjectTemplate, (UnityEngine.Object)null)) { return; } this.mConditionObjectTemplate.SetActive(false); UnitData unitDataByUniqueId = MonoSingleton <GameManager> .Instance.Player.FindUnitDataByUniqueID((long)GlobalVars.SelectedUnitUniqueID); TobiraParam.Category unitTobiraCategory = (TobiraParam.Category)GlobalVars.PreBattleUnitTobiraCategory; if (unitDataByUniqueId == null || unitTobiraCategory <= TobiraParam.Category.START || unitTobiraCategory >= TobiraParam.Category.MAX) { return; } this.mLayoutObjects = new GameObject[6]; this.mLayoutObjects[1] = this.mLayout_UnitLevel; this.mLayoutObjects[2] = this.mLayout_UnitAwake; this.mLayoutObjects[3] = this.mLayout_JobLevel; this.mLayoutObjects[4] = this.mLayout_TobiraLevel; this.mLayoutObjects[5] = this.mLayout_TobiraOpen; this.mLayoutObjects[0] = this.mLayout_None; TobiraConditionParam[] conditionsForUnit = MonoSingleton <GameManager> .Instance.MasterParam.GetTobiraConditionsForUnit(unitDataByUniqueId.UnitID, unitTobiraCategory); List <ConditionsResult> conditionsResultList = TobiraUtility.TobiraConditionsCheck(unitDataByUniqueId, conditionsForUnit); for (int index = 0; index < conditionsResultList.Count; ++index) { this.CreateLayout(conditionsResultList[index]); } }
public void Setup(TobiraData tobiraData) { if (tobiraData == null) { DebugUtility.LogError("tobiraDataがnullの時はSetup(TobiraParam param)を使用してください"); } else { this.m_Category = tobiraData.Param.TobiraCategory; this.m_TextTobiraName.set_text(TobiraParam.GetCategoryName(this.m_Category)); this.m_IconTobira.ImageIndex = (int)this.m_Category; if (tobiraData.IsLearnedLeaderSkill) { TobiraLearnSkill listItem = this.CreateListItem(); SkillData skill = new SkillData(); skill.Setup(tobiraData.LearnedLeaderSkillIname, 1, 1, (MasterParam)null); listItem.Setup(skill); } List <AbilityData> newAbilitys = new List <AbilityData>(); List <AbilityData> oldAbilitys = new List <AbilityData>(); TobiraUtility.TryCraeteAbilityData(tobiraData.Param, tobiraData.Lv, newAbilitys, oldAbilitys, false); for (int index = 0; index < newAbilitys.Count; ++index) { this.CreateListItem().Setup(newAbilitys[index]); } BaseStatus add = new BaseStatus(); BaseStatus scale = new BaseStatus(); TobiraUtility.CalcTobiraParameter(tobiraData.Param.UnitIname, this.m_Category, tobiraData.Lv, ref add, ref scale); this.m_StatusList.SetValues(add, scale, false); GameUtility.SetGameObjectActive(this.m_ObjectDetail, true); GameUtility.SetGameObjectActive(this.m_ObjectLock, false); GameUtility.SetGameObjectActive(this.m_ObjectCommingSoon, false); } }
public void Initialize(UnitData unit, TobiraParam.Category category) { this.mUnit = unit; this.mCategory = category; this.SelectedGO.SetActive(false); this.Refresh(); }
public void Deserialize(JSON_TobiraParam json) { if (json == null) { return; } this.mUnitIname = json.unit_iname; this.mEnable = json.enable == 1; this.mCategory = (TobiraParam.Category)json.category; this.mRecipeId = json.recipe_id; this.mSkillIname = json.skill_iname; this.mLearnAbilities.Clear(); if (json.learn_abils != null) { for (int index = 0; index < json.learn_abils.Length; ++index) { TobiraLearnAbilityParam learnAbilityParam = new TobiraLearnAbilityParam(); learnAbilityParam.Deserialize(json.learn_abils[index]); this.mLearnAbilities.Add(learnAbilityParam); } } this.mOverwriteLeaderSkillIname = json.overwrite_ls_iname; if (!string.IsNullOrEmpty(this.mOverwriteLeaderSkillIname)) { GameManager instanceDirect = MonoSingleton <GameManager> .GetInstanceDirect(); if (Object.op_Inequality((Object)instanceDirect, (Object)null) && instanceDirect.MasterParam != null) { this.mOverwriteLeaderSkillLevel = (int)instanceDirect.MasterParam.FixParam.TobiraLvCap; } } this.mPriority = json.priority; }
public void Init(bool is_restore) { if (UnityEngine.Object.op_Inequality((UnityEngine.Object) this.UnitAttachTarget, (UnityEngine.Object)null) && !this.RefreshCurrentUnit()) { return; } GlobalVars.SelectedEquipmentSlot.Set(-1); this.RefreshStatus(); if (is_restore) { this.RefreshSelected(); this.OnTobiraEnhanceBtn(); } else if (this.mTobiraList.Count > 0) { TobiraParam.Category default_category = this.mTobiraList[0].Category; this.mSelectedTobiraCategory = default_category; GlobalVars.PreBattleUnitTobiraCategory.Set(default_category); this.mTobiraList.ForEach((Action <UnitTobiraItem>)(tobira => tobira.Select(tobira.Category == default_category))); this.mCurrentTobira = this.mCurrentUnit.TobiraData.Find((Predicate <TobiraData>)(tobira => tobira.Param.TobiraCategory == default_category)); this.TobiraParamWindow.Refresh(this.mCurrentUnit, this.mCurrentTobira, this.mTobiraList[0].Param); } UnitEnhanceV3.Instance.RefreshTobiraBgAnimation(this.mCurrentTobira, true); UnitTobiraInventory.mInitTimeUniqueID = (long)GlobalVars.SelectedUnitUniqueID; }
public static string GetCategoryName(TobiraParam.Category category) { switch (category) { case TobiraParam.Category.Envy: return(LocalizedText.Get("sys.CMD_TOBIRA_ENVY")); case TobiraParam.Category.Wrath: return(LocalizedText.Get("sys.CMD_TOBIRA_WRATH")); case TobiraParam.Category.Sloth: return(LocalizedText.Get("sys.CMD_TOBIRA_SLOTH")); case TobiraParam.Category.Lust: return(LocalizedText.Get("sys.CMD_TOBIRA_LUST")); case TobiraParam.Category.Gluttony: return(LocalizedText.Get("sys.CMD_TOBIRA_GLUTTONY")); case TobiraParam.Category.Greed: return(LocalizedText.Get("sys.CMD_TOBIRA_GREED")); case TobiraParam.Category.Pride: return(LocalizedText.Get("sys.CMD_TOBIRA_PRIDE")); default: return(string.Empty); } }
public void Deserialize(JSON_TobiraCategoriesParam json) { if (json == null) { return; } this.mCategory = (TobiraParam.Category)json.category; this.mName = json.name; }
public static void CalcTobiraParameter(string unit_iname, TobiraParam.Category category, int lv, ref BaseStatus add, ref BaseStatus scale) { TobiraData tobiraData = new TobiraData(); if (!tobiraData.Setup(unit_iname, category, lv)) { return; } UnitParam unitParam = MonoSingleton <GameManager> .Instance.MasterParam.GetUnitParam(unit_iname); SkillData.GetHomePassiveBuffStatus(tobiraData.ParameterBuffSkill, unitParam == null ? EElement.None : unitParam.element, ref add, ref scale); }
public ReqTobiraEnhance(long unit_iid, TobiraParam.Category category, Network.ResponseCallback response) { this.name = "unit/door/lvup"; StringBuilder stringBuilder = WebAPI.GetStringBuilder(); stringBuilder.Append("\"unit_iid\":"); stringBuilder.Append(unit_iid); stringBuilder.Append(","); stringBuilder.Append("\"category\":"); stringBuilder.Append((int)category); this.body = WebAPI.GetRequestString(stringBuilder.ToString()); this.callback = response; }
public void Activated(int pinID) { switch (pinID) { case 0: this.RefreshAll(); break; case 1: SerializeValueList currentValue = FlowNode_ButtonEvent.currentValue as SerializeValueList; if (currentValue == null) { break; } UnitTobiraItem item = currentValue.GetComponent <UnitTobiraItem>("_self"); if (UnityEngine.Object.op_Equality((UnityEngine.Object)item, (UnityEngine.Object)null)) { break; } this.mSelectedTobiraCategory = item.Category; GlobalVars.PreBattleUnitTobiraCategory.Set(this.mSelectedTobiraCategory); this.mCurrentTobira = this.mCurrentUnit.TobiraData.Find((Predicate <TobiraData>)(tobira => tobira.Param.TobiraCategory == item.Category)); this.mTobiraList.ForEach((Action <UnitTobiraItem>)(tobira => tobira.Select(tobira.Category == item.Category))); this.TobiraParamWindow.Refresh(this.mCurrentUnit, this.mCurrentTobira, item.Param); UnitEnhanceV3.Instance.RefreshTobiraBgAnimation(this.mCurrentTobira, false); break; case 2: this.OnTobiraOpenBtn(); break; case 3: this.OnTobiraEnhanceBtn(); break; case 5: this.RefreshCurrentUnit(); this.SuccessTobiraEnhance(); break; case 6: this.RefreshCurrentUnit(); this.SuccessTobiraOpen(); break; case 7: UnitEnhanceV3.Instance.TobiraUIActive(false, false); break; } }
public static bool IsClearAllToboraRecipe(UnitData unit_data, TobiraParam.Category tobira_category, int tobiraLv) { bool flag = true; List <ConditionsResult> conditionsResultList = TobiraUtility.TobiraRecipeCheck(unit_data, tobira_category, tobiraLv); for (int index = 0; index < conditionsResultList.Count; ++index) { if (!conditionsResultList[index].isClear) { flag = false; break; } } return(flag); }
public void Setup(TobiraParam param) { this.m_Category = param.TobiraCategory; this.m_TextTobiraName.set_text(TobiraParam.GetCategoryName(this.m_Category)); this.m_IconTobira.ImageIndex = (int)this.m_Category; if (param.Enable) { BaseStatus add = new BaseStatus(); BaseStatus scale = new BaseStatus(); TobiraUtility.CalcTobiraParameter(param.UnitIname, this.m_Category, 1, ref add, ref scale); this.m_StatusList.SetValues(add, scale, true); } GameUtility.SetGameObjectActive(this.m_ObjectDetail, param.Enable); GameUtility.SetGameObjectActive(this.m_ObjectLock, param.Enable); GameUtility.SetGameObjectActive(this.m_ObjectCommingSoon, !param.Enable); }
public bool Setup(string unit_iname, TobiraParam.Category category, int lv) { this.mLv = lv; this.mTobiraParam = MonoSingleton <GameManager> .Instance.MasterParam.GetTobiraParam(unit_iname, category); if (this.mTobiraParam == null) { return(false); } this.mParameterBuffSkill = TobiraUtility.CreateParameterBuffSkill(this.mTobiraParam, this.mLv); if (this.mTobiraParam.HasLeaerSkill && lv >= this.mTobiraParam.OverwriteLeaderSkillLevel) { this.mLearnedLeaderSkillIname = this.mTobiraParam.OverwriteLeaderSkillIname; } return(this.mParameterBuffSkill != null); }
public void Deserialize(JSON_TobiraCondsUnitParam json) { if (json == null) { return; } this.mId = json.id; this.mUnitIname = json.unit_iname; this.mLevel = json.lv; this.mAwakeLevel = json.awake_lv; this.mJobIname = json.job_iname; this.mJobLevel = json.job_lv; this.mCategory = (TobiraParam.Category)json.category; this.mTobiraLv = json.tobira_lv; this.UpdateConditionsFlag(); }
public void Deserialize(JSON_TobiraCondsParam json) { if (json == null) { return; } this.mUnitIname = json.unit_iname; this.mCategory = (TobiraParam.Category)json.category; this.mConditions.Clear(); if (json.conds == null) { return; } for (int index = 0; index < json.conds.Length; ++index) { TobiraConditionParam tobiraConditionParam = new TobiraConditionParam(); tobiraConditionParam.Deserialize(json.conds[index]); this.mConditions.Add(tobiraConditionParam); } }
public static bool IsClearAllToboraConditions(UnitData unit_data, TobiraParam.Category tobira_category) { TobiraConditionParam[] conditionsForUnit = MonoSingleton <GameManager> .Instance.MasterParam.GetTobiraConditionsForUnit(unit_data.UnitID, tobira_category); if (conditionsForUnit == null) { return(true); } bool flag = true; List <ConditionsResult> conditionsResultList = TobiraUtility.TobiraConditionsCheck(unit_data, conditionsForUnit); for (int index = 0; index < conditionsResultList.Count; ++index) { if (!conditionsResultList[index].isClear) { flag = false; break; } } return(flag); }
public ConditionsResult_TobiraLv(UnitData unitData, UnitParam unitParam, TobiraParam.Category condsTobiraCategory, int condsTobiraLv) : base(unitData, unitParam) { this.mCondsTobiraCategory = condsTobiraCategory; this.mCondsTobiraLv = condsTobiraLv; this.mTargetValue = condsTobiraLv; this.mTargetIsMaxLevel = condsTobiraLv == (int)MonoSingleton <GameManager> .Instance.MasterParam.FixParam.TobiraLvCap; if (unitData != null) { TobiraData tobiraData = unitData.GetTobiraData(this.mCondsTobiraCategory); if (tobiraData == null) { return; } this.mTobiraData = tobiraData; this.mIsClear = tobiraData.Lv >= this.mCondsTobiraLv; this.mCurrentValue = tobiraData.Lv; } else { this.mIsClear = false; } }
public static List <ConditionsResult> TobiraRecipeCheck(UnitData unitData, TobiraParam.Category category, int targetLevel) { List <ConditionsResult> conditionsResultList = new List <ConditionsResult>(); GameManager instanceDirect = MonoSingleton <GameManager> .GetInstanceDirect(); TobiraRecipeParam tobiraRecipe = instanceDirect.MasterParam.GetTobiraRecipe(unitData.UnitID, category, targetLevel); if (tobiraRecipe.Cost > 0) { conditionsResultList.Add((ConditionsResult) new ConditionsResult_HasGold(tobiraRecipe.Cost)); } if (tobiraRecipe.UnitPieceNum > 0) { conditionsResultList.Add((ConditionsResult) new ConditionsResult_HasItem(unitData.UnitParam.piece, tobiraRecipe.UnitPieceNum)); } if (tobiraRecipe.ElementNum > 0) { int elementNum = tobiraRecipe.ElementNum; ItemParam elementPieceParam = unitData.GetElementPieceParam(); if (elementPieceParam == null) { DebugUtility.LogWarning("対応する属性欠片が見つかりませんでした。"); } else { conditionsResultList.Add((ConditionsResult) new ConditionsResult_HasItem(elementPieceParam.iname, elementNum)); } } if (tobiraRecipe.UnlockElementNum > 0) { int unlockElementNum = tobiraRecipe.UnlockElementNum; ItemParam itemParam = instanceDirect.GetItemParam(unitData.GetUnlockTobiraElementID()); if (itemParam == null) { DebugUtility.LogWarning("属性に対応する扉用素材が見つかりませんでした。"); } else { conditionsResultList.Add((ConditionsResult) new ConditionsResult_HasItem(itemParam.iname, unlockElementNum)); } } if (tobiraRecipe.UnlockBirthNum > 0) { int unlockBirthNum = tobiraRecipe.UnlockBirthNum; ItemParam itemParam = instanceDirect.GetItemParam(unitData.GetUnlockTobiraBirthID()); if (itemParam == null) { DebugUtility.LogWarning("出自に対応する扉用素材が見つかりませんでした。"); } else { conditionsResultList.Add((ConditionsResult) new ConditionsResult_HasItem(itemParam.iname, unlockBirthNum)); } } foreach (TobiraRecipeMaterialParam material in tobiraRecipe.Materials) { if (material != null && !string.IsNullOrEmpty(material.Iname)) { int num = material.Num; ItemParam itemParam = instanceDirect.GetItemParam(material.Iname); if (itemParam == null) { DebugUtility.LogWarning("アイテムが見つかりませんでした。"); } else { conditionsResultList.Add((ConditionsResult) new ConditionsResult_HasItem(itemParam.iname, num)); } } } return(conditionsResultList); }