Beispiel #1
0
    void Possess(PossessMessage message)
    {
        // Eject the currently possessed body if we want to possess someone else.
        if (possessed != null) {
            EjectPossessedBody(false);
        }

        // Move to the possessed's location.
        transform.position = message.possessed.transform.position;
        GetComponent<SpriteRenderer>().sprite = message.possessed.GetComponent<SpriteRenderer>().sprite;
        possessed = message.possessed;

        // Display the possess effect.
        Instantiate(effect, transform.position, Quaternion.identity);
    }
    void Possess(PossessMessage message)
    {
        // Eject the currently possessed body if we want to possess someone else.
        if (possessed != null)
        {
            EjectPossessedBody(false);
        }

        // Move to the possessed's location.
        transform.position = message.possessed.transform.position;
        GetComponent <SpriteRenderer>().sprite = message.possessed.GetComponent <SpriteRenderer>().sprite;
        GetComponent <Animator>().runtimeAnimatorController = message.possessed.GetComponent <Animator>().runtimeAnimatorController;
        possessed = message.possessed;

        // Display the possess effect.
        Instantiate(effect, transform.position, Quaternion.identity);
        //allow door control
        doorControl = true;
    }
Beispiel #3
0
    public void Dispossess(PossessMessage message)
    {
        // Display the possess effect.
        Instantiate(effect, transform.position, Quaternion.identity);

        // Revert to the Player's original sprite.
        GetComponent<SpriteRenderer>().sprite = originalSprite;
        GetComponent<SpriteRenderer>().color = Color.white;
        lerpControl = 0;

        if (message.possessed.GetComponent<Enemy>().enemyType == Enemy.EnemyType.Scientist) {
            Instantiate(deadScientist, transform.position, Quaternion.identity);
        }
        if (message.possessed.GetComponent<Enemy>().enemyType == Enemy.EnemyType.Soldier) {
            Instantiate(deadSoldier, transform.position, Quaternion.identity);
        }

        possessed = null;
    }
    public void Dispossess(PossessMessage message)
    {
        // Display the possess effect.
        Instantiate(effect, transform.position, Quaternion.identity);

        // Revert to the Player's original sprite.
        GetComponent <Animator>().runtimeAnimatorController = originalAnimator;
        GetComponent <SpriteRenderer>().sprite = originalSprite;
        GetComponent <SpriteRenderer>().color  = Color.white;
        lerpControl = 0;

        if (message.possessed.GetComponent <Enemy>().enemyType == Enemy.EnemyType.Scientist)
        {
            Instantiate(deadScientist, transform.position, Quaternion.identity);
        }
        if (message.possessed.GetComponent <Enemy>().enemyType == Enemy.EnemyType.Soldier)
        {
            Instantiate(deadSoldier, transform.position, Quaternion.identity);
        }

        possessed   = null;
        doorControl = false;
    }