protected MList<FightRound> m_cacheList; // 缓存的战斗数据列表 public FightMsgMgr(SceneDZData data) { m_sceneDZData = data; m_curFightData = null; m_curParseRound = null; m_cacheList = new MList<FightRound>(); }
protected MList<HurtData> m_hurtList; // 当前受伤对象列表 public FightRoundAttItem(SceneDZData data) : base(data) { m_parallelFlag = FightExecParallelMask.eAttackHurt; m_parallelMask = 0; // 攻击被击是不能并行执行的 m_hurtList = new MList<HurtData>(); }
private int m_loopDepth; // 是否在循环中,支持多层嵌套,就是循环中再次调用循环 public DelayHandleMgrBase() { m_deferredAddQueue = new MList<DelayHandleObject>(); m_deferredDelQueue = new MList<DelayHandleObject>(); m_loopDepth = 0; }
public CrystalPtPanel(EnDZPlayer playerFlag_) { m_text = new AuxLabel(); m_mpGrid = new UIGrid(); m_playerSide = playerFlag_; m_crystalList = new MList<CrystalPtItem>(); }
public WayPtList() { m_ptList = new MList<WayPtItem>((int)PosType.eTotal); for (int idx = 0; idx < (int)PosType.eTotal; ++idx) { m_ptList.Add(new WayPtItem()); } }
public void Join_of_single_list_with_multiple_items_is_a_list_with_multiple_items() { var list = CreateList(1, 2, 3); var listOfLists = CreateList(list); var result = MList.Join(listOfLists); Assert.Equal(CreateList(1, 2, 3), result); }
public void releaseOneHurtFlowSeq(string skillId, OneHurtFlowSeq seq) { if (!m_cycleHurtList.ContainsKey(skillId)) { m_cycleHurtList[skillId] = new MList<OneHurtFlowSeq>(); } m_cycleHurtList[skillId].Add(seq); }
public void Combining_two_lists_returns_one_list_with_all_elements() { var list1 = CreateList(1, 2, 3); var list2 = CreateList(4, 5); var result = MList.Combine(list1, list2); Assert.Equal(CreateList(1, 2, 3, 4, 5), result); }
public bool Apply_with_list_of_one_function_and_list_of_one_value_returns_list_with_one_result(int a) { Func <int, string> f = i => i.ToString(); var fs = MList <Func <int, string> > .List(f, MList <Func <int, string> > .Empty); var xs = MList <int> .List(a, MList <int> .Empty); return(fs.Apply(xs).Equals(MList <string> .List(f(a), MList <string> .Empty))); }
public void Lists_with_different_lengths_are_not_equal() { Assert.NotEqual( MList <int> .List(1, MList <int> .Empty), MList <int> .List(1, MList <int> .List(1, MList <int> .Empty))); Assert.NotEqual( MList <int> .List(1, MList <int> .List(1, MList <int> .Empty)), MList <int> .List(1, MList <int> .Empty)); }
private void AddHost(MList <string> hosts) { foreach (string host in hosts.List) { HostNode instance = new HostNode(this, host); instance.OnAfterSocketCreateEvent += new HostNode.OnAfterSocketCreateDelegate(instance_OnAfterSocketCreateEvent); hostList.Add(host, instance); } }
public void Join_of_multiple_lists_with_multiple_values_is_a_single_list_of_all_values() { var list1 = CreateList('a', 'b', 'c'); var list2 = CreateList('d', 'e', 'f'); var listOfLists = CreateList(list1, list2); var result = MList.Join(listOfLists); Assert.Equal(CreateList('a', 'b', 'c', 'd', 'e', 'f'), result); }
public void Join_of_single_list_with_a_single_item_is_a_list_with_a_single_item() { var list = MList <int> .List(1, MList <int> .Empty); var listOfLists = MList <MList <int> > .List(list, MList <MList <int> > .Empty); var result = MList.Join(listOfLists); Assert.Equal(MList <int> .List(1, MList <int> .Empty), result); }
public void Empty_list() { var v = MList <int> .Empty; var pureId = MList.Pure((Func <int, int>)Id); var left = pureId.Apply(v); var right = v; Assert.Equal(left, right); }
public MazeRoom(int iTag_) { m_fixIdx = iTag_; m_iTag = iTag_; m_mazeIOControl = new MazeIOControl(this); m_mazeRoomTrackAniControl = new MazeRoomTrackAniControl(this); m_ptListArr = new MList<MazePtBase>[(int)ePathIndex.eTotal]; initWayPtList(); }
public static void Synchronize <T>(this MList <T> oldElements, IEnumerable <T> newElements) { if (Enumerable.SequenceEqual(oldElements, newElements)) { return; } oldElements.Clear(); oldElements.AddRange(newElements); }
public void FromXml(XElement element, IFromXmlContext ctx) { Name = element.Attribute("Name").Value; Guid = Guid.Parse(element.Attribute("Guid").Value); Messages = new MList <EmailMasterTemplateMessageEmbedded>(); Messages = element.Element("Messages").Elements("Message").Select(elem => new EmailMasterTemplateMessageEmbedded(ctx.GetCultureInfoEntity(elem.Attribute("CultureInfo").Value)) { Text = elem.Value }).ToMList(); }
internal static string?ValidateViewNameProps(DynamicViewEntity dv, MList <ViewNamePropEmbedded> viewNameProps) { var extra = viewNameProps.Where(a => !dv.Props.Any(p => p.Name == a.Name)).CommaAnd(a => a.Name); var missing = dv.Props.Where(p => !p.Type.EndsWith("?") && !viewNameProps.Any(a => a.Expression.HasText() && p.Name == a.Name)).CommaAnd(a => a.Name); return(" and ".Combine( extra.HasText() ? "The ViewProps " + extra + " are not declared in " + dv.ViewName : null, missing.HasText() ? "The ViewProps " + missing + " are mandatory in " + dv.ViewName : null ).DefaultToNull()); }
public MazePlayerTrackAniControl(MazePlayer mazePlayer_) { m_mazePlayer = mazePlayer_; m_numAniParal = new NumAniParallel(); m_numAniParal.setAniSeqEndDisp(onMoveEndHandle); m_ptList = new MList<MazePtBase>(); m_bDiePt = false; m_bBombPt = false; m_BDiedPlayEffect = false; }
public static MList <T> CreateList <T>(params T[] items) { var acc = MList <T> .Empty; foreach (var value in items.Reverse()) { acc = MList <T> .List(value, acc); } return(acc); }
public bool Non_empty_list(byte b1, byte b2) { var v = MList <byte> .List(b1, MList <byte> .List(b2, MList <byte> .Empty)); var pureId = MList.Pure((Func <byte, byte>)Id); var left = pureId.Apply(v); var right = v; return(left.Equals(right)); }
public static void print <T>(MList <T> l) { int n = 0; string s = ""; foreach (T i in l) { s += "([" + (n++) + "] " + i + " )"; } UT.print(s); }
public void Concat_returns_concatenated_list() { var lists = CreateList( CreateList(1, 2), CreateList <int>(), CreateList(3, 4, 5)); Assert.Equal( CreateList(1, 2, 3, 4, 5), MList.Concat(lists)); }
public void Non_empty_list_is_mapped() { Func <string, int> f = s => s.Length; var list = CreateList("a", "aa", "aaa"); var expected = CreateList(f("a"), f("aa"), f("aaa")); var mappedF = MList.FMap(f); Assert.Equal(expected, mappedF(list)); }
public void Bind_one_element_list_returns_result_of_bound_function() { var input = MList <string> .List("abc", MList <string> .Empty); Func <string, MList <int> > f = s => CreateList(s.Select(c => (int)c)); var actual = input.Bind(f); var expected = CreateList((int)'a', 'b', 'c'); Assert.Equal(expected, actual); }
public void parseXmlElemList(ArrayList elemList_) { m_attackEffectList = new MList<AttackEffectNode>(); AttackEffectNode attackEffectNode; foreach (SecurityElement hurtEffectNodeElem_ in elemList_) { attackEffectNode = new AttackEffectNode(); m_attackEffectList.Add(attackEffectNode); attackEffectNode.parseXmlElem(hurtEffectNodeElem_); } }
protected int m_uniqueId; // 战斗回合唯一 Id public FightRound(SceneDZData data) { m_sceneDZData = data; m_curFightData = null; m_cacheList = new MList<FightRoundItemBase>(); m_roundEndDisp = new AddOnceAndCallOnceEventDispatch(); m_bSvrRoundEnd = false; m_uniqueId = ID_ALLOC_IDX; ++ID_ALLOC_IDX; FightRoundItemBase.CLEAR_ID_ALLOC_IDX(); // 需要重置每一个战斗 ID }
protected int m_uniqueId; // 战斗回合唯一 Id public FightRound(SceneDZData data) { m_sceneDZData = data; m_curFightData = null; m_cacheList = new MList <FightRoundItemBase>(); m_roundEndDisp = new AddOnceAndCallOnceEventDispatch(); m_bSvrRoundEnd = false; m_uniqueId = ID_ALLOC_IDX; ++ID_ALLOC_IDX; FightRoundItemBase.CLEAR_ID_ALLOC_IDX(); // 需要重置每一个战斗 ID }
public bool Left_identity(int a) { // return a >>= k = k a // pure a >>= k = k a // bind (pure a) k = k a Func <int, MList <int> > k = x => CreateList(x + 1, x + 2); var left = MList.Pure(a).Bind(k); var right = k(a); return(left.Equals(right)); }
public static MList <EmailTemplateMessageEmbedded> CreateMessages(Func <EmailTemplateMessageEmbedded> func) { var list = new MList <EmailTemplateMessageEmbedded>(); foreach (var ci in CultureInfoLogic.ApplicationCultures) { using (CultureInfoUtils.ChangeBothCultures(ci)) { list.Add(func()); } } return(list); }
protected MList<LinkEffect> m_linkEffectList; // 保存所有添加的连接特效 public EffectControl(BeingEntity rhv) : base(rhv) { m_frameEffectId = 4; // 默认是手牌特效 4 m_linkEffectList = new MList<LinkEffect>(); m_stateEffectList = new MList<LinkEffect>((int)StateID.CARD_STATE_MAX); int idx = 0; for(idx = 0; idx < (int)StateID.CARD_STATE_MAX; ++idx) { m_stateEffectList.Add(null); } }
protected MList <LinkEffect> m_linkEffectList; // 保存所有添加的连接特效 public EffectControl(SceneCardBase rhv) : base(rhv) { m_frameEffectId = 4; // 默认是手牌特效 4 m_linkEffectList = new MList <LinkEffect>(); m_stateEffectList = new MList <LinkEffect>((int)StateID.CARD_STATE_MAX); int idx = 0; for (idx = 0; idx < (int)StateID.CARD_STATE_MAX; ++idx) { m_stateEffectList.Add(null); } }
public TypeRuleBuilder(TypeAllowedRule rule) { this.allowed = new TypeAllowedBuilder(rule.Allowed.Fallback); this.conditions = rule.Allowed.Conditions.Select(c => new TypeConditionRuleBuilder(c.TypeCondition, c.Allowed)).ToMList(); this.availableConditions = rule.AvailableConditions; this.allowedBase = rule.AllowedBase; this.resource = rule.Resource; this.properties = rule.Properties; this.operations = rule.Operations; this.queries = rule.Queries; this.RebindEvents(); }
public bool Third_law(int y) { var u = CreateList <Func <int, int> >( i => i + 1, i => i * 2); var left = u.Apply(MList.Pure(y)); // \x -> x y Func <Func <int, int>, int> f = h => h(y); var right = MList.Pure(f).Apply(u); return(left.Equals(right)); }
public void Second_law() { // pure f <*> pure x = pure (f x) // <=> // apply (pure f) (pure x) = pure (f x) Func <string, int> f = s => s.Length; var x = "some string"; var left = MList.Pure(f).Apply(MList.Pure(x)); var right = MList.Pure(f(x)); Assert.Equal(left, right); }
private IMessageAttachmentsCollectionPage GetAttachments(MList <EmailAttachmentEmbedded> attachments) { var result = new MessageAttachmentsCollectionPage(); foreach (var a in attachments) { result.Add(new FileAttachment { ContentId = a.ContentId, Name = a.File.FileName, ContentType = MimeMapping.GetMimeType(a.File.FileName), ContentBytes = a.File.GetByteArray(), }); } return(result); }
public bool Fourth_law(int i1, int i2, int i3) { // u <*> (v <*> w) = pure (.) <*> u <*> v <*> w // apply u (apply v w) = apply (apply (apply (pure (.)) u)) v) w var u = CreateList <Func <int, int> >(x => x * 2, x => x * 3); var v = CreateList <Func <int, int> >(x => x + 3, x => x + 4); var w = CreateList(i1, i2, i3); var pureComposeRight = MList.Pure(ComposeRight <int, int, int>()); var left = u.Apply(v.Apply(w)); var right = pureComposeRight.Apply(u).Apply(v).Apply(w); return(left.Equals(right)); }
public override int GetHashCode(MList <T> obj) { if (obj == null) { return(0); } int result = 0; foreach (var p in obj) { result += this.ElementComparer.GetHashCode(p); } return(result); }
public ActionResult TopRecommendations() { var results = from x in db.monitors select x; int pagesize = 9, pageindex = 1; MList temp = new MList(); results = results.Where(x => x.Star_Rating >= 5).OrderBy(x => Guid.NewGuid()).Take(9); var list = results.ToList(); temp.Monitors = list.ToPagedList(pageindex, pagesize); BreadCrumb.Clear(); BreadCrumb.Add(Url.Action("Index", "Home"), "Home"); BreadCrumb.Add(Url.Action("AppliancesType", "Home"), "Save Energy"); BreadCrumb.Add(Url.Action("Index", "monitors"), "Monitor"); BreadCrumb.Add("", "Top Recommendations"); List <SelectListItem> Ratings_level = new List <SelectListItem>(); Ratings_level.Add(new SelectListItem() { Text = "All Ratings", Value = "-1" }); Ratings_level.Add(new SelectListItem() { Text = "1 Star", Value = "1" }); Ratings_level.Add(new SelectListItem() { Text = "2 Star", Value = "2" }); Ratings_level.Add(new SelectListItem() { Text = "3 Star", Value = "3" }); Ratings_level.Add(new SelectListItem() { Text = "4 Star", Value = "4" }); Ratings_level.Add(new SelectListItem() { Text = "5 Star", Value = "5" }); this.ViewBag.Ratings = new SelectList(Ratings_level, "Value", "Text"); return(View(temp)); }
override public void initWayPtList() { for (int pathIdx = 0; pathIdx < (int)ePathIndex.eTotal; ++pathIdx) { if ((int)ePathIndex.eABC == pathIdx) { m_ptListArr[pathIdx] = new MList<MazePtBase>(); } else if ((int)ePathIndex.eACB == pathIdx) { if ((int)eRoomIndex.eStart != m_fixIdx) { m_ptListArr[pathIdx] = new MList<MazePtBase>(); } } else if ((int)ePathIndex.eBAC == pathIdx) { if ((int)eRoomIndex.eB == m_fixIdx) { m_ptListArr[pathIdx] = new MList<MazePtBase>(); } } else if ((int)ePathIndex.eBCA == pathIdx) { if ((int)eRoomIndex.eB == m_fixIdx) { m_ptListArr[pathIdx] = new MList<MazePtBase>(); } } else if ((int)ePathIndex.eCAB == pathIdx) { if ((int)eRoomIndex.eStart != m_fixIdx) { m_ptListArr[pathIdx] = new MList<MazePtBase>(); } } else if ((int)ePathIndex.eCBA == pathIdx) { if ((int)eRoomIndex.eStart != m_fixIdx) { m_ptListArr[pathIdx] = new MList<MazePtBase>(); } } } }
public void parseXml(string str) { m_itemList = new MList<AttackActionItem>(); AttackActionItem attackItem; SecurityParser _xmlDoc = new SecurityParser(); _xmlDoc.LoadXml(str); SecurityElement rootNode = _xmlDoc.ToXml(); // Config 节点 ArrayList attackItemXmlList = rootNode.Children; // AttackItem 列表 foreach (SecurityElement attackItemElem_ in attackItemXmlList) { attackItem = new AttackActionItem(); m_itemList.Add(attackItem); attackItem.parseXmlElem(attackItemElem_); } }
public static MList <Int2> getNeighbors(Int2 p, int max, int min) { UT.assert(max >= 1 && min >= 1 && max >= min); // get set of neighbors in min/max range MList <Int2> l = new MList <Int2>(); for (int y = p.y - max; y <= p.y + max; y++) { for (int x = p.x - max; x <= p.x + max; x++) { if (p.chess(x, y) >= min) { l.Add(new Int2(x, y)); } } } return(l); }
/// <summary> /// 移除Key和Value /// </summary> /// <param name="removeKeys"></param> private void RemoveList(List <string> removeKeys) { if (removeKeys != null && removeKeys.Count > 0) { lock (lockObj) { foreach (string key in removeKeys) { try { if (theCache.ContainsKey(key)) { theCache.Remove(key); } if (theKeyTime.ContainsKey(key)) { theKeyTime.Remove(key); } if (theFileName.ContainsKey(key)) { string folder = Path.GetDirectoryName(theFileName[key]); MList <string> keys = theFolderKeys[folder]; keys.Remove(key); if (keys.Count == 0) { theFolderWatcher[folder].Changed -= new FileSystemEventHandler(fsy_Changed); //取消事件 theFolderWatcher.Remove(folder); //文件夹下没有要监视的文件,取消事件和对象。 theFolderKeys.Remove(folder); //移除对象。 } theFileName.Remove(key);//file } //file } catch { errorCount++; break; } } } } }
public HurtSeqData() { m_hurtSeqList = new MList<OneHurtFlowSeq>(); }
protected AttackItemBase m_curAttackItem; // 当前攻击项,因为攻击不能打断,必须整个攻击流程结束才算是攻击结束 public AttackData() { m_attackList = new MList<AttackItemBase>(); }
public EventDispatch(int eventId_ = 0) { m_eventId = eventId_; m_handleList = new MList<EventDispatchFunctionObject>(); }
public OneHurtFlowSeq() { m_hurtSeqItem = new MList<HurtSeqItem>(); }
public OneAttackFlowSeq() { m_attackItemList = new MList<AttackSeqItem>(); }
protected EventDispatch m_allHurtExecEndDisp; // 所有 Hurt Item 执行结束事件分发 public HurtData() { m_hurtList = new MList<HurtItemBase>(); m_allHurtExecEndDisp = new AddOnceEventDispatch(); }
public TypeRuleBuilder(TypeAllowedRule rule) { this.allowed = new TypeAllowedBuilder(rule.Allowed.Fallback); this.conditions = rule.Allowed.Conditions.Select(c => new TypeConditionRuleBuilder(c.TypeCondition, c.Allowed)).ToMList(); this.availableConditions = rule.AvailableConditions; this.allowedBase = rule.AllowedBase; this.Resource = rule.Resource; this.Properties = rule.Properties; this.Operations = rule.Operations; this.Queries = rule.Queries; this.RebindEvents(); }
protected int getValidElemCount(MList<GridElementBase> elemList_) { int count = 0; foreach (var item in elemList_.list) { if(item.bValid) { ++count; } } return count; }
protected MList<uint> m_hurtIdList; // 被击者 this id 列表 public ImmeSkillAttackItem(EImmeAttackType attackType) : base(attackType) { m_hurtIdList = new MList<uint>(); }
public DynSceneGrid() { m_elemList = new MList<GridElementBase>(); m_bNeedUpdate = false; m_posList = new List<Vector3>(); }
public RoomInfo() { m_mazeRoomList = new MList<MazeRoom>(); }
public void getWayPtList(MList<MazePtBase> ptList_, int pathIdx) { MazePtBase pt = null; MList<MazePtBase> list = null; if((int)eRoomIndex.eStart == m_fixIdx || (int)eRoomIndex.eEnd == m_fixIdx) { list = m_ptListArr[(int)ePathIndex.eABC]; } else { list = m_ptListArr[pathIdx]; } if (list != null) { for (int idx = 0; idx < list.Count(); ++idx) { pt = list[idx].clone(); ptList_.Add(pt); pt.pos = UtilApi.convPtFromLocal2Local(this.selfGo.transform, Ctx.m_instance.m_maze.mazeData.sceneRootGo.transform, list[idx].pos); // 如果父节点没有缩放时是正确的,如果有缩放,就是错误的 //pt.pos = list[idx].pos + selfGo.transform.localPosition; } } }
public void newRectSplit(Transform trans, float areaRadius, float fYDelta, MList<GridElementBase> elemList_, ref List<Vector3> posList) { float unitWidth = 0; int splitCnt = 0; Vector3 pos; int listIdx = 0; if (unitWidth * splitCnt > 2 * areaRadius) // 如果当前区域不能完整放下所有的单元 { float splitCellWidth = (areaRadius * 2) / splitCnt; while (listIdx < splitCnt) { pos.x = trans.localPosition.x + splitCellWidth * listIdx - areaRadius; pos.y = trans.localPosition.y + fYDelta * listIdx; pos.z = trans.localPosition.z; posList.Add(pos); ++listIdx; } } else // 全部能放下,就居中显示 { float halfWidth = (float)((unitWidth * splitCnt) * 0.5); // 占用的区域的一般宽度 while (listIdx < splitCnt) { pos.x = trans.localPosition.x + unitWidth * listIdx - halfWidth; pos.y = trans.localPosition.y + fYDelta * listIdx; pos.z = trans.localPosition.z; posList.Add(pos); ++listIdx; } } }
protected MList<OneAttackFlowSeq> m_attackSeqList; // 攻击序列的列表 public AttackSeqData() { m_attackSeqList = new MList<OneAttackFlowSeq>(); }
public void getWayPtList(MList<MazePtBase> ptList) { int pathIdx = 0; if ((int)eRoomIndex.eA == m_mazeRoomList[1].fixIdx) { if ((int)eRoomIndex.eB == m_mazeRoomList[2].fixIdx) { pathIdx = (int)ePathIndex.eABC; } else if((int)eRoomIndex.eC == m_mazeRoomList[2].fixIdx) { pathIdx = (int)ePathIndex.eACB; } } else if ((int)eRoomIndex.eB == m_mazeRoomList[1].fixIdx) { if ((int)eRoomIndex.eA == m_mazeRoomList[2].fixIdx) { pathIdx = (int)ePathIndex.eBAC; } else if ((int)eRoomIndex.eC == m_mazeRoomList[2].fixIdx) { pathIdx = (int)ePathIndex.eBCA; } } else if ((int)eRoomIndex.eC == m_mazeRoomList[1].fixIdx) { if ((int)eRoomIndex.eB == m_mazeRoomList[2].fixIdx) { pathIdx = (int)ePathIndex.eCBA; } else if ((int)eRoomIndex.eA == m_mazeRoomList[2].fixIdx) { pathIdx = (int)ePathIndex.eCAB; } } //if (Ctx.m_instance.m_maze.mazeData.curSceneIdx == (int)eSceneIndex.eFirst) //{ for (int idx = 0; idx < 5; ++idx) { m_mazeRoomList[idx].getWayPtList(ptList, pathIdx); } //} //else //{ // for (int idx = 0; idx < 1; ++idx) // { // m_mazeRoomList[idx].getWayPtList(ptList, pathIdx); // } //} }
protected ImmeAttackItemBase m_curAttackItem; // 当前攻击项,因为攻击不能打断,必须整个攻击流程结束才算是攻击结束 public ImmeAttackData() { m_attackList = new MList<ImmeAttackItemBase>(); }