public override bool onRemoveItem(int count) { if (MyItem.Descarded == false) { return(false); } else if (count > ItemCount) { return(false); } else if (ItemCount - count == 0) { MyItem.onRemove(); MyItem.Owner.ItemList.Remove(MyItem); MyIcon.sprite = DefaultIcon; CountComponent.SetActive(false); CDComponent.SetActive(false); MyItem = null; } else { updateItemInfo(MyItem, ItemCount - count); MyItem.onRemove(); } return(true); }
public override void FixedUpdate(int deltaTime) { List <EntityBase> list = GetEntityList(); for (int i = 0; i < list.Count; i++) { CommandComponent cc = list[i].GetComp <CommandComponent>(); CDComponent cdc = list[i].GetComp <CDComponent>(); SkillStatusComponent ssc = list[i].GetComp <SkillStatusComponent>(); cdc.CD -= deltaTime; if (cc.skillDir.ToVector() != Vector3.zero && cc.isFire && cdc.CD <= 0) { cdc.CD = 2 * 1000; Debug.Log("FIRE!!!"); //FIRE!!! string skillID = "2000"; ssc.m_skillTime = 0; ssc.m_isTriggerSkill = false; ssc.m_skillStstus = SkillStatusEnum.Before; ssc.m_currentSkillData = ssc.GetSkillData(skillID); ssc.m_currentSkillData.UpdateInfo(); } } }
private void AddShieldComponent() { CDComponent shieldCD = new CDComponent(this.m_UserData, LogicTimer.Instance.CurrentTime); this.m_ShieldCDComponent = shieldCD; this.m_ShieldCDComponent.CDFinished += ShieldCDFinish; this.AddComponent(shieldCD); }
public override MomentComponentBase DeepCopy() { CDComponent cc = new CDComponent(); cc.ID = ID; cc.Frame = Frame; cc.CD = CD; return(cc); }
private void AddBuff(BuffData buffData) { BuffLogicData data = new BuffLogicData(buffData); this.m_Buffs.Add(buffData, data); CDComponent buffCD = new CDComponent(buffData, LogicTimer.Instance.CurrentTime); this.m_BuffComponents.Add(buffData, buffCD); buffCD.CDFinished += BuffCDFinish; this.AddComponent(buffCD); }
public PropsLogicObject(PropsData data) { this.m_Data = data; this.m_LogicData = new PropsLogicData(data); if (this.m_Data.RemainingCD != 0) { this.m_CDComponent = new CDComponent(data, LogicTimer.Instance.CurrentTime); this.AddComponent(this.m_CDComponent); this.m_CDComponent.CDFinished += CDFinished; } }
public override void initItemGird(Item item, int count) { if (item == null) { MyIcon.sprite = DefaultIcon; CountComponent.SetActive(false); CDComponent.SetActive(false); MyItem = null; return; } item.QSID = QSID; MyItem = item; MyIcon.sprite = item.Icon.sprite; ItemCount = count; }
public void Awake() { this.heroTransformComponent = this.GetParent <HotfixUnit>().m_ModelUnit.GetComponent <HeroTransformComponent>(); this.userInputComponent = ETModel.Game.Scene.GetComponent <UserInputComponent>(); this.m_CDComponent = ETModel.Game.Scene.GetComponent <CDComponent>(); m_QCDInfo = ReferencePool.Acquire <CDInfo>(); m_QCDInfo.Interval = 5000; m_QCDInfo.Name = "QCD"; m_WCDInfo = ReferencePool.Acquire <CDInfo>(); m_WCDInfo.Interval = 7000; m_WCDInfo.Name = "WCD"; m_ECDInfo = ReferencePool.Acquire <CDInfo>(); m_ECDInfo.Interval = 10000; m_ECDInfo.Name = "ECD"; m_CDComponent.AddCDData(this.Entity.Id, m_QCDInfo); m_CDComponent.AddCDData(this.Entity.Id, m_WCDInfo); m_CDComponent.AddCDData(this.Entity.Id, m_ECDInfo); }
public override void FixedUpdate(int deltaTime) { List <EntityBase> list = GetEntityList(); for (int i = 0; i < list.Count; i++) { CommandComponent cc = list[i].GetComp <CommandComponent>(); CDComponent cdc = list[i].GetComp <CDComponent>(); if (cc.isFire) { ViewComponent vc = new ViewComponent(); AssetComponent ac = new AssetComponent(); ac.m_assetName = "Sphere"; MoveComponent mc = new MoveComponent(); mc.m_dirx = 1; mc.m_velocity = 1; m_world.CreateEntity(vc, ac, mc); } } }
public override void FixedUpdate(int deltaTime) { List <EntityBase> list = GetEntityList(); for (int i = 0; i < list.Count; i++) { CommandComponent cc = list[i].GetComp <CommandComponent>(); CDComponent cdc = list[i].GetComp <CDComponent>(); SkillStatusComponent ssc = list[i].GetComp <SkillStatusComponent>(); PlayerComponent pc = list[i].GetComp <PlayerComponent>(); cdc.CD -= deltaTime; //Debug.Log(cc.element1 + " --> " + cc.element2 + " CanFire " + (cdc.CD <= 0)); if (cc.skillDir.ToVector() != Vector3.zero && cc.isFire && cdc.CD <= 0) { cdc.CD = 2 * 1000; //FIRE!!! 2000 2002技能可用 string skillID = GetSkillName(cc); //Debug.Log("FIRE!!! --> " + skillID); ssc.m_skillTime = 0; ssc.m_skillStstus = SkillStatusEnum.Before; ssc.m_isTriggerSkill = false; ssc.m_currentSkillData = ssc.GetSkillData(skillID); ssc.m_currentSkillData.UpdateInfo(); ssc.skillDir = cc.skillDir.DeepCopy(); } } }
public void PlayerJoin(EntityBase entity) { PlayerComponent playerComp = null; if (!entity.GetExistComp <PlayerComponent>()) { playerComp = new PlayerComponent(); playerComp.characterID = "1"; playerComp.nickName = "Test model"; ElementData e1 = new ElementData(); e1.id = 100; e1.num = 10; playerComp.elementData.Add(e1); ElementData e2 = new ElementData(); e2.id = 101; e2.num = 10; playerComp.elementData.Add(e2); ElementData e3 = new ElementData(); e3.id = 102; e3.num = 10; playerComp.elementData.Add(e3); ElementData e4 = new ElementData(); e4.id = 103; e4.num = 00; playerComp.elementData.Add(e4); entity.AddComp(playerComp); } if (!entity.GetExistComp <CommandComponent>()) { CommandComponent c = new CommandComponent(); entity.AddComp(c); } if (!entity.GetExistComp <TransfromComponent>()) { TransfromComponent c = new TransfromComponent(); entity.AddComp(c); } if (!entity.GetExistComp <AssetComponent>()) { AssetComponent c = new AssetComponent(); c.m_assetName = "famale_01"; entity.AddComp(c); } if (!entity.GetExistComp <MoveComponent>()) { MoveComponent c = new MoveComponent(); c.pos.FromVector(new Vector3(15, 0, 0)); entity.AddComp(c); } if (!entity.GetExistComp <SkillStatusComponent>()) { SkillStatusComponent c = new SkillStatusComponent(); DataTable data = DataManager.GetData("SkillData"); for (int i = 0; i < data.TableIDs.Count; i++) { c.m_skillList.Add(new SkillData(data.TableIDs[i], i)); } entity.AddComp(c); } if (!entity.GetExistComp <CDComponent>()) { CDComponent c = new CDComponent(); entity.AddComp(c); } if (!entity.GetExistComp <CampComponent>()) { CampComponent c = new CampComponent(); c.creater = entity.ID; entity.AddComp(c); } if (!entity.GetExistComp <MoveComponent>()) { MoveComponent c = new MoveComponent(); entity.AddComp(c); } if (!entity.GetExistComp <CollisionComponent>()) { CollisionComponent c = new CollisionComponent(); c.area.areaType = AreaType.Circle; c.area.radius = 0.5f; entity.AddComp(c); } if (!entity.GetExistComp <LifeComponent>()) { LifeComponent c = new LifeComponent(); c.maxLife = playerComp.CharacterData.m_hp; c.life = playerComp.CharacterData.m_hp; entity.AddComp(c); } if (!entity.GetExistComp <BlowFlyComponent>()) { BlowFlyComponent c = new BlowFlyComponent(); entity.AddComp(c); } }
public void PlayerJoin(EntityBase entity) { if (!entity.GetExistComp <CommandComponent>()) { CommandComponent c = new CommandComponent(); entity.AddComp(c); } if (!entity.GetExistComp <ViewComponent>()) { ViewComponent c = new ViewComponent(); entity.AddComp(c); } if (!entity.GetExistComp <AssetComponent>()) { AssetComponent c = new AssetComponent(); c.m_assetName = "famale_01"; entity.AddComp(c); } if (!entity.GetExistComp <MoveComponent>()) { MoveComponent c = new MoveComponent(); entity.AddComp(c); } if (!entity.GetExistComp <PlayerComponent>()) { PlayerComponent c = new PlayerComponent(); entity.AddComp(c); } if (!entity.GetExistComp <SkillStatusComponent>()) { SkillStatusComponent c = new SkillStatusComponent(); DataTable data = DataManager.GetData("SkillData"); for (int i = 0; i < data.TableIDs.Count; i++) { c.m_skillList.Add(new SkillData(data.TableIDs[i], i)); } entity.AddComp(c); } if (!entity.GetExistComp <CDComponent>()) { CDComponent c = new CDComponent(); entity.AddComp(c); } if (!entity.GetExistComp <MoveComponent>()) { MoveComponent c = new MoveComponent(); entity.AddComp(c); } if (!entity.GetExistComp <CampComponent>()) { CampComponent c = new CampComponent(); entity.AddComp(c); } if (!entity.GetExistComp <CollisionComponent>()) { CollisionComponent c = new CollisionComponent(); c.area.areaType = AreaType.Circle; c.area.radius = 0.5f; entity.AddComp(c); } if (!entity.GetExistComp <LifeComponent>()) { LifeComponent c = new LifeComponent(); c.maxLife = 100; c.life = 100; entity.AddComp(c); } //预测一个输入 //TODO 放在框架中 if (entity.GetExistComp <ConnectionComponent>()) { ConnectionComponent cc = entity.GetComp <ConnectionComponent>(); cc.m_lastInputCache = new CommandComponent(); } }
public void PlayerJoin(EntityBase entity) { ConnectionComponent connectComp = entity.GetComp <ConnectionComponent>(); PlayerComponent playerComp = null; if (!entity.GetExistComp <PlayerComponent>()) { playerComp = new PlayerComponent(); entity.AddComp(playerComp); } else { playerComp = entity.GetComp <PlayerComponent>(); } //将角色ID传入游戏 playerComp.characterID = connectComp.m_session.player.characterID; playerComp.nickName = connectComp.m_session.player.playerID; ElementData e1 = new ElementData(); e1.id = 100; e1.num = 10; playerComp.elementData.Add(e1); ElementData e2 = new ElementData(); e2.id = 101; e2.num = 10; playerComp.elementData.Add(e2); ElementData e3 = new ElementData(); e3.id = 102; e3.num = 10; playerComp.elementData.Add(e3); ElementData e4 = new ElementData(); e4.id = 103; e4.num = 00; playerComp.elementData.Add(e4); if (!entity.GetExistComp <CommandComponent>()) { CommandComponent c = new CommandComponent(); entity.AddComp(c); } if (!entity.GetExistComp <TransfromComponent>()) { TransfromComponent c = new TransfromComponent(); c.pos.FromVector(new Vector3(15, 0, 0)); entity.AddComp(c); } if (!entity.GetExistComp <AssetComponent>()) { AssetComponent c = new AssetComponent(); c.m_assetName = playerComp.CharacterData.m_ModelID; entity.AddComp(c); } if (!entity.GetExistComp <MoveComponent>()) { MoveComponent c = new MoveComponent(); c.pos.FromVector(new Vector3(15, 0, 0)); entity.AddComp(c); } if (!entity.GetExistComp <SkillStatusComponent>()) { SkillStatusComponent c = new SkillStatusComponent(); DataTable data = DataManager.GetData("SkillData"); for (int i = 0; i < data.TableIDs.Count; i++) { c.m_skillList.Add(new SkillData(data.TableIDs[i], i)); } entity.AddComp(c); } if (!entity.GetExistComp <CDComponent>()) { CDComponent c = new CDComponent(); entity.AddComp(c); } if (!entity.GetExistComp <CampComponent>()) { CampComponent c = new CampComponent(); c.creater = entity.ID; entity.AddComp(c); } if (!entity.GetExistComp <MoveComponent>()) { MoveComponent c = new MoveComponent(); entity.AddComp(c); } if (!entity.GetExistComp <CollisionComponent>()) { CollisionComponent c = new CollisionComponent(); c.area.areaType = AreaType.Circle; c.area.radius = 0.5f; entity.AddComp(c); } if (!entity.GetExistComp <LifeComponent>()) { LifeComponent c = new LifeComponent(); c.maxLife = playerComp.CharacterData.m_hp; c.life = playerComp.CharacterData.m_hp; entity.AddComp(c); } if (!entity.GetExistComp <BlowFlyComponent>()) { BlowFlyComponent c = new BlowFlyComponent(); entity.AddComp(c); } //预测一个输入 //TODO 放在框架中 if (entity.GetExistComp <ConnectionComponent>()) { ConnectionComponent cc = entity.GetComp <ConnectionComponent>(); cc.m_lastInputCache = new CommandComponent(); cc.m_defaultInput = new CommandComponent(); } GameTimeComponent gtc = m_world.GetSingletonComp <GameTimeComponent>(); gtc.GameTime = 10000 * 1000; }
private void ShieldCDFinish(ICD userData) { this.RemoveComponent(this.m_ShieldCDComponent); this.m_ShieldCDComponent = null; }
private void CDFinished(ICD propsData) { this.RemoveComponent(this.m_CDComponent); this.m_CDComponent = null; }
private void Update() { if (MouseIn && Input.GetMouseButtonUp(0) && DS.CurrentItemGrid != null) { if (DS.CurrentItemGrid.GetType() == typeof(QuickSlotItem)) { // 快捷栏内转移物品 if (DS.CurrentItemGrid != MyItem) { Item tempitem = MyItem; int tempcount = ItemCount; initItemGird(DS.CurrentItemGrid.MyItem, DS.CurrentItemGrid.ItemCount); DS.CurrentItemGrid.initItemGird(tempitem, tempcount); } else { } DS.CurrentItemGrid = null; } else if (DS.CurrentItemGrid.GetType() == typeof(EquipmentGrid)) { // 装备栏->快捷栏 if (MyItem != null) { Bag.addItem(MyItem, ItemCount, true); } initItemGird(DS.CurrentItemGrid.MyItem, DS.CurrentItemGrid.ItemCount); DS.CurrentItemGrid.release(); Bag.removeItem(Bag.findItemGrid(MyItem), 1, true); DS.CurrentItemGrid = null; Bag.Owner.ItemList.Add(MyItem); } else { // 物品栏->快捷栏 if (MyItem != null) { Bag.addItem(MyItem, ItemCount, true); } initItemGird(DS.CurrentItemGrid.MyItem, DS.CurrentItemGrid.ItemCount); Bag.removeItem(DS.CurrentItemGrid, DS.CurrentItemGrid.ItemCount, true); DS.CurrentItemGrid = null; Bag.Owner.ItemList.Add(MyItem); } } if (MouseIn && Input.GetMouseButtonDown(1) && MyItem != null) { MyItem.QSID = ""; Bag.addItem(MyItem, ItemCount, true); MyIcon.sprite = DefaultIcon; CountComponent.SetActive(false); CDComponent.SetActive(false); MyItem = null; } #region initItemGird if (MyItem == null) { MyIcon.sprite = DefaultIcon; CountComponent.SetActive(false); CDComponent.SetActive(false); } else { MyItem.onHold(); MyIcon.enabled = true; CountComponent.SetActive(true); //MyIcon.sprite = MyItemGrid.MyIcon.sprite; CountText.text = ItemCount.ToString(); if (Input.GetKeyDown(HotKey)) { Bag.useItem(this, 1); } #region CDCheck try { if (MyItem.CoolDown != 0) { if (MyItem.CurrentCoolDown == MyItem.CoolDown) { CDComponent.SetActive(false); CDText.text = "0%"; } else { CDComponent.SetActive(true); int percent = int.Parse(string.Format("{0:0}", MyItem.CurrentCoolDown / MyItem.CoolDown * 100f)); CDMask.transform.localScale = new Vector2(OriginalSize.x, OriginalSize.y * (1 - percent * 0.01f)); if (percent < 80 && percent % 5 == 0) { CDText.text = string.Format("{0:0%}", MyItem.CurrentCoolDown / MyItem.CoolDown); } else if (percent >= 80) { CDText.text = string.Format("{0:0%}", MyItem.CurrentCoolDown / MyItem.CoolDown); } } } else { CDComponent.SetActive(false); } } catch (Exception e) { print(e.StackTrace); } #endregion } #endregion }