private void Start() { ActivatorInstances = new GameObject[ActivatorPrefabs.Length]; foreach (GameObject prefab in ActivatorPrefabs) { GameObject inst = Instantiate(prefab); SkillActivator activator = inst.GetComponent <SkillActivator>(); ActivatorInstances[(int)activator.Type] = inst; ActivatorInstances[(int)activator.Type].transform.position = transform.position; ActivatorInstances[(int)activator.Type].transform.parent = transform; } LoadingCompleted = true; }
private void Init() { if (_skillMgr == null) { _skillMgr = FindObjectOfType <SkillManager>(); } if (!_skillMgr.LoadingCompleted) { Invoke("Init", 0.01f); return; } _activator = _skillMgr.ActivatorInstances[(int)Type].GetComponent <SkillActivator>(); _image = GetComponent <Image>(); _image.color = new Color32(0, 0, 0, 255); _sprites = Resources.LoadAll <Sprite>(_spritePath); }
protected override void Start() { Animator animator = mOwner.GetComponent <Animator> (); animator.SetTrigger("Attack"); animator.SetInteger("AttackVariation", 3); SkillActivator skillActivator = mOwner.GetComponent <SkillActivator> (); AnimationKeyEvent handler = null; handler = (string key) => { if (key == mWaitForKey) { skillActivator.OnAnimationKey -= handler; status = AbilityActionStatus.Success; } }; skillActivator.OnAnimationKey += handler; status = AbilityActionStatus.Running; }