Hey peeps,
Ik ben voor het eerst aan het programmeren met j2me. Nu probeer ik een mobiele game te maken (soort pong) en wil ik een balletje hebben. Dit door middel van een Sprite...
Ik maak gebruik van een try catch en daar gaat het ook idd fout. Het plaatje kan op een of andere manier niet geladen worden.
Het png plaatje staat net als de andere bestanden in de hoofdpackage "gamePackage".
Misschien dat de directory aanduiding in de code niet klopt...ik heb het geprobeerd met:
"/ball.png"
"ball.png"
Hetzelfde met een gif plaatje.Maar nog altijd komt hij terecht dus in het catch gedeelte....waar zit de fout?
Ik doe mijn werk trouwens in NetBeans...kweenie of dat wat uitmaakt.
Ik ben voor het eerst aan het programmeren met j2me. Nu probeer ik een mobiele game te maken (soort pong) en wil ik een balletje hebben. Dit door middel van een Sprite...
Ik maak gebruik van een try catch en daar gaat het ook idd fout. Het plaatje kan op een of andere manier niet geladen worden.
Het png plaatje staat net als de andere bestanden in de hoofdpackage "gamePackage".
Misschien dat de directory aanduiding in de code niet klopt...ik heb het geprobeerd met:
"/ball.png"
"ball.png"
Hetzelfde met een gif plaatje.Maar nog altijd komt hij terecht dus in het catch gedeelte....waar zit de fout?
Ik doe mijn werk trouwens in NetBeans...kweenie of dat wat uitmaakt.
Code:
package gamePackage;
import javax.microedition.lcdui.*;
import javax.microedition.lcdui.game.GameCanvas;
import java.io.IOException;
import javax.microedition.lcdui.Image;
import javax.microedition.lcdui.game.Sprite;
public class Canvas extends GameCanvas implements Runnable {
private int slaapTijd = 30;
//Variabelen voor de Sprite
private Image balPlaatje;
private Sprite balSprite;
private int balpos_x = getWidth() / 2;
private int balpos_y = getHeight() / 2;
/** Creates a new instance of Canvas */
public Canvas (){
super(false);
}
public void run() {
while(true)
{
updateCanvas(getGraphics());
try
{
Thread.sleep(slaapTijd);
} catch (Exception e)
{
}
}
}
public void start(){
try{
balPlaatje = Image.createImage("ball.png");
}catch(IOException ioex)
{
System.out.println(ioex);
}
balSprite = new Sprite(balPlaatje,3,3);
balSprite.defineReferencePixel(2,2);
balSprite.setRefPixelPosition(balpos_x, balpos_y);
Thread runner = new Thread(this);
runner.start();
}
private void createBackgroundCanvas(Graphics g)
{
g.setColor(0x000000);
g.fillRect(0,0,getWidth(),getHeight());
}
private void updateCanvas(Graphics g)
{
createBackgroundCanvas(g);
balSprite.setRefPixelPosition(balpos_x, balpos_y);
balSprite.paint(g);
flushGraphics();
}
}