void CreateInfo8() { Tabler tabler = Control.Create <Tabler>(); tabler.SetDefaultCellMargin(new Margin(0, 0, 30, 0)); listViewer.AddChild(tabler, 80); Label costLabel = Control.Create <Label>(); costLabel.CtrlSizeChangeMode = ControlSizeChangeMode.FitContentSize; costLabel.Height = 25; costLabel.Text = "房费:"; tabler.AddChild(costLabel, 0, 0); tabler.SetCellMargin(0, 0, new Margin(10, 0, 10, 0)); costinfo = Control.Create <CostInfo>(); costinfo.MatchType = MatchType.None; costinfo.CtrlSizeChangeMode = ControlSizeChangeMode.FitContentSize; costinfo.Height = 25; tabler.AddChild(costinfo, 0, 1); tabler.EnableTableLineAutoAdjustRichSize(0, true, LineDir.HORIZONTAL); // tabler = Control.Create <Tabler>(); listViewer.AddChild(tabler, 280); }
private CostInfo handleSameCostCostInfos(CostInfo bestInfo, List <CostInfo> allCostInfos) { CostInfo pickedInfo = bestInfo; List <CostInfo> sameCosts = new List <CostInfo>(); foreach (CostInfo info in allCostInfos) { if (info.Cost == bestInfo.Cost) { sameCosts.Add(info); } } if (sameCosts.Count > 1) { float smallestAngleDiff = 9999f; foreach (CostInfo info in sameCosts) { float angleDiff = Vector2.Angle(prevMoveDir, info.Node.IncomingDir); if (angleDiff < smallestAngleDiff) { smallestAngleDiff = angleDiff; pickedInfo = info; } } } return(pickedInfo); }
private GuildPrivateGoods LoadGuildPrivateGoodsFromXml(SecurityElement element) { GuildPrivateGoods goods = new GuildPrivateGoods { GoodsId = StrParser.ParseHexInt(element.Attribute("Id"), 0), GoodsName = StrParser.ParseStr(element.Attribute("Name"), ""), GoodsIconId = StrParser.ParseHexInt(element.Attribute("IconId"), 0), GoodsDesc = StrParser.ParseStr(element.Attribute("Desc"), ""), OpenTime = StrParser.ParseDateTime(element.Attribute("StartTime")), CloseTime = StrParser.ParseDateTime(element.Attribute("EndTime")), ResetType = TypeNameContainer <_TimeDurationType> .Parse(element.Attribute("ResetType"), 0), BuyLimitCountPerCircle = StrParser.ParseDecInt(element.Attribute("BuyLimitCountPerCircle"), 0), BatchPurchase = StrParser.ParseBool(element.Attribute("BatchPurchase"), false), ShowIndex = StrParser.ParseDecInt(element.Attribute("ShowIndex"), 0) }; if (element.Children != null) { foreach (SecurityElement element2 in element.Children) { string tag = element2.Tag; if (tag != null) { if (tag == "CostInfo") { CostInfo item = new CostInfo { BuyCount = StrParser.ParseDecInt(element2.Attribute("BuyCount"), 0) }; if (element2.Children != null) { foreach (SecurityElement element3 in element2.Children) { if (element3.Tag == "Cost") { item.Costs.Add(Cost.LoadFromXml(element3)); } } } goods.Costinfos.Add(item); } else if (tag == "Reward") { goods.Rewards.Add(Reward.LoadFromXml(element2)); } else if (tag == "Limit") { LimitInfo info2 = new LimitInfo { LimitType = TypeNameContainer <_LimitType> .Parse(element2.Attribute("Type"), 0), LimitValue = StrParser.ParseDecInt(element2.Attribute("Value"), 0) }; goods.LimitInfos.Add(info2); } } } } return(goods); }
public CostInfo(CostInfo cost_info) { m_CostCountMax = cost_info.m_CostCountMax; m_CostCountUsing = cost_info.m_CostCountUsing; for (MasterDataDefineLabel.ElementType element_idx = MasterDataDefineLabel.ElementType.NONE; element_idx < MasterDataDefineLabel.ElementType.MAX; element_idx++) { m_ElementCounts[(int)element_idx] = cost_info.m_ElementCounts[(int)element_idx]; } }
public void ExportPDF() { if (AnimalCosts != null && AnimalCosts.Count() != 0) { DocumentManager.ExportDataPDF(CostInfo.ConvertToList(AnimalCosts), "Export zvířata"); } else { MessageBox.Show("Žádná data pro export."); } }
public bool Optimize(Phase p, CostInfo subOptimal) { var exist = _at.TryGetValue(p, out var curCostInfo); var isUpdated = !exist || subOptimal.Cost < curCostInfo.Cost; if (isUpdated) { _at[p] = subOptimal; } return(isUpdated); // optimized? }
/// <summary> /// 水电费修改页面 /// </summary> /// <param name="ID"></param> /// <returns></returns> public ActionResult CostUpdate(int ID) { CostInfo costInfo = CostInfoService.GetCostInfoByID(ID); ViewBag.RsolveDate = costInfo.RsolveDate.ToString("yyyy'-'MM'-'dd"); ViewBag.RsubmitDate = costInfo.RsubmitDate.ToString("yyyy'-'MM'-'dd"); ViewBag.costInfo = costInfo; return(View()); }
private LookaheadNode runawayBehaviour(List <LookaheadNode> possibleNodes) { Tank targetTank = controller.TargetTank; Tank selfTank = controller.SelfTank; float dist = (targetTank.transform.position - selfTank.transform.position).magnitude; float maxRange = selfTank.Hull.GetMaxRange() * 1.5f; bool onlyCloser = maxRange < dist; bool allWeaponsReloading = selfTank.Hull.IsAllWeaponsReloading(); List <CostInfo> nodeCosts = new List <CostInfo>(); bool withFilter = true; while (nodeCosts.Count == 0) { foreach (LookaheadNode node in possibleNodes) { WeaponPart notUsed; int targetTime = AIUtility.CalcMinTimeForAimerToHitAimee(targetTank.StateInfo, node.TankInfo, targetTank.Hull.GetAllWeapons(), out notUsed); Vector2 incomingDir = node.GetNodeOneStepAfterRoot().IncomingDir; int cost = targetTime; float futureDist = ((Vector2)targetTank.transform.position - node.TankInfo.Pos).magnitude; if (!withFilter || ((onlyCloser && dist > futureDist) || (!onlyCloser && futureDist < maxRange) || allWeaponsReloading)) { nodeCosts.Add(new CostInfo(node, cost)); } } withFilter = false; } CombatDebugHandler.Instance.RegisterObject("maneuver_runaway_cost_infos", nodeCosts); CostInfo bestInfo = null; foreach (CostInfo info in nodeCosts) { if (bestInfo == null || bestInfo.Cost < info.Cost) { bestInfo = info; } } bestInfo = handleSameCostCostInfos(bestInfo, nodeCosts); CombatDebugHandler.Instance.RegisterObject("maneuver_best_node", bestInfo.Node); return(bestInfo.Node.GetNodeOneStepAfterRoot()); }
public void CreateItemTest() { // Arrange Guid accountId; Guid typeId; const string accountName = "ExpenseManagerAccount01"; const string typeName = "Food"; var account = new AccountModel { Badges = new List <AccountBadgeModel>(), Costs = new List <CostInfoModel>(), Name = accountName }; var type = new CostTypeModel { Name = typeName, CostInfoList = new EditableList <CostInfoModel>(), Account = account }; using ( var db = new ExpenseDbContext( Effort.DbConnectionFactory.CreatePersistent(TestInstaller.ExpenseManagerTestDbConnection))) { db.Accounts.Add(account); db.CostTypes.Add(type); db.SaveChanges(); accountId = account.Id; typeId = type.Id; } var item = new CostInfo() { Description = "bread", AccountId = accountId, TypeId = typeId, IsIncome = true, Money = 25, Created = DateTime.Now }; // Act var createdId = _expenseFacade.CreateItem(item); // Assert var createdItem = GetItemById(createdId); Assert.That(createdItem != null, "Item was not created."); }
/// <summary> /// DTO添加水电费信息 /// </summary> /// <param name="inputentity"></param> /// <returns></returns> public bool DTOAdd(CostInfoInputDTO inputentity) { //AutoMapper转换 CostInfo dataModel = Mapper.Map <CostInfoInputDTO, CostInfo>(inputentity); dataModel.CostID = CreateOrderCode(); if (costInfoDAL.AddAndSaveChange(dataModel) > 0) { return(true); } else { return(false); } }
private CostInfo _getActiveSkillCost(GlobalDefine.PartyCharaIndex member_index, int active_skill_no) { CostInfo ret_val = null; CharaOnce chara_once = BattleParam.m_PlayerParty.getPartyMember(member_index, CharaParty.CharaCondition.EXIST); if (chara_once != null) { uint active_skill_fix_id = (active_skill_no == 0) ? chara_once.m_CharaMasterDataParam.skill_active0 : chara_once.m_CharaMasterDataParam.skill_active1; MasterDataSkillActive master_data_skill_active = BattleParam.m_MasterDataCache.useSkillActive(active_skill_fix_id); if (master_data_skill_active != null) { ret_val = new CostInfo(master_data_skill_active.cost1, master_data_skill_active.cost2, master_data_skill_active.cost3, master_data_skill_active.cost4, master_data_skill_active.cost5); } } return(ret_val); }
/// <summary> /// DTO更新数据 /// </summary> /// <param name="inputEntity"></param> /// <returns></returns> public int DTOUpdate(CostInfoUpdateInputDTO inputEntity, out int outID) { //先查 AsNoTracking() 不追踪 outID = 0; CostInfo checkmodel = costInfoDAL.LoadEntities(u => u.CostID == inputEntity.CostID).AsNoTracking().FirstOrDefault(); if (checkmodel != null) { //AutoMap转换 CostInfo dataModel = Mapper.Map <CostInfoUpdateInputDTO, CostInfo>(inputEntity); ////修改数据 dataModel.ID = checkmodel.ID;//把ID赋值,让EF知道应该修改哪条数据 dataModel.HousID = checkmodel.HousID; outID = dataModel.ID; return(costInfoDAL.EditAndSaveChange(dataModel)); } else { return(0); } }
/// <summary> /// 根据ID删除数据 /// </summary> /// <param name="id"></param> /// <returns></returns> public bool Delete(Array id) { foreach (var item in id) { int ID = Convert.ToInt32(item); //先查 CostInfo entity = costInfoDAL.LoadEntities(u => u.ID == ID).FirstOrDefault(); if (entity != null) { //打标记 costInfoDAL.DeleteFlag(entity); } } if (unitOfWork.SaveChanges() > 0) { return(true); } else { return(false); } }
public void Set(int x, int y, Tool tool, CostInfo cost) => Set(new Phase(x, y, tool), cost);
public void Set(Phase p, CostInfo cost) => _at[p] = cost;
private LookaheadNode goingForItBehaviour(List <LookaheadNode> possibleNodes) { Tank selfTank = controller.SelfTank; Tank targetTank = controller.TargetTank; List <CostInfo> nodeCosts = new List <CostInfo>(); bool overlapNodeExists = false; Vector2 diffVec = targetTank.transform.position - selfTank.transform.position; List <bool> overlaps = new List <bool>(); foreach (LookaheadNode node in possibleNodes) { bool nodeOverlaps = false; foreach (WeaponPart part in selfTank.Hull.GetAllWeapons()) { if (node.HasOverlappedTargetWithWeapon(targetTank.transform.position, part)) { overlapNodeExists = true; nodeOverlaps = true; break; } } overlaps.Add(nodeOverlaps); } Debug.Assert(possibleNodes.Count == overlaps.Count, "Possible nodes and overlap count don't match. Should never happen"); for (int i = 0; i < possibleNodes.Count; ++i) { LookaheadNode node = possibleNodes[i]; WeaponPart notUsed; int targetTime = AIUtility.CalcMinTimeForAimerToHitAimee(targetTank.StateInfo, node.TankInfo, targetTank.Hull.GetAllWeapons(), out notUsed); int selfTime = AIUtility.CalcMinTimeForAimerToHitAimee(node.TankInfo, targetTank.StateInfo, selfTank.Hull.GetAllWeapons(), out notUsed); int cost = targetTime - selfTime; bool overlapCondition = true; if (overlapNodeExists) { overlapCondition = overlaps[i]; } if (overlapCondition) { nodeCosts.Add(new CostInfo(node, cost)); } } CombatDebugHandler.Instance.RegisterObject("maneuver_going_cost_infos", nodeCosts); CostInfo bestInfo = null; foreach (CostInfo info in nodeCosts) { if (bestInfo == null || info.Cost > bestInfo.Cost) { bestInfo = info; } } bestInfo = handleSameCostCostInfos(bestInfo, nodeCosts); CombatDebugHandler.Instance.RegisterObject("maneuver_best_node", bestInfo.Node); return(bestInfo.Node.GetNodeOneStepAfterRoot()); }
public override void execThink(ref int dest_hand_index, ref int dest_field_index, PanelInfo panel_info) { m_HandIndex = (m_HandIndex + 1) % panel_info.m_HandElements.Length; int[] work_field_cost_empty_count = new int[panel_info.m_FieldElements.Length]; for (int field_idx = 0; field_idx < work_field_cost_empty_count.Length; field_idx++) { work_field_cost_empty_count[field_idx] = panel_info.m_FieldElements[field_idx].m_CostCountMax - panel_info.m_FieldElements[field_idx].m_CostCountUsing; } // 置きたい属性などの指定が何もない場合は、右側から埋めていく if (m_SkillOrder.IsNullOrEmpty()) { // 置きたい属性が無い場合は、優先順位が低い場(右側優先)に適当なパネルを置く for (int field_idx = panel_info.m_FieldElements.Length - 1; field_idx >= 0; field_idx--) { CostInfo field_cost_info = panel_info.m_FieldElements[field_idx]; if (field_cost_info.m_CostCountUsing < field_cost_info.m_CostCountMax) { dest_hand_index = m_HandIndex; dest_field_index = field_idx; return; } } } // 優先的に置きたい属性があればそれを置く for (int skill_order_idx = 0; skill_order_idx < m_SkillOrder.Length; skill_order_idx++) { CostInfo skill_cost_info = m_SkillOrder[skill_order_idx]; if (skill_cost_info != null && skill_cost_info.m_CostCountUsing > 0) { // このスキルが既に成立済みかチェックし、成立済みならスキップ(TODO:同じスキルを2回以上成立させたい場合はどうするか) bool is_formed = false; for (int field_idx = 0; field_idx < panel_info.m_FieldElements.Length; field_idx++) { CostInfo field_cost_info = panel_info.m_FieldElements[field_idx]; bool is_formed2 = true; for (MasterDataDefineLabel.ElementType element_idx = MasterDataDefineLabel.ElementType.NONE + 1; element_idx < MasterDataDefineLabel.ElementType.MAX; element_idx++) { int field_cost_count = field_cost_info.getCostCount(element_idx); int skill_cost_count = skill_cost_info.getCostCount(element_idx); if (field_cost_count < skill_cost_count) { is_formed2 = false; break; } } if (is_formed2) { is_formed = true; break; } } if (is_formed) { continue; } // まだこのスキルは成立していないのでどこにパネルを出すか決める // スキル成立までの手数が一番少ないところに出す。 CostInfo[] skill_request_cost_infos = new CostInfo[panel_info.m_FieldElements.Length]; // 各場でスキルが後何枚パネルを必要としているかの情報 int min_skill_request_cost_count = 999; // 最小の必要枚数 { for (int field_idx = 0; field_idx < panel_info.m_FieldElements.Length; field_idx++) { CostInfo field_cost_info = panel_info.m_FieldElements[field_idx]; if (field_cost_info.m_CostCountUsing < field_cost_info.m_CostCountMax) { CostInfo skill_request_cost_info = new CostInfo(skill_cost_info); for (MasterDataDefineLabel.ElementType element_idx = MasterDataDefineLabel.ElementType.NONE + 1; element_idx < MasterDataDefineLabel.ElementType.MAX; element_idx++) { int field_cost_count = field_cost_info.getCostCount(element_idx); skill_request_cost_info.addCost(element_idx, -field_cost_count); skill_request_cost_infos[field_idx] = skill_request_cost_info; } if (skill_request_cost_info.m_CostCountUsing >= 0 && skill_request_cost_info.m_CostCountUsing < min_skill_request_cost_count) { min_skill_request_cost_count = skill_request_cost_info.m_CostCountUsing; } } } } for (int boost_idx = 0; boost_idx <= 1; boost_idx++) { bool is_boost = (boost_idx == 0) ? true : false; // BOOST場を優先 for (int field_idx = 0; field_idx < panel_info.m_FieldElements.Length; field_idx++) { if (panel_info.m_IsBoosts[field_idx] == is_boost) { CostInfo field_cost_info = panel_info.m_FieldElements[field_idx]; if (field_cost_info.m_CostCountUsing < field_cost_info.m_CostCountMax) { CostInfo skill_request_cost_info = skill_request_cost_infos[field_idx]; if (skill_request_cost_info != null && skill_request_cost_info.m_CostCountUsing == min_skill_request_cost_count ) { if (work_field_cost_empty_count[field_idx] >= skill_request_cost_info.m_CostCountUsing) // スキルを成立させるために場に十分に空きがあるかどうか { // 必要枚数が一番多い属性を優先的に出す for (int element_count = 5; element_count >= 1; element_count--) { for (MasterDataDefineLabel.ElementType element_idx = MasterDataDefineLabel.ElementType.NONE + 1; element_idx < MasterDataDefineLabel.ElementType.MAX; element_idx++) { if (skill_request_cost_info.getCostCount(element_idx) == element_count) { for (int hand_idx = 0; hand_idx < panel_info.m_HandElements.Length; hand_idx++) { int wrk_hand_idx = (m_HandIndex + hand_idx) % panel_info.m_HandElements.Length; if (panel_info.m_HandElements[wrk_hand_idx] == element_idx) { dest_hand_index = wrk_hand_idx; dest_field_index = field_idx; return; } } } } } // パネルを置ける領域数を、このスキルが使用する予定数分減らしておく { int max_reserve_cost_count = 5 - skill_order_idx; // 優先順位が高いスキルほど多く予約できる if (max_reserve_cost_count > 0) { int reserve_cost_count = skill_cost_info.m_CostCountUsing; if (reserve_cost_count > max_reserve_cost_count) { reserve_cost_count = max_reserve_cost_count; } work_field_cost_empty_count[field_idx] -= reserve_cost_count; } } // 二重ループから一気に抜ける boost_idx = 2; field_idx = panel_info.m_FieldElements.Length; } } } } } } } } // 置ける属性が無かった場合、優先順位が低い場(ブースト以外優先、右側優先)に適当なパネルを置く for (int boost_idx = 0; boost_idx <= 1; boost_idx++) { bool is_boost = (boost_idx == 0) ? false : true; // BOOST以外を優先 for (int field_idx = panel_info.m_FieldElements.Length - 1; field_idx >= 0; field_idx--) { if (panel_info.m_IsBoosts[field_idx] == is_boost) { CostInfo field_cost_info = panel_info.m_FieldElements[field_idx]; if (field_cost_info.m_CostCountUsing < field_cost_info.m_CostCountMax) { dest_hand_index = m_HandIndex; dest_field_index = field_idx; return; } } } } }
/// <summary> /// スキル効果を適用 /// </summary> /// <param name="skill_type"></param> /// <param name="passive_skill_master"></param> /// <param name="member_index"></param> /// <param name="is_link_member"></param> /// <param name="dest_param_ai"></param> public void applySkill(MasterDataDefineLabel.AutoPlaySkillType skill_type, GlobalDefine.PartyCharaIndex member_index, bool is_link_member) { CostInfo cost_info = null; int work_panel_plus = 0; bool work_is_resurrect = false; int skip_on_hands = 0; switch (skill_type) { case MasterDataDefineLabel.AutoPlaySkillType.SKILL1_SELF: cost_info = _getActiveSkillCost(member_index, 0); break; case MasterDataDefineLabel.AutoPlaySkillType.SKILL1_LEADER: cost_info = _getActiveSkillCost(GlobalDefine.PartyCharaIndex.LEADER, 0); break; case MasterDataDefineLabel.AutoPlaySkillType.SKILL2_SELF: cost_info = _getActiveSkillCost(member_index, 1); break; case MasterDataDefineLabel.AutoPlaySkillType.SKILL2_LEADER: cost_info = _getActiveSkillCost(GlobalDefine.PartyCharaIndex.LEADER, 1); break; case MasterDataDefineLabel.AutoPlaySkillType.TOGETHER_NAUGHT: cost_info = new CostInfo(MasterDataDefineLabel.ElementType.NAUGHT, MasterDataDefineLabel.ElementType.NAUGHT, MasterDataDefineLabel.ElementType.NAUGHT, MasterDataDefineLabel.ElementType.NAUGHT, MasterDataDefineLabel.ElementType.NAUGHT); break; case MasterDataDefineLabel.AutoPlaySkillType.TOGETHER_FIRE: cost_info = new CostInfo(MasterDataDefineLabel.ElementType.FIRE, MasterDataDefineLabel.ElementType.FIRE, MasterDataDefineLabel.ElementType.FIRE, MasterDataDefineLabel.ElementType.FIRE, MasterDataDefineLabel.ElementType.FIRE); break; case MasterDataDefineLabel.AutoPlaySkillType.TOGETHER_WATER: cost_info = new CostInfo(MasterDataDefineLabel.ElementType.WATER, MasterDataDefineLabel.ElementType.WATER, MasterDataDefineLabel.ElementType.WATER, MasterDataDefineLabel.ElementType.WATER, MasterDataDefineLabel.ElementType.WATER); break; case MasterDataDefineLabel.AutoPlaySkillType.TOGETHER_LIGHT: cost_info = new CostInfo(MasterDataDefineLabel.ElementType.LIGHT, MasterDataDefineLabel.ElementType.LIGHT, MasterDataDefineLabel.ElementType.LIGHT, MasterDataDefineLabel.ElementType.LIGHT, MasterDataDefineLabel.ElementType.LIGHT); break; case MasterDataDefineLabel.AutoPlaySkillType.TOGETHER_DARK: cost_info = new CostInfo(MasterDataDefineLabel.ElementType.DARK, MasterDataDefineLabel.ElementType.DARK, MasterDataDefineLabel.ElementType.DARK, MasterDataDefineLabel.ElementType.DARK, MasterDataDefineLabel.ElementType.DARK); break; case MasterDataDefineLabel.AutoPlaySkillType.TOGETHER_WIND: cost_info = new CostInfo(MasterDataDefineLabel.ElementType.WIND, MasterDataDefineLabel.ElementType.WIND, MasterDataDefineLabel.ElementType.WIND, MasterDataDefineLabel.ElementType.WIND, MasterDataDefineLabel.ElementType.WIND); break; case MasterDataDefineLabel.AutoPlaySkillType.TOGETHER_HEAL: cost_info = new CostInfo(MasterDataDefineLabel.ElementType.HEAL, MasterDataDefineLabel.ElementType.HEAL, MasterDataDefineLabel.ElementType.HEAL, MasterDataDefineLabel.ElementType.HEAL, MasterDataDefineLabel.ElementType.HEAL); break; case MasterDataDefineLabel.AutoPlaySkillType.TRY_RESURRECT: work_is_resurrect = true; break; case MasterDataDefineLabel.AutoPlaySkillType.SKIP_ON_SKILL1_SELF: m_SkipOnSkillFormeds[0, (int)member_index] = true; break; case MasterDataDefineLabel.AutoPlaySkillType.SKIP_ON_SKILL1_LEADER: m_SkipOnSkillFormeds[0, (int)GlobalDefine.PartyCharaIndex.LEADER] = true; break; case MasterDataDefineLabel.AutoPlaySkillType.SKIP_ON_SKILL2_SELF: m_SkipOnSkillFormeds[1, (int)member_index] = true; break; case MasterDataDefineLabel.AutoPlaySkillType.SKIP_ON_SKILL2_LEADER: m_SkipOnSkillFormeds[1, (int)GlobalDefine.PartyCharaIndex.LEADER] = true; break; case MasterDataDefineLabel.AutoPlaySkillType.SKIP_ON_HANDS_1: skip_on_hands = 1; break; case MasterDataDefineLabel.AutoPlaySkillType.SKIP_ON_HANDS_2: skip_on_hands = 2; break; case MasterDataDefineLabel.AutoPlaySkillType.SKIP_ON_HANDS_3: skip_on_hands = 3; break; case MasterDataDefineLabel.AutoPlaySkillType.SKIP_ON_HANDS_4: skip_on_hands = 4; break; case MasterDataDefineLabel.AutoPlaySkillType.SKIP_ON_HANDS_5: skip_on_hands = 5; break; case MasterDataDefineLabel.AutoPlaySkillType.SKIP_ON_HANDS_6: skip_on_hands = 6; break; case MasterDataDefineLabel.AutoPlaySkillType.PANEL_PLUS_1: work_panel_plus = 1; break; case MasterDataDefineLabel.AutoPlaySkillType.PANEL_PLUS_2: work_panel_plus = 2; break; case MasterDataDefineLabel.AutoPlaySkillType.PANEL_PLUS_3: work_panel_plus = 3; break; case MasterDataDefineLabel.AutoPlaySkillType.PANEL_PLUS_4: work_panel_plus = 4; break; case MasterDataDefineLabel.AutoPlaySkillType.PANEL_PLUS_5: work_panel_plus = 5; break; case MasterDataDefineLabel.AutoPlaySkillType.PANEL_PLUS_6: work_panel_plus = 6; break; case MasterDataDefineLabel.AutoPlaySkillType.PANEL_PLUS_7: work_panel_plus = 7; break; case MasterDataDefineLabel.AutoPlaySkillType.PANEL_PLUS_8: work_panel_plus = 8; break; case MasterDataDefineLabel.AutoPlaySkillType.PANEL_PLUS_9: work_panel_plus = 9; break; case MasterDataDefineLabel.AutoPlaySkillType.PANEL_PLUS_10: work_panel_plus = 10; break; case MasterDataDefineLabel.AutoPlaySkillType.PANEL_DOWN_1: work_panel_plus = -1; break; case MasterDataDefineLabel.AutoPlaySkillType.PANEL_DOWN_2: work_panel_plus = -2; break; case MasterDataDefineLabel.AutoPlaySkillType.PANEL_DOWN_3: work_panel_plus = -3; break; case MasterDataDefineLabel.AutoPlaySkillType.PANEL_DOWN_4: work_panel_plus = -4; break; case MasterDataDefineLabel.AutoPlaySkillType.PANEL_DOWN_5: work_panel_plus = -5; break; case MasterDataDefineLabel.AutoPlaySkillType.PANEL_DOWN_6: work_panel_plus = -6; break; case MasterDataDefineLabel.AutoPlaySkillType.PANEL_DOWN_7: work_panel_plus = -7; break; case MasterDataDefineLabel.AutoPlaySkillType.PANEL_DOWN_8: work_panel_plus = -8; break; case MasterDataDefineLabel.AutoPlaySkillType.PANEL_DOWN_9: work_panel_plus = -9; break; case MasterDataDefineLabel.AutoPlaySkillType.PANEL_DOWN_10: work_panel_plus = -10; break; } if (cost_info != null) { int link_idx = (is_link_member ? 1 : 0); for (int skill_idx = 0; skill_idx < m_SkillCosts.GetLength(2); skill_idx++) { if (m_SkillCosts[link_idx, (int)member_index, skill_idx] == null) { SkillCost skill_cost = new SkillCost(); skill_cost.m_CostInfo = cost_info; m_SkillCosts[link_idx, (int)member_index, skill_idx] = skill_cost; break; } } } m_PanelPutCount += work_panel_plus; m_IsTryResurrect |= work_is_resurrect; if (m_SkipOnHands == 0) { m_SkipOnHands = skip_on_hands; } }
/// <summary> /// Updates existing cost info /// </summary> /// <param name="updatedCostInfo">updated cost info</param> public void UpdateItem(CostInfo updatedCostInfo) { _costInfoService.UpdateCostInfo(updatedCostInfo); }
public TransactionInfo(string hash, CostInfo cost, bool success) { Hash = hash; Cost = cost; Success = success; }
/// <summary> /// Creates new cost info object in databse /// </summary> /// <param name="costInfo"></param> public Guid CreateItem(CostInfo costInfo) { return(_costInfoService.CreateCostInfo(costInfo)); }