public void MoveDistance(Vector3 vMotion, bool bPhysics) { if (MoveCom == null) { Log.Error("MoveCom组件不存在!"); return; } MoveCom.MoveDistance(vMotion, bPhysics); }
public virtual void End() { mPlayerIdx = 0; mSkillID = 0; mAttackID = 0; mAttackWorldPos = Vector3.zero; mIsEnd = true; mAttackMoveCom = null; mEfxResPath = ""; }
MoveCom GetMoveCom() { MoveCom moveCom = null; BattleUnit unit = BattleInstance.instance.GetPlayer(mPlayerIdx).GetHeroUnit(); if (unit == null) { return(null); } moveCom = unit.GetCom("MoveCom") as MoveCom; return(moveCom); }
public override void OnBroadcastEvent(int eventID, int targetObjID, object args = null) { if (eventID == (int)Const_Util.BATTLE_EVENT.USE_SKILL) { if (mSkillItem.Count > 0) { int skillID = 1;//; // use skill if (moveCom == null) { moveCom = GetCom("MoveCom") as MoveCom; } SkillMgr.instance.BeginSkill(cobj.mPlayerIdx, skillID, cobj.GetObjID()); // TODO: use skillID mSkillItem.Remove(mSkillItem[0]); } } }
public virtual bool Begin(int playerIdx, int skillID, int attackID, string skillTmpName) { mPlayerIdx = playerIdx; mSkillID = skillID; mAttackID = attackID; mIsEnd = false; mSkillTemplateName = skillTmpName; mAttackMoveCom = GetMoveCom(); if (mAttackMoveCom == null) { Debug.LogError("SkillBase mAttackMoveCom == null"); } mEfxResPath = GetEfxResPath(); if (string.IsNullOrEmpty(mEfxResPath)) { Debug.LogError("SkillBase mEfxResPath IsNullOrEmpty"); } return(true); }
BattleUnit SpawnOneUnit(int playerIdx, int carResID, string resPath, Transform hangNode, Vector2 pos, Vector2 speed, int unitType) { int objID = 0; GameObject obj = ResMgr.instance.CreateObject(resPath, out objID); if (obj == null) { Debug.LogError("ObjMgr SpawnOneUnit obj == null resPath:" + resPath); } BattleUnit unitObj = new BattleUnit(playerIdx, objID, resPath, obj, hangNode, pos, speed, unitType); // attr com AttrCom attrCom = unitObj.GetRenderObjTr().GetComponent <AttrCom>(); if (attrCom == null) { attrCom = unitObj.GetRenderObjTr().gameObject.AddComponent <AttrCom>(); } unitObj.AddCom(attrCom); attrCom.InitAttr(carResID, unitType); // move com MoveCom move = unitObj.GetRenderObjTr().GetComponent <MoveCom>(); if (move == null) { move = unitObj.GetRenderObjTr().gameObject.AddComponent <MoveCom>(); } unitObj.AddCom(move); move.Init(speed); // collider com ColliderCom collider = unitObj.GetRenderObjTr().GetComponent <ColliderCom>(); if (collider == null) { collider = unitObj.GetRenderObjTr().gameObject.AddComponent <ColliderCom>(); } unitObj.AddCom(collider); // Scale com ScaleCom scaleCom = unitObj.GetRenderObjTr().GetComponent <ScaleCom>(); if (scaleCom == null) { scaleCom = unitObj.GetRenderObjTr().gameObject.AddComponent <ScaleCom>(); } unitObj.AddCom(scaleCom); // NitrogenCom NitrogenCom nitrogenCom = unitObj.GetRenderObjTr().GetComponent <NitrogenCom>(); if (nitrogenCom == null) { nitrogenCom = unitObj.GetRenderObjTr().gameObject.AddComponent <NitrogenCom>(); } unitObj.AddCom(nitrogenCom); SkillCom skillCom = unitObj.GetRenderObjTr().GetComponent <SkillCom>(); if (skillCom == null) { skillCom = unitObj.GetRenderObjTr().gameObject.AddComponent <SkillCom>(); } unitObj.AddCom(skillCom); StatusCom statusCom = unitObj.GetRenderObjTr().GetComponent <StatusCom>(); if (statusCom == null) { statusCom = unitObj.GetRenderObjTr().gameObject.AddComponent <StatusCom>(); } unitObj.AddCom(statusCom); return(unitObj); }