override public void addObject(IDelayHandleItem delayObject, float priority = 0.0f) { if (bInDepth()) { base.addObject(delayObject, priority); } else { // 这个判断说明相同的函数只能加一次,但是如果不同资源使用相同的回调函数就会有问题,但是这个判断可以保证只添加一次函数,值得,因此不同资源需要不同回调函数 m_handleList.Add(delayObject as EventDispatchFunctionObject); } }
public void initMazeRoomCount(int count_) { m_mazeRoomList.Clear(); m_itemCount = count_; MazeRoom mazeRoom = null; string path = ""; for (int idx = 0; idx < m_itemCount; ++idx) { if (Ctx.m_instance.m_maze.mazeData.bInFisrstScene()) { mazeRoom = new MazeRoom(idx); } else { mazeRoom = new MazeRoomSecond(idx); } m_mazeRoomList.Add(mazeRoom); path = string.Format("RootGo/Plane_{0}", idx); mazeRoom.selfGo = UtilApi.GoFindChildByPObjAndName(path); if (0 != idx && 4 != idx) { mazeRoom.mazeIOControl.enableDrag(); } mazeRoom.init(); } path = "RootGo/SplitGo"; m_trans = UtilApi.GoFindChildByPObjAndName(path).transform; adjustInitState(); }
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; } } }
// 技能攻击攻击者不会伤血 m_damage = 0 override public void initItemData(BeingEntity att, BeingEntity def, stNotifyBattleCardPropertyUserCmd msg) { base.initItemData(att, def, msg); skillId = msg.dwMagicType; foreach (var item in msg.defList) { m_hurtIdList.Add(item.qwThisID); } }
public GridElementBase createAndAddElem(GridElementType type) { GridElementBase elem = null; if (GridElementType.eBasic == type) { elem = new GridElementBase(); } if (GridElementType.eScale == type) { elem = new ScaleGridElement(); } m_elemList.Add(elem); elem.addUpdateHandle(onElemChangedHandle); //onElemChangedHandle(elem); // 添加后不改变 return(elem); }
// 添加连接特效,固定不动,连接特效在关联的实体释放的时候,需要释放资源 public LinkEffect addLinkEffect(int id, bool bAutoRemove = true, bool bLoop = false, bool bPlay = true) { addFrameSpriteGO(); LinkEffect effect = Ctx.m_instance.m_sceneEffectMgr.addLinkEffect(id, m_effectRootGO, bAutoRemove, bLoop, bPlay) as LinkEffect; m_linkEffectList.Add(effect); effect.addEffectPlayEndHandle(onLinkEffectPlayEnd); effect.linkedEntity = this.m_being; return(effect); }
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_); } }
public void parseXmlElemList(ArrayList elemList_) { m_hurtEffectList = new MList <HurtEffectNode>(); HurtEffectNode hurtEffectNode; foreach (SecurityElement hurtEffectNodeElem_ in elemList_) { hurtEffectNode = new HurtEffectNode(); m_hurtEffectList.Add(hurtEffectNode); hurtEffectNode.parseXmlElem(hurtEffectNodeElem_); } }
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); } }
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 void addItem(ImmeHurtItemBase item) { m_hurtList.Add(item); }