Esempio n. 1
0
    void OnEnable()
    {
        PlayerGridObject p = FindObjectOfType <PlayerGridObject>();

        //makes sure we have an animator
        if (!animator)
        {
            animator = this.gameObject.GetComponent <Animator>();
        }

        x = this.gameObject.transform.position.x;
        y = this.gameObject.transform.position.y;
        z = this.gameObject.transform.position.z;

        opened = PlayerPrefsX.GetBool("scene" + Application.loadedLevel + "loadedSlot" + Globals.loadedSlot
                                      + "pos x" + x + "pos y" + y + "pos z" + z + "door");

        if (opened)
        {
            OpenDoor();
        }
        else
        {
            CloseDoor();
        }
    }
Esempio n. 2
0
    // Use this for initialization
    protected override void Start()
    {
        base.Start();
        Globals.npcs.Add(this);
        originalPosition = this.gameObject.transform.position;

        anim     = this.gameObject.GetComponent <Animator>();
        player   = FindObjectOfType <PlayerGridObject>();
        canvas   = FindObjectOfType <UIController>();
        dialogue = canvas.dialogUI;

        if (VolcanoBoss && Globals.lavaBossBeaten)
        {
            textFileName = textFileNameAfterVolcano;
        }
        if (TornadoBoss && Globals.windBossBeaten)
        {
            textFileName = textFileNameAfterTornado;
        }
        if (JellyFishBoss && Globals.caveBossBeaten)
        {
            textFileName = textFileNameAfterJellyfish;
        }

        //readAlready = PlayerPrefsX.GetBool("npc" + saveNumber + "lvl" + Application.loadedLevel + "slot" + Globals.loadedSlot);
    }
Esempio n. 3
0
 //code for if wants to shoot in Player direction;
 void OnTriggerEnter2D(Collider2D other)
 {
     if (!uic.paused && !uic.dialogue)
     {
         if (!isShooter)
         {
             if (other.gameObject.tag == "Player")
             {
                 PlayerGridObject player = other.GetComponent <PlayerGridObject>();
                 if (direction == Globals.Direction.South && other.IsTouching(southCollider.gameObject.GetComponent <BoxCollider2D>()))
                 {
                     player.TakeDamage(damage);
                 }
                 else if (direction == Globals.Direction.North && other.IsTouching(northCollider.gameObject.GetComponent <BoxCollider2D>()))
                 {
                     player.TakeDamage(damage);
                 }
                 else if (direction == Globals.Direction.East && other.IsTouching(eastCollider.gameObject.GetComponent <BoxCollider2D>()))
                 {
                     player.TakeDamage(damage);
                 }
                 else if (direction == Globals.Direction.West && other.IsTouching(westCollider.gameObject.GetComponent <BoxCollider2D>()))
                 {
                     player.TakeDamage(damage);
                 }
             }
         }
     }
 }
Esempio n. 4
0
    IEnumerator spikeUpWait(Collider2D other)
    {
        PlayerGridObject player = other.GetComponent <PlayerGridObject>();

        if (toggleable == false)
        {
            if (player.platforms == 0 && !striked)
            {
                yield return(new WaitForSeconds(spikeCD));

                if (other.IsTouching(this.gameObject.GetComponent <Collider2D>()))
                {
                    player.TakeDamage(damage);
                }
                anim.SetBool("SpikesUp", true);
                striked = true;
                StartCoroutine(Wait());
            }
        }
        else
        {
            if (spikesUp)
            {
                player.TakeDamage(damage);
                player.gameObject.transform.position = Globals.spawnLocation;
            }
        }
    }
Esempio n. 5
0
 void OnTriggerExit2D(Collider2D col)
 {
     if (col.gameObject.CompareTag("Player"))
     {
         player = null;
     }
 }
