Пример #1
0
    void Update()
    {
        if (beginMovement && target != null)
        {
            if (photonView.isMine)
            {
                if (MoveTowardsTarget(target, 0.2f))
                {
                    if (impactParticle != null)
                    {
                        GameObject impact    = PhotonNetwork.Instantiate(impactParticle.name, target.position, Quaternion.identity, 0) as GameObject;
                        CardVFX    impactVFX = impact.GetComponent <CardVFX>();
                        impactVFX.Initialize(targetCard, false, false);
                        //impactVFX.photonView.RPC("RPCInitialize", PhotonTargets.Others, 0);
                        RPCSendImpactEvent(PhotonTargets.Others);
                        SendImpactEvent();
                        Invoke("NetworkCleanup", 0.3f);
                        //Destroy(gameObject, 0.5f);
                    }
                }
            }
        }

        if (!photonView.isMine)
        {
            if (active)
            {
                //transform.position = Vector3.Lerp(transform.position, position, Time.deltaTime * lerpSmoothing);
                transform.position = Vector3.MoveTowards(transform.position, position, moveSpeed);
            }
        }
    }//End of Update
Пример #2
0
    protected override IEnumerator DisplayDeathEffect()
    {
        if (currentDeck.decktype != Constants.DeckType.Battlefield)
        {
            yield return(null);
        }

        yield return(new WaitForSeconds(0.7f));

        GameObject deathVFX;

        bool hasDeathEffect = string.IsNullOrEmpty(deathEffect);

        if (!hasDeathEffect)
        {
            deathVFX = PhotonNetwork.Instantiate(deathEffect, battleToken.incomingEffectLocation.position, Quaternion.identity, 0) as GameObject;
        }
        else
        {
            deathVFX = PhotonNetwork.Instantiate("VFX_NecroticFlash", battleToken.incomingEffectLocation.position, Quaternion.identity, 0) as GameObject;
        }

        if (deathVFX != null)
        {
            CardVFX cardVFX = deathVFX.GetComponent <CardVFX>();
            cardVFX.Initialize(this, false, false);
        }
    }
Пример #3
0
    public void LaunchVFX(CreatureCardVisual damageDealer, CreatureCardVisual damageTaker)
    {
        GameObject atkVFX;

        if (damageDealer.cardData.movingVFX)
        {
            atkVFX = PhotonNetwork.Instantiate(damageDealer.attackEffect, damageDealer.transform.position, Quaternion.identity, 0) as GameObject;
        }
        else
        {
            atkVFX = PhotonNetwork.Instantiate(damageDealer.attackEffect, damageTaker.transform.position, Quaternion.identity, 0) as GameObject;
        }

        CardVFX vfx = atkVFX.GetComponent <CardVFX>();

        if (vfx.photonView.isMine)
        {
            vfx.Initialize(damageTaker, damageDealer.cardData.movingVFX);

            if (damageDealer.cardData.movingVFX)
            {
                atkVFX.transform.SetParent(damageDealer.transform, false);
                atkVFX.transform.localPosition = Vector3.zero;
                //vfx.target = damageTaker.battleToken.incomingEffectLocation;
                //vfx.beginMovement = true;
            }
            else
            {
                atkVFX.transform.SetParent(damageTaker.battleToken.incomingEffectLocation, false);
                atkVFX.transform.localPosition = Vector3.zero;
            }
        }

        vfx.RPCSetVFXAciveState(PhotonTargets.Others, true);
    }
Пример #4
0
    protected override IEnumerator DisplayDeathEffect()
    {
        yield return(new WaitForSeconds(0.7f));

        GameObject deathVFX;

        if (deathEffect != "")
        {
            deathVFX = PhotonNetwork.Instantiate(deathEffect, supportToken.incomingEffectLocation.position, Quaternion.identity, 0) as GameObject;
        }
        else
        {
            deathVFX = PhotonNetwork.Instantiate("VFX_NecroticFlash", supportToken.incomingEffectLocation.position, Quaternion.identity, 0) as GameObject;
        }

        if (deathVFX != null)
        {
            CardVFX cardVFX = deathVFX.GetComponent <CardVFX>();
            cardVFX.Initialize(this, false, false);
        }
    }