diff --git a/SMIMS-Game/Enemy.class b/SMIMS-Game/Enemy.class
index 77ba588..3b556b2 100644
Binary files a/SMIMS-Game/Enemy.class and b/SMIMS-Game/Enemy.class differ
diff --git a/SMIMS-Game/Enemy.ctxt b/SMIMS-Game/Enemy.ctxt
index 214f50f..b6b41cc 100644
--- a/SMIMS-Game/Enemy.ctxt
+++ b/SMIMS-Game/Enemy.ctxt
@@ -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
diff --git a/SMIMS-Game/Enemy.java b/SMIMS-Game/Enemy.java
index 26b2436..c8f8695 100644
--- a/SMIMS-Game/Enemy.java
+++ b/SMIMS-Game/Enemy.java
@@ -2,12 +2,36 @@ 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(){
shootTimer++;
diff --git a/SMIMS-Game/HealthItem.class b/SMIMS-Game/HealthItem.class
new file mode 100644
index 0000000..7910582
Binary files /dev/null and b/SMIMS-Game/HealthItem.class differ
diff --git a/SMIMS-Game/HealthItem.ctxt b/SMIMS-Game/HealthItem.ctxt
new file mode 100644
index 0000000..e664fe0
--- /dev/null
+++ b/SMIMS-Game/HealthItem.ctxt
@@ -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
diff --git a/SMIMS-Game/HealthItem.java b/SMIMS-Game/HealthItem.java
new file mode 100644
index 0000000..a927d50
--- /dev/null
+++ b/SMIMS-Game/HealthItem.java
@@ -0,0 +1,21 @@
+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
+{
+ int duration = 60*60;
+ public void act()
+ {
+ touchedByPlayer();
+ }
+
+ @Override void collect(){
+ Player player = getIntersectingObjects(Player.class).get(0);
+ player.reveivePowerUp(duration, "Heal");
+ }
+}
diff --git a/SMIMS-Game/Healthbar.class b/SMIMS-Game/Healthbar.class
new file mode 100644
index 0000000..e21b03d
Binary files /dev/null and b/SMIMS-Game/Healthbar.class differ
diff --git a/SMIMS-Game/Healthbar.ctxt b/SMIMS-Game/Healthbar.ctxt
new file mode 100644
index 0000000..e8b2d68
--- /dev/null
+++ b/SMIMS-Game/Healthbar.ctxt
@@ -0,0 +1,8 @@
+#BlueJ class context
+comment0.target=Healthbar
+comment0.text=\r\n\ Write\ a\ description\ of\ class\ Healthbar\ 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\ draw_health()
+numComments=3
diff --git a/SMIMS-Game/Healthbar.java b/SMIMS-Game/Healthbar.java
new file mode 100644
index 0000000..bfac032
--- /dev/null
+++ b/SMIMS-Game/Healthbar.java
@@ -0,0 +1,20 @@
+import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
+
+/**
+ * Write a description of class Healthbar here.
+ *
+ * @author (your name)
+ * @version (a version number or a date)
+ */
+public class Healthbar extends Actor
+{
+ public void act()
+ {
+ draw_health();
+ }
+
+ public void draw_health(){
+ Player player = getWorld().getObjects(Player.class).get(0);
+ setImage(new GreenfootImage("Health:" + player.health, 24, Color.WHITE, Color.BLACK));
+ }
+}
diff --git a/SMIMS-Game/MyWorld.class b/SMIMS-Game/MyWorld.class
index a2634ef..8c6ebfe 100644
Binary files a/SMIMS-Game/MyWorld.class and b/SMIMS-Game/MyWorld.class differ
diff --git a/SMIMS-Game/MyWorld.ctxt b/SMIMS-Game/MyWorld.ctxt
index 5d845cc..2a6810e 100644
--- a/SMIMS-Game/MyWorld.ctxt
+++ b/SMIMS-Game/MyWorld.ctxt
@@ -13,4 +13,6 @@ comment4.params=
comment4.target=void\ projectile()
comment5.params=
comment5.target=void\ targetingProjectile()
-numComments=6
+comment6.params=
+comment6.target=void\ showScore()
+numComments=7
diff --git a/SMIMS-Game/MyWorld.java b/SMIMS-Game/MyWorld.java
index 1bc35f2..0add624 100644
--- a/SMIMS-Game/MyWorld.java
+++ b/SMIMS-Game/MyWorld.java
@@ -9,9 +9,11 @@ import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
public class MyWorld extends World
{
int PlattformCountdown;
- int timer = 200; //Zeit, bevor das erste Projektil auftaucht
+ int timer = 300; //Zeit, bevor das erste Projektil auftaucht
//kann später noch beliebig angepasst werden
- int targetTimer = 100;
+ int targetTimer = 1000;
+ int time = 0;
+ int score = 0;
/**
* Constructor for objects of class MyWorld.
*
@@ -32,7 +34,11 @@ public class MyWorld extends World
Player player = new Player();
addObject(player,302,320);
Score score = new Score();
- addObject(score, 200, 50);
+ addObject(score, 200, 30);
+ score.setImage("Score1.png");
+ Score score1 = new Score();
+ addObject(score1, 200, 60);
+ score1.setImage("Score2.png");
Plattform plattform = new Plattform();
addObject(plattform,285,577);
plattform.setLocation(286,492);
@@ -50,11 +56,22 @@ public class MyWorld extends World
plattform2.setLocation(320,367);
plattform2.setLocation(312,371);
plattform2.setLocation(308,382);
-
+ Healthbar healthbar = new Healthbar();
+ addObject(healthbar,50,50);
}
public void act()
{
+ if (getObjects(Score.class).size() > 0){
+ removeObjects(getObjects(Score.class));
+ }
+ Score score = new Score();
+ addObject(score, 200, 30);
+ score.setImage("Score1.png");
+ Score score1 = new Score();
+ addObject(score1, 200, 60);
+ score1.setImage("Score2.png");
+ showScore();
projectile();
targetingProjectile();
if(PlattformCountdown==0) //Damit in regelmäßigen Abständen auf jeden Fall eine Plattform auftaucht
@@ -84,14 +101,13 @@ public class MyWorld extends World
addObject(new SpikedPlattform(100), Greenfoot.getRandomNumber(400), 6); //Nach Links bewegende Plattform
}
-
}
public void projectile(){
if(timer == 0){
Projectile projectile = new Projectile();
addObject(projectile,Greenfoot.getRandomNumber(300)+50,0);
- timer = 200; //zeitlicher Abstand
+ timer = 300; //zeitlicher Abstand
}
else{
timer = timer - 1;
@@ -102,10 +118,16 @@ public class MyWorld extends World
if(targetTimer == 0){
TargetingProjectile targetingProjectile = new TargetingProjectile();
addObject(targetingProjectile, Greenfoot.getRandomNumber(300)+50,0);
- targetTimer = 100;
+ targetTimer = 1000;
}
else{
targetTimer = targetTimer - 1;
}
}
+
+ public void showScore(){
+ time++;
+ score = time/60;
+ showText("" + score, 200, 60);
+ }
}
diff --git a/SMIMS-Game/Player.class b/SMIMS-Game/Player.class
index 4d3d469..d43e31d 100644
Binary files a/SMIMS-Game/Player.class and b/SMIMS-Game/Player.class differ
diff --git a/SMIMS-Game/Player.ctxt b/SMIMS-Game/Player.ctxt
index 5fff3f3..330efd4 100644
--- a/SMIMS-Game/Player.ctxt
+++ b/SMIMS-Game/Player.ctxt
@@ -12,9 +12,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\ reveivePowerUp(int,\ java.lang.String)
+numComments=10
diff --git a/SMIMS-Game/Player.java b/SMIMS-Game/Player.java
index 508b721..830386d 100644
--- a/SMIMS-Game/Player.java
+++ b/SMIMS-Game/Player.java
@@ -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;
-
+
boolean projectileReady = false;
int projectileTimer;
-
+
private int speed = 6;
private int currentJumpStrength;
private int defaultJumpStrength = 15;
@@ -30,6 +33,7 @@ public class Player extends Actor
fall();
handlePowerUps();
shootProjectile();
+ checkHealth();
//Check ob der Spieler am unteren Fensterrand ist
if (getY()+1 >= getWorld().getHeight()){
@@ -89,8 +93,8 @@ public class Player extends Actor
}
}
onGround = landed;
- }
-
+ }
+
public void shootProjectile(){
projectileTimer++;
MouseInfo mouse = Greenfoot.getMouseInfo();
@@ -106,10 +110,19 @@ public class Player extends Actor
}
}
- public boolean collision(){
+ public void collision(){
if (getIntersectingObjects(Projectile.class).size()>0
|| getIntersectingObjects(Enemy.class).size()>0)
{
+ health--;
+ getWorld().removeObjects(getIntersectingObjects(Projectile.class));
+ getWorld().removeObjects(getIntersectingObjects(Enemy.class));
+
+ }
+ }
+
+ public void checkHealth(){
+ if (health <= 0){
Greenfoot.setWorld(new GameOverWorld());
return true;
}
@@ -118,7 +131,7 @@ public class Player extends Actor
return false;
}
}
-
+
public void handlePowerUps(){
if (jumpBoostDuration >= 0){
jumpBoostDuration -= 1;
@@ -126,7 +139,7 @@ public class Player extends Actor
currentJumpStrength = defaultJumpStrength;
}
}
-
+
public void reveivePowerUp(int duration, String type){
switch(type){
case "dummy":
@@ -135,6 +148,10 @@ public class Player extends Actor
currentJumpStrength = defaultJumpStrength;
currentJumpStrength += jumpBoostStrength;
jumpBoostDuration = duration;
+ case "Heal":
+ if (health < MAX_HEALTH){
+ health++;
+ }
case "GroundPower":
World theWorld= this.getWorld();
if(!theWorld.getObjects(TemporaryGround.class).isEmpty())
diff --git a/SMIMS-Game/PlayerProjectile.class b/SMIMS-Game/PlayerProjectile.class
index f10839b..ce9bebb 100644
Binary files a/SMIMS-Game/PlayerProjectile.class and b/SMIMS-Game/PlayerProjectile.class differ
diff --git a/SMIMS-Game/PlayerProjectile.java b/SMIMS-Game/PlayerProjectile.java
index 76ca5f8..65269d1 100644
--- a/SMIMS-Game/PlayerProjectile.java
+++ b/SMIMS-Game/PlayerProjectile.java
@@ -34,7 +34,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;
diff --git a/SMIMS-Game/Score.class b/SMIMS-Game/Score.class
index 2d6ec6b..68d900b 100644
Binary files a/SMIMS-Game/Score.class and b/SMIMS-Game/Score.class differ
diff --git a/SMIMS-Game/Score.ctxt b/SMIMS-Game/Score.ctxt
index 79e8783..1d6d801 100644
--- a/SMIMS-Game/Score.ctxt
+++ b/SMIMS-Game/Score.ctxt
@@ -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
diff --git a/SMIMS-Game/Score.java b/SMIMS-Game/Score.java
index bec09ba..8370b6f 100644
--- a/SMIMS-Game/Score.java
+++ b/SMIMS-Game/Score.java
@@ -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;
- }
}
diff --git a/SMIMS-Game/doc/Score.html b/SMIMS-Game/doc/Score.html
new file mode 100644
index 0000000..df55b5a
--- /dev/null
+++ b/SMIMS-Game/doc/Score.html
@@ -0,0 +1,148 @@
+
+
+
+
+Score
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+public class Score
+extends greenfoot.Actor
+Write a description of class UI here.
+
+- Version:
+- (a version number or a date)
+- Autor:
+- (your name)
+
+
+
+
+
+-
+
+
Konstruktorübersicht
+Konstruktoren
+
+
+
+
+-
+
+
Methodenübersicht
+
+
+
+
+
+
+
+
void
+
+
+
Act - do whatever the UI wants to do.
+
+
int
+
+
+
void
+
+
+
+
+
+
+
+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
+
+
+
+
+
+
+
+
+-
+
+
+
+-
+
+
Methodendetails
+
+-
+
+
act
+public void act()
+Act - do whatever the UI wants to do. This method is called whenever
+ the 'Act' or 'Run' button gets pressed in the environment.
+
+- Setzt außer Kraft:
+act in Klasse greenfoot.Actor
+
+
+
+-
+
+
draw_score
+public void draw_score()
+
+
+-
+
+
calculate_score
+public int calculate_score()
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/SMIMS-Game/doc/index.html b/SMIMS-Game/doc/index.html
index 0dddb70..3043857 100644
--- a/SMIMS-Game/doc/index.html
+++ b/SMIMS-Game/doc/index.html
@@ -1,11 +1,11 @@
-
+
Generierte Dokumentation (unbenannt)
-
+
diff --git a/SMIMS-Game/doc/logfile.txt b/SMIMS-Game/doc/logfile.txt
index 5b07d5f..0718a54 100644
--- a/SMIMS-Game/doc/logfile.txt
+++ b/SMIMS-Game/doc/logfile.txt
@@ -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
diff --git a/SMIMS-Game/doc/package-summary.html b/SMIMS-Game/doc/package-summary.html
index 240d066..b78e4c0 100644
--- a/SMIMS-Game/doc/package-summary.html
+++ b/SMIMS-Game/doc/package-summary.html
@@ -1,11 +1,11 @@
-
+
Unbenanntes Package
-
+
@@ -31,9 +31,9 @@
-
+
-
Write a description of class StartWorld here.
+
Write a description of class UI here.
diff --git a/SMIMS-Game/images/Platform1.png b/SMIMS-Game/images/Platform1.png
new file mode 100644
index 0000000..dce9155
Binary files /dev/null and b/SMIMS-Game/images/Platform1.png differ
diff --git a/SMIMS-Game/images/Player.png b/SMIMS-Game/images/Player.png
new file mode 100644
index 0000000..110ffd3
Binary files /dev/null and b/SMIMS-Game/images/Player.png differ
diff --git a/SMIMS-Game/images/Score1.png b/SMIMS-Game/images/Score1.png
new file mode 100644
index 0000000..1923130
Binary files /dev/null and b/SMIMS-Game/images/Score1.png differ
diff --git a/SMIMS-Game/images/Score2.png b/SMIMS-Game/images/Score2.png
new file mode 100644
index 0000000..9178e78
Binary files /dev/null and b/SMIMS-Game/images/Score2.png differ
diff --git a/SMIMS-Game/images/greenfoot.png b/SMIMS-Game/images/greenfoot.png
new file mode 100644
index 0000000..265bfbc
Binary files /dev/null and b/SMIMS-Game/images/greenfoot.png differ
diff --git a/SMIMS-Game/images/herz.png b/SMIMS-Game/images/herz.png
new file mode 100644
index 0000000..cee6422
Binary files /dev/null and b/SMIMS-Game/images/herz.png differ
diff --git a/SMIMS-Game/project.greenfoot b/SMIMS-Game/project.greenfoot
index 799973b..b8a97cd 100644
--- a/SMIMS-Game/project.greenfoot
+++ b/SMIMS-Game/project.greenfoot
@@ -1,14 +1,20 @@
#Greenfoot project file
class.BreakingPlattform.image=Unbenannt2.png
+class.Button.image=button-red.png
+class.GameOverWorld.image=GameOverBackground.png
class.Ground.image=weave.jpg
-class.Groundflower.image=beeper.png
+class.HealthItem.image=herz.png
+class.JumpBoostItem.image=mushroom.png
class.MovingPlattform.image=Unbenannt.png
-class.Plattform.image=Plattform.png
-class.Player.image=ppl2.png
+class.MyWorld.image=GameBackground.png
+class.Plattform.image=Platform1.png
+class.Player.image=Player.png
+class.Projectile.image=Projectile1.png
class.Spike.image=Spike.png
class.SpikedPlattform.image=SpikedPlattform.png
-class.TemporaryGround.image=TemporaryGround.png
-class.UnactiveSpike.image=Spike_Copy.png
+class.StartWorld.image=StartBackground.png
+class.TargetingProjectile.image=blue-draught.png
+class.UnactiveSpike.image=SpikeUnactive.png
dependency1.from=GameOverWorld
dependency1.to=Button
dependency1.type=UsesDependency
@@ -22,107 +28,104 @@ dependency12.from=MyWorld
dependency12.to=SpikedPlattform
dependency12.type=UsesDependency
dependency13.from=MyWorld
-dependency13.to=Groundflower
+dependency13.to=Projectile
dependency13.type=UsesDependency
dependency14.from=MyWorld
-dependency14.to=Projectile
+dependency14.to=TargetingProjectile
dependency14.type=UsesDependency
-dependency15.from=MyWorld
-dependency15.to=TargetingProjectile
+dependency15.from=Spike
+dependency15.to=GameOverWorld
dependency15.type=UsesDependency
dependency16.from=Spike
-dependency16.to=GameOverWorld
+dependency16.to=MyWorld
dependency16.type=UsesDependency
dependency17.from=Spike
-dependency17.to=MyWorld
+dependency17.to=Player
dependency17.type=UsesDependency
-dependency18.from=Spike
-dependency18.to=Player
+dependency18.from=Player
+dependency18.to=GameOverWorld
dependency18.type=UsesDependency
dependency19.from=Player
-dependency19.to=GameOverWorld
+dependency19.to=Plattform
dependency19.type=UsesDependency
dependency2.from=PlayerTestWorld
dependency2.to=Ground
dependency2.type=UsesDependency
dependency20.from=Player
-dependency20.to=Plattform
+dependency20.to=PlayerProjectile
dependency20.type=UsesDependency
dependency21.from=Player
-dependency21.to=PlayerProjectile
+dependency21.to=Projectile
dependency21.type=UsesDependency
dependency22.from=Player
-dependency22.to=TemporaryGround
+dependency22.to=Enemy
dependency22.type=UsesDependency
-dependency23.from=Player
-dependency23.to=Projectile
+dependency23.from=UnactiveSpike
+dependency23.to=SpikedPlattform
dependency23.type=UsesDependency
-dependency24.from=Player
-dependency24.to=Enemy
+dependency24.from=UnactiveSpike
+dependency24.to=MyWorld
dependency24.type=UsesDependency
dependency25.from=UnactiveSpike
-dependency25.to=SpikedPlattform
+dependency25.to=Spike
dependency25.type=UsesDependency
-dependency26.from=UnactiveSpike
-dependency26.to=MyWorld
+dependency26.from=Healthbar
+dependency26.to=Player
dependency26.type=UsesDependency
-dependency27.from=UnactiveSpike
-dependency27.to=Spike
+dependency27.from=Plattform
+dependency27.to=MyWorld
dependency27.type=UsesDependency
dependency28.from=Plattform
-dependency28.to=MyWorld
+dependency28.to=Player
dependency28.type=UsesDependency
-dependency29.from=Plattform
-dependency29.to=Player
+dependency29.from=MovingPlattform
+dependency29.to=MyWorld
dependency29.type=UsesDependency
dependency3.from=PlayerTestWorld
dependency3.to=Player
dependency3.type=UsesDependency
dependency30.from=MovingPlattform
-dependency30.to=MyWorld
+dependency30.to=Player
dependency30.type=UsesDependency
-dependency31.from=MovingPlattform
-dependency31.to=Player
+dependency31.from=SpikedPlattform
+dependency31.to=Spike
dependency31.type=UsesDependency
dependency32.from=SpikedPlattform
-dependency32.to=Spike
+dependency32.to=GameOverWorld
dependency32.type=UsesDependency
dependency33.from=SpikedPlattform
-dependency33.to=GameOverWorld
+dependency33.to=MyWorld
dependency33.type=UsesDependency
dependency34.from=SpikedPlattform
-dependency34.to=MyWorld
+dependency34.to=UnactiveSpike
dependency34.type=UsesDependency
-dependency35.from=SpikedPlattform
-dependency35.to=UnactiveSpike
+dependency35.from=TargetingProjectile
+dependency35.to=Player
dependency35.type=UsesDependency
-dependency36.from=TargetingProjectile
-dependency36.to=Player
+dependency36.from=Button
+dependency36.to=MyWorld
dependency36.type=UsesDependency
-dependency37.from=Button
-dependency37.to=MyWorld
+dependency37.from=PowerUps
+dependency37.to=Player
dependency37.type=UsesDependency
-dependency38.from=PowerUps
+dependency38.from=HealthItem
dependency38.to=Player
dependency38.type=UsesDependency
-dependency39.from=Groundflower
+dependency39.from=JumpBoostItem
dependency39.to=Player
dependency39.type=UsesDependency
dependency4.from=PlayerTestWorld
dependency4.to=JumpBoostItem
dependency4.type=UsesDependency
-dependency40.from=JumpBoostItem
+dependency40.from=Enemy
dependency40.to=Player
dependency40.type=UsesDependency
dependency41.from=Enemy
-dependency41.to=Player
+dependency41.to=EnemyProjectile
dependency41.type=UsesDependency
-dependency42.from=Enemy
-dependency42.to=EnemyProjectile
+dependency42.from=PlayerProjectile
+dependency42.to=Enemy
dependency42.type=UsesDependency
-dependency43.from=PlayerProjectile
-dependency43.to=Enemy
-dependency43.type=UsesDependency
dependency5.from=StartWorld
dependency5.to=Button
dependency5.type=UsesDependency
@@ -136,14 +139,14 @@ dependency8.from=MyWorld
dependency8.to=Plattform
dependency8.type=UsesDependency
dependency9.from=MyWorld
-dependency9.to=TemporaryGround
+dependency9.to=Healthbar
dependency9.type=UsesDependency
-editor.fx.0.height=739
-editor.fx.0.width=816
-editor.fx.0.x=869
-editor.fx.0.y=190
-height=1048
-package.numDependencies=43
+editor.fx.0.height=737
+editor.fx.0.width=814
+editor.fx.0.x=360
+editor.fx.0.y=26
+height=822
+package.numDependencies=42
package.numTargets=23
project.charset=UTF-8
publish.hasSource=false
@@ -167,42 +170,42 @@ target1.width=120
target1.x=0
target1.y=0
target10.height=70
-target10.name=PlayerTestWorld
+target10.name=GameOverWorld
target10.showInterface=false
target10.type=ClassTarget
target10.width=120
target10.x=0
target10.y=0
target11.height=70
-target11.name=StartWorld
+target11.name=PlayerTestWorld
target11.showInterface=false
target11.type=ClassTarget
target11.width=120
target11.x=0
target11.y=0
target12.height=70
-target12.name=Plattform
+target12.name=StartWorld
target12.showInterface=false
target12.type=ClassTarget
target12.width=120
target12.x=0
target12.y=0
target13.height=70
-target13.name=TargetingProjectile
+target13.name=Plattform
target13.showInterface=false
target13.type=ClassTarget
target13.width=120
target13.x=0
target13.y=0
target14.height=70
-target14.name=Projectile
+target14.name=TargetingProjectile
target14.showInterface=false
target14.type=ClassTarget
target14.width=120
target14.x=0
target14.y=0
target15.height=70
-target15.name=TemporaryGround
+target15.name=Projectile
target15.showInterface=false
target15.type=ClassTarget
target15.width=120
@@ -272,56 +275,56 @@ target23.width=120
target23.x=0
target23.y=0
target3.height=70
-target3.name=Groundflower
+target3.name=MovingPlattform
target3.showInterface=false
target3.type=ClassTarget
target3.width=120
target3.x=0
target3.y=0
target4.height=70
-target4.name=MovingPlattform
+target4.name=Ground
target4.showInterface=false
target4.type=ClassTarget
target4.width=120
target4.x=0
target4.y=0
target5.height=70
-target5.name=Ground
+target5.name=UnactiveSpike
target5.showInterface=false
target5.type=ClassTarget
target5.width=120
target5.x=0
target5.y=0
target6.height=70
-target6.name=UnactiveSpike
+target6.name=HealthItem
target6.showInterface=false
target6.type=ClassTarget
target6.width=120
target6.x=0
target6.y=0
target7.height=70
-target7.name=JumpBoostItem
+target7.name=Healthbar
target7.showInterface=false
target7.type=ClassTarget
target7.width=120
target7.x=0
target7.y=0
target8.height=70
-target8.name=BreakingPlattform
+target8.name=JumpBoostItem
target8.showInterface=false
target8.type=ClassTarget
target8.width=120
target8.x=0
target8.y=0
target9.height=70
-target9.name=GameOverWorld
+target9.name=BreakingPlattform
target9.showInterface=false
target9.type=ClassTarget
target9.width=120
target9.x=0
target9.y=0
version=3.1.0
-width=1936
-world.lastInstantiated=StartWorld
-xPosition=0
-yPosition=0
+width=715
+world.lastInstantiated=MyWorld
+xPosition=532
+yPosition=117