Esempio n. 6
0
 void OnTriggerEnter2D(Collider2D col)
 {
     if (col.gameObject.CompareTag("Player"))
     {
         player = col.GetComponentInParent <PlayerGridObject>();
     }
 }
    void OnTriggerStay2D(Collider2D other)
    {
        MoveableGridObject otherGridObject = other.GetComponent <MoveableGridObject>();
        BombObject         bombObject      = other.GetComponent <BombObject>();

        if (bombObject)
        {
            bombObject.Roll(direction);
        }
        if (other.gameObject.CompareTag("Player"))
        {
            PlayerGridObject player = other.GetComponent <PlayerGridObject>();
            if (player.platforms == 0)
            {
                player.Move(direction);
            }
        }
        else if (otherGridObject && !other.gameObject.CompareTag("WindSlime"))
        {
            otherGridObject.Move(direction);
            EnemyGridObject enemyGridObject = other.gameObject.GetComponent <EnemyGridObject>();
            if (enemyGridObject)
            {
                enemyGridObject.TakeDamage(damage);
            }
        }
    }
 // Use this for initialization
 void Start()
 {
     uic    = FindObjectOfType <UIController>();
     player = FindObjectOfType <PlayerGridObject>();
     moveList.Add(this.gameObject);
     origPos = new Vector3(this.transform.position.x, this.transform.position.y, this.transform.position.z);
 }
Esempio n. 9
0
 // Update is called once per frame
 void OnTriggerEnter2D(Collider2D other)
 {
     if (other.gameObject.CompareTag("Player"))
     {
         PlayerGridObject player = other.GetComponent <PlayerGridObject>();
         player.gameObject.transform.position = RespawnLocation;
     }
 }
Esempio n. 10
0
    //OnTrigger stuff makes it so boulders can't spawn on top of the player
    void OnTriggerEnter2D(Collider2D other)
    {
        PlayerGridObject player = other.GetComponent <PlayerGridObject>();

        if (player)
        {
            active = false;
        }
    }
Esempio n. 11
0
    void OnTriggerExit2D(Collider2D other)
    {
        PlayerGridObject player = other.GetComponent <PlayerGridObject>();

        if (player)
        {
            currentFrame = framesBetweenBoulders - 20;
            active       = true;
        }
    }
Esempio n. 12
0
    // Use this for initialization
    protected override void Start()
    {
        base.Start();
        currentSpawnerIndex = -1;         // so boss randomly spawns in any corner
        state = BossState.StartEmerge;
        p     = FindObjectOfType <PlayerGridObject>();
        boat.GetComponent <PlatformGridObject>().delay = 100;

        //state = BossState.Dormant;
        //SpawnEnemies();
    }
Esempio n. 13
0
 public void OnTriggerStay2D(Collider2D collision)
 {
     if (collision.gameObject.CompareTag("Player"))
     {
         PlayerGridObject player = collision.GetComponent <PlayerGridObject>();
         if (player != null)
         {
             player.TakeDamage(base.damage);
         }
     }
 }
Esempio n. 14
0
 void OnTriggerExit2D(Collider2D col)
 {
     if (raised == true)
     {
         if (col.gameObject.CompareTag("Player"))
         {
             PlayerGridObject player = col.GetComponent <PlayerGridObject>();
             player.platforms--;
         }
     }
 }
Esempio n. 15
0
    void OnTriggerEnter2D(Collider2D other)
    {
        if (other.gameObject.tag == "Player")
        {
            pickedUp = true;
            PlayerGridObject player = other.GetComponent <PlayerGridObject>();
            if (player == null)
            {
                return;                 // Ignore the player's other colliders (hacky)
            }
            UIController controller = player.canvas;

            if (itemId == 12)
            {
                Globals.caveBossBeaten = true;
                portal.SetActive(true);
            }
            else if (itemId == 11)
            {
                Globals.windBossBeaten = true;
                portal.SetActive(true);
            }
            else if (itemId == 10)
            {
                Globals.lavaBossBeaten = true;
                portal.SetActive(true);
            }
            // Key is 9
            else if (itemId == 9)
            {
                Globals.numKeys++;
                controller.UpdateUI();
            }
            // Health is 8
            else if (itemId == 8)
            {
                player.health++;
                if (player.health > 12)
                {
                    player.health = 12;
                }
                controller.UpdateHealth(player.health);
            }
            // Seeds are 0 - 7
            else if (Globals.inventory[itemId] < 9)
            {
                Globals.inventory[itemId]++;
                controller.UpdateUI();
            }

            AudioSource.PlayClipAtPoint(clip, player.gameObject.transform.position);
            Destroy(this.gameObject);
        }
    }
