Ejemplo n.º 1
0
        public bool Collisions(clsPlayer Player, int Map, ref clsNPC Collider, ref clsHUDBank Hud, ref clsChatBox Databank, ref int HudNum, ref string HudText)
        {
            Show(Map);

            if (Player.GetQuest() > 0)
            {
               NPCS[2].SetSpeech("Nice work. You must have done this kind of thing before.");
               NPCS[1].SetSpeech("Let's hope you are as good as your boss says you are. We can't let\nthis kind of thing spread.");
            }

            for (int i = 0; i < NPCS.Length; i++)
            {
                if (NPCS[i].Visible)
                {
                    if (Player.Sprite.Collides(NPCS[i].Sprite))
                    {
                        Collider = NPCS[i];
                        HudText = NPCS[i].GetUnlockText();
                        HudNum = NPCS[i].GetLockNom();
                        return true;
                    }
                }
            }

            return false;
        }
Ejemplo n.º 2
0
        public bool Collisions(ref clsHUDBank Hud, ref clsChatBoxBank TextMenus, ref clsPlayer Player, int Map, ref clsArchitecture Collider, ref clsBlockingBank Blocks, ref clsNPCBank NPC, ref clsController Controller, ref clsKeyboard KBoard)
        {
            HideAll();
            SetMap(Map);

            for (int i = 0; i < Trees.Length; i++)
            {

                if (Trees[i].Collide(Player))
                {
                    if (Trees[i].Visible)
                    {
                        Collider = Trees[i];
                    return true;
                    }
                }
            }
            for (int i = 0; i < Buildings.Length; i++)
            {
                if (Player.Sprite.Collides(Buildings[i].Body))
                {
                    if (Buildings[i].Visible)
                    {
                        Collider = Buildings[i];
                        return true;
                    }
                }
            }

            for (int i = 0; i < Mudhuts.Length; i++)
            {
                if (Player.Sprite.Collides(Mudhuts[i].Body))
                {
                    if (Mudhuts[i].Visible)
                    {
                        Collider = Mudhuts[i];
                        return true;
                    }
                }
            }

            if (Player.Sprite.Collides(Tower.Body))
            {
                if (Tower.Visible)
                {
                    Collider = Tower;

                    if (Controller.A || KBoard.ACCESS)
                    {
                        if (Player.GetQuest()==0)
                        {
                            if (Player.IsCollected(3))
                            {
                                {
                                    Tower.Body.frame = new Vector2(0, 0);
                                    Tower.Head.frame = new Vector2(0, 0);
                                    Player.ManipulateScore(150);
                                    Player.Collectables = 0;
                                    Player.StartQuest(1);
                                    TextMenus.RadioMessage.SetText("Great work Jim! Now we can\nfinally get started. First, you\nneed to go to a village just\nnorth of your current location.\nThere is a distinct lack of\neducation in correct water\nsanitation, we have to sort\nthat out.\n\nAdditionally, collect as many\nresources as you can. You\ncan't take on challenges if\nyou don't have resources.\nYou can build resources by\nhelping out the local island\npeople.");
                                    Hud.DataBank.SetText(2, "Clean Water in 1st World");
                                    TextMenus.Collectables.Closed();
                                    TextMenus.Databank.ShowIndicator();
                                    Blocks.hVillageblock[0].MakeHidden(); Blocks.hVillageblock[1].MakeHidden();
                                }
                            }
                        }

                    TextMenus.RadioMessage.ShowIndicator();
                    }

                    if (!Controller.A && !KBoard.ACCESS)
                    {
                        TextMenus.A.Open();
                    }

                    return true;
                }
            }

            return false;
        }
