Skip to content

Instantly share code, notes, and snippets.

@massimomusante
Created April 25, 2013 14:07
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save massimomusante/5459978 to your computer and use it in GitHub Desktop.
Save massimomusante/5459978 to your computer and use it in GitHub Desktop.
Bouncing ball Slick2D demo
package com.musante.demo;
import org.newdawn.slick.AppGameContainer;
import org.newdawn.slick.BasicGame;
import org.newdawn.slick.GameContainer;
import org.newdawn.slick.Graphics;
import org.newdawn.slick.Image;
import org.newdawn.slick.SlickException;
/**
* Slick bouncing-sprite demo
* @author maxx
* Apr 13, 2013
* Copyright (c) Massimo Musante 2013
*/
public class DemoSprite extends BasicGame
{
private int x = 100;
private int y = 100;
private int dx = 1;
private int dy = 1;
private Image img = null;
public DemoSprite()
{
super("Demo Sprite");
}
/*
* (non-Javadoc)
* @see org.newdawn.slick.Game#render(org.newdawn.slick.GameContainer, org.newdawn.slick.Graphics)
*/
@Override
public void render(GameContainer gc, Graphics g) throws SlickException
{
img.draw(x, y);
}
/*HelloSprite
* (non-Javadoc)
* @see org.newdawn.slick.BasicGame#init(org.newdawn.slick.GameContainer)
*/
@Override
public void init(GameContainer gc) throws SlickException
{
img = new Image("res/ball.png");
}
/*
* (non-Javadoc)
* @see org.newdawn.slick.BasicGame#update(org.newdawn.slick.GameContainer, int)
*/
@Override
public void update(GameContainer gc, int delta) throws SlickException
{
if(x>gc.getWidth()-img.getWidth()) dx = -1;
if(x<0) dx = 1;
if(y>gc.getHeight()-img.getHeight()) dy = -1;
if(y<0) dy = 1;
x = x+dx;
y = y+dy;
}
/**
* Start the demo, no parameters
* @param args
* @throws SlickException
*/
public static void main(String[] args) throws SlickException
{
AppGameContainer app = new AppGameContainer(new DemoSprite());
app.setDisplayMode(300, 200, false);
app.start();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment