// Start is called before the first frame update public override void Initialization(CoreBase target, int damage, AgentTeam team, Vector2 scale) { base.Initialization(target, damage, team, scale); _speed = Mathf.Abs(_speed) * (TargetTeam == AgentTeam.Ally ? -1 : 1); AnimatorManager = GetComponent <Animator>(); AnimatorManager.AnimClip = (int)AbilityAnimClip.Move; }
public override void Initialization(CoreBase target, int damage, AgentTeam team, Vector2 scale) { base.Initialization(target, damage, team, scale); _rigid = GetComponent <Rigidbody2D>(); _rigid.AddForce(new Vector2(0, Mathf.Abs(Naukri.NMath.Gap(transform.position.x, Target.transform.position.x)) * InitForce)); AnimatorManager = GetComponent <Animator>(); targetPos = _rigid.transform.position; }
public virtual void Initialization(CoreBase target, int damage, AgentTeam team, Vector2 scale) { if (team == AgentTeam.Ally) { gameObject.GetComponent <SpriteRenderer>().material = GameArgs.World.GetComponent <World>().MaterialDefault; } else { FixPosition.x = -FixPosition.x; transform.localScale = new Vector3(transform.localScale.x * -1, transform.localScale.y, transform.localScale.z); gameObject.GetComponent <SpriteRenderer>().material = GameArgs.World.GetComponent <World>().MateriaGrayScale; } Team = team; Target = target; TargetTeam = target.Team; Damage = damage; Scale = new Vector2(Mathf.Abs(scale.x), Mathf.Abs(scale.y)); transform.localScale = new Vector3(transform.localScale.x * Scale.x, transform.localScale.y * Scale.y, 1); FixPosition *= Scale; transform.Translate(FixPosition); }
public static LayerMask EnemyLayerMask(this AgentTeam value) { return(1 << (int)(value == AgentTeam.Ally ? AgentTeam.Enemy : AgentTeam.Ally)); }
/// <summary> /// 新增狀態 /// </summary> /// <param name="value">目標</param> /// <param name="addFlag">要新增的狀態</param> public static LayerMask AllyLayerMask(this AgentTeam value) { return(1 << (int)value); }