コード例 #1
0
 private void OnTriggerEnter(Collider collision)
 {
     if (!fallingSound.isPlaying)
     {
         fallingSound.Play();
     }
     fireball.SetActive(false);
     StartCoroutine(StampDisappear());
     fireExplosion.transform.SetParent(GameController.instance.transform);
     fireExplosion.SetActive(true);
     if (isSeed)
     {
         Vector3 v = gameObject.transform.position;
         v.y = 1f;
         FireElementController e = FireElementController.InstantiateByPool(fe, v, Quaternion.Euler(0, 0, 0), GameController.instance.transform, gameObject.layer, target);
         e.SetTarget(target);
         e.speller = this.speller;
         isSeed    = false;
     }
     if (collision.gameObject.layer == 9 && collision.gameObject.GetComponent <State>() != null)
     {
         collision.gameObject.GetComponent <State>().TakeSkillContent(damage);
     }
     StartCoroutine(DelayDisable(2));
 }
コード例 #2
0
    public static FireElementController InstantiateByPool(FireElementController item, Vector3 worldPos, Quaternion worldRot, Transform parent, int layer, GameObject target)
    {
        FireElementController instance = InstantiateByPool(item);

        instance.gameObject.layer = layer;
        instance.transform.SetParent(parent, false);
        instance.transform.position = worldPos;
        instance.transform.rotation = worldRot;
        instance.target             = target;
        instance.gameObject.SetActive(true);
        return(instance);
    }