From 5345398e90b96351ba354b456b6d4eddfc0a9f4a Mon Sep 17 00:00:00 2001 From: HamzaEzzRa Date: Sun, 30 May 2021 13:58:11 +0100 Subject: [PATCH] Passing Actions tests --- .github/workflows/tests.yml | 21 ++++++++++++++++-- README.md | 4 +++- ...lone-1.1.jar => SuperMarioClone-1.1.2.jar} | Bin 49485 -> 49646 bytes pom.xml | 2 +- .../java/com/TETOSOFT/graphics/Animation.java | 6 ++--- .../java/com/TETOSOFT/input/InputManager.java | 2 +- .../java/com/TETOSOFT/tilegame/MapLoader.java | 6 ++--- .../java/com/TETOSOFT/tilegame/TileMap.java | 4 ++-- target/classes/.netbeans_automatic_build | 0 .../com/TETOSOFT/graphics/Animation.class | Bin 1932 -> 2145 bytes .../com/TETOSOFT/input/InputManager.class | Bin 8107 -> 8194 bytes .../com/TETOSOFT/tilegame/MapLoader.class | Bin 11106 -> 11255 bytes .../com/TETOSOFT/tilegame/TileMap.class | Bin 1701 -> 1778 bytes target/maven-archiver/pom.properties | 2 +- target/surefire-reports/AudioTest.txt | 2 +- target/surefire-reports/InputTest.txt | 2 +- target/surefire-reports/TEST-AudioTest.xml | 6 ++--- target/surefire-reports/TEST-InputTest.xml | 4 ++-- target/test-classes/.netbeans_automatic_build | 0 target/test-classes/AudioTest.class | Bin 1794 -> 1788 bytes target/test-classes/InputTest.class | Bin 3237 -> 3257 bytes 21 files changed, 40 insertions(+), 21 deletions(-) rename dist/{SuperMarioClone-1.1.jar => SuperMarioClone-1.1.2.jar} (57%) delete mode 100644 target/classes/.netbeans_automatic_build delete mode 100644 target/test-classes/.netbeans_automatic_build diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 4c9986d..f2a3cc8 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -1,4 +1,4 @@ -name: JUnit Testing +name: tests on: push: @@ -8,8 +8,25 @@ on: jobs: run_tests: - runs-on: ubuntu-latest + runs-on: windows-latest steps: + - name: Audio device + run: Get-CimInstance Win32_SoundDevice | fl * + - name: Install Scream + shell: powershell + run: | + Start-Service audio* + Invoke-WebRequest https://github.com/duncanthrax/scream/releases/download/3.6/Scream3.6.zip -OutFile C:\Scream3.6.zip + Extract-7Zip -Path C:\Scream3.6.zip -DestinationPath C:\Scream + $cert = (Get-AuthenticodeSignature C:\Scream\Install\driver\Scream.sys).SignerCertificate + $store = [System.Security.Cryptography.X509Certificates.X509Store]::new("TrustedPublisher", "LocalMachine") + $store.Open("ReadWrite") + $store.Add($cert) + $store.Close() + cd C:\Scream\Install\driver + C:\Scream\Install\helpers\devcon install Scream.inf *Scream + - name: Audio device + run: Get-CimInstance Win32_SoundDevice | fl * - name: Checkout the repository uses: actions/checkout@v2 - name: Set up JDK 8 diff --git a/README.md b/README.md index e8c2467..9ef38ce 100644 --- a/README.md +++ b/README.md @@ -5,6 +5,8 @@ This is a Super Mario 2D Clone written in java. Originally forked from [Super-Mario-Java-2D-Game](https://github.com/mtala3t/Super-Mario-Java-2D-Game). +The project has been fully migrated to Maven. + We're implementing a better gameplay and user experience as part of our Agile development school project. ### Planned features @@ -20,7 +22,7 @@ We're implementing a better gameplay and user experience as part of our Agile de - [x] Improve the animation system and the game graphics. - [x] An audio system. - [ ] Add a shop system where you can spend your collected coins. -- [ ] Hitbox visualization and adjustment. +- [ ] Hit-box visualization and adjustment. ### Screenshots diff --git a/dist/SuperMarioClone-1.1.jar b/dist/SuperMarioClone-1.1.2.jar similarity index 57% rename from dist/SuperMarioClone-1.1.jar rename to dist/SuperMarioClone-1.1.2.jar index f8523ade2eb8e9db70259732ba51b1fb6334ea7d..af807e323c30e721de5fcf6ba3ca65d338d21b6d 100644 GIT binary patch delta 13567 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 delta 13432 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 diff --git a/pom.xml b/pom.xml index 8e19bb2..a4fe841 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.TETOSOFT SuperMarioClone - 1.1 + 1.1.2 jar UTF-8 diff --git a/src/main/java/com/TETOSOFT/graphics/Animation.java b/src/main/java/com/TETOSOFT/graphics/Animation.java index eade244..6746610 100644 --- a/src/main/java/com/TETOSOFT/graphics/Animation.java +++ b/src/main/java/com/TETOSOFT/graphics/Animation.java @@ -4,7 +4,7 @@ import java.util.ArrayList; public class Animation { - private ArrayList frames; + private ArrayList frames; private int currFrameIndex; private long animTime; private long totalDuration; @@ -14,10 +14,10 @@ public int getSize() { } public Animation() { - this(new ArrayList(), 0); + this(new ArrayList(), 0); } - private Animation(ArrayList frames, long totalDuration) { + private Animation(ArrayList frames, long totalDuration) { this.frames = frames; this.totalDuration = totalDuration; start(); diff --git a/src/main/java/com/TETOSOFT/input/InputManager.java b/src/main/java/com/TETOSOFT/input/InputManager.java index 34c64cd..29b9137 100644 --- a/src/main/java/com/TETOSOFT/input/InputManager.java +++ b/src/main/java/com/TETOSOFT/input/InputManager.java @@ -106,7 +106,7 @@ public void clearMap(GameAction gameAction) { } public List getMaps(GameAction gameCode) { - ArrayList list = new ArrayList(); + ArrayList list = new ArrayList<>(); for (int i=0; i tiles; public int currentMap; private GraphicsConfiguration gc; @@ -114,7 +114,7 @@ public TileMap reloadMap() { } private TileMap loadMap(String filename) throws IOException { - ArrayList lines = new ArrayList(); + ArrayList lines = new ArrayList<>(); int width = 0; int height = 0; @@ -202,7 +202,7 @@ private void addSprite(TileMap map, public void loadTileImages() { // keep looking for tile A,B,C, etc. this makes it // easy to drop new tiles in the images/ directory - tiles = new ArrayList(); + tiles = new ArrayList<>(); char ch = 'A'; while (true) { diff --git a/src/main/java/com/TETOSOFT/tilegame/TileMap.java b/src/main/java/com/TETOSOFT/tilegame/TileMap.java index 2c7a0a3..54dbd42 100644 --- a/src/main/java/com/TETOSOFT/tilegame/TileMap.java +++ b/src/main/java/com/TETOSOFT/tilegame/TileMap.java @@ -15,7 +15,7 @@ public class TileMap { private Image[][] tiles; - private LinkedList sprites; + private LinkedList sprites; private Sprite player; /** @@ -24,7 +24,7 @@ public class TileMap { */ public TileMap(int width, int height) { tiles = new Image[width][height]; - sprites = new LinkedList(); + sprites = new LinkedList<>(); } diff --git a/target/classes/.netbeans_automatic_build b/target/classes/.netbeans_automatic_build deleted file mode 100644 index e69de29..0000000 diff --git a/target/classes/com/TETOSOFT/graphics/Animation.class b/target/classes/com/TETOSOFT/graphics/Animation.class index c1876a697ff3bcddd99dca8f032276aa82185ae5..5ee46a13345263f5ca90b11e749cb5d1fafc3fb8 100644 GIT binary patch delta 974 zcmYjP+fEZv6kTVg7iT!-B7zl!c3PlNw3UkrmWwS~t=0=rQS@mv)zp+~+M?m9KVV|W ze1P%Y7o$kj#Q3c73w-iJH12(-Y5Oo|?{n7LYp=8Cyz2SW+xYSC%Qpb?cwoT5stFwz z{YZ1nm~^sc;utcFUE=L!KeB#YF=65=b8?Ja$5le_g&Ihn3j?Y(@dR$p>PMcDbP znObUP|LxDA!ThsFc6rOLmh6Y+Vqx!jvA~Hy)>#(=qLcpNv6vA01}x{b795CSQX+;a zi4aC5<}fJ`azY~H{MHiFF>Fc{a7SW<(P5mFxPX+z7H{w3p2Qi0f8_qS|hZZr6?#KiGPIn1nr$-Mrrk_^8m&umo5k6n4p~?yOXqX zeF`3z7yk-<`;fNAA-wMi(ZDJuMWBxqj&>*ono1g9oEWTBbKZDHbsbUXyJtAZUBmRF zfc_?zv*QS=Zv8wfs*4ludSh&eF!%P;l%2w9S|g6>wPNl240pKbZ7N$xAgQ<;-kAn- zyH)29xerq(OVzk;!Ywyp9z0cnIJ3%)#XpaA=xmu380(4~2MEOV19Z2C;>wS~OJXLC zv_0Z3^tdy&==GmvEvL^{6jA4;FP3E5pqgi)<)VOd)LY;@VIF96>~;Z*s`8g_YN36b z1!}cO(@J%;3pRDQn*2%*~la$Ko&@1oE@_zPLR0G!3U$n2Rk4k4*mgz zWX+KqUw{Ncf&=0hA@L1}3w!}rl&ZGn_)=Zf^{U>h>i*sN=5p=F|F7Qw%;Tv82g?#B z?%24?=Zd78Rf%q_aBhvmtc`m%auO2jjM?DKCYvozZ#$IO;lwU`_u0$acp%_p%cbMZ zN_bopP&?&vv64FqtJQifUH^Cb(KS3V^AN5;;(7Qo3|^d+j)H8Z628ipswWC*jIzln zT*IJ3fKdTAs+(@~)|{S98c)R#^N0x7s;z36AhK*p!L7)3xFLu8fqFJKrW6baU)v2iOEFji7Wpo?%<+VJrv z-rx}!Pna-zW~EF6e)QT(2He}DT>*(Emc2go6Pi6%XOKUJajuVkS$>H8a`9qjND`tWm^Ip(Z{-BtIkZ9r6Rkv~aSGCtcOe8lqH7l)?gi4ME7hMP0Cj NUOFXR@el8TaRxXdP-FlA diff --git a/target/classes/com/TETOSOFT/input/InputManager.class b/target/classes/com/TETOSOFT/input/InputManager.class index d8cb0b3ab00a53e2e82251aa53f88d392a88b093..516f3d17a4d2224c8a8fdd42c2e46c2838aafb2c 100644 GIT binary patch delta 1262 zcmY*YdrXyO82|mw2fW|;cuOTN=Wqa}G&Cv-)Ko+Pr9{tc1Ec2F+Nn7@#K0l2xk_fU ztu6cOYpoI~%1dcQb-HP0NfttPx>?%AZgwv!yBJ!}b6_q1`906`d!O6;d%thz!ka3) zhEDF@3t%Rr9+qLi;DEtk5CIG+yrS@`!D}821~hnG;SCRO;w^GWyZFMzmoC0?an!}vF1~T` zt&8srzV}ds0T(~0{ZZj3g`b16-H5_3I{#ON-xQ8{_#J=f#((NAf9Ztd9{$Ft4m=^y zg_F9|KXO8dM+(V+f+LAcQApJ=&7+~~F-TAI(mh(9=JIs46GR?PbU8_b44KC>3^NV0 z46_Y$3`4}k+T{(k^|jT}nyVIFR#$&%9Wg1|l(>-x13Z*yNGazMB0Ji8O{}>g))tRl z-MnhW+SRL8s6)(%HpMz)B^~YY=8~$mw%FQed`LzYa z?I#BlmzyTC+wXT}mQz@0d8WT4IMuly-F|B@*Evh<#$YIGGkPqi za+<|G=rKIovIsr?uHc@o>6~FXo#$8<^IXgGP;Ys@LJ4lMya2tH7oyj&)Uu2-E!xpx zIg7I`FH(ArjG&= znGy&DBvVxISBD!MIr9g@5$9n%;vWsKlz6+pFE?!Zr0=6iF5h3DTX72inD9q(E7QlO z6OSX|_eS#l+Q_VAzx9!^`X`cn-6`CY!e!^pk=h+Hfp|*dk-TaCy1cyqxTnXtq5pBu zB)O{boI-s-zaoFQY8rV$~a)qBl=Lptw}#?ZIk zzP!JwV8h&fQZ0{+V)Q3Fs`p~DV-7NLD>h08?IZu?gi#oSz6^QX{qi1HOpcnDd#Vv>qNMR~~{vZ0w~dZ31xFeROcdSj-k z85_rkX7`XlVWmcyp?&2&EDbTsO1epQo!+{7tIU*I>!Xi1|s-L?azu| z6u$;?mERO6wAo3;DaGj!XYjjT?+VGTFYyS)SVMI^=h(;(Var6|v zx_RMT=CdHAVMGEMgbZ02p;dc{?1Gm@c$qqvOFxb?EHWH#SZo+IEXg+Wgva4*W8NJ4 zGHrG^e?K{x?KaEEPG^GFSgB=wX1%L;V5qd_d%g>K6$IKkpsbQ?~zoP=&S6721m%qf|7jR*Ad0}I~AKZcBd+580=mVK2ng4F*NZ(aRu<`!u|8j>a7SWy`x~&)O^qjg8O<$--(R``z0yWo z6(BF;d7k_uGMyWYH%e@;%OsNiX1wa=B}Q|*5^=Ld`oEUb((YKIHdph1y-)O-WL=^3 zktkv-wz;#(v|FE?nX9)XHJbl=PQT+KEi2lJRE^~J=5pTIG3 mNB2plJQphQcCLn=-f?TnQ;{u2h+w}gwXgg(b3j5oy!$Wi0{}Px diff --git a/target/classes/com/TETOSOFT/tilegame/MapLoader.class b/target/classes/com/TETOSOFT/tilegame/MapLoader.class index 464f1db795581c1592f2043180ed1ce1130775bf..a08687d1d30f235d4fa438e71453fa45e801aafd 100644 GIT binary patch delta 2746 zcmaJ@d2m(r75=_^-+TAIo11-K$OcJBLU}<#u?+-8Py(@mLcvODdBoT7Y)E1fAhE6S zU+v;_F70&MX{Te`>9lrQr;#pDHbq$kB2g4&QKFzID!2hLfu3`-^pDOolljj1ZRb1Z zJHLDH8(MvJP2b@gJ9Y!8H3}T;W=$BoILi^ZMPar=t;IPGLaed*MYVGkZngL&2MPSL zLS10b!+`FcXK}uR6xJxzJDAG_3b*O-c8d!g-oZsWv)JOD4szLdm*NtoZLqmiLoc)0 zsIl(0_!S2wY_hoA!Bo~*Tw(F64$76aj4KsZDSXZ5Y6rDkqucIL@9Pfl28+#3pDf*{qnJ{DTfG*AjS6vv`xU;U(CT0zH(6|R*v<|eJfP62 z;k(r9R@kh=En3J{n>`kL9W-jfjeJlkzH2eZ=J#xV-{wO$y+`=x3Y-73xx?m8oB!55 zyA*a?+!K_}=-<6MvDaH}OzGR_;MaWG;xi6@!~GVYb?~^_=N$Zw`yFgk?YHrO&4UxC ze`fKpgC}^@=CO&nVVeUsU$A-H=AgwF9XzG$Cv3iK^A(#XZN6&pH3vI+)Z%H2XNX{T zyw$s86eNaM##`E=-J3gOM1^<7$Vi*lcz<+DG!os~9ckDUZHd*@_Xo{FGq6s2=v9RN zRzPGmwl_yxS4TVJ(G9J!RlOatRq7Cx8lhx7LTj|GC9<-+Gv3xxS6}Bdub2Ky>%H@# z?d*Yd&vG%pj-sKDW?+C zq>jRb<*m`)Sf_N%$ntKal!pe4Y@$?`yd|mC897F-NWQUsQ%pH5Baf)^7k{5R%^WcD z`;VkP7FtK_ljqC8)1WrV_vI@2R*LeiRP9^Q!M7rSZ$$&&iVVILCB!C5qyfAjc-(t3 zr-Fmt$(*9H7iA?&cobj439;%aleA51_4gO#&RQ@iD~`W&HZo8PJy{IX$BC20IEh!~ zLxYa*D#vGnx4&w~Y$~sk7JtaHmBjB@!tE%0!q<B%ut`@tO1}gdbrSuHu?>cN_kW>vG!?@Sya5NW3t% z${yWkBZe!Y#(q_e4^OBjo_1QUGK>Wf~uj(d+6w<$qMWQ7t`Nd~2u>pvWZT<8L(Fx7u_){Rpo z$z{?Oj9rK{m?KD%a^%;Hl$|EkNNo9jXzc!)xf7LV(<5AypM3jGybDM$f%#ss?6Zi|WnFGW8Ei;+RJc;s0d4cDP z7cl?IFbl*Bn%ik|ig=-7b0^R$}>WDtg30T(v7{2j*OGo@@>?Bl>IYh c)nJ52#EL5Nqva5v7s{u^z9e?1*i#7q2L?YwGynhq delta 2570 zcmaJ?Yj9Q775=_+&b|BGb9de$Z}LKdKs3_C##RXw3GyshTTqdf3#KucS0Mu0&P0Fo zN84%p<1n56veiDE))|~>qz@=BK@cPo-x@?Az7-Kfg~Wt(t&@bAPG@?P`S#j-?X|x3 zI_F$mHL$Y#=;fVz0Mt1J0rs#uf!(|&5V%&MM&UZcSpnj#_W3nkYZdAYuMd#q*A?o$ zy$=F<_Xfjn1juBy!Z!od^G1c6bUWLyA>bU&)st@-&I?e;?wb|oD{Z6C1?u`1p9|I3 zBE!W2D!9aOX@DuLHe6=-?EqEEI+e>6Rw&%+^E(0Rc$;4Pu1envxRR@Md%NKs0cP<| z-K;jeOVw+X@B4;72)aeJR(C0-T&L1{g}W7+6n?1CtZ+|&d2BJ<5b$2M>ZVPhUEO!6 z)T!_z-EP!GHu>x_yf45~4R|RxE5#PWT%TKg-tY4PpZsySk^d-G&A$|O8t#foKlCRd z@8-Y570%@D-2oov9>cu>e$Rb|`vW|x>r(;#$bA8}X~nnkfX{;y*1s`46yR|l@p*LO zY{=)cK9BkA_4%CP@c>V%{&}A-_bs;h(v@(n*}?n5Jb!?B;h_IluTruIA4^=H-^--M0UWdpL}G@*bSA?K zi7LOJCoJFK$*>|QO6%pDmT&Qt#hZ95To_blpXPw&+kD6JU4{2J5dI`6O1^LT0Y9|- zh#!ZK1O@ZY@Dt0kO0yqN5q?{$b5o6gWj{Y9ylcC*c3FIe3q;O_)aF!8OGnM3<&9g{ zH+6QkbhKNZlW<0Y1=sZQyya&+X?cN3f>SI%=NFb=@}lJ>4jK+we#K$S5e|l($;x|s zdD(K*0g)MbZcVi}*WA{%v8BD)I&>V1z1T;jN6OTeu9`({spcl@xQ=J>3=Ua(j9DBO z2}cx;Dm<%jOyOw(C+5V7lJKEKUih#ZUt%0%9p6bjmXD<$CRw%^In zgciWv_@^$oEoJ2oSCM0Ds%Tktw%d)1&d!1~eB3zMG znq1I&zeTT;LsaTMJdiarE7zGM<-Vt*tw~volNXL=HM+e{e$Or0zm6v%Ws#1^7(3zV zf}Hw8DrwfyD(Ob6WE`!MbhJv|vZje`FP;-T9@Z94V_&$sux#q{qRA5k`M>vOzOx7C+aAY_E_eXTX6~dgf!r0 z49YzhY21V%kvx=g9lpXaV%=EBQjADB;&N1q%QBWGD$G1&jLJdWVAK$X@-vi~97c}p zhfw5x1Bl6h2#E#ljJW?y!=IY^F{L9CzxP?NHKQ@T^5QIFL!rgghe76cRwz&SR~&) zjPooJDS@-$hUwKaF)GDdVL17J|7CWE@H1(YycMIu?VmosTL)igWWrjJU>hpgE=jdX zhsK7#PIQ$rYvuAx`f|7SO22AZ!AkKXXPm;Tq+bcKoXRR`fOe@E&ZyMVMB_EhGrZbx z8s+{aRq3ZwjCnl#>5P-ozV$PgH){LF-c85GS$rIfJW>p1h}PjuJ|k<9H1u&k&BMa^ Oq^y0i?vnLYB>n^1UJxPx diff --git a/target/classes/com/TETOSOFT/tilegame/TileMap.class b/target/classes/com/TETOSOFT/tilegame/TileMap.class index f37a6b9903a7ab7bb1f8535e7b4d168e6e687851..69907efd96481f343867bfeee03112e0f25f9bfc 100644 GIT binary patch literal 1778 zcmah|U2hXd6g}h5c-b@|B?*lUB)A{8Q`llin${sL9|>48q>|mB7I@g$D|^9?qxFWA z-@;RQ=7CC0kU-*%m;R`Vb7wb>e%d#w2WxFC5zsT~dEZ35_p2Q7>xbL=|p2Eca`;|xb6Wg+PeXHEDn@&j~ z+1vJ9U#_Qu%N=H06?f~g)2O&TpDC%T+uXAK9nVo%{9w{@rQYpWwbj~sb$zX7H9dQ~ z<<@&vRb!V{2$I-t+fN-&;q0e#nYrw4x&8`y=gQ^$hC=K{x53t9B<0-Q>1;Y)&E9PD zWTMio+wBe8b7dbM#{8B`HRq1D5eu4j$FXV*?%3O86yJ3leoH}>*|X)i&6ck)(scZL z!Fe>7=S_+Sx5LXMW2sj-CDe|ass19|Q-#s0Z`U8QO~@(PJ1CrF;c%VSCD*!M;gFd)i3t;PIBy~=%Os{utYXc? zEm>}3LE+4i856$-AC%r{y4|LFP|t`q!2!KxT$*elH_!xfkf5V$+T9kFm0=ZG)SETafx`V@BjfnT{x6#hl@ z?F&W`=5eo2vl`J1GD1Wp2J=Mt7Bw0$BGu92vHJOe`jLM9*Z3x^-(|h%&8DAWI$hXD z@;Syb&u}8cc;s)y)k{H67c<3|Op9u2f$#+yut?*Ucvcz^p6v_I;@ePo7T;;%Iby^R zIW3a&D1;<7h$~haVXF((Lz4{>1a2b5SrT&#L1w>)(eGh|J>*H}@jWpWF5qI=!{S$L zjzR%zXg;W%D{ei;FRU1`$irn_cgPA1a)xHTylcaksHrUtMXq?a>%@BaI6@F`{-oW{I^GZH?-Q3tni$H83*E4Zw1^1!V-f85n zx6yW2*Pr-J-X^b*5-mzpm@US%M+%lozfg3nl~>OfthJEBB>yddg@ll1mJovaOJ@Aq zARy)#k8#yvrN!@w@>{5KF8>b_i5*zwzmfd;EmAv3|Dk)2GtTf&1$@qUf-`c=^85kw zF#>mUToH@=Cy6iFDP{@g^v6uR#IKyC%YVXp_dBx$1U;>H3mVahD-5C%W4R-ID;f=$ zkZ!ATsDELke`45w76sG4&3@5a$i2j|TzMCn*O`!x^@jAy-;rokjEod}U_1{EE#f&d7?CQI~5YE~SPpUBE@tyv%B$kuERn zAUjU3ffOEUgt@qCNG>g}Uk`SNShoz8h)pl-!hST4_bbKzHiBml@oZc&cwc`I@5mv% i7V-T5!K>i1(OS`b;}@0Qg){C|Z^Wzp7j;EDdi6b5n-zHg diff --git a/target/maven-archiver/pom.properties b/target/maven-archiver/pom.properties index 8987270..b4b1ba1 100644 --- a/target/maven-archiver/pom.properties +++ b/target/maven-archiver/pom.properties @@ -1,3 +1,3 @@ -version=1.1 +version=1.1.2 groupId=com.TETOSOFT artifactId=SuperMarioClone diff --git a/target/surefire-reports/AudioTest.txt b/target/surefire-reports/AudioTest.txt index 288e668..ee56ec6 100644 --- a/target/surefire-reports/AudioTest.txt +++ b/target/surefire-reports/AudioTest.txt @@ -1,4 +1,4 @@ ------------------------------------------------------------------------------- Test set: AudioTest ------------------------------------------------------------------------------- -Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 3.627 sec +Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 3.548 sec diff --git a/target/surefire-reports/InputTest.txt b/target/surefire-reports/InputTest.txt index 608f361..79367a6 100644 --- a/target/surefire-reports/InputTest.txt +++ b/target/surefire-reports/InputTest.txt @@ -1,4 +1,4 @@ ------------------------------------------------------------------------------- Test set: InputTest ------------------------------------------------------------------------------- -Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1.189 sec +Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1.075 sec diff --git a/target/surefire-reports/TEST-AudioTest.xml b/target/surefire-reports/TEST-AudioTest.xml index 9b513c6..97e42e2 100644 --- a/target/surefire-reports/TEST-AudioTest.xml +++ b/target/surefire-reports/TEST-AudioTest.xml @@ -1,5 +1,5 @@ - + @@ -64,6 +64,6 @@ - - + + \ No newline at end of file diff --git a/target/surefire-reports/TEST-InputTest.xml b/target/surefire-reports/TEST-InputTest.xml index c0d14b4..3ac205e 100644 --- a/target/surefire-reports/TEST-InputTest.xml +++ b/target/surefire-reports/TEST-InputTest.xml @@ -1,5 +1,5 @@ - + @@ -64,5 +64,5 @@ - + \ No newline at end of file diff --git a/target/test-classes/.netbeans_automatic_build b/target/test-classes/.netbeans_automatic_build deleted file mode 100644 index e69de29..0000000 diff --git a/target/test-classes/AudioTest.class b/target/test-classes/AudioTest.class index 397688f424e00bccddd024f748f6a27213077884..109e6d312f443af9c111d8eb06cfd3ba68a95c81 100644 GIT binary patch literal 1788 zcmZ`)OLN;)6#lL)TZ&O0b(=@i2P#k!HxJXM6o^Yp;wGiVd4P>W%EEJF-METv$sq@q=aGYM8=JVF+;zX@=C==7O!(6}SFWncl z%}H7lI!BB$XjQJ*rZj^8j1+wqJYVKf|W3R4m}uj6&uMf03+ zB-#3cjyLcogVJj7uLAu@_KSF1#gvX|WEcjPqumdoABH+R_AB^Nx7lZ96;Ipq%0 z^ws(rZv_oiY|xm;SC<&BJgkbAXE}CT#b@+kJWn|~iSDIY7#MMiw|5^hocZ$Ax2vGk z6glWt#VYyDFmyD=yu1MyXvbpol>>1w`FYcGg;18>jNXY$hhRU^FEOmrQyv2fZqri_ z6Yw$a5MsDXr?H^;Z)zr+)*nONP7fTCdXF)*eTb3ti36ORIlwr*(r4&#fO7;5<$I{g zK9u;+c#H6*?{K+a#oSRvwzp!x`-h|$4=9e&6q0DLouIYC0QLw;%3~p|h;j-XpP)e0 z*XV2!$u2E^OvOc&7MrP9?^5^~ruRCFHTy*q*rY^-`g}@1#b+|GAE-@|PM(gazmgE~ zK#eQPA+8p;l>odKf^(;@6Z><=i89 zv!lwDMd}$Uo+r&tCtj3X;ukcR0TO+oZ&9SW%sD3e@82kFzx(ZT@z2x9z#s`b4j&VE zM1L=T#3cSC{1?s!CKzOt4}lU%FRgkS*}?HOK1VsS!-Cd@g+yS-mWnM#o7biPM#-K? cuTjV2p<%7au)e4NBJmGV=ymT4A{4{+|FfipqyPW_ literal 1794 zcmZ`)O>^5+6g|(DEyYzD*KNKUTEu7K=EF^$7Dz%Mag);Ge1J_#Qf53a){CpemOQfL zmK_V0`~h}M7i5NAHwikmRg}ISJ+^_%MNsSdecYY4}*KiyD^Xn$vJo z!?K1I4YxFWqT#lNJ1Ra^k!Og{TejsbFhs}Fn+!_MF$F_k-m=A-U)vFGk?&NAN#&g~ zuWoYJlDJJO-hHdVa3;U#o0d})4R4M?^=Mt)$TCEBDhwC%Wv7-YE*IAe>np_!mywx* zLPi@#8@mq~M((}3w2BNB zp>5oQ|hlk!MYwR%=&tuqYD3YjXmE181l zT6Sg0x2mRaX-hh|u}d2oqdGS5nU2p2YtAL$yQ0)Vp394-sFoJZCb!EX4D7wdYofH?6mEzU z)Q$E@8G4S*CH;FoO;l#rrT7PqyPuJBk>d^OLGrY37SGA?jPrV3 z*e1hdw}6*&+HH|TSrOhE31YY~mVPOY0yNJF_n|vbC*Oh#u}ux-jfQZ&qU%%cK$l&& zrLG>UA+4oJpxY4kEEw_bDYw&`c!RF%2;Frc3MOZfo|g$_Xl1m2Kn>4eUo!5T`HC zlIpKyL^N>YoN|OzVM__X`4Geca3KWo0Q84I4ZuJMv;Yi-AQ{FDk-3HZ`0B*dh3E~X zU%B)M-bBB0ZI)_=jt`S(!?71Fm-q$GB|)ZVyC$_=mocYo|NUEq9kjkXG5<0h8R#Wr z2jOD~k1&j%XvF>`{1=UvL0=7Oln;SPvR=08S-Tw^-(V^jJlPHlT8kdBpdD9LTxASs j(f_1)2h-W8(|p*ldb?p=zy6EZKO~{Ed(*Ua1lRrt?nr@N diff --git a/target/test-classes/InputTest.class b/target/test-classes/InputTest.class index 0020e02c03d5c9e16ae914009f5ee15ebd36d82b..b8ffce79ff08e28848c098a893ab667db3ad1e39 100644 GIT binary patch literal 3257 zcma)8`*#~h75+vKud~_2vg0N-aT2AmYs<2;fwoYhCXl#x>r_gDEz~-c$6A`m8_T<5 zcV#EM3KYt#K!Lt_wY+XhJw5zLu4h@F7<$%CFlldFghGo_) zr)n+*p6yg~nNmLn1p1XjUS1D03<{j;x}oY>^;Nsay1QpX`2R`(te&?Xo7mnkWi5d$B zkq!*A?t0yIq!WY)?x%4#O1Z&h^9gxtPEFJSlLj)FQY>2aqDu=YoXq!t+)h)Dd}x>! zIJkT6qPybqxU8bp+_|tLR~H+0t)hrOjd(vkM9$_dyCy5?z)e?VAj?783MG)9PPg=hc%Xy%kcQmC`_PxUrcQp$z~fjD&@JDW zUQqNJ#CW(zoYyj?Br8w-Rdf_^S;G|rSMdpfRJ$gMtDdyTRMM|WSrba;s;#XspSwF$O%!m=z^7CfNcw^0g%$g0 z1E0ZXNtf-13`v4w{WIn)EJfvt0!In$1obZs*9DHZLs@VF>3NNMAS-h>%d)OogN{`^ zticu-Xm6aYkvko0sA*U?;J{VwNVSPZVAsr=Tdk^c$#aw*5m5>|^V2}JDUno!}DDw6ID6s+Etma;fHL(ZH4Vx*holfIiyms zYWt#g#q$a>SamB`E!C2#Te34)v({HC*4R#u7(1hy&)w))0Rl03Qy|@u(q7tUjQWz> z@XB(YJ(KC!&CO|rlo&3$Zr}%e*F|9bfj<09$ItN#4Zk$-2Hq67uN{=_Y`AOE%!erH zVO?i1u17iUX9(@5|8&+!%PG3xam%UHq(7E--L*!&QTJb*}47yH%3>! zw{K@BYn?o6@jYz^GM7RhS^16XyuUT@B3`1_792-`c+pD zEo!Kch#Z{cjj^zMCqS{HkH25$v&m6#OipbASpC(D5+nc?@!X06Gq0m|t3>d_Kdku!s0` z4u>&^BYfA4poF8?r1e>j&*2!J$8r1_C-66pe@8kb?R-Q`i!>d7<*Cn-ykYzS1DwU^ z|0ceHZ}RSQ-1Qv3g#=Ho;@kKR^YdLIc^Zj#726svXwbrcDGj3tUdh}?U77|!o8=+ zSC(8&lb@L|`l;xQR`fhAj7mvr6ffXM^j5PUlZW^&4vC*|^+23k!A+nUDP7eFK`Ll3 z@X$EN@u{Otd~O(JCi^yq3qu#0sNTVizo0Id@C{}D!rOF8Qosix>7*omoMHvWxOzX= zGqg-F6O+u_6j!q$?lkufF!L|tl@Q~2h?{O04{?hyFB)R}`jPy4$E!5O@ETs{sOsdW VT>BM%&HumSiq4hWO!%KL@;__DHW>f_ delta 1692 zcmZ`(`FB%A6#nKdndEhB(@yinP>W54QVT^azLG~9Nb_ReD~p1~ zeZvLE1yB@Jz+KUEQf!X+tH)pTFYtfx9}w@nBIUT`2^YQ6l{+zu6 z;C5WH(2XIEhr(ECLBntuJsjIDgw*K{3t@~XWhckOYTsp{0*`Qvs(m-dqZXpd)3y-9 zP#9xs-=i{R!f=$b*Fqb{)iPmHN%hN6swQMP_QgnZl~Pd4V=AtwGJ1cz{>?Z6v1IUuB0cF-w}?Z452mIeAZvfptpAn%NcXnicGo(oWbn)gfA;XOCn*V_B(rh z*&RCBJVkVgBQYZU98WS>n-1-93VznjdmPhJ=3vJd*Hjajddvk#};jH3dc5_lTV$R4)X5_lHRsk7(hEUT{- zcmXdmR9=r9bjMs@CbfE*)*5mGFX3f@S8$wxwF$h6;{x}iPvAAYF7O6UFhqmcoSh#} z4NVjsJ3~hsT-W#fqFqQk{)C(HszP`(iWF^9;4QqZ0K6mcE>Z#~aZ2SpEk})(4u(iy zzA)tvIUe2jdmQfzoWTbi9}1ksIf0MxvA`!deWI?h?S{(R{9-mg&ahw}%=NoGade@@ zz}x%iM}3K~E}3B|d4|=?-`R3OeX|P%Cr`M$M&%AfRQX@uo7Ip65_4 znvtC<6G39Anh)&F*`6ma7&~;zD0iE6GGQhNzn*i6UvIlyZpP(7v!kBIWxsQH(8)Qr z=Wu)~@EN`mNMk@=;VTw#d_&CoU3dQ!Ar^i4yi*KvJD&W5{~F@>mLValBTanCoR_SO zwA7-77B;P^48kUh*1}9J8$1=2$ zm_7reKafn4(q)83X21u!%LtED>&?~Lj%YLaL`tyAs2J%kLCoN$RYu%MM%zlLiW^^-e3^Yv;IK<89%4ti+wfzlIvnLz0FDoWosMMbUTT z7*=Bq3=CtOw6!p?j&kgRah2XAb>SY4^}&AwM=!@lFpf=E$>qOn(;68Wy^R0$2pkA7 zs3gOE1csjLTw73}GlMJ*Wi*W>8)k6}FoWh2TIMc@ZhrBXWY+@HvB0+#l}Hl(F4WOj z1pGVal3e3Y=>lGAE*h{I4^X(0`spV0>p+%9Ej5`0iROd88wS~cMCYOsT5GU`x^odV z=@_-U{W3bfLnosSC6&4B5(Swwa+O#Lo%$hrMC+*PLo?;5qL1%`*b>xC1USfmM1X?@ nH_f39aBPi|^B|ctY=h!xQP$7#HNHR``$<>BoFkt}