Hallo Zusammen
Ich schreibe ein kleines Spiel mit Java nun habe ich eine Kollisionserkennung eingebaut, die zwei Actors überwachen sollte.. nun habe ich folgendes Problem:
wenn ich die Zeile 20
drinne habe dann kann Java das nicht compilieren, da es "Point" nicht kennt, obwohl das in amnchen beispielen so gamacht wird.. (GameGrid Spielprogrammierung mit Java)
lasse ich diese Zeile weg, kann das Porgramm compiliert werden, jedoch stürzt die Java-Anwendung dann beim öffnen ab
Ich weis wirklich nicht mehr weiter, hoffe ihr könnt mir helfen...
Mfg
Ich schreibe ein kleines Spiel mit Java nun habe ich eine Kollisionserkennung eingebaut, die zwei Actors überwachen sollte.. nun habe ich folgendes Problem:
wenn ich die Zeile 20
Java:
hero.setCollisionCircle(new Point(0, 0), 30);
lasse ich diese Zeile weg, kann das Porgramm compiliert werden, jedoch stürzt die Java-Anwendung dann beim öffnen ab
Ich weis wirklich nicht mehr weiter, hoffe ihr könnt mir helfen...
Mfg
Java:
// MyGameGrid.java
import ch.aplu.jgamegrid.*;
import java.awt.Color;
import java.awt.event.KeyEvent;
public class MyGameGrid extends GameGrid implements GGActorCollisionListener
{
private Hero hero = new Hero();
public MyGameGrid()
{
super(600, 600, 1, null, "sprites/hintergrund.jpg");//Hintergrundbild und GG-Auflösung
setSimulationPeriod(80);//Schnelleres Bewegen!
addActor(hero, new Location(7,300));// Unser Held, Spielfigur
Meteor meteor = new Meteor();
for (int i = 0; i < 2; i++)//2 Meteoren
addActor(new Meteor(), getRandomEmptyLocation());//Meteor, Kollisionsobjekt
hero.addActorCollisionListener(this);//Kollisionslistener für Hero
hero.setCollisionCircle(new Point(0, 0), 30);
hero.addCollisionActor(meteor);
setTitle("MeteorHero v.1.0");//Titel
show();
delay(3000);//delay before start
doRun();//Startet Programm automatisch
}
public int collide(Actor actor1, Actor actor2)
{
actor1.setLocation(new Location (7, 300));
actor2.setDirection(actor2.getDirection() + 180);
return 0;
}
public static void main(String[] args)
{
new MyGameGrid();
}
}
//--- KLASSE für den Helden
class Hero extends Actor
{
public Hero()
{
super("sprites/hero.gif");
}
public void act()//Verhalten Held
{
if (gameGrid.kbhit())//Steuerung
{
switch (gameGrid.getKeyCode())
{
case KeyEvent.VK_UP:
setDirection(270);
move(5);
break;
case KeyEvent.VK_LEFT:
setDirection(180);
move(5);
break;
case KeyEvent.VK_RIGHT:
setDirection(0);
move(5);
break;
case KeyEvent.VK_DOWN:
setDirection(90);
move(5);
break;
default:
return;
}
}
}
}
//KLasse für Aufzusammelnde Objekte
class Meteor extends Actor
{
public Meteor()
{
super("sprites/meteor2.gif");
}
public void act()
{
setSlowDown(5);
setDirection(180);
move();
}
}