From 59ff22f5ac6c8cb4c701968720ae5a9e719b8a7a Mon Sep 17 00:00:00 2001 From: adtpdn Date: Tue, 9 Dec 2025 20:57:33 +0800 Subject: [PATCH] feat: Add initial lobby and main scenes, along with various tile meshes and holographic textures. --- .../enhanced_gridmap/meshlibrary/default.tres | 120 +++++++++++++++++- {scenes => assets/models/meshes}/lobby.tscn | 0 assets/models/meshes/tiles.res | Bin 4197 -> 1937 bytes assets/models/tiles/tile_coin_holo.tres | 43 +++++++ assets/models/tiles/tile_diamond_holo.tres | 43 +++++++ assets/models/tiles/tile_heart.tres | 4 +- assets/models/tiles/tile_heart_holo.tres | 43 +++++++ assets/models/tiles/tile_star.tres | 9 +- assets/models/tiles/tile_star_holo.tres | 43 +++++++ assets/textures/tile_coin_holo.png.import | 13 +- assets/textures/tile_diamond_holo.png.import | 13 +- assets/textures/tile_heart_holo.png.import | 13 +- assets/textures/tile_star_holo.png.import | 13 +- project.godot | 2 +- scenes/main.tscn | 2 +- 15 files changed, 325 insertions(+), 36 deletions(-) rename {scenes => assets/models/meshes}/lobby.tscn (100%) create mode 100644 assets/models/tiles/tile_coin_holo.tres create mode 100644 assets/models/tiles/tile_diamond_holo.tres create mode 100644 assets/models/tiles/tile_heart_holo.tres create mode 100644 assets/models/tiles/tile_star_holo.tres diff --git a/addons/enhanced_gridmap/meshlibrary/default.tres b/addons/enhanced_gridmap/meshlibrary/default.tres index bc27de5..4d9f6e3 100644 --- a/addons/enhanced_gridmap/meshlibrary/default.tres +++ b/addons/enhanced_gridmap/meshlibrary/default.tres @@ -1,14 +1,100 @@ -[gd_resource type="MeshLibrary" load_steps=9 format=3 uid="uid://kcv6ans86ug7"] +[gd_resource type="MeshLibrary" load_steps=19 format=4 uid="uid://kcv6ans86ug7"] [ext_resource type="ArrayMesh" uid="uid://cr70nmk8djc1i" path="res://assets/models/meshes/tiles_armagedon_a3.res" id="1_ptqbt"] [ext_resource type="ArrayMesh" uid="uid://dspusnbkr74hg" path="res://assets/models/meshes/hover.res" id="2_p5epg"] [ext_resource type="ArrayMesh" uid="uid://dqguomxd16u0i" path="res://assets/models/meshes/start.res" id="3_8v5xv"] +[ext_resource type="ArrayMesh" uid="uid://brevl3ab0tdqe" path="res://assets/models/tiles/tile_heart_holo.tres" id="4_8v5xv"] [ext_resource type="ArrayMesh" uid="uid://b5ta7tcw0iscd" path="res://assets/models/tiles/tile_coin.tres" id="4_76xkl"] [ext_resource type="ArrayMesh" uid="uid://d4himvyb81in8" path="res://assets/models/meshes/non-walkable.res" id="4_sx8rm"] [ext_resource type="ArrayMesh" uid="uid://dr80txgr61irt" path="res://assets/models/tiles/tile_diamond.tres" id="5_j2mx0"] -[ext_resource type="ArrayMesh" uid="uid://36tgon3b60db" path="res://assets/models/tiles/tile_heart.tres" id="6_ptqbt"] +[ext_resource type="ArrayMesh" uid="uid://hwj23u2j561a" path="res://assets/models/tiles/tile_diamond_holo.tres" id="5_sx8rm"] +[ext_resource type="ArrayMesh" uid="uid://bqvqj3fhf5x51" path="res://assets/models/tiles/tile_star_holo.tres" id="6_r32il"] [ext_resource type="ArrayMesh" uid="uid://cv4bedhida00g" path="res://assets/models/tiles/tile_star.tres" id="7_p5epg"] +[sub_resource type="CompressedTexture2D" id="CompressedTexture2D_ghs0t"] +load_path = "res://.godot/imported/tile_coin_holo.png-6a443a1d36bcd3bf79f0210c252c3d26.s3tc.ctex" + +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_5pajh"] +resource_name = "boost" +transparency = 1 +cull_mode = 2 +albedo_color = Color(0.91, 0.91, 0.91, 0.45098) +albedo_texture = SubResource("CompressedTexture2D_ghs0t") + +[sub_resource type="ArrayMesh" id="ArrayMesh_ghs0t"] +_surfaces = [{ +"aabb": AABB(-0.282176, -0.000324821, -0.282176, 0.564351, 0.050792, 0.564351), +"format": 34896613377, +"index_count": 36, +"index_data": PackedByteArray("BwAEAAUABwAGAAQABQACAAMABQAEAAIAAAAEAAYAAAACAAQABQABAAcABQADAAEAAgABAAMAAgAAAAEAAQAGAAcAAQAAAAYA"), +"name": "boost", +"primitive": 3, +"uv_scale": Vector4(0, 0, 0, 0), +"vertex_count": 8, +"vertex_data": PackedByteArray("AAD/////AAAAAP7/AAAAAP///////wAA///+/wAAAAD//wAA//8AAP//AAAAAAAAAAAAAP//AAAAAAAAAAAAAA==") +}] +blend_shape_mode = 0 + +[sub_resource type="ArrayMesh" id="ArrayMesh_cg50n"] +resource_name = "tile_diamond" +_surfaces = [{ +"aabb": AABB(-0.282176, -0.000324821, -0.282176, 0.564351, 0.050792, 0.564351), +"attribute_data": PackedByteArray("sPss5W0hot47+9DosPv6720hXCE7+6/6sPvl75Heot6r9qfksPu0+pHeXCHM5KfkSvvl78X6sfqr9kDkSvu0+sX6tuTM5EDkSvss5c7ksfrU+tDoSvv6787ktuTU+q/6"), +"format": 34896613399, +"index_count": 36, +"index_data": PackedByteArray("FgANABAAFgATAA0AEQAIAAsAEQAOAAgAAAAMABIAAAAGAAwADwADABUADwAJAAMABwAEAAoABwABAAQABQAUABcABQACABQA"), +"material": SubResource("StandardMaterial3D_5pajh"), +"name": "tile_coin_holo", +"primitive": 3, +"uv_scale": Vector4(0, 0, 0, 0), +"vertex_count": 24, +"vertex_data": PackedByteArray("AAD//////78AAP//////vwAA/////6oqAAD+/wAAAAAAAP7/AAD/vwAA/v8AAKoq/////////7//////////v//////////////+/wAAAAD///7/AAD/v////v8AAP////8AAP///7///wAA////P///AAD///////8AAAAAAAD//wAAAAD/P///AAAAAP//AAAAAP///78AAAAA////PwAAAAD//6oqAAAAAAAAAAAAAAAAAAD/PwAAAAAAAKoq/////////39U1VTV/7//v////39U1VTV/////////3//v/9//7//v////3//v/9//////wAA/3//v/9//7//vwAA/3//v/9//////wAA/39U1VTV/7//vwAA/39U1VTV") +}] +blend_shape_mode = 0 +shadow_mesh = SubResource("ArrayMesh_ghs0t") + +[sub_resource type="CompressedTexture2D" id="CompressedTexture2D_5d0gc"] +load_path = "res://.godot/imported/tile_heart.png-deeef50755ca225f028608dfd16900e6.s3tc.ctex" + +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_uxput"] +resource_name = "boost" +transparency = 1 +cull_mode = 2 +albedo_color = Color(0.91, 0.91, 0.91, 0.45098) +albedo_texture = SubResource("CompressedTexture2D_5d0gc") + +[sub_resource type="ArrayMesh" id="ArrayMesh_r2l4m"] +_surfaces = [{ +"aabb": AABB(-0.282176, -0.000324821, -0.282176, 0.564351, 0.050792, 0.564351), +"format": 34896613377, +"index_count": 36, +"index_data": PackedByteArray("BwAEAAUABwAGAAQABQACAAMABQAEAAIAAAAEAAYAAAACAAQABQABAAcABQADAAEAAgABAAMAAgAAAAEAAQAGAAcAAQAAAAYA"), +"name": "boost", +"primitive": 3, +"uv_scale": Vector4(0, 0, 0, 0), +"vertex_count": 8, +"vertex_data": PackedByteArray("AAD/////AAAAAP7/AAAAAP///////wAA///+/wAAAAD//wAA//8AAP//AAAAAAAAAAAAAP//AAAAAAAAAAAAAA==") +}] +blend_shape_mode = 0 + +[sub_resource type="ArrayMesh" id="ArrayMesh_pgnbl"] +resource_name = "tile_heart" +_surfaces = [{ +"aabb": AABB(-0.282176, -0.000324821, -0.282176, 0.564351, 0.050792, 0.564351), +"attribute_data": PackedByteArray("sPss5W0hot47+9DosPv6720hXCE7+6/6sPvl75Heot6r9qfksPu0+pHeXCHM5KfkSvvl78X6sfqr9kDkSvu0+sX6tuTM5EDkSvss5c7ksfrU+tDoSvv6787ktuTU+q/6"), +"format": 34896613399, +"index_count": 36, +"index_data": PackedByteArray("FgANABAAFgATAA0AEQAIAAsAEQAOAAgAAAAMABIAAAAGAAwADwADABUADwAJAAMABwAEAAoABwABAAQABQAUABcABQACABQA"), +"material": SubResource("StandardMaterial3D_uxput"), +"name": "tile_heart_mat", +"primitive": 3, +"uv_scale": Vector4(0, 0, 0, 0), +"vertex_count": 24, +"vertex_data": PackedByteArray("AAD//////78AAP//////vwAA/////6oqAAD+/wAAAAAAAP7/AAD/vwAA/v8AAKoq/////////7//////////v//////////////+/wAAAAD///7/AAD/v////v8AAP////8AAP///7///wAA////P///AAD///////8AAAAAAAD//wAAAAD/P///AAAAAP//AAAAAP///78AAAAA////PwAAAAD//6oqAAAAAAAAAAAAAAAAAAD/PwAAAAAAAKoq/////////39U1VTV/7//v////39U1VTV/////////3//v/9//7//v////3//v/9//////wAA/3//v/9//7//vwAA/3//v/9//////wAA/39U1VTV/7//vwAA/39U1VTV") +}] +blend_shape_mode = 0 +shadow_mesh = SubResource("ArrayMesh_r2l4m") + [resource] item/0/name = "normal" item/0/mesh = ExtResource("1_ptqbt") @@ -58,7 +144,7 @@ item/6/shapes = [] item/6/navigation_mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) item/6/navigation_layers = 1 item/7/name = "tile_heart" -item/7/mesh = ExtResource("6_ptqbt") +item/7/mesh = SubResource("ArrayMesh_pgnbl") item/7/mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) item/7/mesh_cast_shadow = 1 item/7/shapes = [] @@ -85,3 +171,31 @@ item/10/mesh_cast_shadow = 1 item/10/shapes = [] item/10/navigation_mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) item/10/navigation_layers = 1 +item/11/name = "tile_heart_holo" +item/11/mesh = ExtResource("4_8v5xv") +item/11/mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) +item/11/mesh_cast_shadow = 1 +item/11/shapes = [] +item/11/navigation_mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) +item/11/navigation_layers = 1 +item/12/name = "tile_diamond_holo" +item/12/mesh = ExtResource("5_sx8rm") +item/12/mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) +item/12/mesh_cast_shadow = 1 +item/12/shapes = [] +item/12/navigation_mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) +item/12/navigation_layers = 1 +item/13/name = "tile_star_holo" +item/13/mesh = ExtResource("6_r32il") +item/13/mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) +item/13/mesh_cast_shadow = 1 +item/13/shapes = [] +item/13/navigation_mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) +item/13/navigation_layers = 1 +item/14/name = "tile_coin_holo" +item/14/mesh = SubResource("ArrayMesh_cg50n") +item/14/mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) +item/14/mesh_cast_shadow = 1 +item/14/shapes = [] +item/14/navigation_mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) +item/14/navigation_layers = 1 diff --git a/scenes/lobby.tscn b/assets/models/meshes/lobby.tscn similarity index 100% rename from scenes/lobby.tscn rename to assets/models/meshes/lobby.tscn diff --git a/assets/models/meshes/tiles.res b/assets/models/meshes/tiles.res index b877432728e55c2469cef3f334c70fe85e45be42..6897925d4d839def5c4441b0d8570a9fd12447e3 100644 GIT binary patch literal 1937 zcmV;C2X6RMQ$s@n000005C8yG5dZ*p1^@v50000ewJ-f(01s_502)T14MPBTk`5tD zQUI_hzm}+9!Bb?cFe^*{{{YpmsoiWN^6q4B+QLl;kz|t=zhG3gxMbCTzN7V^1XYF? zoCG|DkM-N%QnUcP0Kot;Zgciuz^$rgPQkR?gEQTF#BJczMXRfD!Dq!(Tvyl88Rv5& zZpxzn5PnT-z#F?@bS)WD**cEYRt9wA_E@W2H_L+6C1JH#?aJ+Dft#h3!&>7i#_d%z zbCu*s{dYO(Nv5k+xwQWic&)3s9p{BQZsvhoKSQ|<_@P$(1%wN#PL z8;vej9bLImgS4BgWz7zvjWTJY6KyXxbu+ll6@&x*mRd|(Y~E5`=cFv~liLk53=-O4 zeMzQWDR*0RtJGE@)sio{?KBvz1|MyVOILFma|NSq#@K%Z3Fh`=%UU;IrncG5jFt;Y zo3v+zGC@o4d~`WJ2|I%{gEa1|1mb3N%8+PtlFnYr+N2Dl20LzyS=`!XjZaTFLf_hf-ikb1J{5SH- zG^TQd4XO;P5mcLNT@Xk_^H6#VY3528^S15<*}JV{el$xzt4-LCsZI zRckp?!will)oO$sA8fh`TEeNZ4Om^pBWTHOX6tSyz5ahRW}5|cClw>4-fHt^-pqN~Q8Hrs zQ94ozVj^PtVIoorQabXV2KPom+HC*^iHsYkQ_d+T=XB%r-}p}_4Lx#la!xg;zvkqb z(7+`mBjY5T&wXAkusr1e{yED(2k?}CzH*kc+{5yfl&gH@pU+k9`N}<4@u;XI42iZ8 zE?i#JypUiB>A|AN5FI2KkHF~^<#a0XU&6Py8o(k*wF!U8@U|lSr=AoNOqevOxtcf$ z@OwtwFXr`3jqv~?B=e!eV;Sqi%!~&bncbz~ibiI}LxFOrajimVWJW|pk|Zf~fds~2 z6gq}>5NUWc@70x7N|Bm%gFiC9xD5!GVh z2=ZA4__)&}T##)$1;YplM*!~dr+rmAm{|#d0+MMBz+Lj}3Y34S9j^RCJE#B{IN3(jG=^1ob1z+WDxq`50U@MCu6hXkps6b=)_OH17Bemrk0E`P zl6`Usp2!KgfsR|d|B;1MeVaRBK1GZNs>~~52+kk4s9I6Azhlf_v8%-MLG?Gn8{#nz zvM#-gJ=$}d2_{9tqBp%TF6Ij5yJwTzH-^iM87+Qok`AeHQT^Dtg~MQrywYRAVnhE+ zVS)=|+vz%NuUnH61Ud&T7P!c;^uPOn#Ljx6C-C$dYrR5Dh}>aJLtK$9mD8o8b&zzz zk}$+3lR)q8zvPm!Q&=iIoahCyHcHHP#z2-8&`N=7OS8k$^SA)t_JKQNO`#vb3zoJJ2wk6$+Lm{w5)=G!HgCH5=oE? zhv^SA;*|#77I+Mjqs=8>^(R+1WMo{i%bG!kc3uOf;TUwJRUhJ?)kb-XbQWMp?*xo$ zh=WX~G`h^0xSKJ0TByZ1P12{?)o*9EZYHbA|2pBXm)DHs+W{_;dh9Ik@7Wxi+9V8tx9#V zBBpOX=A0?uBenUV2-y(eHt^Ezrk;Nzl6Zs|&368#ZS*fXcr}V_rqEZ@dY&+S-{~@O zjPO_$q9=#bU~!YLa(TAp;Q=3pOM$;24%w zO_A9Uh+GzkG80%sWC|QMj$j}vYSPq^IUUUSgMOR*C}F>)4st?%=b6hm&a9oKoJljR z{*Y?BO^p0D2`QXY1TdqvGU^u~);gTm`4=nk*+B&kp)sd+Kh72$@ z4xvjC{Ocu1Zs0H(tX literal 4197 zcmcgw&5smC6mMWz5D->C@FP*y7-NhE9B&e{7&S3O5?wr!lr`PeGbKG;ZFTkTju*Um zmw$l^2_Arika$o|#0w!DFy1%~h8s5zvx(#Tz3S@eon5oWgSDxydaqu+_v(FB%`Tr` z{wS*39F6Gn)b~;U&{{b>r^-IfecMID)8BW!^Zjd|ycux+W~_+l1?pCnrn0dTnTcg4 zoDpTLaupqHujO)}q6Nm}iL#=w+F0#|tW&PmoG4^jM$Zz3vobFWX;mH%qy2>FW-3p_ zz$A*P<0{KM1b&GsTwf$su6i7#=09~`WnU&b?|BjkNpzZ4rJC+33q_2j^_XK! zQc4mnKOQgpX z9nDasnOPmkf|E#^W)sqeK#pf2(^SPSkOXm1l}N}_uqU%M!Ox9Hamv0zR*;Yl+^1M? zSCokWtWbhi|taxFT(VJ*#cA)L&6lyO{LrrUU_tG$2NOw+ZX_g2hmpFoGQ>XwyF zsX$5Rs0xKZKP2`ltzdBTgFZ3{B7k(PLF=W$fCik9yET`#_nY4J=S( zTeLO02}GoJLKRO>Q=7}QM-60okyWcnTGxrcKzL)dA~HFoGJ^}GrmSmt3sVOlj$N(1 zi#VdHfg}WE(zH~L831&a3YW~Ka9nC zq6M-cK_RWvR6xlT6c8oXm%^GgO-VNtsZ6F>2cyj_(MdTo{S`^qsVGQ^OwgO8r#Omm z#|l%qOy^_>=!T#T`@8^ts~~7+&{Q-6hHtw7)Vt)`ba@Z$E@KKI$NV|%P-Y=f^l|Ax ztnk51J}8vH8>{4-TA<3wm>^_Xn}#(*a>P~X%s@!l?XvA_HxdW`GQ_KJkvc!>-amQr zJeegSf1Z;RCt7CjeJqAut2@!ph*WAYW*}}Jnd0lN>7>yy_=?)rG?jGymFN#>MGeQ= zER5fmOduYcpnm-jOr(?1s|25+9@=CQMWMHGzycpd zfAJTPr}Hp)GGUXigU36xD@;MrJvIXYIF`(K(<2+IAruiQF&Qsq* z^Ld86rM!rkQyqM84M99Q|5m_c>Ss$3$k4X-C+I_bAcUMo3BV_&k|9o=>O`~d#!<0t z#@)yNv%60~0dA8e??OM4iyMwFrSS%jx5hWt#{`d`-dMjizWnIQqru{Z#mkQ_EDjd0JUYF8ef)6z;K{@B_3`QT z2Tvd#{eR9TWXK%n#$L+NeU#YyX*@t?I!NC`G%ipbKTO{vG#;hjl*j0MoJJ^%y7N!j h#6Jb=g3ZMjbrLO{bemLjL<+xP8)7@8-ZK4z;csc0