From 26ea68b1cdcd0816adc8b30634f07565aab4b1f3 Mon Sep 17 00:00:00 2001 From: Ellpeck Date: Sun, 14 Mar 2021 15:02:31 +0100 Subject: [PATCH] added some nice clouds --- .../Content/Textures/Backgrounds.aseprite | Bin 1321 -> 1645 bytes .../Content/Textures/Backgrounds.png | Bin 1516 -> 1946 bytes GreatSpringGameJam/Entity.cs | 2 +- GreatSpringGameJam/GameImpl.cs | 2 +- GreatSpringGameJam/Map.cs | 8 ++++++-- 5 files changed, 8 insertions(+), 4 deletions(-) diff --git a/GreatSpringGameJam/Content/Textures/Backgrounds.aseprite b/GreatSpringGameJam/Content/Textures/Backgrounds.aseprite index 96e97eb59e50b1648c9d333c22192c51b6c350d0..839cff4fc82768b891ac9b26ff4bee4ebee3f69b 100644 GIT binary patch delta 1294 zcmV+p1@Zc+3hfL6Z3dA7egf?Uk%ISs^aKC^1t0(b00031{{jF200000004jhUjTTV z?VU}o6fq2hxeA9sLgFYKhcye9Y`FtV)|`M-a0pN%HHup4v>m%#PR1o!f|+@V?XQyl z;Z5`A4M)F!{rE$gxhZ%&8QolYh&;Jn$Mi*q_nkUmn<768`0Xfj!l- zKjZ7?Z{>j(QIG%IFCYGS;EY%FKzlyCs}9a*{QUU-Py6>a4i8-S1$OR8wQGT$3rbhU zBmQ^C26hby_4Y${PTsoXEaBfC8+P+RkNs{Q(6S%x4?B5a#C{hKwCj1+2fe-F@PTCh ztUZ*lU)=*&W}f`dKab|m+CvS0`;7TZG&+`#cxulJ?mUpShcoOm)bRP)8KC*`h_EGsu z=d!Y!Jr}UBkLV$iJvx8sT%PP__-E~51bbBe(z%f9IEuY=fAi|!3LcPu%!S^^BiWC7 z*v^@iy{88x^LVf0JD!p3dp+#Uo0YwX2RzuL`A79|G;db+77rlUYdvs;^mhV~A@Oup z_A?&vVvpp{WPg`iR`wbXc(RwSV{K$$&(00u0aQ;s`DbRovIo#TS(W{4-E77h56rOl z@PlRy2776acb{Q1mUv))rYF(-ne0bBkkr9u%5G*=yT&%O_aA3!&lc9cNTWAKrW&PnYJ0)v8^!@$PDDeSl`a0{_t($`mu+ z9ev)*1Jaxr9+=^OpV0%-I;1~$zIW~g5uQYF@)+|jKQ{B(zDf2yk9s}*n2~=556sl` z#NWg7+TL3Ed+sCJ{8nNg;d$-a^nR{HG=G){(ClYCFd7%dAKe?xb;8Q*t)7>Bj-4}- zf0PHF=4W_b+7py-wVaT_T=&uZGqK6SALW53#!>5x(MxuJ4r~ud`ceGz1%mz4>pOX1 zhk87Z_r-tB@I2QWo#$ja2l9$tYVu(JD!tk@knAhgh+<#i!Cv;%uu`d1Dn;n&dseUZ zf938j4e#>9KJw&VK3Gdg_T_=xieO(J$gAFWW)X3nhg~;Ynbr;31EcZLwPjM~J@oDw z3RdotF+K8s&(cSa+%ouJ#t)XC)#kZMKN0LBJ$z+43Un>VUZVPnI<_9;dgf`BrOu~X zqPU}c;CXC4$MVX}Q!_PYWslkmtjAT)d=Qe>C#i?c9^rv&pCo~pA1#lX*xZr)OV46+ zFHdk4b#HPM(j3^m+Eq*s%*@U1*N#Hmn|$JKnUCFluU+MJuW7{GYixF}R?S-~>%B+M zdzTq{iP{SzYp_UjJsou{iKsiGj+K1S6XP5becvX!p4EL2eg257g~h%+z-ND`_|FS{ z{SZ|Hi~Xwq9&wfT^#d#aNbb9^?@4?8z|Qv++6UR{E%oJfeVf(iC7rbUSq9#J0n_qH EbO1K9tpET3 delta 968 zcmV;(12_Eb45lAqFw00Db`1bzgKktKmNoGwu;-c`c*>4X#MjY%*w)k%ktQ`n{|LuV_ zqh??7=l8emfd`2e|K}gCpB^arh#siV!>h)@x#aJ!FCX>ybsio#?+fhOJ)>R=>{`6y z%(%z@>fXTa!6RDxA-g8)xZ;fPukQ`3d7#C9H4jMH_x6XCJkVpmiU;cTto1=_Z#aB_ z%%4?5g#GLuI5V^4U%u|mpH)MD3HyxoBhkB;_jpRr1y>%(s-cE`ruvaUm|5~admyWZ zBkVKOkA&nbhj>FW)-iup4K3Jb_ki|ZF6EDml}STO_R;mDbB%E8JqPk&AE}`S`>6WS zxklM(&jKUtBQ*46?_EDSmnC}*|EwBDu=lDToy&6_N3louH!J;S@BlJ@m-jv%$-bvy zJ!e+-mL5Rnv0lelJR{k+G;GbAmA!=rEZBSVkJ7L=Z&vmr9`Il<^}vzn-voFj;_0mH zH6E~H@5!IZ{;IaD>?IzsWRI?6X=Y&0uFb;(UYc0)&&+;i4|r=bD|>Cmgv?)CdE53p;_#(!oH9Iv;y*Vni9f(-2IwEPdC>pq%)CN^34dwJlFanw3vXvwaD?EyqLkIg?{da%EHeI*a9(2wQ) qe)FF*Ezf$rb55o+kX5eIlLh-n(Q4K7WWRHc-0XK+u>S`n=xF#Xg#=mv diff --git a/GreatSpringGameJam/Content/Textures/Backgrounds.png b/GreatSpringGameJam/Content/Textures/Backgrounds.png index 0ff2821e6ecfe5d48dd170347e9ecedb9171c783..450e256593ad0828726b97e8a47b78bc2e0f3723 100644 GIT binary patch delta 1919 zcmV-_2Y~qO3z`p*FnuWwsP5XZ-^mH!|mC3liRq~MkuOhBcw!UF{+ zK2jYhF}VXNF)64*Y7$UT7*;9Z3Xk}3rGiLT5|aK0R!%86?d$q^_wDTN%+9{&`AAWt z#@=7^-PzfB``!ak6bZh4{&X+h1_fYTs-o8)A2$X!##a%@Q-4eVhPKgF1hNznfSLWa z7qC$g$Whz__)rnZFygMjHR~UKc?r*-K5~Bk@c4wiP09~MJiv0Yg3GI$=Er7VJb`aH zEDh^y`}yrJO(#FB|ASwjJaB$)aW{wCqw_7#Fl0|)8~=}I|A_XJ%>&rR4{>{R-u!Dk z!caXyd*(}f0)H0u#TXv|U^d+}zh7J*z~XKW007UQJ{puK=rXpHCm^ph*7ye360x|O z4@Lx-nJys$(j~wc-=5J}T=BtjvVwPC7qEKs9wjPicj^P%E{XP&2_SXmV^~gB!SX}N zCMjauQ@Z^m0*7<^^@`}^OcS_3Oe<8ik?x$u;kpCSNESs_Y_fMe!zwts60z&1YB?O$9U z!0CqvMU4+o&Yg1A!`c2uS=jU><(fa6ZlcAIvc)uT&ZH6|<7odF03St{4*1&S7$2aY zGnBiYF@H9S?lOLgVM5zQiaK0`1~FFTrFR?D^>uCoO=W$b`E5cT4%=U;ttM5yuRlJ% z59R?vgAqHEU7zjxF17IuArBWC?mJe1p%!nR;tYG8rf`ja~s@j2|#Mg+AP-;i^)aVMRcV*IY-Ua?3U zzl&0BOQkDM;1kJ~2iW(S&-J}hq{J+Z0CGAz!*^jBe7TV+B6hLTTY{UCRV3#3n{2Wq5 z(kBr_djOZgyF5V+#;4fYhRTjD&Yb4vizNdTG zpQ*+8lzV<(*?rz3P5`=(XV0b^`0b}906=5#V0V)%Cdvv}%>su@*tAFOf zPX^;PIOxmFZ&PEty%&Qpk$qb*_S3%rctjAh&$pr8^JC66`o32a&RxLz^bDT-^=Hz( ze6}~Zyt*M3L2ZK<1LcjeltiBij9vT8bAEDT0?a-?^f^gffp!fs0qdE-*>ux*0~1K5 zP|~QJ$)a}IHHfvj7!F9Gl3LPsJ^rzIa0=$M3kgp zlg|X^MAeu&v3ColM&q?1)ozv}VY#Z87!0nIag0Dq_gnN#plJZ+{{X`7nd92N1f@h^ z>KVCij-(2tuz{j6Y7JXG>XdORoPnV|epS3N1haNiJz%OYaP`xa>pc%Z8Gi{=&!n94 zu>GlF_8X{0;3}^Q51{y=5`pWU$k}v5e_ue2a2^ROL9Ph8zONpjCs5wfZpTy3T|h07 zFeO9jQ;ZkGh-Pm*zz~cN5P!`kMACf$iY%BdGnT#a07Ike0auEmC^&lmI<_Ga^U}=R zSL&$%DuD7Wsj-4k0SLnRdVgH35L5s{lz2BXMg%GV0ZP6YJ0t?l0|?N*tD3W(Z=XNi zn;+L__R0g4jIKkh-n_rJZ>FW@^6CbB<=cH5yZ|WNEteR~OR*`1V7yDHOw*^Vj>Qgc z$=AShth3xgFvJL=y`02+_we{+6xAW>LFF3I8n#zCv<1;cj`uh`K7Sbn9~8+sn0DEe z1KYL!<(6B5`KuSGv4{~$8`BqWMJ2Z?HdI2OTwl##VGUD~lwk7m>Za+7vqMtGH&A*5 zdzPfGtu-3n1}k=#kas#JZF~dAS{vgsYd5-!Q2$(g+A9GlyHqOx7b*&Rc2dEmBHb>0 zZLrgtH4C**IA;`hnt!s3lr5ZkhIG6G$C0M&0-M70p(02lIB2QcC=9l%rzl%m1gXoC zWV@p(&dFH=a+9^&B`ko$l(d$DG zHbXVOflCCeN5bZ>UW`iQ6}XK*WZ2&u_`hLzwv;8W(s5m4#(37vMbTM9y^AP4>!ord zoc$Dao3XoyTHHLh5K4NsDh9N#oGkQ2t-W~W1H zhltXsTuPeKTsA|9TxN|^lVPX+KF`zd-}m=C?^~!cza`rYl&?Yo_MUMxVX;ZpE+^HL zx&CVDMg#&?DQ_sx*Eid8AbF>PX_M-HJPP{8A7zJs;i?RS7oNAyZp~K8^p8NhxtYp* zqNz!QVe!8hc$buC5TDCZ636P5j?XXHoDN=?k=%oiz}TX>^sWzDOx8e{?gdq3A3r# zCKuC?}T6G$=B~Bg-BgVQnUj4JB%WT@&M_a}e zt)q*tvJ`!^ZC?n70wjIFt)>%+Wz#sPM7>#%g0NA0dnJ0F#BR1?2nAMZYAtc={^zJZ zuLr%Tc2D{+6WZQPvQY3X1ZWlGmDI>3&~$NV*3|ebl^-SR4;X6)*(`vu+dV#_lYt;1 zd>uZP13IP-6!`u{9ybLKRs@vJgv^%M>T7&>w8Z_@ zg0T|+WnqRnW@8tK@Iwwo&kx2jGQt%dANA^S0_eV;kftGmDI-1nv*Xde@aiHrh1B8` z_aR3+vc!|V{20`y+3I?+QkkNr_Rip3;=MNGgeKzCHcQS25}2%JkL$3U^bUQ}SX}70 z%Hp^9y*;uHf7p@#YS8B9Dg743&%H?Ydr2@grw$M8Dxlqx;NZ3l&fQd9JOQIBpy%B} zM80~4c1~WqOHRnuK2UF15wM!KMqz#RN-BbnR6`>*_f=)&Bk4xRvicoW$7iQJMMHKc zCzuP^2tFNzUKvKpIUm@{%;^7q2{WnM2PHn~<`p;k+*m4@TyN+01T9HnfMg(GX2tBP zZwD{1ZJ8DNqNd#w@X4iZ*wwFz$6z014IFt|4H}E4{~g`@JUU{tZoOH|ui_ApSYOoQ3`5V`P$unQ-l21%fnFy)@)-hM&LA|0DXcA*MTCG7cIh zrD_@6Nt;#)x;8vQv8TNz8NsDOED!*wo|)!553JIpTJfW}O;@)^e0SB2g6@QTPNqWm zecQCO(ueI7`^7d4s$8@w9Vsc0tWHkBXx6rP+P+%gaWbv+6Y^#emqk(7M|CT!@^B5? zp~MffuMxDD4n|?z&It^%H-R5dyA+Q;dlvcDRIOM7bI~nZ;iVj41-u?2ztad=MBcPI zZ^1mZ(C2V>C=M5x@wm&xx9RTzOgj2P2LgHz8O|j_dmu+;P8!M_gIXc(v@5KNu0HUb zicZzA^f-JXwCsKE$RT%zzhB^etU8Fe6}6C0XnXHzWO1smRziZj1l=&a+(_QU8>YO- z(wWlAy`-)NS*C8gIakotGixOCwxi@dF{n{!(t}HF^jd-J8 0) { onGround = true; var (_, below) = this.GetTileBelow(); - if (below != null && below.Properties.GetBool("JumpPad") && velocity.Y > 0) { + if (below != null && below.Properties.GetBool("JumpPad") && velocity.Y > 0.1F) { velocity.Y = -velocity.Y; continue; } diff --git a/GreatSpringGameJam/GameImpl.cs b/GreatSpringGameJam/GameImpl.cs index 09fca02..9a470f5 100644 --- a/GreatSpringGameJam/GameImpl.cs +++ b/GreatSpringGameJam/GameImpl.cs @@ -82,7 +82,7 @@ namespace GreatSpringGameJam { buttons.AddChild(new Button(Anchor.AutoCenter, new Vector2(1, 60), " Play ") { OnPressed = e => { if (!this.IsInCutscene) - this.StartLevel("Level4", Color.White); + this.StartLevel("Overworld", Color.White); } }); buttons.AddChild(new VerticalSpace(10)); diff --git a/GreatSpringGameJam/Map.cs b/GreatSpringGameJam/Map.cs index 0b0e404..ddf99f4 100644 --- a/GreatSpringGameJam/Map.cs +++ b/GreatSpringGameJam/Map.cs @@ -114,10 +114,14 @@ namespace GreatSpringGameJam { var parallax = camera.Position * parallaxFactor; var (parW, parH) = this.SizeInPixels.ToVector2() * (1 - parallaxFactor) + camera.ScaledViewport * parallaxFactor; var mountains = BackgroundTexture[0, 0, 8, 4]; - for (var x = 0; x < parW; x += mountains.Width * 2) { + for (var x = 0; x < parW; x += mountains.Width * 2) batch.Draw(mountains, parallax + new Vector2(x, parH - mountains.Height * 2), Color.White * 0.5F, 0, Vector2.Zero, 2, SpriteEffects.None, 0); + var clouds = BackgroundTexture[0, 4, 8, 2]; + for (var x = -1; x < parW / clouds.Width / 2; x++) { + var pos = new Vector2(x * clouds.Width * 2, parH - mountains.Height * 2 - clouds.Height * 4); + batch.Draw(clouds, parallax + pos + new Vector2((float) time.TotalGameTime.TotalSeconds * 3 % (clouds.Width * 2), 0), Color.White * 0.5F, 0, Vector2.Zero, 2, SpriteEffects.None, 0); + batch.Draw(clouds, parallax + pos + new Vector2(clouds.Width + (float) time.TotalGameTime.TotalSeconds * 2.5F % (clouds.Width * 2), clouds.Height * 1.5F), Color.White * 0.5F, 0, Vector2.Zero, 2, SpriteEffects.None, 0); } - // render map etc. this.DrawLayer(batch, "Background", camera); this.DrawLayer(batch, "Ground", camera);