Compare commits
65 Commits
e58b55993d
..
main
| Author | SHA1 | Date | |
|---|---|---|---|
| df41cd63c3 | |||
| 18f6594ec7 | |||
| c52ba44c44 | |||
| 8a15fa5a51 | |||
| c0b6517f14 | |||
| 40d5295716 | |||
| 153f710a44 | |||
| d84b853b65 | |||
| bd0e81a2f7 | |||
| a36481e098 | |||
| c97dcde07a | |||
| 4d5e6ad567 | |||
| 69e753d5a8 | |||
| a7cfa6923a | |||
| fe6d466cd6 | |||
| 047fe9597d | |||
| af551a1a57 | |||
| dc85fd679b | |||
| 8ae09335c0 | |||
| c1de4dad10 | |||
| fe9208291f | |||
| 1fbc555d31 | |||
| 2e11569755 | |||
| b5bbd00cc1 | |||
| 97c8d5641e | |||
| 964725a81c | |||
| aa07effa13 | |||
| 6ab5576115 | |||
| f70e394f01 | |||
| 9a0d7e7f7a | |||
| f1bb70a2a2 | |||
| 1796607c93 | |||
| 5cf095c370 | |||
| ddba231979 | |||
| c0c5151c41 | |||
| 236a363572 | |||
| 6215bff73d | |||
| c719e5b053 | |||
| b3a951626c | |||
| 3d047538f1 | |||
| a39e816038 | |||
| 443b4e9247 | |||
| 1ed7e0ce1f | |||
| fe11e83e78 | |||
| fc9f3a660e | |||
| f7f611c2ae | |||
| eba1e4567e | |||
| a0de2fb58d | |||
| aa8fb9a067 | |||
| 66b7ced23a | |||
| 532e78de04 | |||
| 1cd6356f4f | |||
| f8c53b518d | |||
| b095aeb05f | |||
| c605600c84 | |||
| 8477d63e51 | |||
| da0a97adfe | |||
| bfada2dbc2 | |||
| 22d42273c1 | |||
| ce7d999b0f | |||
| cdc2e107d5 | |||
| 51725cd2b8 | |||
| cdcb5a5bac | |||
| afdeede498 | |||
| 56b755b3d6 |
@@ -25,7 +25,7 @@ public class BreakingPlattform extends Plattform
|
||||
{
|
||||
IsBreaking= true;
|
||||
//Greenfoot.playSound("...")
|
||||
this.setImage("BreakingPlattform2.png"); //untested
|
||||
this.setImage("Breaking2.png");
|
||||
|
||||
}
|
||||
if(IsBreaking)
|
||||
|
||||
@@ -1,7 +1,11 @@
|
||||
#BlueJ class context
|
||||
comment0.target=Enemy
|
||||
comment1.params=
|
||||
comment1.target=void\ act()
|
||||
comment1.params=targetX\ targetY
|
||||
comment1.target=Enemy(int,\ int)
|
||||
comment2.params=
|
||||
comment2.target=void\ shootAtPlayer()
|
||||
numComments=3
|
||||
comment2.target=void\ act()
|
||||
comment3.params=targetX\ targetY
|
||||
comment3.target=void\ moveToTargetLocation(int,\ int)
|
||||
comment4.params=
|
||||
comment4.target=void\ shootAtPlayer()
|
||||
numComments=5
|
||||
|
||||
@@ -2,17 +2,46 @@ import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
|
||||
|
||||
public class Enemy extends Actor
|
||||
{
|
||||
int targetX;
|
||||
int targetY;
|
||||
|
||||
boolean targetReached = false;
|
||||
|
||||
int speed = 3;
|
||||
public Enemy (int targetX, int targetY) {
|
||||
this.targetX = targetX;
|
||||
this.targetY = targetY;
|
||||
}
|
||||
|
||||
int shootTimer;
|
||||
public void act()
|
||||
{
|
||||
shootAtPlayer();
|
||||
if (!targetReached){
|
||||
moveToTargetLocation(targetX, targetY);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public void moveToTargetLocation(int targetX, int targetY){
|
||||
double dx = targetX - getX();
|
||||
double dy = targetY - getY();
|
||||
double distance = Math.sqrt(Math.pow(dx, 2) + Math.pow(dy, 2));
|
||||
if (distance < 2){
|
||||
targetReached = true;
|
||||
}
|
||||
setLocation(getX() + (int)(dx/distance*speed), getY() + (int)(dy/distance*speed));
|
||||
}
|
||||
|
||||
public void shootAtPlayer(){
|
||||
Player player = getWorld().getObjects(Player.class).get(0);
|
||||
shootTimer++;
|
||||
if (player.getX() - getX() < 0){
|
||||
setImage("Enemy.png");
|
||||
} else if (player.getX() - getX() > 0){
|
||||
setImage("EnemyRight.png");
|
||||
}
|
||||
if (shootTimer >= 100){
|
||||
Player player = getWorld().getObjects(Player.class).get(0);
|
||||
EnemyProjectile enemyProjectile = new EnemyProjectile();
|
||||
getWorld().addObject(enemyProjectile, getX(), getY());
|
||||
enemyProjectile.turnTowards(player.getX(), player.getY());
|
||||
|
||||
@@ -26,7 +26,7 @@ public class EnemyProjectile extends Projectile
|
||||
return false;
|
||||
}
|
||||
//Check X-Value
|
||||
if (getX() <= 0 || getX() >= getWorld().getHeight()-1){
|
||||
if (getX() <= 0 || getX() >= getWorld().getWidth()-1){
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
#BlueJ class context
|
||||
comment0.target=GameOverWorld
|
||||
comment0.text=\r\n\ Write\ a\ description\ of\ class\ GameOverWorld\ here.\r\n\ \r\n\ @author\ (your\ name)\ \r\n\ @version\ (a\ version\ number\ or\ a\ date)\r\n
|
||||
comment1.params=
|
||||
comment1.target=GameOverWorld()
|
||||
comment1.text=\r\n\ Constructor\ for\ objects\ of\ class\ GameOverWorld.\r\n\ \r\n
|
||||
comment1.params=score
|
||||
comment1.target=GameOverWorld(int)
|
||||
comment2.params=
|
||||
comment2.target=void\ prepare()
|
||||
comment2.text=\r\n\ Prepare\ the\ world\ for\ the\ start\ of\ the\ program.\r\n\ That\ is\:\ create\ the\ initial\ objects\ and\ add\ them\ to\ the\ world.\r\n
|
||||
numComments=3
|
||||
comment3.params=
|
||||
comment3.target=void\ showScore()
|
||||
numComments=4
|
||||
|
||||
@@ -13,10 +13,12 @@ public class GameOverWorld extends World
|
||||
* Constructor for objects of class GameOverWorld.
|
||||
*
|
||||
*/
|
||||
public GameOverWorld()
|
||||
int score;
|
||||
public GameOverWorld(int score)
|
||||
{
|
||||
// Create a new world with 600x400 cells with a cell size of 1x1 pixels.
|
||||
super(400, 600, 1);
|
||||
this.score = score;
|
||||
prepare();
|
||||
}
|
||||
|
||||
@@ -27,7 +29,16 @@ public class GameOverWorld extends World
|
||||
private void prepare()
|
||||
{
|
||||
Button button = new Button();
|
||||
addObject(button,200,350);
|
||||
addObject(button,200,520);
|
||||
button.setImage("Neustart.png");
|
||||
showScore();
|
||||
}
|
||||
|
||||
public void showScore(){
|
||||
Color hintergrundFarbe = new Color(0,0,0,0);
|
||||
GreenfootImage scoreBild = new GreenfootImage("" + score, 75, Color.WHITE, hintergrundFarbe);
|
||||
Score score3 = new Score();
|
||||
addObject(score3,200,72);
|
||||
score3.setImage(scoreBild);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
#BlueJ class context
|
||||
comment0.target=Groundflower
|
||||
comment0.text=\r\n\ Write\ a\ description\ of\ class\ StarPowerUp\ here.\r\n\ \r\n\ @author\ (your\ name)\ \r\n\ @version\ (a\ version\ number\ or\ a\ date)\r\n
|
||||
comment1.params=
|
||||
comment1.target=void\ act()
|
||||
comment1.text=\r\n\ Act\ -\ do\ whatever\ the\ StarPowerUp\ wants\ to\ do.\ This\ method\ is\ called\ whenever\r\n\ the\ 'Act'\ or\ 'Run'\ button\ gets\ pressed\ in\ the\ environment.\r\n
|
||||
comment2.params=
|
||||
comment2.target=void\ collect()
|
||||
numComments=3
|
||||
@@ -0,0 +1,30 @@
|
||||
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
|
||||
|
||||
/**
|
||||
* Write a description of class StarPowerUp here.
|
||||
*
|
||||
* @author (your name)
|
||||
* @version (a version number or a date)
|
||||
*/
|
||||
public class Groundflower extends PowerUps
|
||||
{
|
||||
int duration= 60*4; //15 Sekunden
|
||||
/**
|
||||
* Act - do whatever the StarPowerUp wants to do. This method is called whenever
|
||||
* the 'Act' or 'Run' button gets pressed in the environment.
|
||||
*/
|
||||
public void act()
|
||||
{
|
||||
moveDown();
|
||||
touchedByPlayer();
|
||||
if (deleteAfterActCycle){
|
||||
getWorld().removeObject(this);
|
||||
}
|
||||
}
|
||||
|
||||
@ Override void collect()
|
||||
{
|
||||
Player player = getIntersectingObjects(Player.class).get(0);
|
||||
player.receivePowerUp(duration, "GroundPower");
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
#BlueJ class context
|
||||
comment0.target=HealthItem
|
||||
comment0.text=\r\n\ Write\ a\ description\ of\ class\ HealthItem\ here.\r\n\ \r\n\ @author\ (your\ name)\ \r\n\ @version\ (a\ version\ number\ or\ a\ date)\r\n
|
||||
comment1.params=
|
||||
comment1.target=void\ act()
|
||||
comment2.params=
|
||||
comment2.target=void\ collect()
|
||||
numComments=3
|
||||
@@ -0,0 +1,24 @@
|
||||
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
|
||||
|
||||
/**
|
||||
* Write a description of class HealthItem here.
|
||||
*
|
||||
* @author (your name)
|
||||
* @version (a version number or a date)
|
||||
*/
|
||||
public class HealthItem extends PowerUps
|
||||
{
|
||||
public void act()
|
||||
{
|
||||
moveDown();
|
||||
touchedByPlayer();
|
||||
if (deleteAfterActCycle){
|
||||
getWorld().removeObject(this);
|
||||
}
|
||||
}
|
||||
|
||||
@Override void collect(){
|
||||
Player player = getIntersectingObjects(Player.class).get(0);
|
||||
player.receivePowerUp(duration, "Heal");
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
#BlueJ class context
|
||||
comment0.target=Heart
|
||||
comment0.text=\r\n\ Write\ a\ description\ of\ class\ Heart\ here.\r\n\ \r\n\ @author\ (your\ name)\ \r\n\ @version\ (a\ version\ number\ or\ a\ date)\r\n
|
||||
comment1.params=
|
||||
comment1.target=void\ act()
|
||||
comment1.text=\r\n\ Act\ -\ do\ whatever\ the\ Heart\ wants\ to\ do.\ This\ method\ is\ called\ whenever\r\n\ the\ 'Act'\ or\ 'Run'\ button\ gets\ pressed\ in\ the\ environment.\r\n
|
||||
numComments=2
|
||||
@@ -0,0 +1,19 @@
|
||||
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
|
||||
|
||||
/**
|
||||
* Write a description of class Heart here.
|
||||
*
|
||||
* @author (your name)
|
||||
* @version (a version number or a date)
|
||||
*/
|
||||
public class Heart extends Actor
|
||||
{
|
||||
/**
|
||||
* Act - do whatever the Heart wants to do. This method is called whenever
|
||||
* the 'Act' or 'Run' button gets pressed in the environment.
|
||||
*/
|
||||
public void act()
|
||||
{
|
||||
// Add your action code here.
|
||||
}
|
||||
}
|
||||
@@ -8,14 +8,18 @@ import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
|
||||
*/
|
||||
public class JumpBoostItem extends PowerUps
|
||||
{
|
||||
int duration = 60*60;
|
||||
int duration = 60*5;
|
||||
public void act()
|
||||
{
|
||||
moveDown();
|
||||
touchedByPlayer();
|
||||
if (deleteAfterActCycle){
|
||||
getWorld().removeObject(this);
|
||||
}
|
||||
}
|
||||
|
||||
@Override void collect(){
|
||||
Player player = getIntersectingObjects(Player.class).get(0);
|
||||
player.reveivePowerUp(duration, "JumpBoost");
|
||||
player.receivePowerUp(duration, "JumpBoost");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,4 +8,6 @@ comment2.target=void\ act()
|
||||
comment2.text=\r\n\ Act\ -\ do\ whatever\ the\ MovingPlattform\ wants\ to\ do.\ This\ method\ is\ called\ whenever\r\n\ the\ 'Act'\ or\ 'Run'\ button\ gets\ pressed\ in\ the\ environment.\r\n
|
||||
comment3.params=
|
||||
comment3.target=void\ bewege()
|
||||
numComments=4
|
||||
comment4.params=
|
||||
comment4.target=void\ bewegeSpielerMit()
|
||||
numComments=5
|
||||
|
||||
@@ -9,7 +9,7 @@ import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
|
||||
public class MovingPlattform extends Plattform
|
||||
{
|
||||
int speed;
|
||||
|
||||
int temp=0;
|
||||
public MovingPlattform(int pSpeed)
|
||||
{
|
||||
speed= pSpeed;
|
||||
@@ -23,6 +23,7 @@ public class MovingPlattform extends Plattform
|
||||
{
|
||||
// Add your action code here.
|
||||
this.bewege();
|
||||
this.bewegeSpielerMit();
|
||||
super.act();
|
||||
}
|
||||
|
||||
@@ -34,5 +35,19 @@ public class MovingPlattform extends Plattform
|
||||
{
|
||||
speed=speed*(-1);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public void bewegeSpielerMit()
|
||||
{
|
||||
if(this.PlayerOnPlattform())
|
||||
{
|
||||
World theWorld= this.getWorld();
|
||||
Player DerSpieler = theWorld.getObjects(Player.class).get(0);
|
||||
if(DerSpieler!=null)
|
||||
{
|
||||
DerSpieler.setLocation(DerSpieler.getX()+speed*2, DerSpieler.getY());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,7 +10,15 @@ comment2.text=\r\n\ Prepare\ the\ world\ for\ the\ start\ of\ the\ program.\r\n\
|
||||
comment3.params=
|
||||
comment3.target=void\ act()
|
||||
comment4.params=
|
||||
comment4.target=void\ projectile()
|
||||
comment4.target=void\ drawNewHearts()
|
||||
comment5.params=
|
||||
comment5.target=void\ targetingProjectile()
|
||||
numComments=6
|
||||
comment5.target=void\ spawnItems()
|
||||
comment6.params=
|
||||
comment6.target=void\ spawnEnemies()
|
||||
comment7.params=
|
||||
comment7.target=void\ projectile()
|
||||
comment8.params=
|
||||
comment8.target=void\ targetingProjectile()
|
||||
comment9.params=
|
||||
comment9.target=void\ showScore()
|
||||
numComments=10
|
||||
|
||||
@@ -9,9 +9,13 @@ import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
|
||||
public class MyWorld extends World
|
||||
{
|
||||
int PlattformCountdown;
|
||||
int timer = 300; //Zeit, bevor das erste Projektil auftaucht
|
||||
int timer = 600; //Zeit, bevor das erste Projektil auftaucht
|
||||
//kann später noch beliebig angepasst werden
|
||||
int targetTimer = 1000;
|
||||
int time = 0;
|
||||
int enemyTimer;
|
||||
int itemTimer;
|
||||
int score = 0;
|
||||
/**
|
||||
* Constructor for objects of class MyWorld.
|
||||
*
|
||||
@@ -31,8 +35,12 @@ public class MyWorld extends World
|
||||
{
|
||||
Player player = new Player();
|
||||
addObject(player,302,320);
|
||||
Score score = new Score();
|
||||
addObject(score, 200, 50);
|
||||
Score score1 = new Score();
|
||||
addObject(score1, 200, 30);
|
||||
score1.setImage("Score1.png");
|
||||
Score score2 = new Score();
|
||||
addObject(score2, 200, 60);
|
||||
score2.setImage("Score2.png");
|
||||
Plattform plattform = new Plattform();
|
||||
addObject(plattform,285,577);
|
||||
plattform.setLocation(286,492);
|
||||
@@ -50,50 +58,111 @@ public class MyWorld extends World
|
||||
plattform2.setLocation(320,367);
|
||||
plattform2.setLocation(312,371);
|
||||
plattform2.setLocation(308,382);
|
||||
JumpBoostItem jumpBoostItem = new JumpBoostItem();
|
||||
addObject(jumpBoostItem,312,427);
|
||||
jumpBoostItem.setLocation(308,304);
|
||||
player.setLocation(308,354);
|
||||
player.setLocation(308,320);
|
||||
player.setLocation(248,337);
|
||||
player.setLocation(288,346);
|
||||
player.setLocation(292,337);
|
||||
Heart heart = new Heart();
|
||||
addObject(heart,371,27);
|
||||
Heart heart2 = new Heart();
|
||||
addObject(heart2,343,27);
|
||||
Heart heart3 = new Heart();
|
||||
addObject(heart3,314,27);
|
||||
|
||||
addObject(new TemporaryGround(60*8), 200, 575);
|
||||
}
|
||||
|
||||
public void act()
|
||||
{
|
||||
if (getObjects(Score.class).size() > 0){
|
||||
removeObjects(getObjects(Score.class));
|
||||
}
|
||||
Score score1 = new Score();
|
||||
addObject(score1, 200, 30);
|
||||
score1.setImage("Score1.png");
|
||||
Score score2 = new Score();
|
||||
addObject(score2, 200, 60);
|
||||
score2.setImage("Score2.png");
|
||||
showScore();
|
||||
projectile();
|
||||
spawnEnemies();
|
||||
targetingProjectile();
|
||||
spawnItems();
|
||||
drawNewHearts();
|
||||
if(PlattformCountdown==0) //Damit in regelmäßigen Abständen auf jeden Fall eine Plattform auftaucht
|
||||
{
|
||||
addObject(new Plattform(), Greenfoot.getRandomNumber(400), 5);
|
||||
PlattformCountdown=100;
|
||||
addObject(new Plattform(), 1+Greenfoot.getRandomNumber(398), 5);
|
||||
PlattformCountdown=50;
|
||||
}
|
||||
PlattformCountdown--;
|
||||
if(Greenfoot.getRandomNumber(100000)>=99800)
|
||||
{
|
||||
addObject(new Plattform(), Greenfoot.getRandomNumber(400), 5);
|
||||
addObject(new Plattform(), 1+Greenfoot.getRandomNumber(398), 5);
|
||||
}
|
||||
if(Greenfoot.getRandomNumber(100000)>=99900)
|
||||
{
|
||||
addObject(new MovingPlattform(2), Greenfoot.getRandomNumber(400), 6); //Nach Rechts bewegende Plattform
|
||||
addObject(new MovingPlattform(1), 1+Greenfoot.getRandomNumber(398), 6); //Nach Rechts bewegende Plattform
|
||||
}
|
||||
if(Greenfoot.getRandomNumber(100000)>=99900)
|
||||
{
|
||||
addObject(new MovingPlattform(-2), Greenfoot.getRandomNumber(400), 6); //Nach Links bewegende Plattform
|
||||
addObject(new MovingPlattform(-1), 1+Greenfoot.getRandomNumber(398), 6); //Nach Links bewegende Plattform
|
||||
}
|
||||
if(Greenfoot.getRandomNumber(100000)>=99750)
|
||||
{
|
||||
addObject(new BreakingPlattform(50), Greenfoot.getRandomNumber(400), 6); //Nach Links bewegende Plattform
|
||||
addObject(new BreakingPlattform(50), 1+Greenfoot.getRandomNumber(398), 6); //Nach Links bewegende Plattform
|
||||
}
|
||||
if(Greenfoot.getRandomNumber(100000)>=99750)
|
||||
{
|
||||
addObject(new SpikedPlattform(40), 1+Greenfoot.getRandomNumber(398), 6); //Nach Links bewegende Plattform
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public void drawNewHearts(){
|
||||
Player player = getObjects(Player.class).get(0);
|
||||
removeObjects(getObjects(Heart.class));
|
||||
Heart heart = new Heart();
|
||||
addObject(heart,371,27);
|
||||
if (player.health >= 2){
|
||||
Heart heart2 = new Heart();
|
||||
addObject(heart2,343,27);
|
||||
}
|
||||
if (player.health == 3){
|
||||
Heart heart3 = new Heart();
|
||||
addObject(heart3,314,27);
|
||||
}
|
||||
}
|
||||
|
||||
public void spawnItems(){
|
||||
itemTimer++;
|
||||
if (itemTimer >= 575){
|
||||
itemTimer = 0;
|
||||
switch (Greenfoot.getRandomNumber(3)){
|
||||
case 0:
|
||||
Groundflower groundF = new Groundflower();
|
||||
addObject(groundF, Greenfoot.getRandomNumber(getWidth()-100)+50,0);
|
||||
break;
|
||||
case 1:
|
||||
HealthItem healthItem = new HealthItem();
|
||||
addObject(healthItem, Greenfoot.getRandomNumber(getWidth()-100)+50,0);
|
||||
break;
|
||||
case 2:
|
||||
JumpBoostItem jumpBoostItem = new JumpBoostItem();
|
||||
addObject(jumpBoostItem, Greenfoot.getRandomNumber(getWidth()-100)+50,0);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void spawnEnemies(){
|
||||
enemyTimer++;
|
||||
if (enemyTimer >= 420){
|
||||
Enemy enemy = new Enemy(Greenfoot.getRandomNumber(getWidth() - 50) + 25, Greenfoot.getRandomNumber(getHeight()/2) + 15);
|
||||
addObject(enemy, Greenfoot.getRandomNumber(getWidth()-100)+50,0);
|
||||
enemyTimer = 0;
|
||||
}
|
||||
|
||||
}
|
||||
public void projectile(){
|
||||
if(timer == 0){
|
||||
Projectile projectile = new Projectile();
|
||||
addObject(projectile,Greenfoot.getRandomNumber(300)+50,0);
|
||||
timer = 300; //zeitlicher Abstand
|
||||
timer = 600; //zeitlicher Abstand
|
||||
}
|
||||
else{
|
||||
timer = timer - 1;
|
||||
@@ -110,4 +179,11 @@ public class MyWorld extends World
|
||||
targetTimer = targetTimer - 1;
|
||||
}
|
||||
}
|
||||
|
||||
public void showScore(){
|
||||
time++;
|
||||
score = time/60;
|
||||
showText("" + score, 200, 60);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -40,10 +40,10 @@ public class Plattform extends Actor
|
||||
|
||||
public boolean PlayerOnPlattform()
|
||||
{
|
||||
Player Spieler= (Player) getOneIntersectingObject(Player.class);
|
||||
if(this.isTouching(Player.class))
|
||||
Player Spieler= (Player) this.getWorld().getObjects(Player.class).get(0);
|
||||
if(Spieler.getX()+(Spieler.getImage().getWidth()/2)>=this.getX()-(this.getImage().getWidth()/2) && Spieler.getX()-(Spieler.getImage().getWidth()/2)<=this.getX()+(this.getImage().getWidth()/2))
|
||||
{
|
||||
if(Spieler.getY()<this.getY()-20)
|
||||
if(Spieler.getY()+(Spieler.getImage().getHeight()/2)<=this.getY()-(this.getImage().getHeight()/2) && Spieler.getY()+(Spieler.getImage().getHeight()/2)>=this.getY()-(this.getImage().getHeight()/2))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -3,6 +3,8 @@ comment0.target=Player
|
||||
comment0.text=\r\n\ Write\ a\ description\ of\ class\ Player\ here.\r\n\ \r\n\ @author\ (your\ name)\ \r\n\ @version\ (a\ version\ number\ or\ a\ date)\r\n
|
||||
comment1.params=
|
||||
comment1.target=void\ act()
|
||||
comment10.params=
|
||||
comment10.target=void\ playerRotation()
|
||||
comment2.params=
|
||||
comment2.target=void\ moveLeftAndRight()
|
||||
comment3.params=
|
||||
@@ -12,9 +14,11 @@ comment4.target=void\ fall()
|
||||
comment5.params=
|
||||
comment5.target=void\ shootProjectile()
|
||||
comment6.params=
|
||||
comment6.target=boolean\ collision()
|
||||
comment6.target=void\ collision()
|
||||
comment7.params=
|
||||
comment7.target=void\ handlePowerUps()
|
||||
comment8.params=duration\ type
|
||||
comment8.target=void\ reveivePowerUp(int,\ java.lang.String)
|
||||
numComments=9
|
||||
comment7.target=void\ checkHealth()
|
||||
comment8.params=
|
||||
comment8.target=void\ handlePowerUps()
|
||||
comment9.params=duration\ type
|
||||
comment9.target=void\ receivePowerUp(int,\ java.lang.String)
|
||||
numComments=11
|
||||
|
||||
@@ -8,12 +8,15 @@ import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
|
||||
*/
|
||||
public class Player extends Actor
|
||||
{
|
||||
int MAX_HEALTH = 3;
|
||||
int health = MAX_HEALTH;
|
||||
|
||||
int jumpBoostDuration = -1;
|
||||
int jumpBoostStrength = 5;
|
||||
|
||||
int jumpBoostStrength = 3;
|
||||
|
||||
boolean projectileReady = false;
|
||||
int projectileTimer;
|
||||
|
||||
|
||||
private int speed = 6;
|
||||
private int currentJumpStrength;
|
||||
private int defaultJumpStrength = 15;
|
||||
@@ -30,10 +33,13 @@ public class Player extends Actor
|
||||
fall();
|
||||
handlePowerUps();
|
||||
shootProjectile();
|
||||
|
||||
checkHealth();
|
||||
playerRotation();
|
||||
|
||||
//Check ob der Spieler am unteren Fensterrand ist
|
||||
if (getY()+1 >= getWorld().getHeight()){
|
||||
Greenfoot.setWorld(new GameOverWorld());
|
||||
MyWorld world = (MyWorld) getWorld();
|
||||
Greenfoot.setWorld(new GameOverWorld(world.score));
|
||||
}
|
||||
//Check ob der Spieler an der Seite vom Fenster ist
|
||||
if (getX() <= 0){
|
||||
@@ -49,11 +55,13 @@ public class Player extends Actor
|
||||
if (Greenfoot.isKeyDown("a"))
|
||||
{
|
||||
setLocation(getX() - speed, getY());
|
||||
setImage("Player.png");
|
||||
}
|
||||
|
||||
if (Greenfoot.isKeyDown("d"))
|
||||
{
|
||||
setLocation(getX() + speed, getY());
|
||||
setImage("Player.png");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -89,8 +97,8 @@ public class Player extends Actor
|
||||
}
|
||||
}
|
||||
onGround = landed;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public void shootProjectile(){
|
||||
projectileTimer++;
|
||||
MouseInfo mouse = Greenfoot.getMouseInfo();
|
||||
@@ -106,19 +114,25 @@ public class Player extends Actor
|
||||
}
|
||||
}
|
||||
|
||||
public boolean collision(){
|
||||
public void collision(){
|
||||
if (getIntersectingObjects(Projectile.class).size()>0
|
||||
|| getIntersectingObjects(Enemy.class).size()>0)
|
||||
|| getIntersectingObjects(Enemy.class).size()>0
|
||||
|| getIntersectingObjects(Spike.class).size()>0)
|
||||
{
|
||||
Greenfoot.setWorld(new GameOverWorld());
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
health--;
|
||||
getWorld().removeObjects(getIntersectingObjects(Projectile.class));
|
||||
getWorld().removeObjects(getIntersectingObjects(Enemy.class));
|
||||
getWorld().removeObjects(getWorld().getObjects(Spike.class));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public void checkHealth(){
|
||||
if (health <= 0){
|
||||
MyWorld world = (MyWorld) getWorld();
|
||||
Greenfoot.setWorld(new GameOverWorld(world.score));
|
||||
}
|
||||
}
|
||||
|
||||
public void handlePowerUps(){
|
||||
if (jumpBoostDuration >= 0){
|
||||
jumpBoostDuration -= 1;
|
||||
@@ -126,8 +140,8 @@ public class Player extends Actor
|
||||
currentJumpStrength = defaultJumpStrength;
|
||||
}
|
||||
}
|
||||
|
||||
public void reveivePowerUp(int duration, String type){
|
||||
|
||||
public void receivePowerUp(int duration, String type){
|
||||
switch(type){
|
||||
case "dummy":
|
||||
break;
|
||||
@@ -135,6 +149,32 @@ public class Player extends Actor
|
||||
currentJumpStrength = defaultJumpStrength;
|
||||
currentJumpStrength += jumpBoostStrength;
|
||||
jumpBoostDuration = duration;
|
||||
break;
|
||||
case "Heal":
|
||||
if (health < MAX_HEALTH){
|
||||
health++;
|
||||
}
|
||||
break;
|
||||
case "GroundPower":
|
||||
World theWorld= this.getWorld();
|
||||
if(!theWorld.getObjects(TemporaryGround.class).isEmpty())
|
||||
{
|
||||
theWorld.getObjects(TemporaryGround.class).get(0).RefreshLifeToDuration(duration);
|
||||
}
|
||||
else
|
||||
{
|
||||
theWorld.addObject((new TemporaryGround(duration)), 200, 575);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
public void playerRotation(){
|
||||
if(Greenfoot.isKeyDown("a")){
|
||||
setImage("PlayerLeft.png");
|
||||
}
|
||||
if(Greenfoot.isKeyDown("d")){
|
||||
setImage("Player.png");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,6 +8,7 @@ import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
|
||||
*/
|
||||
public class PlayerProjectile extends Actor
|
||||
{
|
||||
boolean deleteAfterActCycle = false;
|
||||
/**
|
||||
* Act - do whatever the PlayerProjectile wants to do. This method is called whenever
|
||||
* the 'Act' or 'Run' button gets pressed in the environment.
|
||||
@@ -15,16 +16,16 @@ public class PlayerProjectile extends Actor
|
||||
public void act()
|
||||
{
|
||||
move(7);
|
||||
if (!isProjectileOnScreen()){
|
||||
checkForEnemyCollision();
|
||||
if (deleteAfterActCycle || !isProjectileOnScreen()){
|
||||
getWorld().removeObject(this);
|
||||
}
|
||||
checkForEnemyCollision();
|
||||
}
|
||||
|
||||
public void checkForEnemyCollision(){
|
||||
if (getOneIntersectingObject(Enemy.class) != null){
|
||||
if (getOneIntersectingObject(Enemy.class) != null){
|
||||
getWorld().removeObject(getOneIntersectingObject(Enemy.class));
|
||||
getWorld().removeObject(this);
|
||||
deleteAfterActCycle = true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -34,7 +35,7 @@ public class PlayerProjectile extends Actor
|
||||
return false;
|
||||
}
|
||||
//Check X-Value
|
||||
if (getX() <= 0 || getX() >= getWorld().getHeight()-1){
|
||||
if (getX() <= 0 || getX() >= getWorld().getWidth()-1){
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
|
||||
@@ -7,4 +7,6 @@ comment2.params=
|
||||
comment2.target=void\ touchedByPlayer()
|
||||
comment3.params=
|
||||
comment3.target=void\ collect()
|
||||
numComments=4
|
||||
comment4.params=
|
||||
comment4.target=void\ moveDown()
|
||||
numComments=5
|
||||
|
||||
@@ -9,20 +9,35 @@ import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
|
||||
public class PowerUps extends Actor
|
||||
{
|
||||
int duration;
|
||||
boolean deleteAfterActCycle = false;
|
||||
|
||||
public void act()
|
||||
{
|
||||
moveDown();
|
||||
touchedByPlayer();
|
||||
if (deleteAfterActCycle){
|
||||
getWorld().removeObject(this);
|
||||
}
|
||||
}
|
||||
|
||||
public void touchedByPlayer(){
|
||||
if (getIntersectingObjects(Player.class).size() > 0){
|
||||
collect();
|
||||
getWorld().removeObject(this);
|
||||
deleteAfterActCycle = true;
|
||||
}
|
||||
}
|
||||
|
||||
void collect(){
|
||||
Player player = getIntersectingObjects(Player.class).get(0);
|
||||
player.reveivePowerUp(duration, "dummy");
|
||||
player.receivePowerUp(duration, "dummy");
|
||||
}
|
||||
|
||||
public void moveDown()
|
||||
{
|
||||
setLocation(this.getX(), this.getY()+2);
|
||||
if(this.getY() >= getWorld().getHeight()-1)
|
||||
{
|
||||
deleteAfterActCycle = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,8 +4,4 @@ comment0.text=\r\n\ Write\ a\ description\ of\ class\ UI\ here.\r\n\ \r\n\ @auth
|
||||
comment1.params=
|
||||
comment1.target=void\ act()
|
||||
comment1.text=\r\n\ Act\ -\ do\ whatever\ the\ UI\ wants\ to\ do.\ This\ method\ is\ called\ whenever\r\n\ the\ 'Act'\ or\ 'Run'\ button\ gets\ pressed\ in\ the\ environment.\r\n
|
||||
comment2.params=
|
||||
comment2.target=void\ draw_score()
|
||||
comment3.params=
|
||||
comment3.target=int\ calculate_score()
|
||||
numComments=4
|
||||
numComments=2
|
||||
|
||||
@@ -8,22 +8,13 @@ import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
|
||||
*/
|
||||
public class Score extends Actor
|
||||
{
|
||||
int timer;
|
||||
|
||||
/**
|
||||
* Act - do whatever the UI wants to do. This method is called whenever
|
||||
* the 'Act' or 'Run' button gets pressed in the environment.
|
||||
*/
|
||||
public void act()
|
||||
{
|
||||
timer++;
|
||||
draw_score();
|
||||
}
|
||||
|
||||
public void draw_score(){
|
||||
setImage(new GreenfootImage("Score:" + calculate_score(), 24, Color.WHITE, Color.BLACK));
|
||||
}
|
||||
|
||||
public int calculate_score(){
|
||||
return timer/60;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,4 +6,8 @@ comment1.target=Spike(int)
|
||||
comment2.params=
|
||||
comment2.target=void\ act()
|
||||
comment2.text=\r\n\ Act\ -\ do\ whatever\ the\ Spike\ wants\ to\ do.\ This\ method\ is\ called\ whenever\r\n\ the\ 'Act'\ or\ 'Run'\ button\ gets\ pressed\ in\ the\ environment.\r\n
|
||||
numComments=3
|
||||
comment3.params=
|
||||
comment3.target=void\ loescheMich()
|
||||
comment4.params=
|
||||
comment4.target=void\ bewege()
|
||||
numComments=5
|
||||
|
||||
@@ -20,11 +20,22 @@ public class Spike extends Actor
|
||||
*/
|
||||
public void act()
|
||||
{
|
||||
// Add your action code here.
|
||||
this.bewege();
|
||||
}
|
||||
|
||||
public void loescheMich()
|
||||
{
|
||||
MyWorld theWorld= (MyWorld) this.getWorld();
|
||||
theWorld.removeObject(this);
|
||||
}
|
||||
|
||||
public void bewege()
|
||||
{
|
||||
this.setLocation(this.getX(), this.getY()+speed);
|
||||
if(this.isTouching(Player.class))
|
||||
MyWorld theWorld= (MyWorld) this.getWorld();
|
||||
if(this.getY()>=theWorld.getHeight()-5)
|
||||
{
|
||||
Greenfoot.setWorld(new GameOverWorld());
|
||||
this.loescheMich();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,10 +2,12 @@
|
||||
comment0.target=SpikedPlattform
|
||||
comment0.text=\r\n\ Write\ a\ description\ of\ class\ SpikedPlattform\ here.\r\n\ \r\n\ @author\ (your\ name)\ \r\n\ @version\ (a\ version\ number\ or\ a\ date)\r\n
|
||||
comment1.params=pSpikeCountdown
|
||||
comment1.target=void\ act(int)
|
||||
comment1.text=\r\n\ Act\ -\ do\ whatever\ the\ SpikedPlattform\ wants\ to\ do.\ This\ method\ is\ called\ whenever\r\n\ the\ 'Act'\ or\ 'Run'\ button\ gets\ pressed\ in\ the\ environment.\r\n
|
||||
comment1.target=SpikedPlattform(int)
|
||||
comment2.params=
|
||||
comment2.target=void\ activateSpikes()
|
||||
comment2.target=void\ act()
|
||||
comment2.text=\r\n\ Act\ -\ do\ whatever\ the\ SpikedPlattform\ wants\ to\ do.\ This\ method\ is\ called\ whenever\r\n\ the\ 'Act'\ or\ 'Run'\ button\ gets\ pressed\ in\ the\ environment.\r\n
|
||||
comment3.params=
|
||||
comment3.target=void\ spikeTheSurface()
|
||||
numComments=4
|
||||
comment3.target=void\ activateSpikes()
|
||||
comment4.params=
|
||||
comment4.target=void\ spikeTheSurface()
|
||||
numComments=5
|
||||
|
||||
@@ -12,11 +12,16 @@ public class SpikedPlattform extends Plattform
|
||||
boolean spikesActivated=false;
|
||||
boolean isSpiked=false;
|
||||
Spike[] hasSpikes= new Spike[5];
|
||||
public SpikedPlattform(int pSpikeCountdown)
|
||||
{
|
||||
SpikeCountdown=pSpikeCountdown;
|
||||
}
|
||||
|
||||
/**
|
||||
* Act - do whatever the SpikedPlattform wants to do. This method is called whenever
|
||||
* the 'Act' or 'Run' button gets pressed in the environment.
|
||||
*/
|
||||
public void act(int pSpikeCountdown)
|
||||
public void act()
|
||||
{
|
||||
// Add your action code here.
|
||||
if(this.PlayerOnPlattform() && spikesActivated== false)
|
||||
@@ -31,16 +36,17 @@ public class SpikedPlattform extends Plattform
|
||||
{
|
||||
this.spikeTheSurface();
|
||||
}
|
||||
if(isSpiked && this.PlayerOnPlattform())
|
||||
{
|
||||
Greenfoot.setWorld(new GameOverWorld());
|
||||
}
|
||||
super.act();
|
||||
}
|
||||
|
||||
public void activateSpikes()
|
||||
{
|
||||
spikesActivated=true;
|
||||
MyWorld theWorld= (MyWorld) this.getWorld();
|
||||
for(int i=-6; i<7; i++)
|
||||
{
|
||||
theWorld.addObject(new UnactiveSpike(2,SpikeCountdown, this ), this.getX()+i* (this.getImage().getWidth()/13), this.getY()-(this.getImage().getHeight()/2));
|
||||
}
|
||||
//Sound
|
||||
//setImage
|
||||
|
||||
@@ -49,12 +55,8 @@ public class SpikedPlattform extends Plattform
|
||||
public void spikeTheSurface()
|
||||
{
|
||||
isSpiked=true;
|
||||
MyWorld theWorld= (MyWorld) this.getWorld();
|
||||
for(int i=0; i<3; i++)
|
||||
{
|
||||
theWorld.addObject(new Spike(2), this.getX()-this.getImage().getWidth()+ i*this.getImage().getWidth()/3, this.getX()-this.getImage().getHeight()/2);
|
||||
}
|
||||
//Sound
|
||||
|
||||
//Soun)
|
||||
//setImage
|
||||
}
|
||||
|
||||
|
||||
@@ -26,7 +26,7 @@ public class StartWorld extends World
|
||||
private void prepare()
|
||||
{
|
||||
Button button = new Button();
|
||||
addObject(button,200,350);
|
||||
addObject(button,200,310);
|
||||
button.setImage("Start.png");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
#BlueJ class context
|
||||
comment0.target=TemporaryGround
|
||||
comment0.text=\r\n\ Write\ a\ description\ of\ class\ TemporaryGround\ here.\r\n\ \r\n\ @author\ (your\ name)\ \r\n\ @version\ (a\ version\ number\ or\ a\ date)\r\n
|
||||
comment1.params=pLebensdauer
|
||||
comment1.target=TemporaryGround(int)
|
||||
comment2.params=
|
||||
comment2.target=void\ act()
|
||||
comment2.text=\r\n\ Act\ -\ do\ whatever\ the\ TemporaryGround\ wants\ to\ do.\ This\ method\ is\ called\ whenever\r\n\ the\ 'Act'\ or\ 'Run'\ button\ gets\ pressed\ in\ the\ environment.\r\n
|
||||
comment3.params=
|
||||
comment3.target=void\ warning()
|
||||
comment4.params=
|
||||
comment4.target=void\ noMoreWarning()
|
||||
comment5.params=pDuration
|
||||
comment5.target=void\ RefreshLifeToDuration(int)
|
||||
comment6.params=
|
||||
comment6.target=void\ Buffer()
|
||||
numComments=7
|
||||
@@ -0,0 +1,71 @@
|
||||
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
|
||||
|
||||
/**
|
||||
* Write a description of class TemporaryGround here.
|
||||
*
|
||||
* @author (your name)
|
||||
* @version (a version number or a date)
|
||||
*/
|
||||
public class TemporaryGround extends Plattform
|
||||
{
|
||||
private int Lebensdauer;
|
||||
boolean warningHasHappend=false;
|
||||
boolean deWarningHasHappend=true;
|
||||
public TemporaryGround(int pLebensdauer)
|
||||
{
|
||||
Lebensdauer=pLebensdauer;
|
||||
}
|
||||
|
||||
/**
|
||||
* Act - do whatever the TemporaryGround wants to do. This method is called whenever
|
||||
* the 'Act' or 'Run' button gets pressed in the environment.
|
||||
*/
|
||||
public void act()
|
||||
{
|
||||
// Add your action code here.
|
||||
this.Buffer();
|
||||
Lebensdauer--;
|
||||
if(Lebensdauer==0)
|
||||
{
|
||||
this.loescheMich();
|
||||
}
|
||||
if(Lebensdauer<60*3 && warningHasHappend==false) //3 Sekunden
|
||||
{
|
||||
this.warning();
|
||||
}
|
||||
if(Lebensdauer>=60*3 && deWarningHasHappend==false)
|
||||
{
|
||||
this.noMoreWarning();
|
||||
}
|
||||
}
|
||||
|
||||
public void warning()
|
||||
{
|
||||
this.setImage("BreakingGround.png");
|
||||
warningHasHappend=true;
|
||||
deWarningHasHappend=false;
|
||||
}
|
||||
|
||||
public void noMoreWarning()
|
||||
{
|
||||
this.setImage("Ground.png");
|
||||
warningHasHappend=false;
|
||||
deWarningHasHappend=true;
|
||||
}
|
||||
|
||||
public void RefreshLifeToDuration(int pDuration)
|
||||
{
|
||||
Lebensdauer=pDuration;
|
||||
}
|
||||
|
||||
public void Buffer()
|
||||
{
|
||||
{
|
||||
Player player= this.getWorld().getObjects(Player.class).get(0);
|
||||
if(this.intersects(player))
|
||||
{
|
||||
player.setLocation(player.getX(), this.getY()-this.getImage().getHeight()-5);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,7 +1,13 @@
|
||||
#BlueJ class context
|
||||
comment0.target=UnactiveSpike
|
||||
comment0.text=\r\n\ Write\ a\ description\ of\ class\ UnactiveSpike\ here.\r\n\ \r\n\ @author\ (your\ name)\ \r\n\ @version\ (a\ version\ number\ or\ a\ date)\r\n
|
||||
comment1.params=
|
||||
comment1.target=void\ act()
|
||||
comment1.text=\r\n\ Act\ -\ do\ whatever\ the\ UnactiveSpike\ wants\ to\ do.\ This\ method\ is\ called\ whenever\r\n\ the\ 'Act'\ or\ 'Run'\ button\ gets\ pressed\ in\ the\ environment.\r\n
|
||||
numComments=2
|
||||
comment1.params=pSpeed\ pCoundown\ pPlattform
|
||||
comment1.target=UnactiveSpike(int,\ int,\ SpikedPlattform)
|
||||
comment2.params=
|
||||
comment2.target=void\ act()
|
||||
comment2.text=\r\n\ Act\ -\ do\ whatever\ the\ UnactiveSpike\ wants\ to\ do.\ This\ method\ is\ called\ whenever\r\n\ the\ 'Act'\ or\ 'Run'\ button\ gets\ pressed\ in\ the\ environment.\r\n
|
||||
comment3.params=
|
||||
comment3.target=void\ loescheMich()
|
||||
comment4.params=
|
||||
comment4.target=void\ bewege()
|
||||
numComments=5
|
||||
|
||||
@@ -8,12 +8,51 @@ import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
|
||||
*/
|
||||
public class UnactiveSpike extends Actor
|
||||
{
|
||||
int countdown;
|
||||
int speed;
|
||||
boolean geloescht=false;
|
||||
public UnactiveSpike(int pSpeed, int pCoundown, SpikedPlattform pPlattform)
|
||||
{
|
||||
speed=pSpeed;
|
||||
countdown=pCoundown;
|
||||
}
|
||||
|
||||
/**
|
||||
* Act - do whatever the UnactiveSpike wants to do. This method is called whenever
|
||||
* the 'Act' or 'Run' button gets pressed in the environment.
|
||||
*/
|
||||
public void act()
|
||||
{
|
||||
// Add your action code here.
|
||||
this.bewege();
|
||||
countdown--;
|
||||
if(countdown==0)
|
||||
{
|
||||
MyWorld theWorld= (MyWorld) this.getWorld();
|
||||
Spike BeispielSpike=new Spike(1);
|
||||
GreenfootImage SpikeImage= BeispielSpike.getImage();
|
||||
theWorld.addObject(new Spike(speed), this.getX(), (this.getY()- this.getImage().getHeight()/2)-2); //die Zahl Minus damit ist endlich passt
|
||||
geloescht=true;
|
||||
}
|
||||
if(geloescht)
|
||||
{
|
||||
this.loescheMich();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public void loescheMich()
|
||||
{
|
||||
MyWorld theWorld= (MyWorld) this.getWorld();
|
||||
theWorld.removeObject(this);
|
||||
}
|
||||
|
||||
public void bewege()
|
||||
{
|
||||
this.setLocation(this.getX(), this.getY()+speed);
|
||||
MyWorld theWorld= (MyWorld) this.getWorld();
|
||||
if(this.getY()>=theWorld.getHeight()-5)
|
||||
{
|
||||
geloescht=true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,148 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="de">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Wed Sep 16 11:08:05 CEST 2026 -->
|
||||
<title>Score</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<meta name="dc.created" content="2026-09-16">
|
||||
<meta name="description" content="declaration: class: Score">
|
||||
<meta name="generator" content="javadoc/ClassWriterImpl">
|
||||
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
|
||||
<script type="text/javascript" src="script.js"></script>
|
||||
</head>
|
||||
<body class="class-declaration-page">
|
||||
<script type="text/javascript"></script>
|
||||
<noscript>
|
||||
<div>JavaScript ist im Browser deaktiviert.</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<!-- ======== START OF CLASS DATA ======== -->
|
||||
<div class="header">
|
||||
<h1 title="Klasse Score" class="title">Klasse Score</h1>
|
||||
</div>
|
||||
<div class="inheritance" title="Vererbungsbaum"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="Klasse oder Schnittstelle in java.lang" class="external-link">java.lang.Object</a>
|
||||
<div class="inheritance">greenfoot.Actor
|
||||
<div class="inheritance">Score</div>
|
||||
</div>
|
||||
</div>
|
||||
<section class="class-description" id="class-description">
|
||||
<hr>
|
||||
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">Score</span>
|
||||
<span class="extends-implements">extends greenfoot.Actor</span></div>
|
||||
<div class="block">Write a description of class UI here.</div>
|
||||
<dl class="notes">
|
||||
<dt>Version:</dt>
|
||||
<dd>(a version number or a date)</dd>
|
||||
<dt>Autor:</dt>
|
||||
<dd>(your name)</dd>
|
||||
</dl>
|
||||
</section>
|
||||
<section class="summary">
|
||||
<ul class="summary-list">
|
||||
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
|
||||
<li>
|
||||
<section class="constructor-summary" id="constructor-summary">
|
||||
<h2>Konstruktorübersicht</h2>
|
||||
<div class="caption"><span>Konstruktoren</span></div>
|
||||
<div class="summary-table two-column-summary">
|
||||
<div class="table-header col-first">Konstruktor</div>
|
||||
<div class="table-header col-last">Beschreibung</div>
|
||||
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E()" class="member-name-link">Score</a>()</code></div>
|
||||
<div class="col-last even-row-color"> </div>
|
||||
</div>
|
||||
</section>
|
||||
</li>
|
||||
<!-- ========== METHOD SUMMARY =========== -->
|
||||
<li>
|
||||
<section class="method-summary" id="method-summary">
|
||||
<h2>Methodenübersicht</h2>
|
||||
<div id="method-summary-table">
|
||||
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">Alle Methoden</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instanzmethoden</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Konkrete Methoden</button></div>
|
||||
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
|
||||
<div class="summary-table three-column-summary">
|
||||
<div class="table-header col-first">Modifizierer und Typ</div>
|
||||
<div class="table-header col-second">Methode</div>
|
||||
<div class="table-header col-last">Beschreibung</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#act()" class="member-name-link">act</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">Act - do whatever the UI wants to do.</div>
|
||||
</div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#calculate_score()" class="member-name-link">calculate_score</a>()</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#draw_score()" class="member-name-link">draw_score</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="inherited-list">
|
||||
<h3 id="methods-inherited-from-class-greenfoot.Actor">Von Klasse geerbte Methoden greenfoot.Actor</h3>
|
||||
<code>addedToWorld, getImage, getIntersectingObjects, getNeighbours, getObjectsAtOffset, getObjectsInRange, getOneIntersectingObject, getOneObjectAtOffset, getRotation, getWorld, getWorldOfType, getX, getY, intersects, isAtEdge, isTouching, move, removeTouching, setImage, setImage, setLocation, setRotation, sleepFor, turn, turnTowards</code></div>
|
||||
<div class="inherited-list">
|
||||
<h3 id="methods-inherited-from-class-java.lang.Object">Von Klasse geerbte Methoden java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="Klasse oder Schnittstelle in java.lang" class="external-link">Object</a></h3>
|
||||
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="Klasse oder Schnittstelle in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="Klasse oder Schnittstelle in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="Klasse oder Schnittstelle in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="Klasse oder Schnittstelle in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="Klasse oder Schnittstelle in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="Klasse oder Schnittstelle in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="Klasse oder Schnittstelle in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="Klasse oder Schnittstelle in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="Klasse oder Schnittstelle in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="Klasse oder Schnittstelle in java.lang" class="external-link">wait</a></code></div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section class="details">
|
||||
<ul class="details-list">
|
||||
<!-- ========= CONSTRUCTOR DETAIL ======== -->
|
||||
<li>
|
||||
<section class="constructor-details" id="constructor-detail">
|
||||
<h2>Konstruktordetails</h2>
|
||||
<ul class="member-list">
|
||||
<li>
|
||||
<section class="detail" id="<init>()">
|
||||
<h3>Score</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">Score</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</li>
|
||||
<!-- ============ METHOD DETAIL ========== -->
|
||||
<li>
|
||||
<section class="method-details" id="method-detail">
|
||||
<h2>Methodendetails</h2>
|
||||
<ul class="member-list">
|
||||
<li>
|
||||
<section class="detail" id="act()">
|
||||
<h3>act</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">act</span>()</div>
|
||||
<div class="block">Act - do whatever the UI wants to do. This method is called whenever
|
||||
the 'Act' or 'Run' button gets pressed in the environment.</div>
|
||||
<dl class="notes">
|
||||
<dt>Setzt außer Kraft:</dt>
|
||||
<dd><code>act</code> in Klasse <code>greenfoot.Actor</code></dd>
|
||||
</dl>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="draw_score()">
|
||||
<h3>draw_score</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">draw_score</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="calculate_score()">
|
||||
<h3>calculate_score</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">int</span> <span class="element-name">calculate_score</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<!-- ========= END OF CLASS DATA ========= -->
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,11 +1,11 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="de">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Tue Sep 15 12:14:29 CEST 2026 -->
|
||||
<!-- Generated by javadoc (21) on Wed Sep 16 11:08:05 CEST 2026 -->
|
||||
<title>Generierte Dokumentation (unbenannt)</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<meta name="dc.created" content="2026-09-15">
|
||||
<meta name="dc.created" content="2026-09-16">
|
||||
<meta name="description" content="index redirect">
|
||||
<meta name="generator" content="javadoc/IndexRedirectWriter">
|
||||
<link rel="canonical" href="package-summary.html">
|
||||
|
||||
@@ -20,16 +20,16 @@ C:\Users\Marlie\Documents\Workspace\SMIMS_2026_2\SMIMS-Game\doc
|
||||
UTF-8
|
||||
-charset
|
||||
UTF-8
|
||||
C:\Users\Marlie\Documents\Workspace\SMIMS_2026_2\SMIMS-Game\StartWorld.java
|
||||
C:\Users\Marlie\Documents\Workspace\SMIMS_2026_2\SMIMS-Game\Score.java
|
||||
<---- end of javadoc command ---->
|
||||
Quelldatei C:\Users\Marlie\Documents\Workspace\SMIMS_2026_2\SMIMS-Game\StartWorld.java wird geladen...
|
||||
Quelldatei C:\Users\Marlie\Documents\Workspace\SMIMS_2026_2\SMIMS-Game\Score.java wird geladen...
|
||||
Javadoc-Informationen werden erstellt...
|
||||
Warnung: Unbekannte Enum-Konstante Tag.Any
|
||||
Grund: Klassendatei für threadchecker.Tag nicht gefunden
|
||||
Warnung: Unbekannte Enum-Konstante Tag.Any
|
||||
Standard-Doclet-Version 21.0.4+7-LTS
|
||||
Baum für alle Packages und Klassen wird erstellt...
|
||||
C:\Users\Marlie\Documents\Workspace\SMIMS_2026_2\SMIMS-Game\doc\StartWorld.html wird generiert...
|
||||
C:\Users\Marlie\Documents\Workspace\SMIMS_2026_2\SMIMS-Game\doc\Score.html wird generiert...
|
||||
C:\Users\Marlie\Documents\Workspace\SMIMS_2026_2\SMIMS-Game\doc\package-summary.html wird generiert...
|
||||
C:\Users\Marlie\Documents\Workspace\SMIMS_2026_2\SMIMS-Game\doc\index.html wird generiert...
|
||||
2 Warnungen
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="de">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Tue Sep 15 12:14:29 CEST 2026 -->
|
||||
<!-- Generated by javadoc (21) on Wed Sep 16 11:08:05 CEST 2026 -->
|
||||
<title>Unbenanntes Package</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<meta name="dc.created" content="2026-09-15">
|
||||
<meta name="dc.created" content="2026-09-16">
|
||||
<meta name="description" content="declaration: package: <unnamed>">
|
||||
<meta name="generator" content="javadoc/PackageWriterImpl">
|
||||
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
|
||||
@@ -31,9 +31,9 @@
|
||||
<div class="summary-table two-column-summary">
|
||||
<div class="table-header col-first">Klasse</div>
|
||||
<div class="table-header col-last">Beschreibung</div>
|
||||
<div class="col-first even-row-color class-summary class-summary-tab2"><a href="StartWorld.html" title="Klasse in Unbenanntes Package">StartWorld</a></div>
|
||||
<div class="col-first even-row-color class-summary class-summary-tab2"><a href="Score.html" title="Klasse in Unbenanntes Package">Score</a></div>
|
||||
<div class="col-last even-row-color class-summary class-summary-tab2">
|
||||
<div class="block">Write a description of class StartWorld here.</div>
|
||||
<div class="block">Write a description of class UI here.</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
After Width: | Height: | Size: 8.1 KiB |
|
After Width: | Height: | Size: 9.2 KiB |
|
After Width: | Height: | Size: 58 KiB |
|
After Width: | Height: | Size: 139 B |
|
After Width: | Height: | Size: 7.0 KiB |
|
After Width: | Height: | Size: 1.7 KiB |
|
After Width: | Height: | Size: 7.0 KiB |
|
After Width: | Height: | Size: 41 KiB |
|
After Width: | Height: | Size: 1.5 KiB |
|
After Width: | Height: | Size: 48 KiB |
|
Before Width: | Height: | Size: 8.8 KiB After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 7.6 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 4.8 KiB |
|
After Width: | Height: | Size: 4.8 KiB |
|
After Width: | Height: | Size: 707 B |
|
After Width: | Height: | Size: 3.5 KiB |
|
After Width: | Height: | Size: 1.4 KiB |
|
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.0 KiB |
|
Before Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 750 B |
|
After Width: | Height: | Size: 5.2 KiB |
|
After Width: | Height: | Size: 5.6 KiB |
|
After Width: | Height: | Size: 7.6 KiB |
|
Before Width: | Height: | Size: 160 KiB After Width: | Height: | Size: 272 KiB |
|
After Width: | Height: | Size: 124 KiB |
|
After Width: | Height: | Size: 2.4 KiB |
|
After Width: | Height: | Size: 3.5 KiB |
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 38 KiB |
|
After Width: | Height: | Size: 1.4 KiB |
|
After Width: | Height: | Size: 951 B |
|
After Width: | Height: | Size: 869 B |
|
After Width: | Height: | Size: 329 B |
|
After Width: | Height: | Size: 578 B |
@@ -1,122 +1,177 @@
|
||||
#Greenfoot project file
|
||||
class.BreakingPlattform.image=Unbenannt2.png
|
||||
class.BreakingPlattform.image=Breaking1.png
|
||||
class.Button.image=button-red.png
|
||||
class.Enemy.image=bee.png
|
||||
class.EnemyProjectile.image=yellow-draught.png
|
||||
class.GameOverWorld.image=GameOverBackground.png
|
||||
class.Enemy.image=Enemy.png
|
||||
class.EnemyProjectile.image=EnemyProjectile.png
|
||||
class.GameOverWorld.image=JUMP\ \u2018N\u2019\ RUNj.png
|
||||
class.Ground.image=weave.jpg
|
||||
class.Groundflower.image=flower2.png
|
||||
class.HealthItem.image=Health.png
|
||||
class.Heart.image=Health.png
|
||||
class.JumpBoostItem.image=mushroom.png
|
||||
class.MovingPlattform.image=Unbenannt.png
|
||||
class.MovingPlattform.image=Platform1.png
|
||||
class.MyWorld.image=GameBackground.png
|
||||
class.Plattform.image=Plattform.png
|
||||
class.Player.image=ppl2.png
|
||||
class.PlayerProjectile.image=beeper.png
|
||||
class.Plattform.image=Platform1.png
|
||||
class.Player.image=Player.png
|
||||
class.PlayerProjectile.image=PlayerProjectile.png
|
||||
class.Projectile.image=Projectile1.png
|
||||
class.Spike.image=Spike.png
|
||||
class.SpikedPlattform.image=SpikedPlattform.png
|
||||
class.Spike.image=singleSpike.png
|
||||
class.SpikedPlattform.image=Spikes2.png
|
||||
class.StartWorld.image=StartBackground.png
|
||||
class.TargetingProjectile.image=blue-draught.png
|
||||
class.UnactiveSpike.image=SpikeUnactive.png
|
||||
dependency1.from=GameOverWorld
|
||||
dependency1.to=Button
|
||||
class.TargetingProjectile.image=TargetProjectile.png
|
||||
class.TemporaryGround.image=Ground.png
|
||||
class.UnactiveSpike.image=Spike_Copy.png
|
||||
dependency1.from=PlayerTestWorld
|
||||
dependency1.to=Ground
|
||||
dependency1.type=UsesDependency
|
||||
dependency10.from=MyWorld
|
||||
dependency10.to=Enemy
|
||||
dependency10.to=BreakingPlattform
|
||||
dependency10.type=UsesDependency
|
||||
dependency11.from=MyWorld
|
||||
dependency11.to=MovingPlattform
|
||||
dependency11.to=SpikedPlattform
|
||||
dependency11.type=UsesDependency
|
||||
dependency12.from=MyWorld
|
||||
dependency12.to=BreakingPlattform
|
||||
dependency12.to=Groundflower
|
||||
dependency12.type=UsesDependency
|
||||
dependency13.from=MyWorld
|
||||
dependency13.to=Projectile
|
||||
dependency13.to=HealthItem
|
||||
dependency13.type=UsesDependency
|
||||
dependency14.from=MyWorld
|
||||
dependency14.to=TargetingProjectile
|
||||
dependency14.to=JumpBoostItem
|
||||
dependency14.type=UsesDependency
|
||||
dependency15.from=Spike
|
||||
dependency15.to=GameOverWorld
|
||||
dependency15.from=MyWorld
|
||||
dependency15.to=Enemy
|
||||
dependency15.type=UsesDependency
|
||||
dependency16.from=Spike
|
||||
dependency16.to=Player
|
||||
dependency16.from=MyWorld
|
||||
dependency16.to=Projectile
|
||||
dependency16.type=UsesDependency
|
||||
dependency17.from=Player
|
||||
dependency17.to=GameOverWorld
|
||||
dependency17.from=MyWorld
|
||||
dependency17.to=TargetingProjectile
|
||||
dependency17.type=UsesDependency
|
||||
dependency18.from=Player
|
||||
dependency18.to=Plattform
|
||||
dependency18.from=GameOverWorld
|
||||
dependency18.to=Button
|
||||
dependency18.type=UsesDependency
|
||||
dependency19.from=Player
|
||||
dependency19.to=PlayerProjectile
|
||||
dependency19.from=GameOverWorld
|
||||
dependency19.to=Score
|
||||
dependency19.type=UsesDependency
|
||||
dependency2.from=PlayerTestWorld
|
||||
dependency2.to=Ground
|
||||
dependency2.to=Player
|
||||
dependency2.type=UsesDependency
|
||||
dependency20.from=Player
|
||||
dependency20.to=Projectile
|
||||
dependency20.from=StartWorld
|
||||
dependency20.to=Button
|
||||
dependency20.type=UsesDependency
|
||||
dependency21.from=Player
|
||||
dependency21.to=Enemy
|
||||
dependency21.from=UnactiveSpike
|
||||
dependency21.to=SpikedPlattform
|
||||
dependency21.type=UsesDependency
|
||||
dependency22.from=Plattform
|
||||
dependency22.from=UnactiveSpike
|
||||
dependency22.to=MyWorld
|
||||
dependency22.type=UsesDependency
|
||||
dependency23.from=Plattform
|
||||
dependency23.to=Player
|
||||
dependency23.from=UnactiveSpike
|
||||
dependency23.to=Spike
|
||||
dependency23.type=UsesDependency
|
||||
dependency24.from=MovingPlattform
|
||||
dependency24.from=Button
|
||||
dependency24.to=MyWorld
|
||||
dependency24.type=UsesDependency
|
||||
dependency25.from=SpikedPlattform
|
||||
dependency25.to=Spike
|
||||
dependency25.from=PowerUps
|
||||
dependency25.to=Player
|
||||
dependency25.type=UsesDependency
|
||||
dependency26.from=SpikedPlattform
|
||||
dependency26.to=GameOverWorld
|
||||
dependency26.from=HealthItem
|
||||
dependency26.to=Player
|
||||
dependency26.type=UsesDependency
|
||||
dependency27.from=SpikedPlattform
|
||||
dependency27.to=MyWorld
|
||||
dependency27.from=JumpBoostItem
|
||||
dependency27.to=Player
|
||||
dependency27.type=UsesDependency
|
||||
dependency28.from=TargetingProjectile
|
||||
dependency28.from=Groundflower
|
||||
dependency28.to=Player
|
||||
dependency28.type=UsesDependency
|
||||
dependency29.from=Button
|
||||
dependency29.to=MyWorld
|
||||
dependency29.from=Enemy
|
||||
dependency29.to=Player
|
||||
dependency29.type=UsesDependency
|
||||
dependency3.from=PlayerTestWorld
|
||||
dependency3.to=Player
|
||||
dependency3.to=JumpBoostItem
|
||||
dependency3.type=UsesDependency
|
||||
dependency30.from=PowerUps
|
||||
dependency30.to=Player
|
||||
dependency30.from=Enemy
|
||||
dependency30.to=EnemyProjectile
|
||||
dependency30.type=UsesDependency
|
||||
dependency31.from=JumpBoostItem
|
||||
dependency31.to=Player
|
||||
dependency31.from=Spike
|
||||
dependency31.to=MyWorld
|
||||
dependency31.type=UsesDependency
|
||||
dependency4.from=PlayerTestWorld
|
||||
dependency4.to=JumpBoostItem
|
||||
dependency32.from=Player
|
||||
dependency32.to=GameOverWorld
|
||||
dependency32.type=UsesDependency
|
||||
dependency33.from=Player
|
||||
dependency33.to=Plattform
|
||||
dependency33.type=UsesDependency
|
||||
dependency34.from=Player
|
||||
dependency34.to=PlayerProjectile
|
||||
dependency34.type=UsesDependency
|
||||
dependency35.from=Player
|
||||
dependency35.to=TemporaryGround
|
||||
dependency35.type=UsesDependency
|
||||
dependency36.from=Player
|
||||
dependency36.to=Projectile
|
||||
dependency36.type=UsesDependency
|
||||
dependency37.from=Player
|
||||
dependency37.to=Enemy
|
||||
dependency37.type=UsesDependency
|
||||
dependency38.from=Player
|
||||
dependency38.to=Spike
|
||||
dependency38.type=UsesDependency
|
||||
dependency39.from=Plattform
|
||||
dependency39.to=MyWorld
|
||||
dependency39.type=UsesDependency
|
||||
dependency4.from=MyWorld
|
||||
dependency4.to=Player
|
||||
dependency4.type=UsesDependency
|
||||
dependency5.from=StartWorld
|
||||
dependency5.to=Button
|
||||
dependency40.from=Plattform
|
||||
dependency40.to=Player
|
||||
dependency40.type=UsesDependency
|
||||
dependency41.from=MovingPlattform
|
||||
dependency41.to=MyWorld
|
||||
dependency41.type=UsesDependency
|
||||
dependency42.from=MovingPlattform
|
||||
dependency42.to=Player
|
||||
dependency42.type=UsesDependency
|
||||
dependency43.from=TemporaryGround
|
||||
dependency43.to=Player
|
||||
dependency43.type=UsesDependency
|
||||
dependency44.from=SpikedPlattform
|
||||
dependency44.to=Spike
|
||||
dependency44.type=UsesDependency
|
||||
dependency45.from=SpikedPlattform
|
||||
dependency45.to=MyWorld
|
||||
dependency45.type=UsesDependency
|
||||
dependency46.from=SpikedPlattform
|
||||
dependency46.to=UnactiveSpike
|
||||
dependency46.type=UsesDependency
|
||||
dependency47.from=TargetingProjectile
|
||||
dependency47.to=Player
|
||||
dependency47.type=UsesDependency
|
||||
dependency48.from=PlayerProjectile
|
||||
dependency48.to=Enemy
|
||||
dependency48.type=UsesDependency
|
||||
dependency5.from=MyWorld
|
||||
dependency5.to=Score
|
||||
dependency5.type=UsesDependency
|
||||
dependency6.from=MyWorld
|
||||
dependency6.to=Player
|
||||
dependency6.to=Plattform
|
||||
dependency6.type=UsesDependency
|
||||
dependency7.from=MyWorld
|
||||
dependency7.to=Score
|
||||
dependency7.to=Heart
|
||||
dependency7.type=UsesDependency
|
||||
dependency8.from=MyWorld
|
||||
dependency8.to=Plattform
|
||||
dependency8.to=TemporaryGround
|
||||
dependency8.type=UsesDependency
|
||||
dependency9.from=MyWorld
|
||||
dependency9.to=JumpBoostItem
|
||||
dependency9.to=MovingPlattform
|
||||
dependency9.type=UsesDependency
|
||||
editor.fx.0.height=737
|
||||
editor.fx.0.width=814
|
||||
editor.fx.0.x=360
|
||||
editor.fx.0.y=26
|
||||
height=830
|
||||
package.numDependencies=31
|
||||
package.numTargets=21
|
||||
editor.fx.0.height=607
|
||||
editor.fx.0.width=1092
|
||||
editor.fx.0.x=223
|
||||
editor.fx.0.y=111
|
||||
height=814
|
||||
package.numDependencies=48
|
||||
package.numTargets=25
|
||||
project.charset=UTF-8
|
||||
publish.hasSource=false
|
||||
publish.locked=true
|
||||
@@ -132,112 +187,140 @@ readme.x=10
|
||||
readme.y=10
|
||||
simulation.speed=50
|
||||
target1.height=70
|
||||
target1.name=Spike
|
||||
target1.name=Heart
|
||||
target1.showInterface=false
|
||||
target1.type=ClassTarget
|
||||
target1.width=120
|
||||
target1.x=0
|
||||
target1.y=0
|
||||
target10.height=70
|
||||
target10.name=StartWorld
|
||||
target10.name=Button
|
||||
target10.showInterface=false
|
||||
target10.type=ClassTarget
|
||||
target10.width=120
|
||||
target10.x=0
|
||||
target10.y=0
|
||||
target11.height=70
|
||||
target11.name=Plattform
|
||||
target11.name=PowerUps
|
||||
target11.showInterface=false
|
||||
target11.type=ClassTarget
|
||||
target11.width=120
|
||||
target11.x=0
|
||||
target11.y=0
|
||||
target12.height=70
|
||||
target12.name=TargetingProjectile
|
||||
target12.name=Enemy
|
||||
target12.showInterface=false
|
||||
target12.type=ClassTarget
|
||||
target12.width=120
|
||||
target12.x=0
|
||||
target12.y=0
|
||||
target13.height=70
|
||||
target13.name=Projectile
|
||||
target13.name=MyWorld
|
||||
target13.showInterface=false
|
||||
target13.type=ClassTarget
|
||||
target13.width=120
|
||||
target13.x=0
|
||||
target13.y=0
|
||||
target14.height=70
|
||||
target14.name=Score
|
||||
target14.name=Spike
|
||||
target14.showInterface=false
|
||||
target14.type=ClassTarget
|
||||
target14.width=120
|
||||
target14.x=0
|
||||
target14.y=0
|
||||
target15.height=70
|
||||
target15.name=Button
|
||||
target15.name=Groundflower
|
||||
target15.showInterface=false
|
||||
target15.type=ClassTarget
|
||||
target15.width=120
|
||||
target15.x=0
|
||||
target15.y=0
|
||||
target16.height=70
|
||||
target16.name=PowerUps
|
||||
target16.name=Player
|
||||
target16.showInterface=false
|
||||
target16.type=ClassTarget
|
||||
target16.width=120
|
||||
target16.x=0
|
||||
target16.y=0
|
||||
target17.height=70
|
||||
target17.name=EnemyProjectile
|
||||
target17.name=BreakingPlattform
|
||||
target17.showInterface=false
|
||||
target17.type=ClassTarget
|
||||
target17.width=120
|
||||
target17.x=0
|
||||
target17.y=0
|
||||
target18.height=70
|
||||
target18.name=Enemy
|
||||
target18.name=GameOverWorld
|
||||
target18.showInterface=false
|
||||
target18.type=ClassTarget
|
||||
target18.width=120
|
||||
target18.x=0
|
||||
target18.y=0
|
||||
target19.height=70
|
||||
target19.name=PlayerProjectile
|
||||
target19.name=StartWorld
|
||||
target19.showInterface=false
|
||||
target19.type=ClassTarget
|
||||
target19.width=120
|
||||
target19.x=0
|
||||
target19.y=0
|
||||
target2.height=70
|
||||
target2.name=Player
|
||||
target2.name=MovingPlattform
|
||||
target2.showInterface=false
|
||||
target2.type=ClassTarget
|
||||
target2.width=120
|
||||
target2.x=0
|
||||
target2.y=0
|
||||
target20.height=70
|
||||
target20.name=SpikedPlattform
|
||||
target20.name=Plattform
|
||||
target20.showInterface=false
|
||||
target20.type=ClassTarget
|
||||
target20.width=120
|
||||
target20.x=0
|
||||
target20.y=0
|
||||
target21.height=70
|
||||
target21.name=MyWorld
|
||||
target21.name=Projectile
|
||||
target21.showInterface=false
|
||||
target21.type=ClassTarget
|
||||
target21.width=120
|
||||
target21.x=0
|
||||
target21.y=0
|
||||
target22.height=70
|
||||
target22.name=Score
|
||||
target22.showInterface=false
|
||||
target22.type=ClassTarget
|
||||
target22.width=120
|
||||
target22.x=0
|
||||
target22.y=0
|
||||
target23.height=70
|
||||
target23.name=EnemyProjectile
|
||||
target23.showInterface=false
|
||||
target23.type=ClassTarget
|
||||
target23.width=120
|
||||
target23.x=0
|
||||
target23.y=0
|
||||
target24.height=70
|
||||
target24.name=PlayerProjectile
|
||||
target24.showInterface=false
|
||||
target24.type=ClassTarget
|
||||
target24.width=120
|
||||
target24.x=0
|
||||
target24.y=0
|
||||
target25.height=70
|
||||
target25.name=SpikedPlattform
|
||||
target25.showInterface=false
|
||||
target25.type=ClassTarget
|
||||
target25.width=120
|
||||
target25.x=0
|
||||
target25.y=0
|
||||
target3.height=70
|
||||
target3.name=MovingPlattform
|
||||
target3.name=Ground
|
||||
target3.showInterface=false
|
||||
target3.type=ClassTarget
|
||||
target3.width=120
|
||||
target3.x=0
|
||||
target3.y=0
|
||||
target4.height=70
|
||||
target4.name=Ground
|
||||
target4.name=HealthItem
|
||||
target4.showInterface=false
|
||||
target4.type=ClassTarget
|
||||
target4.width=120
|
||||
@@ -258,28 +341,28 @@ target6.width=120
|
||||
target6.x=0
|
||||
target6.y=0
|
||||
target7.height=70
|
||||
target7.name=BreakingPlattform
|
||||
target7.name=PlayerTestWorld
|
||||
target7.showInterface=false
|
||||
target7.type=ClassTarget
|
||||
target7.width=120
|
||||
target7.x=0
|
||||
target7.y=0
|
||||
target8.height=70
|
||||
target8.name=GameOverWorld
|
||||
target8.name=TargetingProjectile
|
||||
target8.showInterface=false
|
||||
target8.type=ClassTarget
|
||||
target8.width=120
|
||||
target8.x=0
|
||||
target8.y=0
|
||||
target9.height=70
|
||||
target9.name=PlayerTestWorld
|
||||
target9.name=TemporaryGround
|
||||
target9.showInterface=false
|
||||
target9.type=ClassTarget
|
||||
target9.width=120
|
||||
target9.x=0
|
||||
target9.y=0
|
||||
version=3.1.0
|
||||
width=1550
|
||||
world.lastInstantiated=MyWorld
|
||||
width=1534
|
||||
world.lastInstantiated=StartWorld
|
||||
xPosition=0
|
||||
yPosition=0
|
||||
yPosition=117
|
||||
|
||||