From 4fec3236396fb1f519bb8e912c7d3a6b679b745c Mon Sep 17 00:00:00 2001 From: denizk0461 Date: Tue, 8 Jul 2025 11:32:52 +0200 Subject: [PATCH] added 3d card --- cards/playing_card.gd | 12 +++++++++ cards/playing_card.gd.uid | 1 + cards/playing_card.glb | Bin 0 -> 5548 bytes cards/playing_card.glb.import | 37 ++++++++++++++++++++++++++ cards/playing_card.tscn | 30 +++++++++++++++++++++ cards/textures/back_test.webp | Bin 0 -> 2396 bytes cards/textures/back_test.webp.import | 35 ++++++++++++++++++++++++ cards/textures/front_test.webp | Bin 0 -> 3900 bytes cards/textures/front_test.webp.import | 35 ++++++++++++++++++++++++ game.tscn | 26 +++++++++++++++++- 10 files changed, 175 insertions(+), 1 deletion(-) create mode 100644 cards/playing_card.gd create mode 100644 cards/playing_card.gd.uid create mode 100644 cards/playing_card.glb create mode 100644 cards/playing_card.glb.import create mode 100644 cards/playing_card.tscn create mode 100644 cards/textures/back_test.webp create mode 100644 cards/textures/back_test.webp.import create mode 100644 cards/textures/front_test.webp create mode 100644 cards/textures/front_test.webp.import diff --git a/cards/playing_card.gd b/cards/playing_card.gd new file mode 100644 index 0000000..aad099c --- /dev/null +++ b/cards/playing_card.gd @@ -0,0 +1,12 @@ +class_name PlayingCard +extends StaticBody3D + +@export var card_mesh: MeshInstance3D +@export var front_texture: Texture +var card_details: Card + +func _ready() -> void: + set_front_texture(front_texture) + +func set_front_texture(texture: Texture) -> void: + card_mesh.get_surface_override_material(0).albedo_texture = front_texture diff --git a/cards/playing_card.gd.uid b/cards/playing_card.gd.uid new file mode 100644 index 0000000..21307ca --- /dev/null +++ b/cards/playing_card.gd.uid @@ -0,0 +1 @@ +uid://c2odugkbbppxn diff --git a/cards/playing_card.glb b/cards/playing_card.glb new file mode 100644 index 0000000000000000000000000000000000000000..8aaf9e9f0a57cf35575103bca10ce190d901bccd GIT binary patch literal 5548 zcmdT|U2GIp6uyNP=$|bJ$Un7r{+s zk>HCjiY6H4!Gvgx@kP``NW=I78a2^q0zROT2MLMB7{imk_?^3Vy3=m|ff#l&_uRR2 ze((A2Inxdd^|UWwjD56%u@CAQd$K#;S&$Ohteul$1!=%e+fE{vaio~^)S#0|XR?6- zhy->H+37yp33NOf4;;}$dMF%`g3=M&$)+-CFsmV18VO3-Bos(7Sm zb@O*YDV^!F>4m(1WPkaoAPw8uK`tuz+w#4(L@dLJob99%LnUo}nSAe%-JR;Q`=nUT z$=lFTGSCixbMWeLud~O_C5DDl$*xR(U@&cGAzF}n6Ir`0Gn8@K6G%;gOMGL7Lj*of!w4I(L^1)sRh74a-qe3&Uqwmkn9d z!g5$PR7I0@S_>cJr<;=oo*lcTm=ctFc0Jn`k9R$OK$c?aNKi_p z`%*~~(aMm73}tvKg?do(6o$tujQABs{R)-o6dGlP=6Hn)94Wh~z<=-9koWwkC6aJI zn{i6#s5jr=Z##Qa_6t1lWM=qqCT*v4J;x5?w1$D5pp?wyaiU@hro)M&II~JfiJGQq z7*RbE(KR^|2`V8&qa{@js~RvFH3)nvKUPtIQqv9D(883S6e`8OZIkH0+GI);=rs*f z2`gq;kAw-oIqsdbcUPN+dV@3Vivlsv6vcGn>RiOt3hO{crFFi@_fUs=VZFO;$L<|n z6$${BN(JR4X#YnNwoQ@B>GlywpDB*%#CgP1W0AI@EMA!goTWUZn< z)pIR+-5K}84VSI&F|WFI(ycpq)4Gaz=(pG1pP%{3`k~C@5|5B|NmlT<#3N)~l7&u- zbjsH_zeTnl#vJ?>=?q~Gev529Qs!}qN65M)D|lSu5wb4H;?EE9D_Y)+vHNG9-nwAB z=l8AK@3-c*zTC?GR$FeKe6{7T+gn=cUEiidR*A1@(faw<@)q&M^by2dv`B7C{s52v z#<_w;a&KJBSfr=4PWw@`NDr-(9PyE!2KE43%o=dluqw8M)nTk-3vt!4dW`jK0j_#h zixH3k-vg`(V-s71tBEyYY-H8A8X;YcyNY=@Lf%F_d?BBs9*&T=Q4e3pr^iD%9~H8c z^Ko+zQ^fCKjr2f2#}qI~{2Xh*=D4|sFW`}6IqrZ{kB6}A=^-q8JcMQPldwrx_WYdJ zS@GhU&$;p9x>slD#CIcZ=3EWOA?PJMb1V&ivfsVH7@vc>c;<7#;}SN7?4^lw!OwYw z9zG{Ko_?a9UH_bHdbWsqJ_sIeOX%_R6AzyYS~r$=KyZoh){ zt$Pny^q$WBw}O5J>X?r8HRy$P$N2j%I^SzO&EGR7_;iwMPCeI3&j(Z2TRsLg&MvV& z18rzuZ=DBy>3Ea%Dd^?imDWGOYVHS7@{8z;@PjD%b@pAtP|^Aq&qUAQc^mwD8}uUl zcng&LN|yMv65nGw(a+%@QSyT*`Sl9;$d41C8ZwW?!l zF|K8sP??so^%&Qql2zmV8jNdD%NAo?jd3-q*Ak2?F|I^CtOe&rj2lrO8!&FbxB+#p z5#u_H>rfX1u(A~6QYPVA%9=4Yv(31gVRbX^O|V*pO1cd9a$E~hNtfeZfs6iohJT*1 z2iZfo8AgVBDryDw%(0p?pZYo1nt8YCB!UpXqU+6&_xot>@2N%YSJ6{XPtj9poq8(q zQBQrI_w=Ghu~Tmz6g~Zy2|Zo#S+q`a#7BCnd1oaIH}alKotJtr^Uh$ ZO}&^pGWBNa<~0~=IA&|$K?Cku_8+B9k6r)( literal 0 HcmV?d00001 diff --git a/cards/playing_card.glb.import b/cards/playing_card.glb.import new file mode 100644 index 0000000..c7112f0 --- /dev/null +++ b/cards/playing_card.glb.import @@ -0,0 +1,37 @@ +[remap] + +importer="scene" +importer_version=1 +type="PackedScene" +uid="uid://dxiv47be5dsll" +path="res://.godot/imported/playing_card.glb-140e841cc7044d46be5ca25f58dcd6a3.scn" + +[deps] + +source_file="res://cards/playing_card.glb" +dest_files=["res://.godot/imported/playing_card.glb-140e841cc7044d46be5ca25f58dcd6a3.scn"] + +[params] + +nodes/root_type="" +nodes/root_name="" +nodes/apply_root_scale=true +nodes/root_scale=1.0 +nodes/import_as_skeleton_bones=false +nodes/use_node_type_suffixes=true +meshes/ensure_tangents=true +meshes/generate_lods=true +meshes/create_shadow_meshes=true +meshes/light_baking=1 +meshes/lightmap_texel_size=0.2 +meshes/force_disable_compression=false +skins/use_named_skins=true +animation/import=true +animation/fps=30 +animation/trimming=false +animation/remove_immutable_tracks=true +animation/import_rest_as_RESET=false +import_script/path="" +_subresources={} +gltf/naming_version=1 +gltf/embedded_image_handling=1 diff --git a/cards/playing_card.tscn b/cards/playing_card.tscn new file mode 100644 index 0000000..462d43a --- /dev/null +++ b/cards/playing_card.tscn @@ -0,0 +1,30 @@ +[gd_scene load_steps=8 format=3 uid="uid://b55xpcxk7g5ph"] + +[ext_resource type="Script" uid="uid://c2odugkbbppxn" path="res://cards/playing_card.gd" id="1_t6o5d"] +[ext_resource type="PackedScene" uid="uid://dxiv47be5dsll" path="res://cards/playing_card.glb" id="2_enav7"] +[ext_resource type="Texture2D" uid="uid://i0wpcxpk7g2c" path="res://cards/textures/front_test.webp" id="3_jeoeb"] +[ext_resource type="Texture2D" uid="uid://cih4y1hskimrs" path="res://cards/textures/back_test.webp" id="4_exvuq"] + +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_nwj5s"] +resource_local_to_scene = true + +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_hel13"] +albedo_color = Color(0, 0, 0, 1) + +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_auvip"] +albedo_texture = ExtResource("4_exvuq") + +[node name="PlayingCard" type="StaticBody3D" node_paths=PackedStringArray("card_mesh")] +transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 0, 0, 0) +script = ExtResource("1_t6o5d") +card_mesh = NodePath("PlayingCard/Cube") +front_texture = ExtResource("3_jeoeb") + +[node name="PlayingCard" parent="." instance=ExtResource("2_enav7")] + +[node name="Cube" parent="PlayingCard" index="0"] +surface_material_override/0 = SubResource("StandardMaterial3D_nwj5s") +surface_material_override/1 = SubResource("StandardMaterial3D_hel13") +surface_material_override/2 = SubResource("StandardMaterial3D_auvip") + +[editable path="PlayingCard"] diff --git a/cards/textures/back_test.webp b/cards/textures/back_test.webp new file mode 100644 index 0000000000000000000000000000000000000000..193e8dd420cb7052bf325740be278142c5cdcfde GIT binary patch literal 2396 zcma)8c{G&kAAb$9ll_ie%Lx||$v!oXmtp3nQdpU-#sobx{CwKO&~v|`_RVH3x7-J?qJ$aF}>SHYGxUZCV^Lida#V z?Ca#Bd4v z@D`f(f)>5Yqo3X3E0BFzva6+ze&IJ`5TTM~<=4;f?})~*_h8&MibmeC-QXE+S&{hE za*EzX_u9!`WZ5*UG@A{75B?4MgZy;z&Q%cq-4_!++@G(XQTS~Rus>cR{5n#uX@Pw! zIF+EUvK-1plgXlf+t(kSw>OP=Ds1|t5*4agYH>O$2Ys@b>EVlLDJ zb=h1Z^8p=eITejws@ta%(QyIo7k5(M<;!^QcRMao!i4sQ zS*(`5b*Z5^+s|I$VFqMp^=R?nk3)4=Q*hMveIqBS%GEllDTl?n1y`S_L%#2;9fw8O z_k7bK{^GL4X=Z+&GznvQL2A*U5bL|Fp`wT_Aq6>5qsu2Rm*2pM2sG{3NbA zHsePwQU1tPcNSjUl@;|;R3Ou(`)Z#~Ok4*5I=GWt4$@wlf%MwH$U`b``KlOLV3>#-Zw&JT9XS&Br9vnfKZ?U9`Mk2t_gz|jid-@d$cOuq?7r3J0ae^7_jfpzP6@N>2vw1!8HN$m!6H(he6b08a ziJot?Ib_y9raD+GQqAA`O|sq@dHXGI6j6@%;+RYOupYux5&-sRbiJWqJ4ZKl#@cU2 zg>I)uODT?VO4#s)x8|?C#|$6$HnR?tesx43IDN?TzQD=8?TF>VtNQO|73>$TPn|`8 zfhJVsv~3n4chk!a#l6bKP0ii75?uF)*kgD? zlIr}(^-${~=k`*+(4Jvc&HzqwVF;$V!z0isjr#Lvttm^!@+ns>hXOgXa$+ctzlnjt z@)P%K-Z7bR4RWeonTY07nNJ<9(iKgL-Pq3QrI}^l<%($S@RJ#!)KBn?C%iVqp|3qs zm6TfvzzS48^i|d>CvyJ_=RrdsXR;+ybpYyZF-!ekTSYjzeY}D#7;@2 z>bS4^4&irQL7_I&(CX`AjpvK+&CB)qf}ZdEfvH&d>cgO89dMiKXWxBA)yGc5y>|T{ zJh3VWU@9tc|4X-tNHxNI)n;A8+s!C?iaHM`3h^~hAY7lr5!2hAA{6$oa{U&sG!Sb3 zuCW6j)ml5lC&LAO%I;>&`U#rU!gza=@63&UD~fai;*RFN%75V!yqQ{Y>MEjf$d!(D z*KTEX!AWI>^Os-ysxo{zMRg^6@d_)hw_NyU;Du%Bsh}V^aZ%mn1cpyPcG9G_?v!P7 zlEz5n#~Ka3qH}>E3g;EA+v3qOn4;%W+2H0@q}QtRd#1AJ^Q6fscyl||9zM5D{?Kh` zm+qm9B})*RZzzxn3Na)p|u+Z);BK!l0m#6F75`EIFiPXv6yk zwDkNTuZ8yAakd;oOu{R9FKESH`IKX0Bh71aKb1WvjYK~)P#$Y*{8eij(M*))Ja-Rf zNvJ(lJ)>cKvy2+Hi)2PUXurj)K(Fz7H2F5qC@I)U6fS>9zB0%GPGID6qrqChPcgc- z9DTTLgx~TYQllbTMgImjR{$QIt?RQSOo_g$z(?`EyG)O=dS=}%eUR_kfMKyAVj6D#158~l0TjDB8@_@VVap5iA@A0bw@yj6okuVWs^so@b-BrkvS}L?;-YJ$I8I%j3b&+09*P71XVI zEht`egZ?_1wQ$&wN8DH%8x!fd&U}08GQ6_@E1_5O-<1de&Pgp`X_*>RD=pnR*cls+KonzRx&6P6BLE)*BftQi?1cye^ZsrFVbMeE0%4g$4h+J|3^3p*v}2*b zMKkU510lS(u0XMu=fB&pc*(#@>a3!&qB_6~0Ld%>6U0zDqoTw>`d?)j=^&Fk kBxgLtGEh0@L)-vq_7)7v58KaRsi6*`!)(e*N_%hr1ws2+8~^|S literal 0 HcmV?d00001 diff --git a/cards/textures/back_test.webp.import b/cards/textures/back_test.webp.import new file mode 100644 index 0000000..81bd283 --- /dev/null +++ b/cards/textures/back_test.webp.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cih4y1hskimrs" +path.s3tc="res://.godot/imported/back_test.webp-f0536195b066a620ab334e50205f1339.s3tc.ctex" +metadata={ +"imported_formats": ["s3tc_bptc"], +"vram_texture": true +} + +[deps] + +source_file="res://cards/textures/back_test.webp" +dest_files=["res://.godot/imported/back_test.webp-f0536195b066a620ab334e50205f1339.s3tc.ctex"] + +[params] + +compress/mode=2 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=true +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=0 diff --git a/cards/textures/front_test.webp b/cards/textures/front_test.webp new file mode 100644 index 0000000000000000000000000000000000000000..ff1cdb932d2d71d0b24fc9d920597d81fef0aa08 GIT binary patch literal 3900 zcmchaWmJ@1*T-i_1(A?$0ZFA(rJ12iB%~2VN|2IfNC%K+2pJesIuveVKuJkqXpk-` zMRMq2<{iC#*8BPS^6a(t+5ffAKELzfzpk~e^GFj6mZSs#OhGCJCI+%*WB>r*8b0lS z06qc$zQZYd69D+&3djKpJ_YgM@oTC_@okHTr1EWA*jx(8o_a0&GoG9F7IZ3{v4a(i4|X@(#Xra89f}>+B>E}<({`Sd zCMTu^1tRxv)Y$Vsj0>t*TNn;~9>}Ep-G1GMeK&|u=-U7#H;3RE9>rwcWAF#pk_#9( z5s&EW9cY!GKO-^y2>Wl~F5>3Ftm>mhh6ZfnC}|^h`Z9Xu&=cUSm23xh5Dy@F6{9kF zy89ZXE{qztz4=~)=QB!trkba^{|mCB^=0e%wpD%p3khQ?JFwmVYwg!17@T)J(3XX zNgc+u7F(`O$uoUvYLwY$VN`I@^-`QDQSHleoSVN*d3MhJz$v*Ej+2aelaG)<13GqY z0_%|NCg$ii@k1`L&3$~GW$N-X&W@>497YjwhpYUkeM1Gtcvq+RonWz$Z*?g_Vs396 zI+dNmB=lS9;^-RuG<@j{9KLo6lPpRc*DJr;Em{Yt0IsT*tU0{9y7u#zVT6iu0M#(BiY$5t{_K zpn7JmHR`g6%6B$A#cMlXeY$+9r@Vri@7w)HAg#r>X^q~`TpjM9y@#+iu(A%j%b6=l z?*VV}R1eRZXwg~b{cN?;aZ@L9jux#iz|+kE3NH4`oxG^!ip%+R9XbK}HQbE{Es2ID zfp>c{JE}mL8vnq=j`uja(?oxwW>!W=ZIr&VFRPOHUff2&B*ZQ5b3!{~LZ)1oR|?p5 zuK4Fh{5H2FI|JRHl$oo4Omm}cvLlzm3U5+=lfjQ#1LLRcD2_*HYlB3NXZq z54%R#R~^{+wZ?qXCr+a4O+fFLsc0EH-7iS!AIdPQEPN=fw2QK@F!0h1Tc*p8b@weE zpcrbjTOBG}@_c{0-6an^CJiwMtjD0%YT~|%ju^4I(?UAFCv3z~gKgf6}bNJeKfcOO56y^=qHticidxp0dMgcTQHoM#ICGr*)9i z(T_C%JnKOmXdd z*kZu&vYTtmKBwJO+T!aJ5m~+5<691wZ^G&~w;oORev5DHl9=zwtXD z$4Zkm$9~CZN?*e@Db4N!G!1mFatemqiWQ8madv`X2bH(8Bn=jW{eMIt8PS=kW_i_R z$}^l9SJ}xj~6E_FtVg@FVM0;0a%1%6}yRaD# zQ1FK@>oyKo*Y7rqN0u>o%ACn%|$IwF&)H#p;FF zV`~vq%=$7&;yXx%x(fJM9AS5J1cMS>t$u)Y(BT*y*gro|u}pQ!xn8MH&fg$bIdSIw zVhzxq@I+Ir;lk{8xMaky#!#VxyWLJIA0I%kUM`@v*bC_?Y1_WV8)CzSUj0O0pkaGb zqH;rib%MfQQ|FjCxEP%4C%V^B2ZB}Doov})(j(jsfxy<3KxX`~q`M$B*?|i#sV56HX$7o;pB8?65nUQ3VYGBzVgF+!V^-4Tcwq$H1=Lz=au76l z%R5Bn>L@?ZpQt=CH}W<(Y{gGR&I%;qmT0B@MvN+AVR!>(@o^-Lo};M5zYuZxm^MX| zAc_lEmvC&d+3JRJb5vHhdRNsucUOj%U^bVuYi`(gID{`!F5{(q`*-rK#+G4hdySS* z%|FaR3|tm*9o<%2kyi3%e$oJEmcpZiw-9(n-V>K}a>};u&m{XDev?Oc?=$7>ek#>L zPLSP_$-0$ubv!6dHsE7CbDhl-8g3(a(h~A^PE7F2u2SCjg&O^$8?A5 zHoGSL#JM+#JY(AOXR%+ipWOCVlH$e|E)BP)3piPoHMbYb1=YTlMsQW?tqD%#&A?l@ z;lefVtm_MmM#h4fu>&ECGr z3J}gYnXWhPJ!f>JB(3>w$p(LxC>F4}H6KlDCdE${#5Ur-sq&1;^9T|7J@-DkYBje9 z$$t8p;?ZRe(y367kbG4ux8oO8(>Xut&^Uv(j;yFbBaLUVOmV2ida$LEQMMtAtz_@! zw7t{d3p(?)u>v2m`3y%}+Xs_z@eR;2)h_3)u}it&Z?xILAmW(mlEZ*(AxwthR$Pfb ztF1mJb}Pp4o*R*EW_cavdUT^w>GAaX{FzdWGR>r3Zo#{o$uovSqK{{Ik0Vo)9(F)6 ztaaP-A!PomT2HaUl|QP&KgId>IaE-WZEs78%IZcFf%+gn=hYi^!ce7CB&W!A2ks(O z^1TDIKn_c^_=tzucV_rViI&B9=LmWSl{Xf=oh@(2bal0n(JkJI zozFe!?TUKGL0aCWe|%EkLjGlD%EwTVvDXC2 zOrozcK-w043Bx{RznBdZq2|Ez5)O^Qevy0y-Mxi-5w#3_2F59>BBN)Lu6%)%&-7R` zA89E4U@EEpCaTw57i!8AbJ9~^rAD)0={<8Y7!^i{)5L*Zjfd_pc+<5E9mR4DD83PT zNrC%5{LE#_kzt5UCt^)yPa)wNK<6s{JAt96U+RwER-tcxt8z`DWk;h558c|7OC((x zX?)BpJtzmI{lP2Q)TKzjfcF3ih0?STvS2mi>!lJjZ)wv%@x1Z4 z(KiQ%b@B{PGH&fHpSCTK0rd^B{rci1^x6%lLS-0D;c$HA-)+SvVBkAi>@})L z>4N@&EL#83!b-Ek7>}6EcIQLzn=02%z)qQcgc0$@48V6zDWrW$CQ5K-aa#DTN8n_S z(!mG9v@fP#c0A+$dN|IX!UDe%Kdox(+vP2v>=)VIBDGVGUz>JRIH1F2d$r-s} z9do4JB}CT0S{7ZJKo%J?Z4jiW;JxLre%FyOFDisyAqoTmJ!eRFZV?c-J`miPSXiE^ z7`tJ=1;J&Mxh}(peCrdswCbl_+R2nYB%i(`KMQ!Rmbd&)&-W@RtsUr)rSh@7gP()$#9CDV@4Lf2qXwA=5xx zR@1f}d)~My&y4C6v-;&^1?gYAPEozcYo&>@SD^CnZ8{qxf~?F4pKIqyc(b%@Cd!uR z95>3+@hzr*+}B)eGjwpOU+4Ca)YzdlAwqB)Gz5ZUnDU>OtEliMNo3P8#Iqv~KR@oQ zuKudU7xtmJDdc(0RN$9B%)5gsC?&Yxk;+*a^QwQA^1!6bQB`R4m%2zX%!Zs~M{Q(! z@fD)_{*r&&Cupxv4=CXFuF8hU?%0EVFT!NYnbzdl;T)kn)@Zw=begtrC>GD#yTQwc z;un*`pA?LE7jQn4XxA=a0IAP2fh?=Ge}6{ttDWzd@SOxsJv|B5BHl@S17xNNp2Am6 zO~F5}N)iAKkPraGcYY@`koZqE!E2Vk+8VF<|IQHLwHS~9K!vXk_;i92{h5D_*T2IS zpT9Z(sRnjVZr;LrpvRn2!eYX*0Ac_ji4;JDpAZ$75C!J_|IGw>|B{~Kj}!jY{P^pL d|LP|EncqQx=M(%PJd%^etG_fcQPJPK{|86`YL);1 literal 0 HcmV?d00001 diff --git a/cards/textures/front_test.webp.import b/cards/textures/front_test.webp.import new file mode 100644 index 0000000..4968099 --- /dev/null +++ b/cards/textures/front_test.webp.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://i0wpcxpk7g2c" +path.s3tc="res://.godot/imported/front_test.webp-a2de17f4a63d651cf42c323e0081216f.s3tc.ctex" +metadata={ +"imported_formats": ["s3tc_bptc"], +"vram_texture": true +} + +[deps] + +source_file="res://cards/textures/front_test.webp" +dest_files=["res://.godot/imported/front_test.webp-a2de17f4a63d651cf42c323e0081216f.s3tc.ctex"] + +[params] + +compress/mode=2 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=true +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=0 diff --git a/game.tscn b/game.tscn index 0752c6f..84603ce 100644 --- a/game.tscn +++ b/game.tscn @@ -1,13 +1,19 @@ -[gd_scene load_steps=5 format=3 uid="uid://gqrdpjslr4np"] +[gd_scene load_steps=7 format=3 uid="uid://gqrdpjslr4np"] [ext_resource type="Script" uid="uid://p5gvnyhjqe6o" path="res://components/web_client_tcp.gd" id="1_feb5d"] [ext_resource type="Script" uid="uid://c0cqkatyo4uj1" path="res://components/client_interface.gd" id="2_e2o6t"] [ext_resource type="Script" uid="uid://utt8atbh7b2a" path="res://game_client.gd" id="3_feb5d"] +[ext_resource type="PackedScene" uid="uid://b55xpcxk7g5ph" path="res://cards/playing_card.tscn" id="4_fc0e3"] [sub_resource type="SystemFont" id="SystemFont_80nbo"] font_names = PackedStringArray("IBM Plex Mono") font_weight = 500 +[sub_resource type="Environment" id="Environment_fc0e3"] +ambient_light_source = 2 +ambient_light_color = Color(1, 1, 1, 1) +ambient_light_energy = 0.15 + [node name="Game" type="Node"] [node name="WebClientTCP" type="Node" parent="."] @@ -155,6 +161,24 @@ grow_horizontal = 2 grow_vertical = 2 text = "Start Game!" +[node name="Node3D" type="Node3D" parent="."] + +[node name="Camera3D" type="Camera3D" parent="Node3D"] +transform = Transform3D(1, 0, 0, 0, 0.997882, 0.0650548, 0, -0.0650548, 0.997882, 0, 0.171315, 1.65638) + +[node name="Label3D" type="Label3D" parent="Node3D"] +billboard = 1 +text = "Magician Online!" + +[node name="PlayingCard" parent="Node3D" instance=ExtResource("4_fc0e3")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -1.6767) + +[node name="DirectionalLight3D" type="DirectionalLight3D" parent="Node3D"] +transform = Transform3D(0.970511, 0, 0.241058, -0.137972, 0.820002, 0.555482, -0.197668, -0.572361, 0.795821, 2.41581, 2.80426, 0) + +[node name="WorldEnvironment" type="WorldEnvironment" parent="Node3D"] +environment = SubResource("Environment_fc0e3") + [connection signal="client_joined_lobby" from="WebClientTCP" to="HBoxContainer/ClientInterface" method="_on_web_client_tcp_client_joined_lobby"] [connection signal="client_joined_lobby" from="WebClientTCP" to="HBoxContainer/GameUI" method="_on_web_client_tcp_client_joined_lobby"] [connection signal="client_left_lobby" from="WebClientTCP" to="HBoxContainer/ClientInterface" method="_on_web_client_tcp_client_left_lobby"]