Пример #1
0
 /// <summary>
 /// Setter opp dataene som trengs for å tegne en bokstav som faller
 /// </summary>
 /// <param name="content">Contentmanager</param>
 /// <param name="receivedSprite">Navn på filen som skal tegnes</param>
 /// <param name="drawPlacement">Hvor teksturen skal tegnes</param>
 /// <param name="falling">Hvorvidt bokstaven skal "falle" eller ikke</param>
 /// <param name="ySpeed">Hvor raskt bokstaven skal falle</param>
 public FallingObject(ContentManager content, String receivedSprite, Vector2 drawPlacement, bool falling, int ySpeed)
 {
     this.ySpeed = ySpeed;
     this.falling = falling;
     sprite = new DrawSprite(content, receivedSprite, drawPlacement, 1);
     this.drawPlacement = drawPlacement;
 }
Пример #2
0
 public Ladybug(ContentManager content)
 {
     _ladybugTexture = GlobalVars.LADYBUG_SPRITE_NAME;
     _clicks = 0;
     _timeExisted = 0.0;
     _timeSinceDespawn = 0.0;
     _isDead = false;
     _draw = new DrawSprite(content, _ladybugTexture, new Rectangle(0, 0, 0, 0), GlobalVars.LADYBUG_SPRITE_RECTANGLE, 1) ;
 }
Пример #3
0
 /// <summary>
 /// Laster inn tittel og begin tekst
 /// setter startposisjonen til tittel 
 /// kaller reset
 /// </summary>
 public void initialize()
 {
     titleStartPos = new Vector2(screenWidth, GlobalVars.GROUND_Y_POS);
     title = new DrawSprite(game.Content, @"StartScreen\gameTitle", titleStartPos, 1);
     begin = new DrawSprite(game.Content, @"StartScreen\beginText", Vector2.Zero, 1);
     begin.opacity = 0;
     begin.placeInMidOfScreen();
     reset();
 }
Пример #4
0
 /// <summary>
 /// Gjør klar objekter med posisjon som er plassert i forhold til hverandre, dette gjør 
 /// hvis man endrer på basePos så vil alle elementene flytte seg deretter. De er lagt inn i
 /// en array for iterere igjennom lettere, selv om det er litt vanskeligere å holde oversikt
 /// over hvilken som er textures[4] enn textureBrownBlock.
 /// Setter posisjonene til de brune blokkene, vinduet og steinveien i GlobalVars for bruk i andre klasser.
 /// </summary>
 /// <param name="game"></param>
 public DrawBG(Game game)
 {
     textures[0] = new DrawSprite(game.Content, "Roof North West", 1, new Vector2(basePos.X, basePos.Y-86), 0.1f);
     textures[1] = new DrawSprite(game.Content, "Roof North", 5, new Vector2(basePos.X + textures[0].width, textures[0].position.Y), 0f);
     textures[2] = new DrawSprite(game.Content, "Roof North East", 1, new Vector2(textures[1].position.X + (textures[1].width * 5), textures[0].position.Y), 0f);
     textures[3] = new DrawSprite(game.Content, "Roof West", 1, new Vector2(basePos.X, textures[1].position.Y + textures[1].height - 87), 0.2f);
     GlobalVars.FIRST_BROWN_BLOCK_POS = new Vector2(basePos.X + textures[3].width, textures[3].position.Y);
     textures[4] = new DrawSprite(game.Content, "Brown Block", 4, GlobalVars.FIRST_BROWN_BLOCK_POS, 0.2f);
     textures[5] = new DrawSprite(game.Content, "Roof North2", 1, new Vector2(textures[4].position.X + textures[4].width * 4, textures[1].position.Y + 43), 0.2f);
     textures[6] = new DrawSprite(game.Content, "Roof East", 1, new Vector2(textures[4].position.X + textures[3].width * 5, textures[3].position.Y), 0.1f);
     textures[7] = new DrawSprite(game.Content, "Roof South West", 1, new Vector2(basePos.X, textures[3].position.Y + (textures[3].height / 2)), 0.3f);
     textures[8] = new DrawSprite(game.Content, "Roof South", 4, new Vector2(basePos.X + textures[7].width, textures[7].position.Y), 0.3f);
     GlobalVars.WINDOW_POS = new Vector2(textures[8].position.X + textures[8].width * 4, textures[7].position.Y);
     textures[9] = new DrawSprite(game.Content, "Window Tall", 1, GlobalVars.WINDOW_POS, 0.25f);
     textures[10] = new DrawSprite(game.Content, "Roof South East", 1, new Vector2(textures[9].position.X + textures[9].width, textures[7].position.Y), 0.3f);
     textures[11] = new DrawSprite(game.Content, "Wall Block Tall", 7, new Vector2(basePos.X, textures[7].position.Y + (textures[7].height / 2)), 0.1f);
     textures[12] = new DrawSprite(game.Content, "Door Tall Closed", 1, new Vector2(basePos.X + textures[11].width * 5, textures[7].position.Y + (textures[9].height / 1.6f)), 0.15f);
     textures[13] = new DrawSprite(game.Content, "Stone Block", 7, new Vector2(basePos.X, textures[10].position.Y + textures[11].height + 31), 0f);
     GlobalVars.GROUND_Y_POS = (int) textures[13].position.Y;
 }