Ejemplo n.º 3
0
        public bool Collisions(ref clsPlayer Player, ref clsHUDBank HUD, int Map, ref clsBlocking Collider, ref clsChatBoxBank TextMenus, ref clsBackground Background)
        {
            HideAll();
            SetMap(Map);

            for (int i = 0; i < 2; i++)
            {
                if (hVillageblock[i].Collide(Player))
                {
                    if (hVillageblock[i].Visible)
                    {
                        Collider = hVillageblock[i];
                        return true;
                    }
                }
            }

            if (School.Collide(Player))
            {
                if (School.Visible)
                {
                    Collider = School;
                    return true;
                }
            }

            for (int i = 0; i < 3; i++)
            {
                if (TowerPieces[i].Collide(Player))
                {
                    if (TowerPieces[i].Visible)
                    {
                        TowerPieces[i].MakeHidden();
                        Player.AddCollectable();
                        Collider = TowerPieces[i];
                        return true;
                    }
                }
            }

            for (int i = 0; i < Blank.Length; i++)
            {
                if (Blank[i].Collide(Player))
                {
                    if (Blank[i].Visible)
                    {
                        Collider = Blank[i];
                        return true;
                    }
                }
            }

            for (int i = 0; i < RockBlock.Length; i++)
            {
                if (RockBlock[i].Collide(Player))
                {
                    if (RockBlock[i].Visible)
                    {
                        Collider = RockBlock[i];
                        return true;
                    }
                }
            }

            for (int i = 0; i < Bacteria.Length; i++)
            {
                if (Bacteria[i].Visible)
                {

                    if (Bacteria[i].Collide(Player))
                    {
                        Collider = Bacteria[i];
                        Player.AddCollectable();
                        Player.ManipulateScore(10);

                        Bacteria[i].MakeHidden();

                        if (Bacteria[0].OverWriteVisible && Bacteria[1].OverWriteVisible && Bacteria[2].OverWriteVisible && Bacteria[3].OverWriteVisible
                            && Bacteria[4].OverWriteVisible && Bacteria[5].OverWriteVisible && Bacteria[6].OverWriteVisible && Bacteria[7].OverWriteVisible
                            && Bacteria[8].OverWriteVisible && Bacteria[9].OverWriteVisible && Bacteria[10].OverWriteVisible && Bacteria[11].OverWriteVisible
                            && Bacteria[12].OverWriteVisible && Bacteria[13].OverWriteVisible && Bacteria[14].OverWriteVisible)
                        {
                            Player.EndQuests();
                            TextMenus.Collectables.Closed();
                            Background.SetMap(23); Player.Sprite.position = new Vector2(200, 290);
                            HUD.DataBank.SetText(17, "To Be Continued");
                            TextMenus.RadioMessage.SetText("You have completed the\ngame! Check the databank to\ngo over what you have\nlearned.");
                            TextMenus.RadioMessage.ShowIndicator();
                        }
                        return true;
                    }
                }

            }

            for (int i = 0; i < 6; i++)
            {
                  if (WarpPoints[i].Visible)
                    {
                        if (WarpPoints[i].Collide(Player))
                        {
                            HUD.AreYouSure[i + 2].Show();     return true;

                        }

                }
            }

            if (WarpPoints[6].Visible)
            {
                if (WarpPoints[6].Collide(Player))
                {
                    if (Player.GetScore() >= 580)
                    {
                        HUD.AreYouSure[8].Show();
                    }
                    else
                    {
                        TextMenus.RadioMessage.SetText("You need 580 resources to\nclean the well water.");
                        TextMenus.RadioMessage.ShowIndicator();
                    }

                    return true;

                }
            }

            if (WarpPoints[7].Visible)
            {
                if (WarpPoints[7].Collide(Player))
                {
                    if (Player.GetScore() >= 190)
                    {
                        HUD.AreYouSure[9].Show();
                    }
                    else
                   {
                    TextMenus.RadioMessage.SetText("You need 190 resources to\nteach the children. Try talking\nwith local people.");
                    TextMenus.RadioMessage.ShowIndicator();
                    }

                    return true;

                }
            }

            if (WarpPoints[8].Visible)
            {
                if (WarpPoints[8].Collide(Player))
                {
                    if (Player.GetScore() >= 360)
                    {
                        HUD.AreYouSure[10].Show();
                    }
                    else
                    {
                        TextMenus.RadioMessage.SetText("You need 360 resources to\n teach these people. Sorry.");
                        TextMenus.RadioMessage.ShowIndicator();
                    }

                    return true;

                }
            }

            for (int i = 9; i < WarpPoints.Length; i++)
            {
                if (WarpPoints[i].Visible)
                {
                    if (WarpPoints[i].Collide(Player))
                    {
                        HUD.AreYouSure[i + 2].Show();
                        return true;
                    }
                }
            }

            if (Boat.Visible)
            {
                if (Boat.Collide(Player))
                {
                    return true;
                }
            }

            return false;
        }
Ejemplo n.º 4
0
        protected override void LoadContent()
        {
            spriteBatch = new SpriteBatch(GraphicsDevice);
            RadioFont = Content.Load<SpriteFont>("RadioBox");
            Sprites = new clsSpriteBank(Content);

            TextMenus = new clsChatBoxBank(ref Sprites, ref RadioFont);
            NPC = new clsNPCBank(Content, ref Sprites);
            Environmentals = new clsArchitectureBank(Content, ref Sprites);
            Blocks = new clsBlockingBank(Content, ref Sprites);

            Hud = new clsHUDBank(ref Sprites, ref RadioFont);
            Player = new clsPlayer(Sprites.sprPlayer, 5, 15);
            Background = new clsBackground(Sprites.sprBackground);

            soundBank.PlayCue("Music");
        }