From d76870760ce6bbbfe4461c9af8b47ea265bcd20b Mon Sep 17 00:00:00 2001 From: Simon Matthies <simon.matthies@stud.hs-hannover.de> Date: Wed, 11 Nov 2020 09:06:42 +0100 Subject: [PATCH] platform --- .DS_Store | Bin 0 -> 12292 bytes Platform.java | 37 +++++++++++++++++++++++++++++++++++-- Welt.java | 12 +++++++++++- project.greenfoot | 33 ++++++++++++++++++++------------- 4 files changed, 66 insertions(+), 16 deletions(-) create mode 100644 .DS_Store diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..25d478b9044ac112e7d312d677aec8d9f4f325be GIT binary patch literal 12292 zcmZQzU|@7AO)+F(&|qL-;9!8z0z3>14DAdI3fv4R03;8>D1smkGsqkU1_lQP1_ovZ z1_1_!5{6WUB8EhUWQG!u0s@!`s-J~{fkBADlOYd9e<DK?Lk>eKLotIMLl#3KLm5M& zXHI@{Qcivn1K2V~Sq26swf|tiz`&5tP{feWkjIe75XO+nP{dFQ)(LV+1w#p@P6BQl zl^zX&(GVC7fzc2c4T0er0*nxkaiG=r5YbU`Gz3ONU_^%isC-a>w$VXtd=S3@!Ur)K z7#SEqO?VIuYQlrViV@s2X8?(Tw1Q}mRuB!+%D@O>fz1GGWng50Xk`R<LqPfjpyq(J zGcbaC7a(!4b_PbU%?u2T5bX?%5bX?%&>jjSL^}f`L^}f`*mkgyqr_+kjD`SO2&geI zFmN$=f_vV%40;U73^@#m48;t^Xg%g`l)g3t11E}}5(dmZ_D?)Iu=eK}92ppxmVmqS z|G}>0W$<Sx1CJ<x+*FC%bqwp#bn;-)iOr3m5d>r#G4)|}DI+K}koEB~1c1Y>gdq() z4uLNuLE(a|mlvyEEUpEG53>?V_+Z+K)xDtbLD9(rwX+f&y0~LqmVp69A2)_REbat_ z4qjbY-N^V8%`QQP0`Q1V7DFm{JV}osouP;!l_8ZO4;;$*=%YH|@L7NqK3ohz46Y20 z3@!}546Y1%3?U2=3?ZoL8XPjndiWWF84?-t7%~}37%~~EhzK8K-F!H7;|e9hdU1yp zvR(m(V1{IH%1dQPV#sGmWGG@t!INJc85mgPkU|RNYwY^5xEvH_MCr!vc3CvLL1C5* zj_DlmcwZ52cY{(Eip{)We}l&T5PGrO`V-AoHilw`e1=knJcbnXvJRAvSmq#w4i`f( zLjgEN;LIuDFhSPCiJ}KfD1t^WQEWlhf!z<?3=AkbK)#2#3o`DC({-S{g`$%O?mC1{ zEN%pa1gjKMNMP#2>QYc>py&gouM%*oEMf2k=ipL2u`J8LfTA0eLa^z^;$lz=Awn-! zSA#+cMXw-32tz(YCOB1=Fa$6pG8Eu155VCy11Y=&@R)$b_26(LPCs@ZfI<#gKNmwd zLn=cKLkXVH?q*<MMb^WKq6dpB!Qq5U2Ud51!i7x?DO|wS`zSFQ0;3@?8UmvsFd71* zAuvE8Aj!bMAjseh?mJ+cJqPu?F-8MG?Gy$*r21R{j|tdX5V8ymMC!-do&dG-h}2() zZRG%{J%Xa2o52~}11ZPXYXY@<P;_yj>B8buuuW@_LJCz6R^Nd`7g-NKg9}3@Loq`E zLq3BqcyuNkPkRm&w#d5qaOlS3T5z}$){E8E;Lt(V%gx}*kjIe9kjsE?<i?SKfl&)3 zd{A{^aV02x@aVzrI$1P(_!!*4>r_&S2+?jdy}VfUVsR-bOi)~kO($0Og3=A+3Z!u1 zWpD?_Ji+(}hYqq%9xOVsxfK*b`1N6RDJadLxRi|{lOdNOks%$lb_aE|1sop8cA%(D zDlaa8uI@RRRFIQdTw-8woso%|g_Vt+gM*8Mi<c`lI3vG2xFoTpwAd-JC>q2ING!=n zg0e&M^K;<r#H6sy)be-%5$F88lElos)FP1b;LMcNq{O0_@XWlF{Bo!K(!7*nusKi( z4h~KZ&UgWd>S|+i6CDL(bJJQKg=%wi104kuW3$>?P7ZNZLtD>;+{&uzn%cUVkYXD) zE5X1I;ls&U3=9k?p3F=xgL;y2AIy{Y1q5K;<mBS!;pO8O5EK#?6cH2^6%&^bm6Vc_ zi5Cz~N=(j9F9JE(IX@@A$SJ2ZH9Ea0GbOknF*!3YJ)$JFq9i!8Dm7j}2u*2FYDyeJ zD5SC=HC{jjApkbcy(l#`4{V-)T3T^xNdyu*GG2hcIJqc4Cnq4kII|=(KQA(-I3vH@ zvm`awGcPSaUO=cUGqv2m03=l$mReMtnV*NDCn7Sjs3<WnJ=Li)HYYJDHOD{CDZiv7 zKNqADWLk25UO-VQ$fStO<orC4UzF`XK!Q@)!5hW^Em;FE08@sDFfb@P=s=hp0*oPf z`FW|FoXQRX5FrK*25kmM2499ShHQo^hKUSw8CEjvW;nrcm*G9bPeyh|Nk%0`ZAKGD zTSj|E55_>oAjS~JNX96}Xo!9$=zJ3cs91#vfl0;`^q4IRF3QWv&r1hSZZR+j<6Y2( zW0)P3?U9zW5n2|9b#WW006>_5v;WV)z`zRj34;b`{@;~>0oVFJh^kR?Gz3ONU|5C# zBa2J0ixafm!sbKJTsvq!JpoCQ5i}<c(F2kOP3wcF;u#?eia~q>m~uwQ8exzacou)a U76Ig!L#z4G`hT?kAKCRk0JQ`{tN;K2 literal 0 HcmV?d00001 diff --git a/Platform.java b/Platform.java index 4e58a07..9d50818 100644 --- a/Platform.java +++ b/Platform.java @@ -1,5 +1,5 @@ import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo) - +import java.util.List; /** * Write a description of class Platform here. * @@ -15,6 +15,39 @@ public class Platform extends Interactables public void act() { disappear(); - } + spawnFaceMask(); + } + + + public void spawnFaceMask(){ + if(Greenfoot.getRandomNumber(100) < 5){ + spawnItem(new DispoMask()); + } + else if(Greenfoot.getRandomNumber(100) < 2){ + spawnItem(new DispoMask()); + } + } + + + public void spawnSanitizer(){} + + + public void spawnToiletPaper(){} + + + public boolean hasNoItem(){ + List<Item> items = getObjectsAtOffset(50, 50, Item.class); + return items.isEmpty(); + } + + + + public void spawnItem(Item item){ + if(hasNoItem()){ + int x = getX(); + int y = getY(); + getWorld().addObject(item, x, y + 10); + } + } } diff --git a/Welt.java b/Welt.java index 1c4dada..5ce04bc 100644 --- a/Welt.java +++ b/Welt.java @@ -27,7 +27,17 @@ public class Welt extends World public void act() { scroll(); - spawnCoronaVirus(); + spawnPlatform(); + } + + + public void spawnPlatform(){ + List<Platform> platforms = getObjects(Platform.class); + if(platforms.isEmpty()){ + int width = WIDTH-10; + int height = Greenfoot.getRandomNumber(HEIGHT-10); + this.addObject(new Platform(),width, height); + } } public void spawnCoronaVirus(){ diff --git a/project.greenfoot b/project.greenfoot index c55e3ee..32639c3 100644 --- a/project.greenfoot +++ b/project.greenfoot @@ -4,6 +4,7 @@ class.Crowd.image=Menschenmenge.png class.DispoMask.image=Maske.png class.FaceMask.image=Maske.png class.GasMask.image=gasmaske.png +class.Platform.image=Unbenannt-2.png class.Player.image=Player1.png class.Sanitizer.image=sanitizer.png class.Spit.image=SpitterSpit.png @@ -19,12 +20,18 @@ dependency2.type=UsesDependency dependency3.from=Welt dependency3.to=Player dependency3.type=UsesDependency -editor.fx.0.height=0 -editor.fx.0.width=0 -editor.fx.0.x=0 -editor.fx.0.y=0 -height=741 -package.numDependencies=3 +dependency4.from=Platform +dependency4.to=DispoMask +dependency4.type=UsesDependency +dependency5.from=Platform +dependency5.to=Item +dependency5.type=UsesDependency +editor.fx.0.height=739 +editor.fx.0.width=816 +editor.fx.0.x=407 +editor.fx.0.y=25 +height=817 +package.numDependencies=5 package.numTargets=19 project.charset=UTF-8 publish.hasSource=false @@ -69,17 +76,17 @@ target12.width=80 target12.x=0 target12.y=0 target13.height=50 -target13.name=Spitter +target13.name=Scroller target13.showInterface=false target13.type=ClassTarget target13.width=80 target13.x=0 target13.y=0 target14.height=50 -target14.name=Interactables +target14.name=Spitter target14.showInterface=false target14.type=ClassTarget -target14.width=120 +target14.width=80 target14.x=0 target14.y=0 target15.height=50 @@ -90,10 +97,10 @@ target15.width=80 target15.x=0 target15.y=0 target16.height=50 -target16.name=Scroller +target16.name=Interactables target16.showInterface=false target16.type=ClassTarget -target16.width=80 +target16.width=120 target16.x=0 target16.y=0 target17.height=50 @@ -174,7 +181,7 @@ target9.width=80 target9.x=0 target9.y=0 version=3.0.0 -width=1366 +width=1440 world.lastInstantiated=Welt xPosition=0 -yPosition=27 +yPosition=25 -- GitLab