Пример #5
0
        /// <summary>
        /// Citizens konstruktør
        /// </summary>
        /// <param name="content">Spillets Content-objekt</param>
        /// <param name="citizenNumber">Hvor mange citizens-objekter som er opprettet (inkludert denne)</param>
        public Citizen(ContentManager content, int citizenNumber)
        {
            //Hvor mange citizens-objekter som er opprettet (inkludert denne)
            _citizenNumber = citizenNumber;
            //Velger en tilfeldig sprite utifra en liste
            _spriteNumber = GlobalVars.RAND.Next(GlobalVars.CITIZEN_SPRITE_NAME.Length);
            _sprite = GlobalVars.CITIZEN_SPRITE_NAME[_spriteNumber];

            //En innbyggers utgansgsposisjon
            _spawnPos = new Vector2(-300, GlobalVars.GROUND_Y_POS);
            /*Oppretter objektet som skal tegne innbyggeren. Må ha egen "source" (beskjæring).
            Får en layerDepth basert på _citizenNumber (for å forhindre at flere innbyggere kjemper om samme zIndex)*/
            _drawable = new DrawSprite(content, _sprite,
                new Rectangle((int)_spawnPos.X, (int)_spawnPos.Y, GlobalVars.CITIZEN_BOX_WIDTH, GlobalVars.CITIZEN_BOX_HEIGHT),
                GlobalVars.CITIZEN_SPRITE_RECTANGLE, 0.8f + (float)((float)_citizenNumber / 100));

            _speed = GlobalVars.CITIZEN_INIT_SPEED;
            //Tidtaker
            _timeoutCounter = 0;
            //Tidtaker
            _changeSpeedCounter = 0;
            //Boolean som gir timeout når en innbygger er reddet (klikket på)
            _respawnDelay = false;
        }
Пример #6
0
 public Gem(ContentManager content, String gemTexture)
 {
     _canClick = true;
     _draw = new DrawSprite(content, gemTexture, new Rectangle(0, 0, 0, 0), GlobalVars.GEM_SPRITE_RECTANGLE, 1);
 }
Пример #7
0
        /// <summary>
        /// Henter ut replayButton og exitButton og setter rektangelet deres
        /// Henter også ut "You Win!" teksten
        /// Til slutt regnes den totale bredden på bokstavene ut, for så å plassere én og én bokstav ut ifra det
        /// </summary>
        public void initialize()
        {
            replay = false;
            tempText = game.Content.Load<Texture2D>(@"GameOverScreen\startOver");
            replayRectangle = new Rectangle(screenWidth / 2 - tempText.Width - space, screenHeight / 2 - tempText.Height / 2, tempText.Width, tempText.Height);
            replayButton = new DrawSprite(game.Content,@"GameOverScreen\startOver", replayRectangle, 1);

            tempText = game.Content.Load<Texture2D>(@"GameOverScreen\exit");
            exitRectangle = new Rectangle(screenWidth / 2 + space, screenHeight / 2 - tempText.Height / 2, tempText.Width, tempText.Height);
            exitButton = new DrawSprite(game.Content, @"GameOverScreen\exit", exitRectangle, 1);
            winText = new DrawSprite(game.Content, @"GameOverScreen\win", new Vector2(0, 50), 1);

            for (int i = 0; i < letterWidth.Length; i++) totalLetterWidth += letterWidth[i];
            xPos = (screenWidth / 2) - (totalLetterWidth / 2);
            for (int i = 0; i < gameOverText.Length; i++) gameOverText[i] = new FallingObject(game.Content, @"GameOverScreen\GameOverLetters\" + letterFileNames[i], new Vector2(xPos += letterWidth[i], -100), true, 10);
        }