From 01b04cf8f5b250b62c9b778d2d6fd444de801013 Mon Sep 17 00:00:00 2001 From: Kyaw Aung <kyawaung0924@gmail.com> Date: Sat, 1 Feb 2025 02:02:48 -0600 Subject: [PATCH] title menu buttons dynamically change texture --- .godot/editor/editor_layout.cfg | 6 ++-- .godot/editor/filesystem_cache8 | 31 ++++++++-------- .godot/editor/script_editor_cache.cfg | 10 +++--- .godot/uid_cache.bin | Bin 3408 -> 3465 bytes Assets/ui/title_screen/play_button.png | Bin 533 -> 579 bytes Assets/ui/title_screen/rules_button.aseprite | Bin 0 -> 1458 bytes Assets/ui/title_screen/rules_button.png | Bin 0 -> 608 bytes .../ui/title_screen/rules_button.png.import | 34 ++++++++++++++++++ scenes/title_screen/menu_button.tscn | 4 +-- scripts/title_screen/menu_button.gd | 6 ++++ scripts/title_screen/title_screen.gd | 4 ++- 11 files changed, 68 insertions(+), 27 deletions(-) create mode 100644 Assets/ui/title_screen/rules_button.aseprite create mode 100644 Assets/ui/title_screen/rules_button.png create mode 100644 Assets/ui/title_screen/rules_button.png.import diff --git a/.godot/editor/editor_layout.cfg b/.godot/editor/editor_layout.cfg index db070e2..37beb42 100644 --- a/.godot/editor/editor_layout.cfg +++ b/.godot/editor/editor_layout.cfg @@ -2,7 +2,7 @@ dock_3_selected_tab_idx=0 dock_4_selected_tab_idx=0 -dock_5_selected_tab_idx=1 +dock_5_selected_tab_idx=0 dock_floating={} dock_bottom=[] dock_closed=[] @@ -17,8 +17,8 @@ dock_filesystem_v_split_offset=0 dock_filesystem_display_mode=0 dock_filesystem_file_sort=0 dock_filesystem_file_list_display_mode=1 -dock_filesystem_selected_paths=PackedStringArray("res://scenes/title_screen/") -dock_filesystem_uncollapsed_paths=PackedStringArray("Favorites", "res://", "res://scenes/", "res://scenes/title_screen/") +dock_filesystem_selected_paths=PackedStringArray("res://assets/ui/title_screen/rules_button.png") +dock_filesystem_uncollapsed_paths=PackedStringArray("Favorites", "res://", "res://scenes/", "res://scenes/title_screen/", "res://assets/", "res://assets/ui/", "res://assets/ui/title_screen/") dock_3="Scene,Import" dock_4="FileSystem" dock_5="Inspector,Node,History" diff --git a/.godot/editor/filesystem_cache8 b/.godot/editor/filesystem_cache8 index cec9545..db9e209 100644 --- a/.godot/editor/filesystem_cache8 +++ b/.godot/editor/filesystem_cache8 @@ -1,7 +1,7 @@ ea4bc82a6ad023ab7ee23ee620429895 -::res://::1738394856 +::res://::1738396768 icon.svg::CompressedTexture2D::6378281210119878262::1738189402::1738378143::1::::<><>:: -main.tscn::PackedScene::5692118487183161714::1738394856::0::1::::<><>:: +main.tscn::PackedScene::5692118487183161714::1738396768::0::1::::<><>:: README.md::TextFile::-1::1738189402::0::1::::<><>:: ::res://assets/::1738378134 ::res://assets/noise/::1738378134 @@ -30,11 +30,11 @@ White_knight.png::CompressedTexture2D::854350289879594279::1738378134::173837817 White_Pawn.png::CompressedTexture2D::919180529085242722::1738378134::1738378176::1::::<><>:: White_Queen.png::CompressedTexture2D::4902137832695542513::1738378134::1738378176::1::::<><>:: White_rook.png::CompressedTexture2D::4194129281780453908::1738378134::1738378176::1::::<><>:: -::res://assets/shaders/::1738394856 -bg.gdshader::Shader::-1::1738394856::0::1::::<><>:: -color.gdshader::Shader::-1::1738394856::0::1::::<><>:: -3d_effect.gdshader::Shader::-1::1738394856::0::1::::<><>:: -shadow.gdshader::Shader::-1::1738394856::0::1::::<><>:: +::res://assets/shaders/::1738396768 +bg.gdshader::Shader::-1::1738396768::0::1::::<><>:: +color.gdshader::Shader::-1::1738396768::0::1::::<><>:: +3d_effect.gdshader::Shader::-1::1738396768::0::1::::<><>:: +shadow.gdshader::Shader::-1::1738396768::0::1::::<><>:: ::res://assets/sprites/::1738378176 bishop.png::CompressedTexture2D::4631301773944929250::1738378134::1738378176::1::::<><>:: knight.png::CompressedTexture2D::3545640967717948854::1738378134::1738378176::1::::<><>:: @@ -62,9 +62,10 @@ white_rook.png::CompressedTexture2D::3317152307554436932::1738378134::1738378176 Go_Save_The_King_Menu.jpg::CompressedTexture2D::7252735845995868232::1738378134::1738378176::1::::<><>:: Mockup Gameplay Design.jpg::CompressedTexture2D::4859609684236806088::1738378134::1738378176::1::::<><>:: Mockup Shop Design.jpg::CompressedTexture2D::8043055154093708922::1738378134::1738378176::1::::<><>:: -::res://assets/ui/title_screen/::1738394480 -play_button.png::CompressedTexture2D::5896995890187459238::1738388371::1738388601::1::::<><>:: +::res://assets/ui/title_screen/::1738396831 +play_button.png::CompressedTexture2D::5896995890187459238::1738396598::1738396750::1::::<><>:: quit_button.png::CompressedTexture2D::5172428563227279585::1738395082::1738395084::1::::<><>:: +rules_button.png::CompressedTexture2D::8060955005205795067::1738396860::1738396865::1::::<><>:: ::res://scenes/::1738379187 Bishop.tscn::PackedScene::2789588702038144760::1738378134::0::1::::<><>::res://scripts/Bishop.gd<>uid://b68o4mj7wcwvq::::res://assets/sprites/bishop.png board.tscn::PackedScene::5124694183364421304::1738378134::0::1::::<><>::uid://b0px5wlrm0mb3::::res://assets/temp_assets/temp_chess_board.png<>res://scripts/board.gd @@ -76,9 +77,9 @@ Pawn.tscn::PackedScene::3675784333675896641::1738378134::0::1::::<><>::res://scr Queen.tscn::PackedScene::7495869360053814603::1738378134::0::1::::<><>::res://scripts/Queen.gd<>uid://cb3vq168iyomb::::res://assets/Resized Chess Piece Assets/White_Queen.png Rook.tscn::PackedScene::9162401199636684468::1738378134::0::1::::<><>::uid://b00wxxfjk04ke::::res://assets/Resized Chess Piece Assets/White_rook.png texture_holder.tscn::PackedScene::594714386286134588::1738378134::0::1::::<><>:: -::res://scenes/title_screen/::1738394856 -menu_button.tscn::PackedScene::3297943059633979218::1738394856::0::1::::<><>::res://assets/shaders/3d_effect.gdshader<>res://scripts/title_screen/menu_button.gd<>uid://cfxte4aca86mf::::res://assets/ui/title_screen/quit_button.png -title_screen.tscn::PackedScene::8154710134031658440::1738394856::0::1::::<><>::res://scripts/title_screen/title_screen.gd<>uid://bm8sv1itwm467::::res://scenes/title_screen/menu_button.tscn +::res://scenes/title_screen/::1738396768 +menu_button.tscn::PackedScene::3297943059633979218::1738396768::0::1::::<><>::res://assets/shaders/3d_effect.gdshader<>res://scripts/title_screen/menu_button.gd +title_screen.tscn::PackedScene::8154710134031658440::1738396768::0::1::::<><>::res://scripts/title_screen/title_screen.gd<>uid://bm8sv1itwm467::::res://scenes/title_screen/menu_button.tscn ::res://scripts/::1738378687 Bishop.gd::GDScript::-1::1738378134::0::1::::Bishop<>Piece<>:: board.gd::GDScript::-1::1738378134::0::1::::Board<>Sprite2D<>:: @@ -89,6 +90,6 @@ Pawn.gd::GDScript::-1::1738378134::0::1::::Pawn<>Piece<>:: Piece.gd::GDScript::-1::1738378134::0::1::::Piece<>Node2D<>:: Queen.gd::GDScript::-1::1738378134::0::1::::Queen<>Piece<>:: Rook.gd::GDScript::-1::1738378134::0::1::::Rook<>Piece<>:: -::res://scripts/title_screen/::1738394853 -menu_button.gd::GDScript::-1::1738394853::0::1::::TitleButton<>Button<>:: -title_screen.gd::GDScript::-1::1738378698::0::1::::<>Control<>:: +::res://scripts/title_screen/::1738396766 +menu_button.gd::GDScript::-1::1738395823::0::1::::TitleButton<>Button<>:: +title_screen.gd::GDScript::-1::1738396766::0::1::::<>Control<>:: diff --git a/.godot/editor/script_editor_cache.cfg b/.godot/editor/script_editor_cache.cfg index c3df920..a12934b 100644 --- a/.godot/editor/script_editor_cache.cfg +++ b/.godot/editor/script_editor_cache.cfg @@ -115,10 +115,10 @@ state={ state={ "bookmarks": PackedInt32Array(), "breakpoints": PackedInt32Array(), -"column": 1, +"column": 70, "folded_lines": Array[int]([]), "h_scroll_position": 0, -"row": 16, +"row": 9, "scroll_position": 0.0, "selection": false, "syntax_highlighter": "GDScript" @@ -129,11 +129,11 @@ state={ state={ "bookmarks": PackedInt32Array(), "breakpoints": PackedInt32Array(), -"column": 30, +"column": 1, "folded_lines": Array[int]([]), "h_scroll_position": 0, -"row": 36, -"scroll_position": 0.0, +"row": 45, +"scroll_position": 24.0, "selection": false, "syntax_highlighter": "GDScript" } diff --git a/.godot/uid_cache.bin b/.godot/uid_cache.bin index a4003fe947a0a9386d0c7df3cd41c15c37bd033c..d62cc6d6760c1a425711a6732e9ed785b30f567e 100644 GIT binary patch delta 41 xcmca0)hW&BxRKGHm-F|9O~Ln^@8#=GR^(L>C@RfKEsjqrEh)**(<{hJ2LMVP58VI& delta 10 RcmeB_z97Zuu#wT97XT7P0^R@s diff --git a/Assets/ui/title_screen/play_button.png b/Assets/ui/title_screen/play_button.png index 839092fce1794c2ce4a541709e08e850178317d9..39db5e0d90f931d9e7251c5f3ce7bdedf6eb81a9 100644 GIT binary patch literal 579 zcmeAS@N?(olHy`uVBq!ia0vp^zkt}AgAGVVR?T_~q!^2X+?^QKos)S9WdHSaaSW-L z^Y*S|UXz1F+rwKWtmYs7g<qE5uuXgNH4dgz24}w8WJha0dpe)b&42p3-L;IqzwiBK zXn4yh%ftagf8NwG%rB5@TXeqs?eClYvew&F_b2nuw_Be5@7|^7?^dk8Dx+q_Vj=s} zuIi;{o%wSv`|mfhW{XA7zbtkBZeaXsRi7`S=MHbU?aFpdz={QeG9G=Cdat?j{)g{7 z`}XWCH31sXG3!OK`iVQ7<@Iw;y1Y$tiWhpk_5EGD>PMHwy-sZ`X=iW(BL3~qjcyC= zms#k{07b^9FWsJe#r1`N!wUh0XLAd;JpcG@PWiiD<BN(77r^NM#g*qC|G#Bgf9rkV z44|U4MfrxJQM(@PpR^<R?xYzPGVfn`esO913Z1)P<x8!vR&Nvkl%=_^WaYhIb={qO zj4gbOI(Ne}YG=Av`;>4flyC@aEZKgg?*66X9bctGuDv<p|2O9~L<T5HBog>|P}o%a zBd=1Y{FVdtzyJ`aYWQq$r2cz^6~cEQZ#G<B`Z}*#{>biQWmB?u)W=-T`+nu;jaM?$ tYI18D4_gS!GMN}&Y|I3ifP{Xq@|agmKd`1$6__d*JYD@<);T3K0RUmV_#yxR literal 533 zcmeAS@N?(olHy`uVBq!ia0vp^zkt}AgAGVVR?T_~q!^2X+?^QKos)S9WS{qRaSW-L z^Y*T%-{Sxghl`6s7FV#}{D18PpG}*fkV4lD#_iwd6e@%*dj0+GiOQ;dF>(JGmVYaM z&C4)Ny@W%+iiJa#sfCa6|F(M#^LO+;R(oG9-L`xE%w4&`|E|xP_Rr`0kDIbzch5TP z($28Zx#5C*f$Z_Ke9{jDogjS02N$Ma{~?<_FTdh{ocq3*QWG^RmL+Pxu5cQa9@@M2 zTuRb=qlM=?KbrCA&98m9y?n}=<Cnk|I`!W!nwi_VUk+rdqQeUTg%Y)y)s>TK1;I`- zDnC|eH(&q!&f@p~ePHgCS-jbLe*f0*fByViY;aLg!T93z8C>bN9^VhP39eO}dBJl3 z`+4r+_X8t$fy_K`Y3|+MuVPN@UHaqB(qA{vZ=V6OgkwWV{ehd)E9dlg@-aHKHypWi zH|Y2CXLW7f_ZNIRG4sd!f8XA~Ed&M(%%5NvBEkzvctXX8BlFgN<W@S$uKQsk$W;Cv zeaZi}AAg0W{Y&eewu4`@%bZ^beE3qcb5G7*!2_F6?P>^L6A`sAF^KUNFrFDaUHx3v IIVCg!0AbbcWB>pF diff --git a/Assets/ui/title_screen/rules_button.aseprite b/Assets/ui/title_screen/rules_button.aseprite new file mode 100644 index 0000000000000000000000000000000000000000..a39e2873171a45884fe5effe72041cb351400ec6 GIT binary patch literal 1458 zcmdnQ%E0hoDI>!#25$xh21W)3h7=%10H7F1kU;<lX#tFY_W%0G2DX(AXn`0IvnznD zM6xam$Yue#P65bJQZRAVut~Et><_cPU#NC-LE5{+vwnXvoB1>#YoCGnlsxZD{UC1@ zBO6P5`x1kMrs%wf$+Q2*pM7%r_MiX%|Ic2#y``=_Gb<}HEU3(>YmJf7&G6*w)w}wq zdv)a-D1mHJU<Q&f@E^$FVsJ`K&Q34NFU?Dl0rD|burRpg=atk0<yaMf1Q7gZg3v(! z0mHUp&fCL=oD2*+%p3Oq(+xYmDtUs#te8+Lfv-0iQ&X)Pp90;@3Jg3^1~w$?FEH4H zte<=_NY#<Y>F@vf_jFHxI=k9np<>4T@0{vOp1*zDT<>;|WzL*hE%T>mjP|Z?dVB8V zpULK7XY8iVE=rquFZ^KHbKcmwd)`jIxx6U&oX(2nlheLmp0np8Zob%g7WI6aYR_AD zrWkX-db#AN@xhbQ=i?@s0c~iivda8;r{UAFThmMb&ll01CmnDv;`gR^{~xFAey%p% ze~S6MeX6N>r)IK#E!l9lc=BoWQ_}wTCm8{?7TKQPX%X;iS=Fs4Kz8{q4dbA@z91)E zFJ8_)t1-o@=ITz(^l7hmUS>V(U?jWm70~+AU+=tZN>iB07heiA^J&$)5=Y|+KJDwR zz~))UsLfpYPHJxCy7czbD#ll17XvlCDVUkEY*%(k+Rk~hdXvwDl=lK{*nBv3(#%)u zE&`1x+u>sreAm=!bIf_Z>7Hq;cDn)Xy!p`Rq)+Mf7iT`*w(&o-OXXX5{qO5@A_M$c zb?2>5h<$eb;ddkvEur6jX})0Rid_lz?0!DwNUYjsHL#1hU#(nnwAkyB-sDJOu%lVO zhFp4NsaiPw<eE;fyPK-CGC$6Fw4=LvT6Q}qgn=41Gp3gNzbgX8AxQf3-JVUGPsUyW zh6m6B$JzPJr_PCd4}7`|?4*~m^@nb@ay^Y(X=iS^c}s<r!|od`Me9T6&z=(*Wh1*F zHpgja_^R{1=X7-E@m<g}TX;wN>T|X9X=48D8RD}8-c5Z~JlWX0dpYx#ZeNY>USD^f zoVoPqWyV`a)uvQ0{dMQbnM;peGQ2%>ai-DXhpW%|Lait$S$3x2$Esprgn^BfnX73G zi6pR5-0tb8pb-Ptei==B32yD(F6oocwB)abx(kEn^EEE(%5PxWEBWx|*SvFTGhgk! zvf_Iw(5eSFzuM0AHM&~8^5(lWJGz;lTHj*W#D7ZV^OHWVZPwcF9y$E%Gi!L$Y;@9Q z=i(-@=dWKr{dxaW&HrQXqUNk$KK*(9>Cb;fjblu9?kl$4`=I{#c?~1~cfVTHu9vS{ zF8=5J56RSLC+F68KMs#MKa=@&(;i`w)MuOBN=z*3j((kExxnwlcK^V%d71A_dHe2f myjvVRUs(Lf?d2NA=S{xPVmto+#=D&>&%c-X#~i@-d<g*D0e8Is literal 0 HcmV?d00001 diff --git a/Assets/ui/title_screen/rules_button.png b/Assets/ui/title_screen/rules_button.png new file mode 100644 index 0000000000000000000000000000000000000000..6113264d638355ea83d425caff68e09f0c2bb2b0 GIT binary patch literal 608 zcmeAS@N?(olHy`uVBq!ia0vp^zkt}AgAGVVR?T_~q!^2X+?^QKos)UVz`!Ks>Eakt zG3V`FZ@<G10xSVd5v|e%|5vw4r|_=!NO+=gP|pASm1_2asKQgG{~G+KfByNJb;hmi z_lynSSY(+vtXKp}I22w8JXrhmnEkrz(`NsF`uT6|XR~Y1?k3+}Yq$OSne$ekwr_ZL z^Zk<-Go#-b_wq6N>AqY1-KOgQ^A$f{?5UP7++LHne&+npg(s)W{q?IldoO8zW(miI zFEX-jfrU>ussnWZE%Mo360di#D!!+QYZ<rInw51I%H?HmxGWBK`nqkeWa>Fppt4<N zzospI{N}rDqW@+6yRoh8-sK%Yr#W0uJh0*Ui_^uq;?EQ2y0tSjflY)vJ>kaf><iAP zZ|~5RKQC6|bwk<VUti+frPd-J3-_8u8}i(KF|Q^0<+s@v-qZsfhA^<dXdm0$=66j} zp?A0vuibz0rPq&d_4d*xKKm^;5np0-IjmGO9&d{&#jx<e?GVKVpgS(x8$8~6a=}H# zrUlLnj$mbNdnKO#eeuBp=$p3OFLG<7B&GrtO4Sy*uW|ZT!LjnxoXzWQnOL!0c#&gv z%KH4fvzFPD?`M>7EVvl|>fh&ouXs;dfMxANGRu7J_Amav5vYCn>7ReDW<Ab6d*ks| z^Z!53ES_E4BKdx&d3~#;_FebuFAlt$Wo8x7j21E<czG7~%@!=sGzTUb22WQ%mvv4F FO#owY6V(6! literal 0 HcmV?d00001 diff --git a/Assets/ui/title_screen/rules_button.png.import b/Assets/ui/title_screen/rules_button.png.import new file mode 100644 index 0000000..8167851 --- /dev/null +++ b/Assets/ui/title_screen/rules_button.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dm310sn1jtu88" +path="res://.godot/imported/rules_button.png-542c34aa0699ae6214a11d8bf596087a.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/ui/title_screen/rules_button.png" +dest_files=["res://.godot/imported/rules_button.png-542c34aa0699ae6214a11d8bf596087a.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +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=1 diff --git a/scenes/title_screen/menu_button.tscn b/scenes/title_screen/menu_button.tscn index 883ee8b..e1dbaed 100644 --- a/scenes/title_screen/menu_button.tscn +++ b/scenes/title_screen/menu_button.tscn @@ -1,8 +1,7 @@ -[gd_scene load_steps=16 format=3 uid="uid://bm8sv1itwm467"] +[gd_scene load_steps=15 format=3 uid="uid://bm8sv1itwm467"] [ext_resource type="Shader" path="res://assets/shaders/3d_effect.gdshader" id="1_loqws"] [ext_resource type="Script" path="res://scripts/title_screen/menu_button.gd" id="1_mo82s"] -[ext_resource type="Texture2D" uid="uid://cfxte4aca86mf" path="res://assets/ui/title_screen/quit_button.png" id="3_aox2s"] [sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_no32e"] @@ -55,7 +54,6 @@ material = SubResource("ShaderMaterial_xb1tv") layout_mode = 0 offset_right = 40.0 offset_bottom = 40.0 -texture = ExtResource("3_aox2s") [connection signal="gui_input" from="MenuTexture" to="." method="_on_gui_input"] [connection signal="mouse_exited" from="MenuTexture" to="." method="_on_mouse_exited"] diff --git a/scripts/title_screen/menu_button.gd b/scripts/title_screen/menu_button.gd index 533a5e8..78eae88 100644 --- a/scripts/title_screen/menu_button.gd +++ b/scripts/title_screen/menu_button.gd @@ -40,3 +40,9 @@ func _on_mouse_exited() -> void: tween_rot = create_tween().set_ease(Tween.EASE_OUT).set_trans(Tween.TRANS_BACK).set_parallel(true) tween_rot.tween_property(menu_btn_texture.material, "shader_parameter/x_rot", 0.0, 0.4) tween_rot.tween_property(menu_btn_texture.material, "shader_parameter/y_rot", 0.0, 0.4) + +func get_texture_rect() -> TextureRect: + return $MenuTexture + +func set_image(image_path: String) -> void: + $MenuTexture.texture = load(image_path) diff --git a/scripts/title_screen/title_screen.gd b/scripts/title_screen/title_screen.gd index 609c9f3..5dbfce4 100644 --- a/scripts/title_screen/title_screen.gd +++ b/scripts/title_screen/title_screen.gd @@ -6,7 +6,9 @@ extends Control # Called when the node enters the scene tree for the first time. func _ready() -> void: - pass # Replace with function body. + play_button.set_image("res://assets/ui/title_screen/play_button.png") + rules_button.set_image("res://assets/ui/title_screen/rules_button.png") + quit_button.set_image("res://assets/ui/title_screen/quit_button.png") # Called every frame. 'delta' is the elapsed time since the previous frame. -- GitLab