From 44f7382b6fe2284878eb7907a1831c4e412c2085 Mon Sep 17 00:00:00 2001 From: Jonas Date: Tue, 15 Sep 2026 10:30:38 +0200 Subject: [PATCH 1/6] =?UTF-8?q?Der=20Spieler=20kann=20nun=20h=C3=B6her=20s?= =?UTF-8?q?pringen=20und=20wird=20nicht=20auf=20einen=20Boden=20gesetzt,?= =?UTF-8?q?=20wenn=20er=20diesen=20von=20der=20Seite=20ber=C3=BChrt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- SMIMS-Game/Player.class | Bin 1563 -> 1688 bytes SMIMS-Game/Player.java | 35 +++++++++++++++++++++++------------ SMIMS-Game/project.greenfoot | 12 +++--------- 3 files changed, 26 insertions(+), 21 deletions(-) diff --git a/SMIMS-Game/Player.class b/SMIMS-Game/Player.class index ff9a79d8785e72a9b61bb93f2b512732c93c11e8..17b5d20f22bc809f342e093861b93c7a6ed86544 100644 GIT binary patch delta 472 zcmZ9I&q^C%6vcltnMp8=G$b7tH4D2C!kDOplGZd9jkZRqO5>k45!!@Aagh)RS(HMt zP;k>tAYCY~q)$+)Q>frh7k!PshjM0^ zwqI>mYn|P8zSZfpng-EUqrUJzX^AZL{+VA!-eY2Dz?k?Id|e;7lBRVU>93$IQD#|a$f0-n0H2`a;{&DaI7-x2~Na)(q1&{lUqw& zv)AvO@FC?hr#J8O(r(l<*1+VmGN>yVdsM`I5p;vD^@D_KyVfa>`%|3>w{N*q^cwcq zL75S)GpV(viIOJH6UNDq){bC;wkDhEpwX4nw2H6tm7^Gbm!4c25s^mn!ffyMdEwvZ`VQ?_>mcq4^F S;D)YYgfLA@!Is3Cly3n_C|Y0u delta 374 zcmXAlOG`pg6otQgy>?T~BwvI?H8QSJVJ|SP>_HY;R8~3=G_|Z8iF5l4;Uw?}G?w%R z4Vu-UasMWY_B9Us>~;29d!Mt;<4DKl{QP}=15)I>&Ue-4E!RqoQn^`eq)YXyboJ)C z)@*;P_x=JZiU=o-7ZgM9qZ=Mq`@uF7axlawIzAkX<0K<0*T44p%a&DI3L17P-WmBG zUZaPn*q3ZFC)is|7y=_9lbA6UH%VloA0#cN!)nxILn39eW3N}%M7TeI%i5r6!mm}V zKASa9>l1il*g6Eda-EF>+2gd_l4coUo*)ZMu|${^B0|MTi1VZf*U1Sgu*oG`RN3X0 zy@8cQd3%a!PQ;WoGQg=I&GN$`N0NhNWm%TPY;(rBeAThkov1%l6}OJ633(wUmE0dM C`a(+p diff --git a/SMIMS-Game/Player.java b/SMIMS-Game/Player.java index dbe19ac..a5cb43b 100644 --- a/SMIMS-Game/Player.java +++ b/SMIMS-Game/Player.java @@ -2,10 +2,10 @@ import greenfoot.*; public class Player extends Actor { - private int speed = 4; - private int jumpStrength = 12; + private int speed = 6; + private int jumpStrength = 20; private int gravity = 1; - + private int verticalSpeed = 0; private boolean onGround = false; @@ -40,27 +40,38 @@ public class Player extends Actor } } - // Schwerkraft und Boden-Kollision + // Schwerkraft private void fall() { + int oldY = getY(); + verticalSpeed += gravity; int newY = getY() + verticalSpeed; - // Prüfen, ob wir auf Ground landen setLocation(getX(), newY); Actor ground = getOneIntersectingObject(Ground.class); - if (ground != null) + if (ground != null && verticalSpeed >= 0) { - // Wenn wir fallen, stehen wir auf dem Ground - if (verticalSpeed >= 0) - { - int groundTop = ground.getY() - ground.getImage().getHeight() / 2; - int characterHalfHeight = getImage().getHeight() / 2; + int groundTop = ground.getY() + - ground.getImage().getHeight() / 2; - setLocation(getX(), groundTop - characterHalfHeight); + int characterBottom = getY() + + getImage().getHeight() / 2; + + // Nur landen, wenn der Spieler vorher über dem Boden war + int oldCharacterBottom = oldY + + getImage().getHeight() / 2; + + if (oldCharacterBottom <= groundTop && + characterBottom >= groundTop) + { + setLocation( + getX(), + groundTop - getImage().getHeight() / 2 + ); verticalSpeed = 0; onGround = true; diff --git a/SMIMS-Game/project.greenfoot b/SMIMS-Game/project.greenfoot index f079710..aa644c0 100644 --- a/SMIMS-Game/project.greenfoot +++ b/SMIMS-Game/project.greenfoot @@ -4,21 +4,15 @@ class.Player.image=ppl2.png dependency1.from=PlayerTestWorld dependency1.to=Ground dependency1.type=UsesDependency -dependency2.from=PlayerTestWorld -dependency2.to=Player +dependency2.from=Player +dependency2.to=Ground dependency2.type=UsesDependency -dependency3.from=MyWorld -dependency3.to=Player -dependency3.type=UsesDependency -dependency4.from=Player -dependency4.to=Ground -dependency4.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=4 +package.numDependencies=2 package.numTargets=4 project.charset=UTF-8 publish.hasSource=false From 81fb707beb1bc3abc2073d2649d67e0caa176262 Mon Sep 17 00:00:00 2001 From: Jonas Date: Tue, 15 Sep 2026 10:44:15 +0200 Subject: [PATCH 2/6] fehler in der Player Klasse behoben (methode player_movement() entfernt) --- SMIMS-Game/Player.class | Bin 1688 -> 2024 bytes SMIMS-Game/Player.ctxt | 10 ++++++--- SMIMS-Game/Player.java | 1 - SMIMS-Game/project.greenfoot | 41 +++++++++++++++++++++++------------ 4 files changed, 34 insertions(+), 18 deletions(-) diff --git a/SMIMS-Game/Player.class b/SMIMS-Game/Player.class index 17b5d20f22bc809f342e093861b93c7a6ed86544..4e8541392580c88817adc53b3868f4103af34e4e 100644 GIT binary patch literal 2024 zcmZuy-%}G;6#h2Z{2(k6B0*H}w{2L(Sg~3g)FLRPMxa7Luxgg%5*9bRbhF^-OrJW_ zm%cdDK9uQ9XF7f8i!YslXxo`S_Mv~2)9>B{2)2{S{c+B{-#O>fAUjeDJYPd}*mmvUhK6uvV6F{uw8fAx&<=yTX~%jlcqmd^ z6QZm^%gYl740KAhvASMen+bg3R)Q6&=rWL!ideC~nmP%bZCIx2=yr%@qmgB^cp#>`e6X#+$Z(tA?G#uPxWPFDknzn0q#q%-m z8BM1%g;i_A$~u-?$ueBqt>gxjGZzhffJ?Mj5y1oHV_sUlY~aHk@q!dwHSiIxX=tyB zpx~9PK!p^^A@uYt3_Q6;<)G-Ws7xE0)hw!oTGOfmbE8=afg^73vf&&>vSk;}mTGXy|J3 zx{+s6KI5(XC2@z8v*;SGT#y{$Br_0VXNYj*6Xz-<-?Ezdbk)q~s%Ab;&QY)~)o5|| znCCUlC(PH-%w%*MF*Dh{jSf@aM$!y#A-L19ylbn#owSuQ>o_vc;TZoX`9HIV-b3GjZjNc%=pptYbg`}MA*Y(iA=x*G zC!=_VutFY6z5fOSo9H%)nl-l&D|0ba$CcE_?BOTZmB&)U%2qG!_iUoe=SuEFLiLX7iR94}Ch|rqb$2fo@b8GQ&h?d;;?a%EIn(%lvgtdPG@SuhL delta 1001 zcmZ8gO-~b16g_V`?bLQEP;65^1?8h13POwJ8|6bw0YOobLX2%_F&HQWN=!^l7bb4p zK*j~c#KiaujL@hHmoEGh?u@^Jc-~NixOi{wJNMpm?!E8LpR#?A>*w*e?*K-ywCDP| z_bU*o*KrvR0rlC=`lbs`H0row0W0aXH7A+`MB0TGv}y?I2*EHzVz?02(T)zLJ!E;p+{#l(101t@+)xn zB%k&ePtxZxim2wQ<7)UsK!GIok`lPcy^Qsjlc?exp@)P8$*7?AALDb@AsM6It6$K3 zfJ+7`+l)hK85-A$h{ldPiN+iQshSb+Zk6$Zba{1GY*+Y$U{f+vkOvCS4rwo)#1POQEpCbigI z9m)BqEU5xSmc?rH9LP2XjpQNO4^f_yDnw{kriQF3)UtcS+h4@sO#2V4NY6VwX)od? z*GLh!>}#2rY9$phX`NFsdkulpgTv?WsUH#a*?sBb@C=7yrgb4BZe?~(Sv>rVgPXrapJ>x#GfdMQDiWVEuwi$;052_E84Fa@rL8r z Date: Tue, 15 Sep 2026 11:33:47 +0200 Subject: [PATCH 3/6] PowerUps/JumpBoost MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit neue Klassen: PowerUps, JumpBoostItem Die aktivieren und das deaktivieren der PowerUps wird im Player durchgeführt. --- SMIMS-Game/JumpBoostItem.class | Bin 0 -> 742 bytes SMIMS-Game/JumpBoostItem.ctxt | 8 +++ SMIMS-Game/JumpBoostItem.java | 21 +++++++ SMIMS-Game/Player.class | Bin 2024 -> 2752 bytes SMIMS-Game/Player.ctxt | 6 +- SMIMS-Game/Player.java | 29 +++++++++- SMIMS-Game/PlayerTestWorld.class | Bin 574 -> 669 bytes SMIMS-Game/PlayerTestWorld.java | 3 + SMIMS-Game/PowerUps.class | Bin 0 -> 984 bytes SMIMS-Game/PowerUps.ctxt | 10 ++++ SMIMS-Game/PowerUps.java | 28 +++++++++ SMIMS-Game/images/mushroom.png | Bin 0 -> 1693 bytes SMIMS-Game/project.greenfoot | 94 ++++++++++++++++++++++++++----- 13 files changed, 183 insertions(+), 16 deletions(-) create mode 100644 SMIMS-Game/JumpBoostItem.class create mode 100644 SMIMS-Game/JumpBoostItem.ctxt create mode 100644 SMIMS-Game/JumpBoostItem.java create mode 100644 SMIMS-Game/PowerUps.class create mode 100644 SMIMS-Game/PowerUps.ctxt create mode 100644 SMIMS-Game/PowerUps.java create mode 100644 SMIMS-Game/images/mushroom.png diff --git a/SMIMS-Game/JumpBoostItem.class b/SMIMS-Game/JumpBoostItem.class new file mode 100644 index 0000000000000000000000000000000000000000..8ce3e47627e22629d32abfef2f85617399c3cb8c GIT binary patch literal 742 zcmZ9KOK;Oa6ot>^Q75UJq-h%-INDn)?o^4yh*3CqbN%BK+7r9#%b(n6@>y~(4e+yqLuMlI!gU>IX=2P z3A{@g8`vbd*k`&e6WiDk=uV^_gj&Xl^tB2n??xBg(8a#xUU+k_A9&%Ue;jy8;`EA> zRI8xxszf{MxQ6QnZkV`G9yzg` zOEs6vme8a%xMJp1$298nh60u2Xe?Q*t3vrUosMLD=8XcLblk}If}t0yEM6W~^tobX zEqC>5)0Mt=o?t@HKXz>t_7zsRHah@^CI8}Rr zjsF2n0$Nu9)g=J1R)7yQmOZv>ciIbd%HPl};V0Vef&Cdq=hgyu{$iUH107Chi$mVd V(cL0_iEh(z4|eYAfZ7rc{{VAejSv6; literal 0 HcmV?d00001 diff --git a/SMIMS-Game/JumpBoostItem.ctxt b/SMIMS-Game/JumpBoostItem.ctxt new file mode 100644 index 0000000..ce278d8 --- /dev/null +++ b/SMIMS-Game/JumpBoostItem.ctxt @@ -0,0 +1,8 @@ +#BlueJ class context +comment0.target=JumpBoostItem +comment0.text=\r\n\ Write\ a\ description\ of\ class\ JumpBoostItem\ 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/JumpBoostItem.java b/SMIMS-Game/JumpBoostItem.java new file mode 100644 index 0000000..dc588f3 --- /dev/null +++ b/SMIMS-Game/JumpBoostItem.java @@ -0,0 +1,21 @@ +import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo) + +/** + * Write a description of class JumpBoostItem here. + * + * @author (your name) + * @version (a version number or a date) + */ +public class JumpBoostItem extends PowerUps +{ + int duration = 60*5; + public void act() + { + touchedByPlayer(); + } + + @Override void collect(){ + Player player = getIntersectingObjects(Player.class).get(0); + player.reveivePowerUp(duration, "JumpBoost"); + } +} diff --git a/SMIMS-Game/Player.class b/SMIMS-Game/Player.class index 4e8541392580c88817adc53b3868f4103af34e4e..5090825a78a5c4ba0988fabf9e206a895f69b9b3 100644 GIT binary patch literal 2752 zcmZuyTXR!Y6#hdAvCqLp@>jTkJO5270X2^5(=ROT8c%G9&&cm11CA*H_f#Vf5Xe07;i-A^oboIn|;EQ5Dn3dXf1`<*mDVKz>rKH_J zQcBj_V#cbt!C@M%zwwZPPN|ROeQVAM7UZ2S1Km>AJSY6X$yx6BinWafday}D+$&~$ zuTr$>*6BuG*=*nuY|+q=^IX>{D~B1N()Aj6ROX_s;LVAwms^JF@GOe_DNUSh>8jty&^wM#K zjOG;s=P<3ILxTS&l(L2`{}+oQs6rb9S*IKfHQ_vRG1vx#^r+=QH3=&_S40eXR&2&9 zh%uJ!DbIK9M$8~A3*>@d+S7FzQ?jAH$wn06#ZWSENdmR4EfiXqwaT-@ zo-N{_^AWpJC@jcZ6$5jaCz0Y(#d4{7pv{&|!v` zut5%~AC#?EIX(CkJ_;gUG!)ZS6kU|ukxHxMZh&&=T5_G_t7V~ljt4h zG9Es~VJpAK_?i6rSCP7S1K2>nyNJ|{W~7L-k@kD)5ISlIA=zbVSH?GwutM08c=9fu zT130F{G53QZ8jIXma#W6yhbryQ%LwQWS|`c2DUKVUOJH`877`$b6yQ@M-BQ0&*=zl z=ww>i&1+7attGi9@uI@&Bz|fU>rBp>pgyrxyaa6k+nLTC{7-tCfezMT_0(Z8xQ#T< z|A{J;Cg^I6mltIayUeLOWbF<*rX>g^TyL1(t#XiJ>}KNdGP0xnzhOpdzQnoyWgO#o zd>JPru05!$OUpQ|_S1urZVFa5(PT8K-$FVWN$Ou?v$C3$H>wA0382b`1(dpt`2F&! zMtPcf1%~MGZWhd5Qo4`%9cC~u;#p*{3x_x!MixhKihl)D7=w-D@G*e^CrR%l-sJin zYCgni+{77t#wPm(ES0T8Ohkr%H?Ok*bz0boH@J$>#x~wFR7ow?av8zrcuN&(ijudv zl1VMl_PeZs8}!pa_#SR*S`49(&SdjXzQ*p$HFi^G;^k$W{Rx(auh9AnW~P3`>|Hqe zcj517p`Kftk7b73=2_4e>$sKZ@{veHa@$1+{^i$z94Vrrmt4iZp)p|X10TM6?X-mk&_NmyC`SGJ9Y26Yxk z;al#&nq>3&>ia+b;%r9l>fdng?oas32o{kH59+tk+Ml?rwo!dhPwLfs&&hlI}GhYu~ZwuWiow*OkZXGuCW%bV}Tiyukm5}N>6L?$khjm jRk`{Q9})Kk^=*j$gRLB{2)2{S{c+B{-#O>fAUjeDJYPd}*mmvUhK6uvV6F{uw8fAx&<=yTX~%jlcqmd^ z6QZm^%gYl740KAhvASMen+bg3R)Q6&=rWL!ideC~nmP%bZCIx2=yr%@qmgB^cp#>`e6X#+$Z(tA?G#uPxWPFDknzn0q#q%-m z8BM1%g;i_A$~u-?$ueBqt>gxjGZzhffJ?Mj5y1oHV_sUlY~aHk@q!dwHSiIxX=tyB zpx~9PK!p^^A@uYt3_Q6;<)G-Ws7xE0)hw!oTGOfmbE8=afg^73vf&&>vSk;}mTGXy|J3 zx{+s6KI5(XC2@z8v*;SGT#y{$Br_0VXNYj*6Xz-<-?Ezdbk)q~s%Ab;&QY)~)o5|| znCCUlC(PH-%w%*MF*Dh{jSf@aM$!y#A-L19ylbn#owSuQ>o_vc;TZoX`9HIV-b3GjZjNc%=pptYbg`}MA*Y(iA=x*G zC!=_VutFY6z5fOSo9H%)nl-l&D|0ba$CcE_?BOTZmB&)U%2qG!_iUoe=SuEFLiLX7iR94}Ch|rqb$2fo@b8GQ&h?d;;?a%EIn(%lvgtdPG@SuhL diff --git a/SMIMS-Game/Player.ctxt b/SMIMS-Game/Player.ctxt index 2806518..5208ed6 100644 --- a/SMIMS-Game/Player.ctxt +++ b/SMIMS-Game/Player.ctxt @@ -11,4 +11,8 @@ comment4.params= comment4.target=void\ fall() comment5.params= comment5.target=boolean\ collision() -numComments=6 +comment6.params= +comment6.target=void\ handlePowerUps() +comment7.params=duration\ type +comment7.target=void\ reveivePowerUp(int,\ java.lang.String) +numComments=8 diff --git a/SMIMS-Game/Player.java b/SMIMS-Game/Player.java index 10df53f..2abc718 100644 --- a/SMIMS-Game/Player.java +++ b/SMIMS-Game/Player.java @@ -8,8 +8,13 @@ import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo) */ public class Player extends Actor { + int jumpBoostDuration = -1; + int jumpBoostStrength = 5; + + private int speed = 6; - private int jumpStrength = 20; + private int currentJumpStrength; + private int defaultJumpStrength = 15; private int gravity = 1; private int verticalSpeed = 0; @@ -21,6 +26,7 @@ public class Player extends Actor moveLeftAndRight(); jump(); fall(); + handlePowerUps(); } // Bewegung nach links und rechts @@ -42,7 +48,7 @@ public class Player extends Actor { if (Greenfoot.isKeyDown("space") && onGround) { - verticalSpeed = -jumpStrength; + verticalSpeed = -currentJumpStrength; onGround = false; } } @@ -101,4 +107,23 @@ public class Player extends Actor return false; } } + + public void handlePowerUps(){ + if (jumpBoostDuration >= 0){ + jumpBoostDuration -= 1; + } else if (jumpBoostDuration <= -1){ + currentJumpStrength = defaultJumpStrength; + } + } + + public void reveivePowerUp(int duration, String type){ + switch(type){ + case "dummy": + break; + case "JumpBoost": + currentJumpStrength = defaultJumpStrength; + currentJumpStrength += jumpBoostStrength; + jumpBoostDuration = duration; + } + } } diff --git a/SMIMS-Game/PlayerTestWorld.class b/SMIMS-Game/PlayerTestWorld.class index 99be99adc32fd8c1bb24f698083891ffd1526545..cb40e72d0f2d0c4789fcdb8a8af47b3c58b51dfd 100644 GIT binary patch delta 269 zcmdnTGMAO>)W2Q(7#J8F88jwxZ4+Z>kYr@w^(xIRaLUgwF7Yf$&E;Z{n7FT0o;M3w zkdcAk2SwFn14b)G>B-rQiqg6=XOk$Z%pCgWyK629UvW4D3KsmVpDv z5(XM1&7i=b#-PZc$DqVu$)F6jNDE>Z)FKWBBcK{ZuvPLvRmwoC^?+8ZFsK3@$q3X9 Ha*R3vh#@JJ delta 177 zcmbQsx{rnH)W2Q(7#J8F8I&h-ZJT(bcycbIIitknrHqQ!l0b1j24)~B%)rec!obfU z${+>g@h~s~NdX3F1{omD1e61bNC4TT3@l*v>XR9n)B-nxWkIHhF|Yzj83qmpS)f^R nK%MdoY77cs(-a^&pr&yEWn_UW7=e5qAX@=wJ|lx7*d!$Y+A9%z diff --git a/SMIMS-Game/PlayerTestWorld.java b/SMIMS-Game/PlayerTestWorld.java index abc6190..d133f2c 100644 --- a/SMIMS-Game/PlayerTestWorld.java +++ b/SMIMS-Game/PlayerTestWorld.java @@ -19,6 +19,7 @@ public class PlayerTestWorld extends World super(600, 400, 1); prepare(); } + /** * Prepare the world for the start of the program. * That is: create the initial objects and add them to the world. @@ -29,5 +30,7 @@ public class PlayerTestWorld extends World addObject(ground,260,375); Player player = new Player(); addObject(player,264,237); + JumpBoostItem jumpBoostItem = new JumpBoostItem(); + addObject(jumpBoostItem,206,200); } } diff --git a/SMIMS-Game/PowerUps.class b/SMIMS-Game/PowerUps.class new file mode 100644 index 0000000000000000000000000000000000000000..829f3609e6cf96bbcf0c48f70553f07b52275748 GIT binary patch literal 984 zcmZuwYfsZq7=F$+D2&5~1Ew%hwMT}wGKv7~sTaRsqpH%ejphsXF_T4?zesQ?zJBKPVFiC8>)~K?? z6wV1$J1TAkv5I=ijlH1rW_OV^ZA$`_b1&rl?pv+CPg?oEkXFsX_D1ZK@v7E}^uinhk7 zt0A$3+tk(WM^5a8fq-a@VOe0L-S2h}i;%c0aS!(ycccc&8>lS%Osd&Blf11sVq)o^ z3E2qSOi0=G0`RR#SUG^-*zHT@3X@~yyvkJMfEsI-WKXTPePxDV6Q!MKmVSy3m*l>b_VR9~T&5q-|!d;VpeK*qh z4)K+X93F7i*T6U)a+aw99^o-}0#8oBE8L~vA&gV7?rfk$Pv!p-u!9NH-rv(w6Vw_N zIYj9Q6@f1(H-@;tQRBFxY4eGu3JHM 0){ + collect(); + getWorld().removeObject(this); + } + } + + void collect(){ + Player player = getIntersectingObjects(Player.class).get(0); + player.reveivePowerUp(duration, "dummy"); + } +} diff --git a/SMIMS-Game/images/mushroom.png b/SMIMS-Game/images/mushroom.png new file mode 100644 index 0000000000000000000000000000000000000000..243d613de23d3e94255c7c408683f5146013ac54 GIT binary patch literal 1693 zcmV;O24eY%P)L6*5PBQrzqNb95KU2Xyz{>xQ>wm=DbjRGonDB#L+8DvIG^9x(YFoSv=+y!9#bP43Fkwb-E zMIO1@Rx?qe0%|9Vp>NK%7do*P3{u-;9d~8ObVBErfYWWNW{In5g$KBju{My zAA~q%=F=3QQv!Gh2H(gso@D3mJFkL=#(=}g46kDlYpStRYivZEFuKd&twf|6RnMR5 z=g%9Qn0uTYu2}>;bGmb2Q!6PJ2I}jD`1Tu!le{fHOOnG4!Xvf|PRf#-S_0=A&4Yit zjvq9&>S}(#?lQzZJGs7}ui}iUQ9&y?57O*{2T9;ZPDy*dKVm^1e`so@CH%m%GOYWb zJ%c#T(>U%5DYGF`$UIS8+}kQRF%hX6m7L(KKNAK`En%~L=wZ(xwzSyz^2aTFyu=V~ z72I6}>KiI(F%Ircme$1!!l0|G5Qp}&556tceyogi!XPsG{NVz19wG>`03R!Yn0nLT z5etPuQ%gzYw@gl-;up_v62~t_1{Gutb-D1T^LDhH_emq6`p{*z(mn@YM(3vjg*VhtUGzKG%% zoR+kKuEJ_}{15zMH#Z{=>C5r0RKXLntXU3t9K#G`<)AeV)ZOVkXnj56d+!PZ?vVfM z{J^O#USQ#$t$_N?__&NWOp z2b^lI1d>RFX>VJ7MjvXG;0L}i*lLa}1>Cd%e+sWyA_a{jw;D`K zu>|-g#&Wr6_SuGRXh0k_)M}2iq;x9)yez=+Y11`b3}reVcSw$`^*3e>lu`6~XGY_6 zlH&o9w+Ozr3jTEFrR1nxkVWe!U+@iUxd8X?**=_NNKaI&=la|tD2%{=~M$n6xo zLrE;-vswnXc!ASP$K^}y0A(i;UmjuKhxSHWHX$A=KujgAgPX*z&kPCtVi%ms1Hd<( z+)Q}E)5Nb@UJjfoQb4kJfm3Z_8Lv*rqJeUZn=XQ332%4q;Z%w*c~5r0a!~8z-SqiPY}UI@=J4G zR|p1APmllC7PzTu^jEPYCk=o5ZZ#eW55}WY#$%?NT%V@|-4P|+D|LYfg-WP9poA)o z5-LdBdOcYI=VnVFZWqghCbG<1#l^)6YaD{Xb2Zy_e8H`0|Nfk1ZHWO?ME!^ydhsu8 zFiH07;p}@|0oQ1}>Js=Ncc^p1ibEZEZ+8@qmZ zkAUyqlYG+==*A{3&YU^pDA{aI`7=wf!;&RoHp^jWI*^}nmu^O9KsyA!ZQE9LS=r$R zA<+8TtA<�^*$o?GQMXxA*9;E?z2a;sae>bES3S#IZ%@2S|^AQ>|DL`C)SM_vL?` zC~RnWbjxCf3yU)E#>dBgzgf!F#y0wUtgbuka Date: Tue, 15 Sep 2026 11:53:27 +0200 Subject: [PATCH 4/6] Plattform Verssion 1 --- SMIMS-Game/BreakingPlattform.class | Bin 576 -> 818 bytes SMIMS-Game/BreakingPlattform.ctxt | 12 ++-- SMIMS-Game/BreakingPlattform.java | 29 ++++++-- SMIMS-Game/MovingPlattform.class | Bin 757 -> 782 bytes SMIMS-Game/MovingPlattform.java | 8 +-- SMIMS-Game/MyWorld.class | Bin 476 -> 996 bytes SMIMS-Game/MyWorld.ctxt | 4 +- SMIMS-Game/MyWorld.java | 29 +++++++- SMIMS-Game/Plattform.class | Bin 1177 -> 1239 bytes SMIMS-Game/Plattform.java | 16 +++-- SMIMS-Game/images/BreakingPlattform2.png | Bin 0 -> 1276 bytes SMIMS-Game/images/MovingPlattform.png | Bin 0 -> 167 bytes SMIMS-Game/images/Plattform.png | Bin 0 -> 981 bytes SMIMS-Game/images/PlattformProvisorisch.png | Bin 0 -> 7035 bytes SMIMS-Game/images/Unbenannt.png | Bin 0 -> 971 bytes SMIMS-Game/images/Unbenannt2.png | Bin 0 -> 610 bytes SMIMS-Game/images/a.png | Bin 0 -> 167 bytes SMIMS-Game/project.greenfoot | 71 ++++++++++++++------ 18 files changed, 125 insertions(+), 44 deletions(-) create mode 100644 SMIMS-Game/images/BreakingPlattform2.png create mode 100644 SMIMS-Game/images/MovingPlattform.png create mode 100644 SMIMS-Game/images/Plattform.png create mode 100644 SMIMS-Game/images/PlattformProvisorisch.png create mode 100644 SMIMS-Game/images/Unbenannt.png create mode 100644 SMIMS-Game/images/Unbenannt2.png create mode 100644 SMIMS-Game/images/a.png diff --git a/SMIMS-Game/BreakingPlattform.class b/SMIMS-Game/BreakingPlattform.class index c6d81c8fb8a3062c9d811be62b14a2b8e64268bd..c5111c76ec2bfec3e01b7611beb617b1bb0c4f1f 100644 GIT binary patch literal 818 zcmZWnU2hUm5IvV&`RW3e3er-oRIRXD8jU_^jfplfAwg?`A+c|lWuIYwZ zR=~AiQL;~w zIziqxMW$Gq;kqElsMsG)ku&=gCXhQ}c7`e)-4q|jxsNTX0~PA8@ef(&mN%$Wqv|Fe zvYjV%^^|VJn?-%9#@_Dp+eBiuN|fu4y*;LXsY;5Q+W&rK`M@?u)Lh_7##{;ym`z~& EFVnq~9RL6T literal 576 zcmZXQOH0E*6ot<;v1wvzZEGJ|Mcio?t_4L=K@jQ#Diyk$#;CC`NmId}qW?nh0WSOj z{wVQGla`2!TypN*^W8J^{qy++U>_?MQqT=SvCIiu~-+Vws@+}EawBl(cWOZ zP^C~(y|L4TPG_0gjwVq-m5R5VQZ8dkm6WXWj`=6#oL3mn$T)h;)W*yLY2YjBD6*Ew uswCLen7zmu=B#kZ(saolm5Q2)7HBGH1dW2$U|=-?%lw5IG}mZJVfhyZG+oL7 diff --git a/SMIMS-Game/BreakingPlattform.ctxt b/SMIMS-Game/BreakingPlattform.ctxt index 82d1599..4aa6736 100644 --- a/SMIMS-Game/BreakingPlattform.ctxt +++ b/SMIMS-Game/BreakingPlattform.ctxt @@ -1,9 +1,11 @@ #BlueJ class context comment0.target=BreakingPlattform comment0.text=\r\n\ Write\ a\ description\ of\ class\ BreakingPlattform\ 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\ BreakingPlattform\ wants\ to\ do.\ This\ method\ is\ called\ whenever\r\n\ the\ 'Act'\ or\ 'Run'\ button\ gets\ pressed\ in\ the\ environment.\r\n +comment1.params=pBreakingCountdown +comment1.target=BreakingPlattform(int) comment2.params= -comment2.target=void\ breakPlattform() -numComments=3 +comment2.target=void\ act() +comment2.text=\r\n\ Act\ -\ do\ whatever\ the\ BreakingPlattform\ 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\ breakPlattform() +numComments=4 diff --git a/SMIMS-Game/BreakingPlattform.java b/SMIMS-Game/BreakingPlattform.java index 2fc9b35..64bfea4 100644 --- a/SMIMS-Game/BreakingPlattform.java +++ b/SMIMS-Game/BreakingPlattform.java @@ -8,25 +8,40 @@ import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo) */ public class BreakingPlattform extends Plattform { - boolean IsBreaking= false; + boolean IsBreaking= false; + int BreakingCountdown; + public BreakingPlattform(int pBreakingCountdown) + { + BreakingCountdown=pBreakingCountdown; + } + /** * Act - do whatever the BreakingPlattform wants to do. This method is called whenever * the 'Act' or 'Run' button gets pressed in the environment. */ public void act() { - super.act(); if(this.PlayerOnPlattform() && IsBreaking==false) { - IsBreaking= true; + IsBreaking= true; + //Greenfoot.playSound("...") + this.setImage("BreakingPlattform2.png"); //untested + } + if(IsBreaking) + { + BreakingCountdown--; + if(BreakingCountdown==0) + { + this.breakPlattform(); + } + } + super.act(); } public void breakPlattform() { - if(this.PlayerOnPlattform()) - { - - } + //Animation + geloescht=true; } } diff --git a/SMIMS-Game/MovingPlattform.class b/SMIMS-Game/MovingPlattform.class index 36738172c868995f1eff62676d725c897349bfbc..5f4c1c942016f388699792c96fd891610ea676fa 100644 GIT binary patch delta 444 zcmYk2y-vbV7>1uy{z|QgKY<`BAfiwdMHh*ag98bxqMHZ}y2xM?N4x-ILbw7h!9+1} zFwQPsjhiukr<&-}^L=m6`@T>65xNUoZ(q+Zz&<+z>o8{$vza2S2%ovvZr8Oin6{bG zQlQoL1~&)IuInAkRxH&mOqOgiEGU8^pJ*XxvrJwwapiiAUc2R8^ez>lV!d8EvPe>} zS=9zp49$y8#SFhz;u$d(Wyuqd-Gr=B*j#icZ) zc8j*>?+|syOgc}*??p8Di%bz@URcw9q_)fD-$S7@SSgrj0RHg_hcCTWd8QvOd0F-vDf3V`LrFG&nXUkQUHS{Ln%MlQyOl zPM^vv*^{H2?fvt?r4%sSPV-PH=4@0@CDD`NF$>*h$3g+~HtLGbkUr{n!$4^pHWroJ z*x5i{_<`K(`@vmVM8h%!mY8D)8W&)BFA!eo8RjFA2A8`7J>Cr_%p!*-QT|sA4=p0r zVHq~PgqkAp+>9}hrRTU8A@|?1h@pWQ#w*31s-Eh^Q>gh9r|Tr0OPA?)6m~uD31);M z@oeTEjyhWrY7a1ZT~LkmIC~x`-Ye`;W%3%orp|dAe>1fC=q3%7q>UA}T#aLBU#OcX L=p@!iXjuONWq&mH diff --git a/SMIMS-Game/MovingPlattform.java b/SMIMS-Game/MovingPlattform.java index 9aca730..8271ab1 100644 --- a/SMIMS-Game/MovingPlattform.java +++ b/SMIMS-Game/MovingPlattform.java @@ -22,17 +22,17 @@ public class MovingPlattform extends Plattform public void act() { // Add your action code here. - super.act(); this.bewege(); + super.act(); } public void bewege() { MyWorld theWorld= (MyWorld) this.getWorld(); - move(speed); - if(this.getX()<5 || this.getX()<=theWorld.getWidth()) + this.setLocation(this.getX()+speed, this.getY()); + if(this.getX()<5 || this.getX()>=theWorld.getWidth()-5) { - this.loescheMich(); + speed=speed*(-1); } } } diff --git a/SMIMS-Game/MyWorld.class b/SMIMS-Game/MyWorld.class index c9c4726762e2d0bef0616b506268a4f8a3d935ea..3f3a62b35daab318fcd128e34ab36150bc87acca 100644 GIT binary patch literal 996 zcmZuv-%ry}6#niu=vE4}V+;@(A`ZJwKtVwQF(Og3qzDl+-Q#5~SlHU777VW@`s9Pp zJ~qG(6LCE}fxmNA5kj1lA{j4HT-F^0bLyvL{0iAn9?DR(We{$#JdY5NQb zy;La0!QOqM-7Q&>m;D45IgF$=X+kE$LauGW5Ry>R5 z?lm3P4hufxn>C80O|QypW$ruT9R(A?OXn5MWk&8Ul2MJeQ4C2lw2WeLE}ZG!2zYgO zl{cbfdBfZDtM(&D$SaY;)DGY07$b9Iw0K58S|6R%x^SJ&DSDYmw6UzAu@748MWO{} zsF`n&j3ab^Aw~?-bf$?1^pQrFSRDH4yGaox%*HLuw7InPNO_$yMCHsev`Pzorcu<` zl*aBKq5oXBhx!3+FNqwfkG3_lVP2$}q#CohO{xrcPSsf|>if|63h5(;jbjW^m0_CV zJ1!@whM`(wiVEQgaZ6t%AU)nBg3pJM VCv&7Dp<^^ZlFN}T^Yo12?jH0MrW z8nhGENIZ2m6FQ{TU8_#O~iBBr7tvY7PKz1<6xs;r*nds=99800) + { + addObject(new Plattform(), Greenfoot.getRandomNumber(400), 5); + } + if(Greenfoot.getRandomNumber(100000)>=99900) + { + addObject(new MovingPlattform(2), Greenfoot.getRandomNumber(400), 6); //Nach Rechts bewegende Plattform + } + if(Greenfoot.getRandomNumber(100000)>=99900) + { + addObject(new MovingPlattform(-2), Greenfoot.getRandomNumber(400), 6); //Nach Links bewegende Plattform + } + if(Greenfoot.getRandomNumber(100000)>=99750) + { + addObject(new BreakingPlattform(50), Greenfoot.getRandomNumber(400), 6); //Nach Links bewegende Plattform + } + } } diff --git a/SMIMS-Game/Plattform.class b/SMIMS-Game/Plattform.class index ebbf48105ae7cc03d3be16639cbb965d5bfa1673..fe23c799e1019713b87479675cae0b0cd5727673 100644 GIT binary patch literal 1239 zcmZWoO;6NN6g_V~=u9bse2ah}3Nz(nP*Ko96!D8>5EBrUm8Cppilrr;f??yvU%|qS zYd0o}i3`Kp-(-yEb;^jErp>$e-Fxmm=idJK_3b-=c|6jQKvF}>KpG7K&E-H!Z_D?? z!n_^&fk4Bo<2m7+Kr)wK%OZoU2Hij-41w%Z*9yZeKiJ{9EL~q#?Mf&h)^!G+G0+@g zR_(xd-6xh^dFF-EQ+H<#w5q$tT8>69y>jvVqDOar4B`%9p>KO>Mk{=Qt^*p@cAx93iE8);a~uW6W|l2q$J z2C9uo16OcWpqpiuJ-J9(f-2J;uY7`YDOcLI_N{_zdF8@_YgMbo(>m0U71or2>$oAH zJJnTx&#n+7>f*m_4rLtu)M&xqlw?wJJo#jAXF~?7)`m+@t5U>WvjRuiu`?A`oGJw? z)n{F#zLuiev=UnO>m_UVB=n7R>CTqo!7%V_jq|cs&yI$(&gre}I?|Qgu#AGHFbvmM z{Jp@I4;|IcnR?EI;(|evO>k=kU#=g&X`Z>Z{Lavt;jOyU&94w<@(Z+2v=X?fd{Jf= zDQ4cHZPX%B#4Ig=+jW#>S_-AbJVKNC8QLK<9$OSvGQw&l3b?*0v=Oa?OWu77vn9ry zi{eEy!T1;Ot6F@=Bt>D8h;7H{Dw#Z-I$b+N2kA^JCN1sclumt2@?mI=Ob`12 r|0^A1)N+Cop2QHQaG5&)Av6+~)Jb^(_gS<~Xh_4j8rK8DB=GPzUnSqj literal 1177 zcmZuxOH4pfNx}LquFjOq*-5jB@svysxY#fIti5ub=#t1`#aL>Zb>(V^RF?M2pE)5eL zr!dKo^+lk&rV&`K!;mblugg+%IL&cJ0#u6gP*{y-AW_pCGqU=u?F!#)iVe$bW^f)C z6wGqWq4Gj;un3i^mbMj?NiWjmSa>qgMUG3DCud4ub0X|& zP^;IeUWQq!Q{OX=49zy2hPGxKzF+NCryVzg%ebQ8D#rpA8FF33Niiw$`p~d_hLK`V zy!LIi^n!F;b9V)?(k(}99`5f5@3FCClVwn=SKbxK3|*4X9Y6H*Y)O25!=c;Z_H{K&Lji z1*Hp?Uj&dx0z>}|K$A}}nf)#KNMEho0{@1bUZ%|;J%!}U7RKeK(!x}F_X9HW@E!^+ zXJx8*SZ9H#0HZ{13|rq(= welt.getHeight()-5 ||this.getY()<=0) { - this.loescheMich(); + geloescht= true; } } @@ -35,12 +40,12 @@ public class Plattform extends Actor public boolean PlayerOnPlattform() { - Actor Spieler= getOneObjectAtOffset(0, 5, Player.class); - if(Spieler!= null) + Player Spieler= (Player) getOneIntersectingObject(Player.class); + if(this.isTouching(Player.class)) { - if(Spieler.equals(Player.class)) + if(Spieler.getY()Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1d&NZK~#8N?UP%M zTQLknv;Spub=^ga1n@wiUX(05DbSAtj46uJwKI>$uit9bx<;Dz;*PWt( zrV5q+s;rLQll~5;^CQ&5{fNb-qQ|ndNVlkXWlyJ%W}${Ko`~IkixZiMyl3Q9$A;BpX_W_yvek=BkPOmQH^CH138iTq;l6v=!8UM{ZT!tu}owjCo-Q@a+S~tiC}U(kEd6d$UshH zKB?p?VFgq|BG?@C;km;^22#D7V_p! zGp2G7Hn;mNY>yHu%?y)SEZs|E$Z~gQv%N}K&1^u%R8EDHGrjC}XI`C!?N`ETW&<*& za#$vJU&u%Cz@8nLJSDJ=ER$Io6SMF^tV~Orgvr-}vuu~itPExrK8gkQAdF`RCSMCg z6HDbXc422^zO2rAc3|?gKs2$etkVxz$to1r zc4uY%Q4OhhJ+?#SFGqqtkE%Z+%86FTqS^$z`KKN(%kt`|N_Q|rCp&wfsK&x% zSbMM96iq@}jT{JDj=n$RjnYo-xtS^szqaN6kVByRd_?C;LF@L2uOO zvD;tiV|^8`YsO3Rz&m5W&3iXXLIF-v; m1gDo~kvn{1ANj)_p8pqYv>M=6y7k2X0000YvN4 ezW~Uj1^6MEV9LO_nB}Ml$aGIvKbLh*2~7Zz0TeO- literal 0 HcmV?d00001 diff --git a/SMIMS-Game/images/Plattform.png b/SMIMS-Game/images/Plattform.png new file mode 100644 index 0000000000000000000000000000000000000000..96dbd3430ca672e5696430515a242a7f0829a127 GIT binary patch literal 981 zcmeAS@N?(olHy`uVBq!ia0vp^c|dH#!3HGTW&7EI6k~CayA#8@b22Z19F}xPUq=Rp zjs4tz5?O(K&H|6fVg?4j10c+pb*+;VsG&VGB%&n3*T*V3KUXg?B|j-uuOhbqs2XUp zeMLcHa&~HoLQ-maW}dD3``!E16*5z7)x%AF4SWlnQ!_F>s)|yBtNcQetFn_VQ`GJ4 zc)4sUtbiuurj{fsROII56ON0GHI_ zN%^HEwo0X?nJHFjiD{-uDJiD9Nr}cOx`u`+iMoj?#)i5n#>Oe;riK zGN53Bhi+;fFi6XRVW%@?1~)KDu6w#ThE&A8yF~}l_ z%iZgthc2IZa?5wQd(}rIF6UNmJUi)e!*{vE20qv36kEvfO*V~GKi2X2ClAAmU3{gn z%ctM@dFTE2_?M634c)%f&ev0JY1oz<7#g}umH)%N#qXlf!(Xdd77ajmTm=k?OqU0+V$n!IV#!&kf7iuGdK zit{ddhdhfk-?z10wcd|mL8jD}-0s(3yWW;{KmOQpH*b2J8vm+QT#qf3S_~q~&!yJi zcRkLinSHj<;h{(B{lZW4MEa&6Jf|t6*{Zy>U9MSKU9n-v3{j`noW0o)r&C|PnuH8HPX2G=`Y}x*C$!2q&&7P8a_s_L^ zXWz^h&e-P}c>auq<2wt5r)zEbG-OuZET6N-9O|?y{ERD)6*VsMFb3rW2T6s_f|1rlY-CFZlV zP<0upMX(x3I%^l&)gl_&NM#dPw5)_A>#!&>k{ipCj3sc9EFqY$ed)cO>B9SK{jq=Y zBlpbBJUMgT=RD_}H|NyvvNNL>KDQ765S{hv*4F`G$^ZyC85s`0iG1O`XlNLvuV-d} z7Q>3i@P&zO*|7zHYc)~c17Yxe0sqy!QUDfr&wdy^yw48-5FeAZb<6L|_l*s1ZyEab z>#aMdwf*Fy<%@p7$ZPt{nPpfJT5$Wphkbvj`}b+Be+hIVYty>YpauW<69|FkvA zIol1MVRS^yj9%4pp0DXCeH;pucXovGKgtjP;obPZznA1kmW8YJZ?TB_z^O)EH0wdb zRG<7>J?Ok4>Ul+)qQ4Y30{PiV$p0Oj2 zP~fbhGd{Hs2kyfq&&l3*Y~Xiiv zvAd-sCcPKbb0;07(i;uD3#bHqzK$vXqMpueCI%IE&||%v+-HnfLpI zz`dJF+JvpLpmf;=-)X&QuYXNhGQ00^={*+jTeW>?k@RCM;KwZtp#2-|_?wubDz$xP zH-ZTNi$={bPJ{xQh|c)f3T{BI@}5C>PB@DZ&NXC+Yz>uTYjISU!uMsWx7D;Egu!w;JZZ!6U?PXEr0+9YF^;bzp%@`#%x>a| z?%}}7qru;0wAwe#Tv5)cc38;l?%aQwNRdqqtWuijHh93Y?^Dxs2%@j{s)(l!k|Co* zZi{iWXLE)z6mxX~mvH}+9bnu>(cHX_DQxODOq)<#ysPlpa>cPSAyp%t3t+bGpQ*%^ z2$qSnnATHAgj=)elng=e$hlH+9SU5BX?+7kgmp6wZiL|B4_M+qqrew1ZD1t^tjRPu zAA%p6JN*l_(+ZpADpiveujeEgDb*hn`m(EdZuTLe5nUF zA;7OGxH?=JA=^xK0e5d@f!4DUb7v#uoZYLkr#|{EXrr0SO=5cVSN(q6jBxyhg4@5= z9`dPNj^D(1|UA4K$pz*W@TxI{+J z4R;?5*!gpUa|fZJTBl?q{YV2Pk>Z5~eBvN!{C*c1m<2vYj z9Jf3vMEh2z{evdAqQ$XtigHep%AL9kg9e&oKfF>A-uvV` zXfmXx>VXE(Ku=%^Y@OPGL;VUmKZr@sg54;^6wYpz?n zE%?_Zxb=b>2yXNs3Be^NBq6xb3vTp+8$DPD!HwQ*H+Y7P-v6tY+z3QCPNs5;lE1n< PdxET2vbVNm6jb~NK=^K< literal 0 HcmV?d00001 diff --git a/SMIMS-Game/images/Unbenannt.png b/SMIMS-Game/images/Unbenannt.png new file mode 100644 index 0000000000000000000000000000000000000000..fd65da72b04336150e84e4fb8d906b06a7b43b10 GIT binary patch literal 971 zcmV;+12p`JP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D17Jx+K~#8N?V3TZ z6EO^i-$7WigALulC0OtzxC3GVCwS!wtT+cq+yr)T1kOJZnV7*+tyi`cO;cOa?9DC|>Wj*+ra2+Mj19_d(#) zw#vx3&BaNQCeT(rlixxz`8?&Bii0!+&l9R4x;=6rK$45s<${Sg?V9E}Q(MsF)qCAD z5hqQ~BS9_F%Ilq*TAXA}!$9oq7Sa}4c|GzJiKF{>l1l423wxqzn?3Sw5(i4YV*CecX$fRxtgDZoKSxoVrs53c!{2^-c=ls492(nw~O=iM$;OB<$9LGT^!M}?s(L>? z#DUsD@)!tE8&3{Yr&pXHR2(R6vAs4Yr8u^TxM2`34j}2=UG-i&vK+bJuOUJj*o8O( ztp@8E@N7HyEiR;n-W!lDb|o$fOcXAqM5Ht@#R9+$H?pa zG4uLr&wma*p?lnfZ})6doP7K3+sDRIlN72ZAkeR(%sru8l8;TmTqcK-X-f9#X(MbGIyOjrBs5YxuL<&flbmO@**Yab8x z$QPH(lHS*yXmv<8KU=8a~EFBRF#eGbaW+$mIYY&{P2WlJp7m!THcyuVizTvI&A z*}twJO{om*WAXm`zuEt!ze#U3*5iCsRkOxj?oGOS^9#o&WR&rcn>$*>B<%2!>A-Zs N;OXk;vd$@?2>{MX06G8w literal 0 HcmV?d00001 diff --git a/SMIMS-Game/images/a.png b/SMIMS-Game/images/a.png new file mode 100644 index 0000000000000000000000000000000000000000..1849d5ffc77136f83cd7a7f9e50af8b7254afd75 GIT binary patch literal 167 zcmeAS@N?(olHy`uVBq!ia0vp^(?FPm4M^HB7Cr(}d7dtgAr*7p9yDYG@(wNd>YvN4 ezW~Uj1^6MEV9LO_nB}Ml$aGIvKbLh*2~7Zz0TeO- literal 0 HcmV?d00001 diff --git a/SMIMS-Game/project.greenfoot b/SMIMS-Game/project.greenfoot index f079710..0bd4334 100644 --- a/SMIMS-Game/project.greenfoot +++ b/SMIMS-Game/project.greenfoot @@ -1,25 +1,40 @@ #Greenfoot project file +class.BreakingPlattform.image=Unbenannt2.png class.Ground.image=weave.jpg +class.MovingPlattform.image=Unbenannt.png +class.Plattform.image=Plattform.png class.Player.image=ppl2.png -dependency1.from=PlayerTestWorld -dependency1.to=Ground +dependency1.from=MyWorld +dependency1.to=Player dependency1.type=UsesDependency -dependency2.from=PlayerTestWorld -dependency2.to=Player +dependency2.from=MyWorld +dependency2.to=Plattform dependency2.type=UsesDependency dependency3.from=MyWorld -dependency3.to=Player +dependency3.to=MovingPlattform dependency3.type=UsesDependency -dependency4.from=Player -dependency4.to=Ground +dependency4.from=MyWorld +dependency4.to=BreakingPlattform dependency4.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=4 -package.numTargets=4 +dependency5.from=Player +dependency5.to=Ground +dependency5.type=UsesDependency +dependency6.from=Plattform +dependency6.to=MyWorld +dependency6.type=UsesDependency +dependency7.from=Plattform +dependency7.to=Player +dependency7.type=UsesDependency +dependency8.from=MovingPlattform +dependency8.to=MyWorld +dependency8.type=UsesDependency +editor.fx.0.height=811 +editor.fx.0.width=816 +editor.fx.0.x=1009 +editor.fx.0.y=241 +height=736 +package.numDependencies=8 +package.numTargets=6 project.charset=UTF-8 publish.hasSource=false publish.locked=true @@ -42,28 +57,42 @@ target1.width=120 target1.x=0 target1.y=0 target2.height=70 -target2.name=Ground +target2.name=MovingPlattform target2.showInterface=false target2.type=ClassTarget target2.width=120 target2.x=0 target2.y=0 target3.height=70 -target3.name=PlayerTestWorld +target3.name=Ground target3.showInterface=false target3.type=ClassTarget target3.width=120 target3.x=0 target3.y=0 target4.height=70 -target4.name=MyWorld +target4.name=BreakingPlattform target4.showInterface=false target4.type=ClassTarget target4.width=120 target4.x=0 target4.y=0 +target5.height=70 +target5.name=Plattform +target5.showInterface=false +target5.type=ClassTarget +target5.width=120 +target5.x=0 +target5.y=0 +target6.height=70 +target6.name=MyWorld +target6.showInterface=false +target6.type=ClassTarget +target6.width=120 +target6.x=0 +target6.y=0 version=3.1.0 -width=1550 -world.lastInstantiated=PlayerTestWorld -xPosition=0 -yPosition=0 +width=856 +world.lastInstantiated=MyWorld +xPosition=652 +yPosition=76 From 927e19c146e4dafa22cbba2622117e849944ee27 Mon Sep 17 00:00:00 2001 From: Caspar Date: Tue, 15 Sep 2026 12:00:38 +0200 Subject: [PATCH 5/6] Plattform Version 2 --- SMIMS-Game/MyWorld.class | Bin 795 -> 476 bytes SMIMS-Game/MyWorld.ctxt | 4 +--- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/SMIMS-Game/MyWorld.class b/SMIMS-Game/MyWorld.class index 26919f86f62ee66442c5eda0d12c36c4cdcaa15e..c9c4726762e2d0bef0616b506268a4f8a3d935ea 100644 GIT binary patch delta 270 zcmY+8J5B;&6otP#gADl{27Vb46=)2J4he}pg<4xs`6wx-vmn!1xdkT_nz#xZNHlQ) zuEDh!4yc9Axv!k>+?VQC=sv&SK7e!jr8_lOjyt1hR^+p3ksIOh$yG#RR3~@S`@C?} zX~t|3J8JC2v`EY6!920+`I8+zK!B~!(p^z6sHlTx=Izl3HIbmr z3)r$of)-JUHR7WX$Bs#4dFIZYGv_h$=kL#70FJPyBL_u;YG46*fzq4E_s6fpFy4C} zMng{^e>WHh@jVtz$8lP{A_^#K&t(6*nBnVNXUuvd)@n{5E(`t8SM4keMcFCV_%GO~;-hlMwo3W>mm%=eCJhI*#Sw zT}MtbV*NNgjRyWhh9Wj&Z=c8y5)Ix_j!!1|^Wr%wta*7Hx4G&-P4`x9Q+zUWFVqVN z+r;nh(Cl+8eI+D^>l`Zt0v1UYS+AhR?*==@^f+$fR*L28Wz=1sNTjVxm@h9-b?qHf zv`umU94m9)Wf}q>p@2vxZL*vR~fI5YCD76oJW~9!bHoM6U9%PnwSu>oq L!R{T_Ikf))K4Xdv diff --git a/SMIMS-Game/MyWorld.ctxt b/SMIMS-Game/MyWorld.ctxt index a71706b..25b6c20 100644 --- a/SMIMS-Game/MyWorld.ctxt +++ b/SMIMS-Game/MyWorld.ctxt @@ -7,6 +7,4 @@ comment1.text=\r\n\ Constructor\ for\ objects\ of\ class\ MyWorld.\r\n\ \r\n 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 -comment3.params= -comment3.target=void\ act() -numComments=4 +numComments=3 From 086274bc82783096e3a1de7805869e797263f05b Mon Sep 17 00:00:00 2001 From: Caspar Date: Tue, 15 Sep 2026 12:07:13 +0200 Subject: [PATCH 6/6] Fix:My World Plattformen --- SMIMS-Game/MyWorld.class | Bin 476 -> 986 bytes SMIMS-Game/MyWorld.ctxt | 4 +++- SMIMS-Game/MyWorld.java | 28 +++++++++++++++++++++++++++- 3 files changed, 30 insertions(+), 2 deletions(-) diff --git a/SMIMS-Game/MyWorld.class b/SMIMS-Game/MyWorld.class index c9c4726762e2d0bef0616b506268a4f8a3d935ea..005c0be31f4dd8bf85d3dc03f3e72a59b41b6b8a 100644 GIT binary patch literal 986 zcmZuwO-~b16g{skOgjuPE#Cq~fUym{}Qd(XY+yqO=T-@XG_#vK(QgcU?Iw4ha>bH}so z%C_tJvrk>GWC^q`ITgph%S|eq&8G7zqKGL_HMBt!P}UBEM5XH4RnxNt!l`s#K?h4V zO6H;Msc45T8)&jPp`i=i0x{FF*0*-;qA$>!%AGe}F8Z#wD0{`2-m9Sx{Q?Pc`Tn-+ zl~>*Uif_3uD*_^`;1a2RV=4xqs~AR7!H9;-7!~L`r+#>*PAawi$7aQH%a8WUTec?< zNoCX7FvOb=Twec_yCnsaOkHyioXXCHCKE_WJ?UmqUgm#Pa8)3_;@RfjpUD}dn78U$ zw5BuXRP1KMC+1d(kwnfdnx(wyIr1C?BmQ&e1$E^DcNghpwc({eG{-^cDq~?&n%BPR zo5j5~vlv>!N2$eXfq_ z3)NC=99800) + { + addObject(new Plattform(), Greenfoot.getRandomNumber(400), 5); + } + if(Greenfoot.getRandomNumber(100000)>=99900) + { + addObject(new MovingPlattform(2), Greenfoot.getRandomNumber(400), 6); //Nach Rechts bewegende Plattform + } + if(Greenfoot.getRandomNumber(100000)>=99900) + { + addObject(new MovingPlattform(-2), Greenfoot.getRandomNumber(400), 6); //Nach Links bewegende Plattform + } + if(Greenfoot.getRandomNumber(100000)>=99750) + { + addObject(new BreakingPlattform(50), Greenfoot.getRandomNumber(400), 6); //Nach Links bewegende Plattform + } + } + }