Package ru.vagrant_ai.questionmarkgame.main

Source Code of ru.vagrant_ai.questionmarkgame.main.preGameplayState

package ru.vagrant_ai.questionmarkgame.main;

import org.newdawn.slick.Color;
import org.newdawn.slick.GameContainer;
import org.newdawn.slick.Graphics;
import org.newdawn.slick.Image;
import org.newdawn.slick.SlickException;
import org.newdawn.slick.state.BasicGameState;
import org.newdawn.slick.state.StateBasedGame;

import ru.vagrant_ai.questionmarkgame.util.Text;
import ru.vagrant_ai.questionmarkgame.util.Util;
public class preGameplayState extends BasicGameState {
    int stateID = 1;
   
    public static Image background_land;
    public static Image background_room;
  public static Image background_grass;
  public static Image player;
  public static Image player_gun;
 
    int iter_back_land;
    int max_iter_back_land;
    int iter_player;
    int max_iter_player;
    int iter_back;
    int max_iter_back;
    int iter_text;
    int max_iter_text;

    public void enter(GameContainer container, StateBasedGame stateBasedGame) throws SlickException
  {
        iter_back_land = 0;
        max_iter_back_land = 500;
        iter_player = 0;
        max_iter_player = 730;
        iter_back = 0;
        max_iter_back = Game.app_x;
        iter_text = 0;
        max_iter_text = Game.app_x*2;
  }
   
    preGameplayState( int stateID )
    {
       this.stateID = stateID;
    }
   
    @Override
    public int getID() {
        return stateID;
    }
    public void init(GameContainer gc, StateBasedGame sbg) throws SlickException
    {
      background_land = Util.loadImage("background.png");
      background_room = Util.loadImage("locker.png");
      background_grass = Util.loadImage("grass.png");
      player = Util.loadImage("player_idle.png");
      player_gun = Util.loadImage("gun.png");
    }
    public void render(GameContainer gc, StateBasedGame sbg, Graphics g) throws SlickException
    {
      g.setColor(new Color(0, 0, 78)); g.fillRect(0, 0, Game.app_x, 0+iter_back); //Background
      background_room.draw(0, background_land.getHeight()*2-background_land.getHeight()*iter_back_land/max_iter_back_land); //Draw images
      background_land.draw(0, background_land.getHeight()*2-background_land.getHeight()*iter_back_land/max_iter_back_land);
      background_grass.draw(0, background_land.getHeight()*2-background_land.getHeight()*iter_back_land/max_iter_back_land);
      player.draw(Game.app_x+20-iter_player, GameplayState.ground_level); //Player
      player_gun.draw(Game.app_x+20+2-iter_player, GameplayState.ground_level+10); //Player
      g.setColor(new Color(255, 0, 0));
      Text.drawString(125, -Text.extractLength("'Esc' for controls", 125)*4+iter_text, Game.app_y/4, "'Esc' for controls", Color.yellow);
    }

    public void update(GameContainer gc, StateBasedGame sbg, int delta) throws SlickException
    {
      if (iter_back_land > max_iter_back_land)
      {
        iter_back_land = max_iter_back_land;
      }
      else if (iter_back_land < max_iter_back_land)
      {
        iter_back_land += 20;
      }
      if (iter_back_land == max_iter_back_land && iter_player < max_iter_player)
      {
        iter_player += 50;
      }
      else if (iter_player > max_iter_player)
      {
        iter_player = max_iter_player;
      }
         if (iter_player == max_iter_player && iter_back < max_iter_back)
      {
        iter_back += 20;
      }
      else if (iter_back > max_iter_back)
      {
        iter_back = max_iter_back;
      }
         if (iter_back == max_iter_back && iter_text < max_iter_text)
      {
        if (iter_text > 650 && iter_text < 750)
          iter_text++;
        else
          iter_text += 20;
      }
      else if (iter_text > max_iter_text)
      {
        iter_text = max_iter_text;
        sbg.enterState(Game.GAMEPLAYSTATE);
      }
    }
}
TOP

Related Classes of ru.vagrant_ai.questionmarkgame.main.preGameplayState

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.