Esempio n. 16
0
    void FixedUpdate()
    {
        PlayerGridObject p = FindObjectOfType <PlayerGridObject>();

        counter++;
        if (counter >= 200)
        {
            Globals.startCredits = true;
            p.deathPanel.SetActive(true);
            Application.LoadLevel(1);
        }
    }
Esempio n. 17
0
    protected void PoisonHeartTint(Color tint)
    {
        // Reset heart tint
        if (affectedTarget is PlayerGridObject)
        {
            PlayerGridObject player = affectedTarget as PlayerGridObject;

            for (int i = 0; i < UIController.totalHearts; i++)
            {
                player.canvas.healthIcons[i].color = tint;
            }
        }
    }
Esempio n. 18
0
    // Use this for initialization
    protected override void Start()
    {
        base.Start();
        player     = FindObjectOfType <PlayerGridObject>();
        canvas     = FindObjectOfType <UIController>();
        deathPanel = canvas.deathPanelUI;

        if (!activeCollider)
        {
            BoxCollider2D thisCollider = this.gameObject.GetComponent <BoxCollider2D>();
            thisCollider.enabled = false;
            Destroy(transform.GetComponent <Rigidbody>());
        }
    }
Esempio n. 19
0
    protected virtual void OnTriggerEnter2D(Collider2D other)
    {
        PlayerGridObject player = other.GetComponent <PlayerGridObject>();

        if (player)
        {
            OxygenLevel oxygen = other.GetComponent <OxygenLevel>();
            if (oxygen)
            {
                oxygen.RefillOxygen();
            }
            Destroy(gameObject);
        }
    }
    void OnTriggerEnter2D(Collider2D col)
    {
        if (col.gameObject.CompareTag("Player"))
        {
            moveList.Add(col.gameObject);
            PlayerGridObject player = col.GetComponent <PlayerGridObject>();
            player.platforms++;
            hasPlayer = true;
        }
        if (col.gameObject.CompareTag("Enemy") || col.gameObject.CompareTag("EnemySpawner"))
        {
            //there's a bug where the platform is stuck in the middle of lava if it hits a firemonster

            /*if (col.gameObject.GetComponent<GenericMonsterBehaviour>())
             * {
             *  return;
             * }*/
            KillableGridObject enemy = col.GetComponentInParent <KillableGridObject>();
            enemy.TakeDamage(damage);
        }
        if (!pingPong && col.gameObject.CompareTag("Turbine") && !col.gameObject.GetComponent <TurbinePlantObject>().onPlatform)
        {
            col.gameObject.GetComponent <TurbinePlantObject>().onPlatform = true; //makes sure turbine can only be on one platform
            if (!turbineMove)
            {
                if (col.gameObject.GetComponentInParent <TurbinePlantObject>().direction == Globals.Direction.West)
                {
                    direction = Globals.Direction.East;
                }
                else if (col.gameObject.GetComponentInParent <TurbinePlantObject>().direction == Globals.Direction.East)
                {
                    direction = Globals.Direction.West;
                }
                else if (col.gameObject.GetComponentInParent <TurbinePlantObject>().direction == Globals.Direction.North)
                {
                    direction = Globals.Direction.South;
                }
                else if (col.gameObject.GetComponentInParent <TurbinePlantObject>().direction == Globals.Direction.South)
                {
                    direction = Globals.Direction.North;
                }
            }
            plant = col.gameObject.GetComponent <PlantGridObject>();

            moveList.Add(col.gameObject);
            hasTurbine  = true;
            turbineMove = true;
        }
    }
    public IEnumerator screenBlackout(PlayerGridObject player)
    {
        //reset the player
        player.canMove        = false;
        Globals.player.health = 12;
        player.canvas.UpdateHealth(Globals.player.health);

        //transitioning
        deathPanel.SetActive(true);
        yield return(new WaitForSeconds(0.5f));

        //Application.LoadLevel(Application.loadedLevel);


        player.gameObject.transform.position = Globals.spawnLocation;
        deathPanel.SetActive(false);
        player.canMove = true;
    }
    // Destroys this boat as well as the plant on it
    public void Destructor()
    {
        for (int i = 0; i < moveList.Count; i++)
        {
            if (moveList[i].CompareTag("Turbine") || moveList[i].CompareTag("Plant"))
            {
                PlantGridObject plant = moveList[i].GetComponent <PlantGridObject>();
                plant.TakeDamage(500);
            }
            if (moveList[i].CompareTag("Player"))
            {
                PlayerGridObject player = moveList[i].GetComponent <PlayerGridObject>();
                player.invincible = false;
            }
        }

        Destroy(this.gameObject);
    }
