Exemplo n.º 1
0
 // Use this for initialization
 void Start()
 {
     if (movement == null)
     {
         movement = GetComponent <CharacterMovement>();
     }
     if (elementBending == null)
     {
         elementBending = GetComponent <ElementBending>();
     }
 }
Exemplo n.º 2
0
 void ResolveInteraction(ElementBending other, EResult result)
 {
     if (result == EResult.B_Damage)
     {
         other.GetComponent <PlayerData>().Die(parent);
         other.ResetStates();
     }
     else if (result == EResult.B_Buff)
     {
         //Debug.Log("buff");
         other.PlayerIsBuffed = true;
         other.ChangeAura();
     }
     else
     {
         AudioManager.Instance.PlaySound("Miss");
         other.ResetStates();
     }
 }
Exemplo n.º 3
0
    private void OnTriggerEnter(Collider other)
    {
        if (hit)
        {
            return;
        }

        if (other.CompareTag("Player"))
        {
            ElementBending otherPlayerElement = other.GetComponent <ElementBending>();
            //Debug.Log(type + " x " + otherPlayerElement.ElementType);
            ResolveInteraction(otherPlayerElement, Conflic.GetProjectileResult(type, otherPlayerElement.ElementType, buffed, otherPlayerElement.PlayerIsBuffed));
            Spawner._count -= 1;

            Destroy(this.gameObject);
        }
        else
        {
            Signals.Get <HitWall>().Dispatch(this);
            hit = true;
        }
    }
Exemplo n.º 4
0
    void PickElement(ElementBending bend)
    {
        if (bend.ElementType != EType.Neutral)
        {
            return;
        }

        int gix = GetTileX(bend.transform.position.x);
        int giy = GetTileY(bend.transform.position.z);

        TileCell tileCell = _map[gix, giy].GetComponent <TileCell>();

        EType ele = tileCell._elementType;

        tileCell._elementType = EType.Neutral;
        bend.ElementType      = ele;

        if (ele != EType.Neutral)
        {
            bend.animator.SetTrigger("Receive");
        }

        if (tileCell._elementVisual)
        {
            if (tileCell._elementVisual.GetComponent <ElementAnimation>())
            {
                tileCell._elementVisual.GetComponent <ElementAnimation>().InstantiateAnimation();
            }
            tileCell._elementVisual = null;
        }

        if (bend.ElementType != EType.Neutral)
        {
            bend.elementalPickup = 0.0f;
        }
    }
 public void Start()
 {
     elementModel = GetComponent <ElementBending>();
     ChangeType();
     StartCoroutine(_timer());
 }