From 05a9fa21125ea3b6237fe1e61d629058e2bbf05a Mon Sep 17 00:00:00 2001 From: craftwill Date: Sun, 2 Mar 2025 18:06:54 +0000 Subject: [PATCH 1/3] Add castle sprite and change its dmg 2->3 (#3) Reviewed-on: https://gitea.clubconjure.com/Conjure/gather-and-defend/pulls/3 Reviewed-by: Ader_Alisma Co-authored-by: craftwill Co-committed-by: craftwill --- Assets/Art/Sprites/Castle.png | Bin 0 -> 2896 bytes ...xemple_castle.png.meta => Castle.png.meta} | 18 +++--------------- Assets/Art/Sprites/exemple_castle.png | Bin 8888 -> 0 bytes Assets/Prefabs/Buildings/Castle.prefab | 10 +++++----- 4 files changed, 8 insertions(+), 20 deletions(-) create mode 100644 Assets/Art/Sprites/Castle.png rename Assets/Art/Sprites/{exemple_castle.png.meta => Castle.png.meta} (89%) delete mode 100644 Assets/Art/Sprites/exemple_castle.png diff --git a/Assets/Art/Sprites/Castle.png b/Assets/Art/Sprites/Castle.png new file mode 100644 index 0000000000000000000000000000000000000000..bdcfd8e10c83d9d7fb91278c9e479fcb8fbde59a GIT binary patch literal 2896 zcmV-W3$OHvP)c)=K5+`Z|G-;$3At9?m0tu;q1C&7(rcx_A@D3AIJ2QHsszIuiYB>Sz-JQ+{1nS2q-?G^JH|XMD`frH_sS=!$YQf$Q`~ zC^N7T1F9zuy}Hm!2l|9XGdPio zQJZaRL{sSow46VPK0DfkutE5BFy&f=8tJY(;&X0-eB=u-pKH*h2Vn$y!lWtfqK!x8 z(Z>4c(#NAv{~(%7??or5xr<*iWMv^ir3i@`yJZ4Jo-v^06$yepcgp06GX2=ws01 zj5g~)g?pqnQT3}IC7w*Vj+rNJkwk&<8jc}u_=SGMsy<4h(4KaF4K6bNqZe@w~aS<%@lv*Sl)jjxq0EE;ckUT z7J(}6(Bb)8W1WZ5>7L{Gy|;HS!h5iC@m4hc=)JdO0%8@nxq0HF*^b4I41zpH8-hE1 zruR{&6N$uW(7Sz4wjlaFFN@pUJo6ErG&&s>x~Rs>Zt`|J{akN*>o4?9cOGv=@p!zX zOj|Re-^1sCk}@HQ%uTkBWT3r_icWNhGUHw7++T19aYyYKqMITSlF(}E zSaxBJ_9jrF>oDqT$6Mq>njxE~Iy5sb4aZRWSX1e}$?hX);e>avWaK8=NA4hc!=%jW zu?*?yjH9PuS((qp&`Lgr)(aiz**u&(6hkjeBw-1F_XcBV4z!$4qTzJRGgvZm6YXQE z@Sbe99%+cKG#HalC(uADhWfkWs1Gy@&$IA)x+9LdK`Br&5%&z1sN7`w7;$>C6Ik=} z^O{CRMhrDGGlQ;Qzh078u-xY6g^%1p-uQGDZBBNTgrD;!LmRTXx@xGaSFidC%V}<2 z_*fAHH^4fX4q#R@kJ4 zva(`o$il(`T3cH~TU%RbXlSTp$occFVtzDmV!ST1+|_RK6)~&sx_I$o;Pv3agEED%6jlf; zKnh_6NJ_#Y@2G1D*3FwY%j6c82pr2|xb!)_4UhS-`Av!ABObnt=7<;zUKqNn=RKUJ6+dcyp;q zSh_h6Zx3ll{V{(1&5cv8fLZMfjX?3_@{N0I>cO)5h(r{upHDZT_g?PTM2>7fVDaQ) z7nTSgm6%z&G1w$*4u0&#QpkeEn~Rb&%L`bfNu)tuU$bybyt(1YrRJ_#`c3gWcM51R z-;Oq>W15U+mDPu<JZ0BUM#s-#>lXL-cmuMz<)gk=*H z4;-Uo2+KoQc!pr(-5f($0${N=8lq+td2}UBausC4Z`EXS?^!DxB zLY6=Bh}#TdNq{AKX1UpDC=bi%+k3J%7^1ILe#3I=qwSgHH7pq$3-XBb@ndFr0?UgH z1`8Jc8-+4pk-NgGS_b`sC1YcOk4CU~KBEj_nanI1Gb)575SGkcV7Ls1utHd}Ace3( zShWia?*v8f0_h_Si|5l7HSoB}{50^nXK8DvUg?aFWSRE6fi$7F;o@WQajKzn5Fv2SE#)g}KejB8!T=@7qP#Y80 zF0hyU?p!EM{{Rgbf+B$3Qy|$|)<>XGOHc%`8PMMqNW9kcQ&2lMC<0gl^i>5qPz(Am z=vCX07|>ckMbNht=u|c8N1%S!pcvqu2K`up4pxKy4Z0y55(8R8W@oGaTLn5DM12=D zCLI(5+%o8Epx-NCg39_B^t}wvmfVX1iA;fB%Y;j%t`9-q0e!}AHkJjFoCCe5fN5Uo zKcF9gRzY#U{dZg-`3}$)=ppEr3K%O&|IF+xZ!4gqe)}w~K<84Rv!MH+H$XpAzAD u4|I;Z*{lZ+qCWR(%#1n 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 Date: Sun, 6 Apr 2025 22:23:14 +0000 Subject: [PATCH 2/3] Added an exemple challenge in the UI (#4) Reviewed-on: https://gitea.clubconjure.com/Conjure/gather-and-defend/pulls/4 Reviewed-by: Ader_Alisma Co-authored-by: craftwill Co-committed-by: craftwill --- Assets/Art/Sprites/UI/challenges.meta | 8 + .../Art/Sprites/UI/challenges/emptyCircle.png | Bin 0 -> 642 bytes .../UI/challenges/emptyCircle.png.meta | 135 +++++++ .../Sprites/UI/challenges/nav_dot_empty.png | Bin 0 -> 426 bytes .../UI/challenges/nav_dot_empty.png.meta | 135 +++++++ .../Sprites/UI/challenges/nav_dot_full.png | Bin 0 -> 390 bytes .../UI/challenges/nav_dot_full.png.meta | 135 +++++++ .../challenges/questStepCompletedCircle.png | Bin 0 -> 1304 bytes .../questStepCompletedCircle.png.meta | 135 +++++++ Assets/Scenes/Game.unity | 366 +++++++++++++++++- 10 files changed, 913 insertions(+), 1 deletion(-) create mode 100644 Assets/Art/Sprites/UI/challenges.meta create mode 100644 Assets/Art/Sprites/UI/challenges/emptyCircle.png create mode 100644 Assets/Art/Sprites/UI/challenges/emptyCircle.png.meta create mode 100644 Assets/Art/Sprites/UI/challenges/nav_dot_empty.png create mode 100644 Assets/Art/Sprites/UI/challenges/nav_dot_empty.png.meta create mode 100644 Assets/Art/Sprites/UI/challenges/nav_dot_full.png create mode 100644 Assets/Art/Sprites/UI/challenges/nav_dot_full.png.meta create mode 100644 Assets/Art/Sprites/UI/challenges/questStepCompletedCircle.png create mode 100644 Assets/Art/Sprites/UI/challenges/questStepCompletedCircle.png.meta diff --git a/Assets/Art/Sprites/UI/challenges.meta b/Assets/Art/Sprites/UI/challenges.meta new file mode 100644 index 0000000..c900cea --- /dev/null +++ b/Assets/Art/Sprites/UI/challenges.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 11653f5349af9334ea58c48470649d56 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Art/Sprites/UI/challenges/emptyCircle.png b/Assets/Art/Sprites/UI/challenges/emptyCircle.png new file mode 100644 index 0000000000000000000000000000000000000000..59b013821d274a522cbf965947c7908733b2e975 GIT binary patch literal 642 zcmV-|0)737P)NklA6PF7Rz5Gv-6Mf)i~RuEsmu$Cq}^gE-Rb*wyrG5uY%F z@A!!w*p0n7EPjfTAGjmV#Gkdy11{hiwiWStJjHAA+b*;i$bh&OPGb~1i)X)Z7f;F# zG@GBp4e?uNUf?07S{SazATEhBm|4PYJa1(_gqx_P`+72cjNcnD&Qx(Rb)u4DbGRj~ zfxLSA#Hp?ojUVB`CXJ6)AZ`qqX>07oTVyHeXZ8g#J7wm&WZX)BPtdp*ubT$9NU7f+ngd-n zZy0D03xP~ccPaH}gQi8GF{yNt?V1*Mz+@3PC}yN?Fqrf+lK~S}lE(nfbjkco(wF=u z0zRe=WJblRq?7DTx|s=l3}WVaW@Yp{aaBrt9iT7i<;v!F@~h{R`Uc}ggAt8Iz-Fl= zosl9op8Wph^JTHdDtDkUT(**QHcBB=efFXv#w3+k^l)c^nh07*qoM6N<$g8p_fYybcN literal 0 HcmV?d00001 diff --git a/Assets/Art/Sprites/UI/challenges/emptyCircle.png.meta b/Assets/Art/Sprites/UI/challenges/emptyCircle.png.meta new file mode 100644 index 0000000..06ef5b0 --- /dev/null +++ b/Assets/Art/Sprites/UI/challenges/emptyCircle.png.meta @@ -0,0 +1,135 @@ +fileFormatVersion: 2 +guid: 920f0ff7518d3164baa4e6a50bc00bc8 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMasterTextureLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Server + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Art/Sprites/UI/challenges/nav_dot_empty.png b/Assets/Art/Sprites/UI/challenges/nav_dot_empty.png new file mode 100644 index 0000000000000000000000000000000000000000..c06673cc732345be5a73a89fe97eb3da14add5c9 GIT binary patch literal 426 zcmV;b0agBqP)FFffKlfS=_<}Y~dr` zVIE(K=nhHRsFPeu@-)dplJz9xiC9VUD#`sMr#rdZ6;+tVV?4w~)O|f;jPs@K7g+9A zbUewEB=5`4{uARQZ<5?iGEAZ_J72{;T>eKTU25FM9h_}{9L5dIXl`h)OqIN84C<16 z1t<3*(lUc{tGny+`=k04Ozs%~~_^i}+gBdu4=$ zBDU4G_5m-kq{l}+L}Qn?_=)WStBO6IC;6U+zYSxGg&rk2RdRQEZBWFXC0R_ekv|zF zd7b1zk~6JH64k^rQfu6Q9do#8$Nir)&Yv$wFzOz|q)=CIsF|Hq)$ literal 0 HcmV?d00001 diff --git a/Assets/Art/Sprites/UI/challenges/nav_dot_empty.png.meta b/Assets/Art/Sprites/UI/challenges/nav_dot_empty.png.meta new file mode 100644 index 0000000..51f1038 --- /dev/null +++ b/Assets/Art/Sprites/UI/challenges/nav_dot_empty.png.meta @@ -0,0 +1,135 @@ +fileFormatVersion: 2 +guid: 072393d321642c348a0739868a94d72f +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMasterTextureLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Server + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Art/Sprites/UI/challenges/nav_dot_full.png b/Assets/Art/Sprites/UI/challenges/nav_dot_full.png new file mode 100644 index 0000000000000000000000000000000000000000..113ecd9e27c002156bd1bd5fbeaa9bfebd80d921 GIT binary patch literal 390 zcmV;10eSw3P)R| zsN?)xobyb+OgiHi&f>eUs_2Fpuz);<1TvmiyiDY=W}!h2&V7~Z!wGeP4G89 z;{(26`&=?f`8r8nCi#@)IR9ra$@?VJXR>`!mE=W|uSt4WNDAE~i%BLgiXJ9eX?_@% zgCy^g+$o|e$?GILBS;EcNuDH8;TGm_Z&3NJ;W3_}UEww+n~IIf7@ikV+kn0pk`^Y4 zsE559%7O!=!XbX3djruCzN1^=7#q#4M&%d2;iNom6RS8GLDIz{exl#vtt4|v)-zmZ z_mX@}GSy@+&DwmD)m%MmM@g2GJS~zWYTG~Bc!UMK!HjyHz%JIYgf;c__rn)Og-#=w kQ17Ft_t78qKDt!lQw%Y|-{KH^LI3~&07*qoM6N<$f-7vVkN^Mx literal 0 HcmV?d00001 diff --git a/Assets/Art/Sprites/UI/challenges/nav_dot_full.png.meta b/Assets/Art/Sprites/UI/challenges/nav_dot_full.png.meta new file mode 100644 index 0000000..7e7ffd5 --- /dev/null +++ b/Assets/Art/Sprites/UI/challenges/nav_dot_full.png.meta @@ -0,0 +1,135 @@ +fileFormatVersion: 2 +guid: b85d4386d78389d459b39fb405298ce5 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMasterTextureLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Server + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Art/Sprites/UI/challenges/questStepCompletedCircle.png b/Assets/Art/Sprites/UI/challenges/questStepCompletedCircle.png new file mode 100644 index 0000000000000000000000000000000000000000..11c7ec483bdeed2bbac65ce51017940939cebeb2 GIT binary patch literal 1304 zcmV+z1?T#SP)i>3tQ0}s9sAm~F~3=%{W z$+=2_az zQ##%Qi>Zi}u;S}RK56?`<{rE=B3$0o#`n$vt{W!5%Vj2yvGA4!Sv4UJWs@^9&RA|7 z)iOj>yhu;p2siK2%V$oqf>&B>Ji6aU?d^M-d+^S$|YS-in}v&R@&c#YmQ0b1=bZs>vMkV_>SPR(QfXOjcC%lu_Fz1_@r&Qanz zw~QAfPw>pX7Ugg!um*4f%K-;a0Q3Vv;3UujG&!YpOa9>Z&A;)pP17-A!o|jxpVEed@CfB^%QYzP*y=p(<YXo)oo$Ax3_Y@ktAgz zQJ8p%nmVlpvWngZ4_@PGns;8JCs$LcWJ9o+k`Me!g9rE!Z~=yNw=@`lr-2or_?h7{ zlj~Cpa><``%K&kP4G9uYuH~&G0a_;nfGAh1LIgxjVJWU?F(rHaO2cMgH?Uv|({wBV zcKelv&Bc`LS&A#Fy$BHyqg<^55IlIZF3`DZoKXPGNJ$6fb$+E`C9n;Ur)jJ~2DbT? zhLsM=>&!?=fN@5-K<6qC-Yh|7V0DPVEbSYmI77|Kp&+UMc)A&`K2~gFf)$%y1Vcnc4_=YfkjNxXdhm)vMD^mfVp9bR@^y{4 zLdbLrbup>wl*o{A0%*B~y7&qqlSW#QuL}}|9oZNGxJk^=N7xNCk(y4KKt0gZN7#Ln zm;oRgBNBxjf=K>RJEi)b6`;lLlGZx_A8`Hwjn4xVL0^&zxxXZ^=>Iqn5bawSM}@;>*fGm zv|n=ax_pVAq6tzvUYKq Date: Sun, 6 Apr 2025 22:31:07 +0000 Subject: [PATCH 3/3] Fix placing multiple units on the same tile (#2) Reviewed-on: https://gitea.clubconjure.com/Conjure/gather-and-defend/pulls/2 Reviewed-by: Ader_Alisma --- Assets/Scripts/Drag&Drop/ObjectPlaceholder.cs | 18 ++++++++++++++---- Assets/Scripts/Drag&Drop/UnitPlaceholder.cs | 1 + .../Scripts/LevelManager/LevelManagerScript.cs | 1 + 3 files changed, 16 insertions(+), 4 deletions(-) diff --git a/Assets/Scripts/Drag&Drop/ObjectPlaceholder.cs b/Assets/Scripts/Drag&Drop/ObjectPlaceholder.cs index 781c2fe..bf95cb7 100644 --- a/Assets/Scripts/Drag&Drop/ObjectPlaceholder.cs +++ b/Assets/Scripts/Drag&Drop/ObjectPlaceholder.cs @@ -3,34 +3,44 @@ public class ObjectPlaceholder : UnitPlaceholder { public GameObject Prefab { get; set; } + public override void Place() { base.Place(); Prefab.Create(transform.position, parent : LevelManager.Instance.LevelTransform); } + public override bool CanBePlacedHere() { var objsOnPosition = LevelManager.Instance.GetAll(obj => obj.Position.IsContainedIn(transform.position)); var positionIsCollidable = objsOnPosition.Exists(obj => obj.IsCollidable); + // If an ally is on the tile, we can't place anything here + foreach (var item in objsOnPosition) + { + if (item is Ally) + { + return false; + } + } + var defaultUnitCost = GlobalConfig.Instance.Current.populationCostPerUnit; return !positionIsCollidable && LevelBoundCache.Contains(transform.position) && ResourceManager.Instance.EnoughFor(Rock, Wood, Food) && (Prefab.GetComponent() || ResourceManager.Instance.EnoughPopulationFor(defaultUnitCost)) - && IsFarmerAndAllowed(); + && IsHarvesterAndAllowed(); } - private bool IsFarmerAndAllowed() + private bool IsHarvesterAndAllowed() { Ally unit = Prefab.GetComponent(); - //Obtiens info correctement. + // Get info LevelTile pointedTile = LevelManager.Instance.Get(obj => obj.Position.IsContainedIn(transform.position)); return unit is not Harvester || (unit is Harvester && IsAllowedTile(pointedTile)); - //return true; } private bool IsAllowedTile(LevelTile pointedTile) diff --git a/Assets/Scripts/Drag&Drop/UnitPlaceholder.cs b/Assets/Scripts/Drag&Drop/UnitPlaceholder.cs index b553a1f..fbe2f12 100644 --- a/Assets/Scripts/Drag&Drop/UnitPlaceholder.cs +++ b/Assets/Scripts/Drag&Drop/UnitPlaceholder.cs @@ -16,5 +16,6 @@ public abstract class UnitPlaceholder : DraggablePlaceholder return base.CanBePlacedHere() && ResourceManager.Instance.EnoughFor(Rock, Wood, Food) && !LevelManager.Instance.Has(obj => obj.Position.IsContainedIn(transform.position)); } + public event System.Action WasPlaced; } \ No newline at end of file diff --git a/Assets/Scripts/LevelManager/LevelManagerScript.cs b/Assets/Scripts/LevelManager/LevelManagerScript.cs index e3f1139..e022c45 100644 --- a/Assets/Scripts/LevelManager/LevelManagerScript.cs +++ b/Assets/Scripts/LevelManager/LevelManagerScript.cs @@ -59,6 +59,7 @@ public class LevelManagerScript : SingletonBehaviour { //only when the level is loaded do we start updating updateAction = LevelManager.Instance.UpdateLevel; + LevelManager.Instance.LevelTransform = transform; } ///