Esempio n. 23
0
    void OnEnable()
    {
        PlayerGridObject p = FindObjectOfType <PlayerGridObject>();

        if (!p.itemsRePickUp)
        {
            x = this.gameObject.transform.position.x;
            y = this.gameObject.transform.position.y;
            z = this.gameObject.transform.position.z;

            pickedUp = PlayerPrefsX.GetBool("scene" + Application.loadedLevel + "loadedSlot" + Globals.loadedSlot
                                            + "pos x" + x + "pos y" + y + "pos z" + z + "item");

            if (Globals.loadedSlot != -1 && pickedUp)
            {
                this.gameObject.SetActive(false);
            }
        }
    }
Esempio n. 24
0
    void OnTriggerEnter2D(Collider2D other)
    {
        if (unlockable)
        {
            if (other.gameObject.tag == "Player")
            {
                if (Globals.numKeys > 0)
                {
                    Globals.numKeys--;

                    PlayerGridObject player     = other.GetComponent <PlayerGridObject>();
                    UIController     controller = player.canvas;

                    controller.UpdateUI();

                    OpenDoor();
                }
            }
        }
    }
Esempio n. 25
0
    void OnTriggerEnter2D(Collider2D other)
    {
        if (other.gameObject.tag == "Player")
        {
            PlayerGridObject player = other.GetComponent <PlayerGridObject>();
            if (player.platforms <= 0)
            {
                player.TakeDamage(100);
                //player.gameObject.transform.position = Globals.spawnLocation;

                //StartCoroutine(screenBlackout());
            }
        }
        RollingBoulder boulder = other.GetComponent <RollingBoulder>();

        if (boulder)
        {
            boulder.StartCrumbling();
        }
    }
 void OnTriggerExit2D(Collider2D col)
 {
     if (col.gameObject.CompareTag("Player"))
     {
         hasPlayer = false;
         PlayerGridObject player = col.GetComponent <PlayerGridObject>();
         moveList.Remove(col.gameObject);
         player.platforms--;
     }
     if (col.gameObject.GetComponent <TurbinePlantObject>())
     {
         hasTurbine   = false;
         turbineMove  = false;
         delayCounter = 0;
     }
     if (!hasPlayer && hasTurbine)
     {
         plant.TakeDamage(100);
     }
 }
    void OnTriggerStay2D(Collider2D other)
    {
        if (other.gameObject.tag == "Player")
        {
            PlayerGridObject player = other.GetComponent <PlayerGridObject>();
            if (player == null)
            {
                return;                 // Ignore the player's other colliders (hacky)
            }
            framecounter++;

            if (framecounter > 50)
            {
                UIController controller = player.canvas;
                if (player.health < 12)
                {
                    player.health++;
                    controller.UpdateHealth(player.health);
                    AudioSource.PlayClipAtPoint(clip, player.gameObject.transform.position);
                }
                framecounter = 0;
            }
        }
    }
Esempio n. 28
0
 public Game()
 {
     player = new PlayerGridObject();
     Application.LoadLevel(1);
 }
Esempio n. 29
0
 // Start is called before the first frame update
 void Start()
 {
     p = FindObjectOfType <PlayerGridObject>();
 }