From 6b3270bbb2c47b780c413d98e136f59523d1636a Mon Sep 17 00:00:00 2001 From: Henry Date: Sun, 28 Dec 2025 13:38:13 +0000 Subject: [PATCH 1/6] Added an interim title with shader effect. --- main.gd | 3 +++ main.tscn | 21 ++++++++++++++- pixel_highlight.gdshader | 51 +++++++++++++++++++++++++++++++++++ pixel_highlight.gdshader.uid | 1 + title - no border.png | Bin 0 -> 11704 bytes title - no border.png.import | 40 +++++++++++++++++++++++++++ title_white.png | Bin 0 -> 13251 bytes title_white.png.import | 40 +++++++++++++++++++++++++++ 8 files changed, 155 insertions(+), 1 deletion(-) create mode 100644 pixel_highlight.gdshader create mode 100644 pixel_highlight.gdshader.uid create mode 100644 title - no border.png create mode 100644 title - no border.png.import create mode 100644 title_white.png create mode 100644 title_white.png.import diff --git a/main.gd b/main.gd index c91f8de..aa23f33 100644 --- a/main.gd +++ b/main.gd @@ -60,10 +60,12 @@ func _on_player_died(): game_over.show() await get_tree().create_timer(2).timeout game_over.hide() + $CanvasLayer/Title.show() start_button.show() playing = false func new_game(): + $CanvasLayer/Title.hide() # Ensure enemies are cleared. get_tree().call_group("enemies", "queue_free") get_tree().call_group("enemy_bullets", "queue_free") @@ -110,6 +112,7 @@ func win_game(): $Player._on_player_victory() await get_tree().create_timer(2).timeout game_over.hide() + $CanvasLayer/Title.show() start_button.show() func enemy_win() -> void: diff --git a/main.tscn b/main.tscn index 519e986..f6015d9 100644 --- a/main.tscn +++ b/main.tscn @@ -1,8 +1,10 @@ -[gd_scene load_steps=10 format=3 uid="uid://cc2dnhuv4qx7m"] +[gd_scene load_steps=13 format=3 uid="uid://cc2dnhuv4qx7m"] [ext_resource type="Script" uid="uid://c51huloycn5as" path="res://main.gd" id="1_h2yge"] [ext_resource type="Texture2D" uid="uid://jj8b7vqj3ihx" path="res://Mini Pixel Pack 3/Space_BG (2 frames) (64 x 64).png" id="1_ig7tw"] [ext_resource type="PackedScene" uid="uid://s6wf3egdqtmh" path="res://ui.tscn" id="4_1bvp3"] +[ext_resource type="Texture2D" uid="uid://db2v7dea5wi4" path="res://title - no border.png" id="4_7mycd"] +[ext_resource type="Shader" uid="uid://x02irwg8ynvp" path="res://pixel_highlight.gdshader" id="4_272bh"] [ext_resource type="Texture2D" uid="uid://bonoqs5pisflo" path="res://Mini Pixel Pack 3/UI objects/START (48 x 8).png" id="5_lquwl"] [ext_resource type="Texture2D" uid="uid://bubqwoum50gf8" path="res://Mini Pixel Pack 3/UI objects/GAME_OVER (72 x 8).png" id="6_7mycd"] @@ -46,6 +48,15 @@ _data = { &"scroll": SubResource("Animation_h2yge") } +[sub_resource type="ShaderMaterial" id="ShaderMaterial_kek77"] +shader = ExtResource("4_272bh") +shader_parameter/speed = 3.0000001425 +shader_parameter/line_width = 0.1530000072675 +shader_parameter/line_color = Color(1, 1, 1, 1) +shader_parameter/pause_duration = 5.314000252415 +shader_parameter/offset = 2.0 +shader_parameter/pixelate_line = 0 + [node name="Main" type="Node2D"] script = ExtResource("1_h2yge") @@ -70,6 +81,14 @@ autoplay = "scroll" offset_right = 196.0 offset_bottom = 36.0 +[node name="Title" type="TextureRect" parent="CanvasLayer"] +material = SubResource("ShaderMaterial_kek77") +offset_left = 28.0 +offset_top = 74.0 +offset_right = 212.0 +offset_bottom = 141.0 +texture = ExtResource("4_7mycd") + [node name="CenterContainer" type="CenterContainer" parent="CanvasLayer"] anchors_preset = 15 anchor_right = 1.0 diff --git a/pixel_highlight.gdshader b/pixel_highlight.gdshader new file mode 100644 index 0000000..6cfd62e --- /dev/null +++ b/pixel_highlight.gdshader @@ -0,0 +1,51 @@ +shader_type canvas_item; + +uniform float speed : hint_range(0.0, 5.0) = 1.0; +uniform float line_width : hint_range(0.0, 0.2) = 0.15; +uniform vec4 line_color : source_color = vec4(1.0, 1.0, 1.0, 1.0); +uniform float pause_duration : hint_range(0.0, 6.0) = 0.15; +uniform float offset = 2.0; +uniform int pixelate_line : hint_range(0, 1) = 1; + +void fragment() { + vec4 base_texture = texture(TEXTURE, UV); + + // Skip fully transparent pixels + if (base_texture.a < 0.01) { + discard; + } + + // Cycle timing with pause at end + float cycle_duration = offset + pause_duration; + float adjusted_time = mod(TIME * speed, cycle_duration); + + // Line movement with pause (right to left) + float line_position; + if (adjusted_time <= offset) { + line_position = offset - adjusted_time; + } else { + line_position = -0.3; + } + + // Use UV directly for diagonal calculation + vec2 uv_for_line = UV; + + // Pixelate the line position calculation (not the texture sampling) + if (pixelate_line == 1) { + vec2 texture_size = 1.0 / TEXTURE_PIXEL_SIZE; + uv_for_line = floor(UV * texture_size) / texture_size; + } + + // Diagonal line rotation + vec2 rotated_uv = vec2(uv_for_line.x + uv_for_line.y, uv_for_line.y - uv_for_line.x) * 0.5; + float dist = abs(rotated_uv.x - line_position); + + // Line width and smoothness + float line_intensity = smoothstep(line_width, 0.0, dist); + + // Mix base texture with line color (respecting line_color alpha) + vec3 final_color = mix(base_texture.rgb, line_color.rgb, line_intensity * line_color.a); + + // Preserve original alpha + COLOR = vec4(final_color, base_texture.a); +} \ No newline at end of file diff --git a/pixel_highlight.gdshader.uid b/pixel_highlight.gdshader.uid new file mode 100644 index 0000000..7e37d2b --- /dev/null +++ b/pixel_highlight.gdshader.uid @@ -0,0 +1 @@ +uid://x02irwg8ynvp diff --git a/title - no border.png b/title - no border.png new file mode 100644 index 0000000000000000000000000000000000000000..ea93712e285136858608c9c7d918485299a649f2 GIT binary patch literal 11704 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 literal 0 HcmV?d00001 diff --git a/title - no border.png.import b/title - no border.png.import new file mode 100644 index 0000000..d835cbc --- /dev/null +++ b/title - no border.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://db2v7dea5wi4" +path="res://.godot/imported/title - no border.png-f3a39f3e35d38034df2e041c7aa18607.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://title - no border.png" +dest_files=["res://.godot/imported/title - no border.png-f3a39f3e35d38034df2e041c7aa18607.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +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/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +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/title_white.png b/title_white.png new file mode 100644 index 0000000000000000000000000000000000000000..88c0d084637317621e89d48cf02d7304056132aa GIT binary patch literal 13251 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 m)kfGMA9H-~|9dchuu%*SdW=lPO@RLdfl!c9k* Date: Mon, 29 Dec 2025 09:40:38 +0000 Subject: [PATCH 2/6] Updated Title shader. --- main.tscn | 12 ++++++------ project.godot | 4 ++++ title - no border.png | Bin 11704 -> 12915 bytes 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/main.tscn b/main.tscn index f6015d9..0f56aad 100644 --- a/main.tscn +++ b/main.tscn @@ -50,11 +50,11 @@ _data = { [sub_resource type="ShaderMaterial" id="ShaderMaterial_kek77"] shader = ExtResource("4_272bh") -shader_parameter/speed = 3.0000001425 -shader_parameter/line_width = 0.1530000072675 +shader_parameter/speed = 2.250000106875 +shader_parameter/line_width = 0.1450000068875 shader_parameter/line_color = Color(1, 1, 1, 1) -shader_parameter/pause_duration = 5.314000252415 -shader_parameter/offset = 2.0 +shader_parameter/pause_duration = 6.0 +shader_parameter/offset = 10.0 shader_parameter/pixelate_line = 0 [node name="Main" type="Node2D"] @@ -83,9 +83,9 @@ offset_bottom = 36.0 [node name="Title" type="TextureRect" parent="CanvasLayer"] material = SubResource("ShaderMaterial_kek77") -offset_left = 28.0 +offset_left = 27.0 offset_top = 74.0 -offset_right = 212.0 +offset_right = 211.0 offset_bottom = 141.0 texture = ExtResource("4_7mycd") diff --git a/project.godot b/project.godot index e8ea034..94dd867 100644 --- a/project.godot +++ b/project.godot @@ -27,6 +27,10 @@ window/size/window_width_override=720 window/size/window_height_override=960 window/stretch/mode="canvas_items" +[editor] + +movie_writer/movie_file="/Users/henryfaber/Downloads/shmup_capture.avi" + [input] right={ diff --git a/title - no border.png b/title - no border.png index ea93712e285136858608c9c7d918485299a649f2..aec1ed34b18949f0cd7b602fe6172492fbfa9065 100644 GIT binary patch delta 12560 zcmW++bv#{vAHS}co@SVu?vBm0ahbWgYh$|knLN7tYNnZ za=+)CPrR!^@7%O<7zyxpi#6!}dOWklv?MGt%1r0P-6OotkVa!{PS1-*XygCRdRnii z(&J>bUW1*;=c<|m1E1;xyG|MpGY!2ztd8gBEWJ*)@ac!NYTgQZk~k7 zzN}yM<4s4C71c!3brii6;rAx$2%~Hi-D%pNlelyBC4xX*E2?Bwo=7QUguG2~$D&2bbnRP?qx3GQUeK3@thN*PaDA|L(3BIv(A6|$ zYG+t=@K2EDPAF*U)Tui9Nl~tcYbJT{I?^*QP4qb7_4NecONWFZ3>8lK_@7al*ykqt z={ehq)PpZEhK2u17}zTe@V3GgkZAoHWXBL6sc}E=oricJWBq9DZ1@g-Yl|M96v~*b zdSbal(AR{5{34BfU}DG4tLOGgzbD-4EU*sU$k0rFcj)JHRcIZAfTX(>Wg)(@|BkQx zA9&PJy$;|$Evd2yqm%#=`yV=Pp|(AE3X!Z3OYaazAc#|0hjMG@H%eER2U<1J&z@Q2 zdYc+eVyg3Wwu_2sZu{@gF?Maxj@&{WP%1q$F8^)Ve? zt%{?XbxL(5YdbUC?E@h?E!pzi^UPnIKiFlB(pm-5^1dhO{gY<9bah2?U(01S($7&W zQU`J$GZ^s{Xo9-_3?e(Aa@(mMQker}e0%8y{L8nv8;{+@_gN$|4OHXw8~MB6KB*p}8LRT|J5mG>tMgid?!K(8yKmEyLvhmm?3oCTHZCgF3>ZIU7}` zAbWmul!D7Lzy)QtP7KfgyAMB_`BT~CT-jiTMJH8`<)z6?b}u&~OFX1T$)AMM=Evsk zIQcwP|Eo07$0CKtEh}jt`!tuN(wFztyL+9+|I;)qVO8T_^}hxMz|k@2?y@IaViI*Y z`!%x0b1dl;-%3=7#Oa4pf2hPf?N6Hzcni~5d!ZsYG8&j9e^ByV-TADr{kl~~NMvsc zl#TLQs=+p~ABl+1B)OJU$7CqU-O`KF##;-uINN;oI+A)+5EltZk)mgfE>3B1l*uth zlkRj^Dw<#@!9E>stSH5MdbM^q5eK@RP)Uv4y?DV&NIIS_AokDCvZd%n6s=#A@85yE zn@03`|@Sa{c>5G)+}uddUHUjKIQ_Wu)+bay)W!B{XMnvRPkk; zG)eCS*51kkxA|wZn0`{CTl~q+Q>kU;JY7Mql758|dfzZOR+pHLd0y`sA-3_vzl+g~ zd#PY0RC>$?O{Z&1LCFSHAYTwriD}wrXw_4MG_>ZTt#~r0oHiQ;w%T7LUxDu~BKJOm z!^CkIEc(mpmt6FY>m+`N%7|7qDNLynnOfQpJVd~p@Pf8}$9g=?O?_7v;eNmi>?S%D z+tAgg+P}%jiz$q4C==))mX5P%ZYY=UEA(e3djD-KRYqDqn~`SZ{FmpKg4P^P8cuyO zVvUHAiV#ifAz=~-JSz99>|ITu2o#f~?120D@)uUAlcfv-&LZ)9@5Fphp@9I8U|N4< z95A-93qzms&hwc^hCn*-`z}An)nEh$;y?tDPKSfDeFrvcp8a)@dJPTG^Dt>dc_nf- zuy3aZhwL5-&Ri7i>AeUsc2MN%qO3huhbKyvkBueG@J8e{*9x##++7miPV&8EqCa$u zXic8~%1$7d3s=t?_XYp$$Y;_;4TJ5kfS_CtNxlVp2_JX{DoJ8=)+)2so$D@*`9WL! zR_^s*;pX`Kzyr>p9{xCe3C`U8n1c6109&Nd6w2lt7F}-RJl5bLX?GpL~lmyA*K8bbCCBZ4-Pj}>qxaT>->k_<{XqrU*FuYRc>mT$S{9WFKdlIHj zkq}?=rQDNHsT{npY}VvqU?+pB<^4ZbMePg?LOcuBFT|s0;Ir^*B$1S*%U-<-Wz?(> zzNu=;mgr=#mGu|g&}NnWTg2Rv7AUn9xJv$Bu(T@=HE2~NIzutmxxaO;XC}2Q!s?^r z#jZuabIolvnY`L;Mx@(+>DE#u`bHG7aP;VuI^yWI)osIk8~;{*z`K9vim=)hyx^Aa z(2XViql2}5Tu+){N;j>I3caaV(a6{r7zIhzN@zhMB^KR!Mw73w`4a>v@Hs(`KUCzC z|H7GU`RN5V@gN;~sZ;TY>5&bSmD7c(f$xq2I_E1mGah`iW3K1)v<-8E35RxkoE)FQ zsM{Hdj|^Kjmj__3ZJgMx+zUv3Dwr6sFp zu=^%umH0udea}B%isA|KG+e_-c?s8srlb|j&*5I{&q z`Eeol`%Vw11&Q}lv8>N^q@kIsb)5D+9p@C|PL6CvJZ>c_fl%03Y8f9H{OxS9XnYc27RVv#0(XpYAf%P0ZoBny#-Iii}^M?Qu#=B;rxf=IL+zH%v!w;m3_Gs2|fkjUD|niC+FZeQ_{fyh6GZc4Aj!CzA5vTj&gk2k-Llsi@J{P_y7eX_!wPZ1 z#A^kN<>bP;1m-3Y_WW!oM?551s_#5He3Ll4hrB0s!tbi>ct#l_eN||R6uA9!`$pCO z52z#)j0`C7oCSM6L$O%lY_-ZvHGgV~`uhWuY03sZy+|y$v7MHkMtV;QJTs@zGPfw> zL8+N1Fy!NGN9E4Q8--y!gY5gSLlYH1RKlw?iKS<}n7p7;6ze{1|7xoT3v-JNkl zIkmiJFG1|$QiwWt9iGOt#!5#GRN0TRUa=-B-eSUV#j|3dv9m zkEG0n^8@-*;i&l0K`PO)jLFM&{rBz0!Tv}f!V3Dvj! z39T0k$^zTZuLE6B5Ag}3+e-E6oD z!k}+#{I{ZrKT28(B4GgcV#`$jKaCibG`Wz9ugW zB^yx11_??*G?%B=JEhwmiQrs&b8JyH=H_KKHyCPfm4Z+AhL+`<*FT2^1ex-XU)-Kw z1HB3LE5KVnza7t2#;@xz*Wg0Md3cVZSI)A*o?PP7rN}SHNhf|9tF`-M`j^N^#6?i) zo7{gajEHyb^D9$~y{9ph(er8or@X&vFK>7ohQM(xl5Fm2eBG<SU9C=To_%ahkCD%#jNLZ(Q(qRz4p0lpKmXNStFkR+J%d-b5PB}mw%_97#12W`i zbJ|5NJ9(z5ZUM#0yMJT7fb$X(?CcWp3jL$rw{z6(t656v zMpaQEYA6mfZ!@^DQf`-!*&?&pBmd}81au6#{-wm=;AV*w`&EEa>K~rGsaE9ZtzhDG zF)UayVj4h-&4Q=Dwg<%Iu**gxBq8XmXDj4VhIM2t@(eX-&L9IbrL6J+gn)2O* zFNmPM3FgK*?Awa3dL==2CAIG0=B=NRYh;bR6R&@21#U5UAhM^Q(gyGqJCVs15qhj^@SVX*24&M zLuu2{n@>8o`W@lOvzS0ZhJ*a%9Fj?@zrsMQzBSHpQ{ErTASqP>AxhZhEbpVg>eKLD z{(NFZ_RX4i4wekRDmmDV6YzA~2p=;P$Fg$z6O=x)!4-%VDXd$U|^&RVE55PGyS~cd=;1{_5J3e^1!jIza z=`1f(g6+4BmDY}}Ny*M5g64*8Jd{s1GEu%&6da?2S`Ugn=et`T*0r?X`3%Wr2G5dm z)rE{FR@WIrs#>Vg5Q+kfzwQPHFM}zvc)lCVm@Ha5i1u*15T6?rc^q^y%_? zGWzErd18yj6B7MoFq!^2=18%s-Ytf0eW_k`7GXS_Zv2cR8T)3V>{#$waJ37N%!V#w zGNBX{j;Zv~B=D1E_Ykl}po5;5ooSxqy3Xh8p^`mXTqhth)PPLepCsCAK(5N5pmQy{ zLAODW!nya=@_j&maBTSYKwjP?%E0s5!k7Mzh~~8$cQXTLZ6a$uIpd3ATI_t5D%`n+ zIkV-5Rm=@iCE6cOlIj_a+^ldQXUjQR5xrbIYZxQAnh2zq>-rVFW#lux^3jK76MI$J ztTZ-Af}IBmsG>&{3ya9*{;#sf_ymHRo@tSph<|PcC5BPsDoN=2wt0CvW-l3Ezx9h` zN{WSLagOLCil72I8(Eryhsr>FZZ5_5Itz9+6~}^}NJL8sH&U~?hZ%sgp9?B|GQ(a< z-?_LJ&2LcsbGImH<;>3RYa*?aSPu|(ieBITjK2uZFwH%vm4>99l$e!30z;*6V*tVZ z_aa97NQ-VxsVujc6ck3LA4Uch;wluYJGFtbO0~3OE?AEbo z(C=R6tsQJOT!NzvV_uGq`=&W^wE4ziQVjbeHW_xQJA~HkK=imCs06Cpi77jVCSe*# zm8THtuf*)5`^Ql}OzzuFdN>5(TSPeE5sA-k`zG(FIAcha+^c+&H#P};Ri?ntZjYMY z{bpka>-iS*JEx0+M#Jy!21}qIYbGq$*pJb57^Y$PXg#Y~Rg8s6sWwcJF13CJPI#f@ z!O_bfO$$RnRNBSMbVBTwF)hKMGq?ovStcsR*8wX?EP-9I{F;6nAE!s%)vFCWVgI4V z`~HwDr9?;cDlto!72A16 zP)j^`(!8Wg^e6BVWZR*ct~^(g1f3$`v2>2=07LJ1B4xy=y#y%RRAbpLKM2_2W1IJv z*4y#|+;_jvxVhR5ew!@|WE5~kr=t9L`M|fW@*%zJ&zUpn*Okyur3SVt30&W&yOW=^ zh1Zjgc_Oz~hJzARVvVRO%vPh8&{q=Lh+bsFG4Qwzdp8)ILL#^ImnJmQJh3_4BHO?P z{O(VX;1S-TA}>8Vlu3osHY3-O1A@+66_j+wyvbM1o_sONZx4@)U{fgIehrPL2{kKr z_DsH!euq~i*mV}(okJJBAGttQj}8s*Iu)R_#gCre8ito%h_pC*UC%fqZTGytoi2O! zzP-7BwjR_T$wwwmYoxgw8qE#669KD&;G``MZL%%loZu`C>(FZR62+gO;JyY=YATpm z7US>&?3lCIXd(3pD{hSF3#CEi{VIpb-1IiOyf0c0PoJa&D$|$#Zykd(iGnI1>RhcH zgcaPdvf86}*7Aw0uO@N$_Au#JDCBx*`xUqSt*jpxpVTZ8iiX~3$r)wkdHK{#Ip`L!T;8c5nys9TzucJ=V!3Bhz~R5@ zmf-pHc0IHXeBJXEM5ch@ZoFXoBmEt-9pa98Gdm-1Q=xY-chEg;`gN@7zX}zbDV-mV zj0Q-aQ~n%%5mFtDZTpqF8CVAt8iKtk-Tm^7jW1;7KRH=yBaGGJt?oAvf|85$fZ>YC zBK7oUm_V?vrdr0aMGcDMp^kvz*R=v$=aJlVXIq3|yF(K8@*kkabt?lm!(WaUkVdke+9VMkeLfgYJbUb}9o z%EW&ui~SKU#*HXhU5TwZl-@ZYXV>!|N`3X0=cWbLbKNzk{Di9mCB|Qbms)eIQRx48 zvT{VlWgq5%s7Y*7P!8PUsdQcXanE%I!#>1>wqa~JSDPdEbZ@7rSCX@X%TIgajTF7Nv7dbs7U{BtlAaw zOqJ*v;v%_qFdVN4n$_<$3vmH$C;o|c+=UptHSy~_gQc{C5AwNa?u za3RZhcWL6eXII8Qy0f+QSXM_H;_pV3TVJ1A<7VaC%PRB5e1||cKj1m3yx~ExhCAh| zI|*;}x3vLUH|~G{Sg>|dYX;}8KXc16g&FcIyB^t-I;4wy77x|K)M7tUg=|agY~3HR z4XteN2|R6o<~$?Tkqcv2V9Q4fXs5?!q@Xq|wr8#lu4E+*(RiVPsY)9(Y~t*%g19Q* z=RE=KJ1bl)b?@Sh9`1O)p#DKIqK58Fzx&;BPm=p{}V z5P4Wbud^bB#Z_e(vVBaRxU{(Z{Kfa6hoAJKC2$1?_YuH3y_=V)g{6+c7NK0|qa3FG zwzKSSQiD5bGKxM#PMPd;kbkL)`d8g31%o0Jjif_j68Pps5u?gwViSfTE2ZDsS7bxR z6qw=vJ6?5byw-2x-JI82m+gh^o~&}XiBWtDA837zXu670;3^tFUU8m>U_{)TaZ6|Y zr60Kk#P1)zhy^)*FaQ`O&N!><&dDqD{hxtrlGo@wI`!grnIiZ7S=*X(loGkcI5<-i zhkkY`SnBVgM>bPQ8->%F#MLW`48ARa4-o~v0u7mnK-ux+oD&B2vl*$4F#O%u$l4f# z8Rq(?&2@5|3=LxW3h?mURb+@oEt(ZFfeK)dskv*V4?<)LxT&5xf)EGo!Pyz5Jp~r) z+UFX%8ln+=uew#$m$9T*K*Nq(%@y&m@a%_By92kZ5w*acHJ|Loc6eu!$^;0U8rNPN zq-iJpccNTXe@#zzWgF9eI5?uGX!ZLwNv1|fkctYa%GT+@o5(v}P7%C%bV{**eSo?M z-hL4Gd5dXG9D(T3SUmZR(i`~&6vv4BepWTy4GQz1c(yaDz#R5&i|EJJgl=W@Db)&Y z6Gv^>v*dsGO|ihL<_Io}=qhP^XDHYf`riOwBf zO5ZjpJDQOnkbhKwnY8hlpg^R;$O%!?zcOG+ftiqx*}5=EcvH857p&lNL zr3?Rr4zi=EN$Q;&thLo4 zvFGCdgFx`2U^0^GpgMS{SosSle-AP9)~psF|DYEt4Ll!$tQfn49ue(MJiu+>RCd_` znI9<$QOy}HmP7i@4D63uO8s|7)AQcx{>gH3RBKIj?3-BALi@&WgDz+Mr;)0GV71EY z7Uz|dt{9IB%l@z5*wzOSsc`*_s(v}a-i`kz8sE)+Y>MGO@g$Pa(L(f5m{-9!bSaat zOg|TS6`)wLP*-H-#qQLjvpPAl#B|i0W3yU_mg3Kmev*H)38YhKl8J9Y8+|)SwaPlciED8Z^rO zF26gddx{H)Bp(h7n>N-uqZ8}i1g=XJC6e#Q;O5cAz2Pt$ysqMGv|P-c(b^;E*e3Mf zlJk1!MC4cs+)LxDGVD&bTFz;;VzHFn5m<{G5L+7N@qU&OFfr0H%-O>F4)C!GpdtJv+7!s z(Qq|EOy={0TI2&>eczj>;twd%R;R`rJ3!`(7JmTlQNGN}o{UIFZZY5TmDvl+8Kzi= zujj0WVsfrBY(v^Q*)E?|bLuRUtZ^JC`P5{rppd7uIM*(dNqk}sP(jqBa^BQ8z#ikV z))Ur9@0d{8xY+X;!I;6Fc!fkiQ!_2|qqc1**B{C(B0Nku9sZC|$N8Rr4iSIr!1ZC8 zbUWK{duCncjsHhKTW^Q@zjDINQY^=E^M!KevxVkxRjY6v2 z2fZA+P-l9t1$FByPPmVi-)wH8;y-e@EkFS1zUknd(^yH3ml@ZaWEC%AyEq{}ToHy6 zMJ_kZQ-YaNxQ7Bp;^QUVE~ z;oJ68beCt$P)tdgbVKz0^BtAR(h}Svf+$*~JjefR**IwX*6Ipu9)1bjT6=LkqCa!ATcTvEHv| zCSoWV|H|lxX;9un&G(4+YeKYNL$6X$LBvF`3WjM4;MtFQ!_Ic z$_~^B)CkL_Te$Zz4cgGoz&6+CjlUJvp%5#C$`la7wr;FKfkc8<9)6`SJB5xB#s0tC zBp>tQ{S`4HU{ph;C%T@c}e3bXr($)1{YK4<}bctruhINCnZl#p?rauGw5qyPpQZlSHWr-iqNv zzV}tur-9pF-NapW*Ps40PTaJBgr|u?GEn`7;cNdq4}fUR{IAeF@<*)yJc12RwSdaF z%9MHuuwv{9ds)#28lmD->a`xc?Xspti5?RWSbcI$!r%4u5zM2LcH}bY%+P z-B3UKeXS~ZdV84E2b}~h8+1$*jYiWav2&3QIeYGE@^Adi#q%jn)#0By#+SVUvre3Wm`GUXrmr2 zq#$*i2PY7Yi4qm{w5j9dn=c6rGwJQCbz)#l=gXVI`~Se*Nok2}!$_&pZia#srJ(9) zgPO*5^?I5;)B!}zHTJEBFZDn?yYd7OKpUplA^OCA3G4>A6}JyFMP|bu7su>>tU9^@X$FUWNqhruqK@Ffrb25MbMVT@)Ks7S&>= z+e%YZ+-vMKrPW9Y+L&l&v$1NJp{6?;3oB1uC%MUcF5`ot{+`~ziUt6(7m z4%W63GHlA_EbG7sq1RQE%DqV8@j|k3%r@nOC%sqoc{@I_{v-o3Mmo(8Hl#M|) zX@D#nP3IgzE7N+CTY<;Z4FmRuM__yhDhL2yiaSpvZ@ zZ0ASdvj{7p(Q->?_?<6DYziwec52=e7cXrBhJM~oTqM>=E7*x}lY)R_vzCn4u=+V@ zjnBuX4E&I7E!$nalJw#(ne`;FIVggyh*I|RgkZ_3JG=ooElbGZF>GA?r93a_;Ro@3 zR?6qD)8Fi#O4d9ZAS_v;7WGNInrOn^SUwT8HCRsmy!45&yKQTTVwF{cs#M=0mG_0PHE&Gd&I$aMCaB*9juk5#`Y}F^lG=Y4 zptu)9!-(iuM?pd@dX72e)j|cx6iiyJiBW!fczAI;1@V%VSEz7vx!^y_9%TNj<*EH9_mD?);(&d+YbC$V7uG_qn0gP?Z!%T5&q=Z z8s9YY=40`r)~0KuU&jk}t8*b?F{85*&}vL49PI8Y#LLgSbV!{4EaL;{@W(g9eCs_& z)k`r`mKe6xP<3R8n?v;*tz|+pK4KQVPiWD!F$vW$sOQV2%e2P4>wJiLCkH`6rDxsDfK1Uo2GFLMn9!Q#FZH zUm^RzMRnuWdP0m|)=rGpKqlPPEat} z^v#uclp3)!#~>s?IXEulq2|K;CdSt0A$Ks2GN==yqa?6?GWweG!_wYoemOw=z!#A7 z+AhcVzu^fAn8#t&DkN113Kp04{r8z z7Oq#{=B8B;UlMX;MnYU#Q0^W%TF8b~u+8@>C^G9RuuGhDqG;i+P08w=}H?g!H|upM=o%D|<4H8KNrP?eE_!wdu1~{sY)N z5we~~yOJ0W?x-WS*bETR%Hd7cuR{6$hxZS5Z(InN?ZF&Am||v+ZXY(BZ1KZZTD~ZA z?X)?6Y&lIW5J>7IGQTQ+iWt|@u(s-cLI-6IWCla%`v>=K&oc%$CP@rrhB3QE3xm7O z-}4xf#73P-KFm{-PWo_kn1ZHFS_XDZs!MMQY!m?=qv#tzzd?fJ>xN|iEW1JWd->E` z(zxrlUsce-arUyl|8)P#2mWP|)`TY?Bz&sB+)!Z)oHy3f3{1~OPipU~L?n&U=#FAv zxc#~q2SYC}-uq+`6o(DB5PC~Bpimw=&M)(OyD`hvE3U+A#d0z;c{3 zI!n&0qAm$=zx96XBh?dlwGmsyCLhqJXV(ALl3tAEZ#4_rgpJ!`uD$rL!KKHcyZgB6 zE^knpYGQ9W<;+rGrkHIjb9arPh+X}6k~4M(>Va3 z5;GxQ8{+KKt%Yz(*)XP>JAy-H(7C_!3gbaq1=la_pm5!F^?rXbx0C zANh)DZutRrd*Q0QkZiNOb^Ir$aZ`9pAJSVi_2&BnOt410Sk&u)@jxvx3efz^{}2}g zFoU7}D98s$B|7t-&pgT*Sd6+5j(mb+{75pEyJ;~|N>PBOm4 zF-x18yhPo<;Mc49@EysQ?|%u~(Kl;ue_fR>&i6ZGXT#5R?_|-%)uXC6duX@AyG7sz z&wfDfB(a6Xet?GQ_Zi6=PCaD<&Wr6+kHFzaXe?z4NJi5ON`6C!e;v*K*hh@K>YN@c zINME+oEc>Ow8B}+UEjc~yBnMQ+%Oh99F42APXY+0rm<+Tl%GQkU5NWE{JJ|{9X;7> zbMx_zfNPZ6d~m=NX^Mj%2kc_n3)$t^E&9mI~ta9+%RsAd5c<22+R?Y4D9VCy=w9GR@i97@jOK?hn} z;f!B9J(Vh`9>;Hrcc^duwh3|8?tpf%(GHX~26e?$P$gUZ7RbcCFV#NDcgqHbaGq4c z^_=i!B)dNSSBQ;Cl=-MlpVNatY}>&PFpo->J%#mlU4m z%EL888tsk;i)C0yl_-6l8-z?my?6Wq^sDNw5Pfr`6cTOy>gYXf(v5C~(~ZPXRtUv^ zru`ef?M(4?Nd`scRx2q;nx6h1&wNW*$%#-b)uYv`%(#&3 zbnirh!Q_!Ndr^MAMcx>cf5_J7piV|%6+k)U(%#T@u?3y+&h8~Rup>Np7ShCctsZ_) z5*g#dqHy+yp?tKIY(FL}5WsoLDViy@^`xp6cBK~VH3>2sg4(e6n zzH=Jt*3mQYG%&nMY>}mQ(Z;;(j9)GG|8?4o`=Yg{bfN_Ek_q^L3@=D#AIii&5E*LC zs1{-J6jr!X@qMjFsk4}|Nd1%;!nB}-jkTSpN1$zbR^E+sH}D@@;Jb& z+r4uUS>mQMGp;RZI=8tyK}Or~8gdUaTw0=x{VvdvCkC*CJ7o~Hu62U1baMSQ7Tze% z{uM1&eX2j#y<{srI5QeWxgfsfSq|!g@K?vZ{nnQuUQ)RBi`_@QZbO!jg8XckOxBrh zb^w(RhuaY^5oERQl2x(gn|9B3ue z+k%~xK6DpJxe!FoN!Ks?bA$ZugXkwAd+3eNOXJZz_G^7aMk%A&uKl!8;&H&ufw$xb z7af)Ujh|K95R z z5j8BA{S((EbdnlvKSvW95SG?DJZOzbjqP_kjd2!`hs0H#5hS^$QW`f@0DZ$syR~d~ zv@h2zo8q1Cc`!>_|%6B)2-p&Q*PbGq!)`^Z>>#Jy1Cui7n;jQ$71}yU(57l?(sBR zVltP|r`htK6)O%16ooK~y_&Y$IU#V=!Q~o#3v1s_4ZG%zQH{42sTeO)3~@1LAjarQq8Hj$C(L?wxmY#{o8dm#0Rf@hr7+ z%eBjsE}wp%ulKVF)U8+U2egXx-$eZ;N70sVIyDOk2{99i6vsj}njenEDe%-S1Q-0l-G#8n-tF`DUyuvpRO7NP zr2m4&{A6q?6@O8h$YdR}9HtW@o1X^!Sz%B?&atj#!=MnGWG*FDV(ju#Z2+Skz4O~G zoUcu!^6TCCeT(FR=s>?L3@a?An<|zqY3_(+(riE%d0iW~J99|C7v8XU&o0D??10`> z=(T7ZW(D5&`?eg~kKLWT9_9LDr1uXo+e=_a)?fkW6rG}2(V|GPt*&Igi95|3WYm3C^7)IVgBGSB~5zH@I`ZWB)(y8wsUcBJs>4%57| z4-aZ%RLx%?<`jFLOXn~lwxah)Yz@`Pl|1H@>0dtQZV96p{Y@QSjn&4eA>lNhkfG?V}+ME?KH1X!1cdBsMC6dc_Ezhn^14;&Qo`{1Ie8)M@ z_+UhSlcUOaF{M4-lHc2}vfE1Skb2$VjjY6rwN|e>&SNHtvUx($Di2WQ2dMP# z7U{yDmM3CKa0M(6q|}}2GMdt)p~$ij6<_Z@zBdub*}e*Eg>v+!viO&e%RVpsktOgz zwXGy42cTds@Hw05ccu=z&8Kxf?2EY1YJwy2l-GU){0PSufz=4)P|3L3|1*tdL=N5+ z=#=0m7LzTn%sfMU+C3{E*CN4Q=NYK=#c9ufEZ9&(D>tA z9v)4W1l5Y;WsTyz$hBA`#{}-@?KFz9u>*JkYb8Q^ z7*GFJp~x?Rw~cm{hH=Aa!A7Xe{_=N^s@b!DZR37Y22bn05veM~d6^-uNzf^kI)H1; zoER%ip;^*TI8C@n&{@XKe#3nDwzz1DZg z-er1jaYOUv%eSLE^A|newoj|ri~#Sq$83k&L}3T8o;JJCY#;etmNDNT`_MIva`;WJ z={Nce#+wzNKScOm1+#fPU(5!cX-HM_8Ey|N%$Ke$u$hl>={!w|B6zB{Ci5Hba@;?j zam&(aOLf90=Nku*WBjx7Z%^KmbUqGRGqq)(XW#D`UflE3=5TnnxoI(;S#@uq?{Lhm z4xo^Iv5{&VHq(pJlWQ@X2bh1o!e8xFw2@W*MM=Y?5V2dJ8OcoL82WJdUC>ZQkju>Uu-}-$X#L}R z$;><%=_m7Q9vI5=LU~36Eun`0*+VLrm3Rh7B5cjb2{pFMycRUzbm*Cpb$hW@6o_AR z1K6sffKO58^T`I^>6~#{-)WKzI&n$p(BWmySA>#3&=>x1Jc#ynNz#S1{yg2wavBr& zhjW*{4*TL?K9=>^56<7Y>f38!BH#01s0-}){fqYx0(?> zeSSUqGWWya?}v>|E(VW_DvSh7I=ja!7r@9D=8z`xT7{`^4U9sc@=kTaJ|?of)jWx% zil~vI%?dO8IMax+r9N{fq42^|q{@#{M;eA^8+ny$tJH*W&^xJ@t^X{VTqDp5@7l33 zx)x?gF)yB1gy;kv8$feV{33+r2l@7uMCy*D<_Z`OCQr0Cyn*gqYTvAbOnY7 zgR;$6QVZOD7EQV-jX)3Y<#wYufOWHzwbs6ka8-bvKKRzzkh9I6VPg)WVZckBIr$98J;65&H9y< z1fUSZU^_snK~bwZ6!|vi&W?D{+R@C;da^6JXUle=%ip^P>E-P-d+vDDbQ|@l zL=Y4Zc@|Pyqn%;dKk_4N*jKHyGn_L%owti9JnKjkoq)jEjRAw%QDhF_o4(mV+(J1y zaC0qmr;1MFqH*%Fab1yQF;EH9p?>6s3GtPdRX(!&cJC57*UXyI>U`4j)6L_(@i~}U z4`8;9$PfuihYq6&QMD8ZxTn+paQdaMhxn)$6QOYLF->)Wz0Wn5fKScPhYCR>*?y9rsA8WlE*~_fD z@{p;Nnm<1&@iAGBY_?o~Hx5u&lZ^6L+NF%lPdnSVWQct+J@5ypl;L`%)66yz$n^b{ z=WRH~Z@;E=1y06(K63N7xAMckH}g?qm?8q&7(c^|9GOoGD69dkXIH)DR+mSv$@sD`Zen3n z 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 From 7a0ea55ff109106abb35174561f6aabe323efe76 Mon Sep 17 00:00:00 2001 From: Henry Date: Mon, 29 Dec 2025 14:00:03 +0000 Subject: [PATCH 3/6] Created Parallax2D background nodes from existing starfield background. --- main.tscn | 6 ++- parallax/background stars.png | Bin 0 -> 606 bytes parallax/background stars.png.import | 40 +++++++++++++++ parallax/foreground stars.png | Bin 0 -> 1800 bytes parallax/foreground stars.png.import | 40 +++++++++++++++ parallax/foreground stars_b.png | Bin 0 -> 595 bytes parallax/foreground stars_b.png.import | 40 +++++++++++++++ parallax/midground stars.png | Bin 0 -> 585 bytes parallax/midground stars.png.import | 40 +++++++++++++++ parallax_starfield.tscn | 66 +++++++++++++++++++++++++ 10 files changed, 231 insertions(+), 1 deletion(-) create mode 100644 parallax/background stars.png create mode 100644 parallax/background stars.png.import create mode 100644 parallax/foreground stars.png create mode 100644 parallax/foreground stars.png.import create mode 100644 parallax/foreground stars_b.png create mode 100644 parallax/foreground stars_b.png.import create mode 100644 parallax/midground stars.png create mode 100644 parallax/midground stars.png.import create mode 100644 parallax_starfield.tscn diff --git a/main.tscn b/main.tscn index 0f56aad..a845595 100644 --- a/main.tscn +++ b/main.tscn @@ -1,7 +1,8 @@ -[gd_scene load_steps=13 format=3 uid="uid://cc2dnhuv4qx7m"] +[gd_scene load_steps=14 format=3 uid="uid://cc2dnhuv4qx7m"] [ext_resource type="Script" uid="uid://c51huloycn5as" path="res://main.gd" id="1_h2yge"] [ext_resource type="Texture2D" uid="uid://jj8b7vqj3ihx" path="res://Mini Pixel Pack 3/Space_BG (2 frames) (64 x 64).png" id="1_ig7tw"] +[ext_resource type="PackedScene" uid="uid://tlcdxoupi2lb" path="res://parallax_starfield.tscn" id="2_5vw27"] [ext_resource type="PackedScene" uid="uid://s6wf3egdqtmh" path="res://ui.tscn" id="4_1bvp3"] [ext_resource type="Texture2D" uid="uid://db2v7dea5wi4" path="res://title - no border.png" id="4_7mycd"] [ext_resource type="Shader" uid="uid://x02irwg8ynvp" path="res://pixel_highlight.gdshader" id="4_272bh"] @@ -60,7 +61,10 @@ shader_parameter/pixelate_line = 0 [node name="Main" type="Node2D"] script = ExtResource("1_h2yge") +[node name="Parallax Starfield" parent="." instance=ExtResource("2_5vw27")] + [node name="background" type="Sprite2D" parent="."] +visible = false z_index = -4 texture_repeat = 2 material = SubResource("ShaderMaterial_5vw27") diff --git a/parallax/background stars.png b/parallax/background stars.png new file mode 100644 index 0000000000000000000000000000000000000000..88cf45920ae26370428684a999a62c8054a894f5 GIT binary patch literal 606 zcmV-k0-^nhP)n>TNM zsrm7GZzS0&TSbYDUkm;Mw#r&5A|-3K#D?iPZ{E~M=G@LbpZmS{obEjrT+xh{HS2tk z%@vHucu1L>Ur-ueannf?K|HEv>Lb(BVXE5aJvDZ`?XzoDKliUS#}lRoHI2fNQy;dU*p#)Z#>dkwju@SUy49DcDm=Ct~OyM^^0S_SW6pOVR<>; zY-U9(-^YH5JCU26k=P~PiAjWULMTi!#wY;>7?L?aAAb5}MU{MCDSwK*2cdENXQ2%UM@7>U_4aF_X`Z}_#;xW`d!DX(J zpFf1)hv-`s&3gc?8*qMA(PF!Bu?ZcIx@xE;saD*TOv2kKw9JF&2AUR~o|X4Gd4TA; zeAPAV?L&{8Z(aHUk>qFjn6LsD00009a7bBm000XU000XU0RWnu7ytkOgh@m}RCt{2 z+_4RVKnw-YD^sJakSfDar(zjaU0Guy<-%h``0000000000 s0B|Ti**QGf8vp=+|D>lK-!bj_2lS*HW@uSs;{X5v07*qoM6N<$f|xr2zyJUM literal 0 HcmV?d00001 diff --git a/parallax/background stars.png.import b/parallax/background stars.png.import new file mode 100644 index 0000000..aa8a6ad --- /dev/null +++ b/parallax/background stars.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bn5iw6fm88p2i" +path="res://.godot/imported/background stars.png-844e616782bec8464721a90faeb774cb.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://parallax/background stars.png" +dest_files=["res://.godot/imported/background stars.png-844e616782bec8464721a90faeb774cb.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +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/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +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/parallax/foreground stars.png b/parallax/foreground stars.png new file mode 100644 index 0000000000000000000000000000000000000000..6aeb5e0383d92ac631479072196555d7e6f031a2 GIT binary patch literal 1800 zcmeAS@N?(olHy`uVBq!ia0vp^*+8tw!3HGn)r0~mmN}Ur5hW46K32*3xq68y`AMmI z6}bgKc?Jd>`-+0Z0VfjnEKjFOT9D}DX)@^Za$W4-*MbbUihOG|wNBYh(y zU7!lx;>x^|#0uTKVr7sK5Hnm-i<65o3raHc^Atd4CMM;Vme?vO0p%5-hL>cfAxzIJ zhI$_u5c(h)eM3D1ePrdS6`44cgJdw27i8p@lNSx_8OS&*t9lvvnXXk*T{Itv*pj>f~yOV;atFxJ*rJ0$oksibtV6<5Q^=773x+InWRT&u=nd%xE z=^9yv7#dj_n^+lIM1k!CD+FeQl*E!mJW4?+S-}RV*w@#}BeS?9zo-%{1WDe(sf7?8 zgqxEIPS*+w;MlcFOa=wEtx`czeoAR_Y6{q1pm7k{;{3Fd^2DN4$8=!C+A2AwrDX!6 zrBcCI&p;0nHE^Zn8L2>HuzE!w>Kc7e?t(eTMjyk$Hedxv*%7D@A_mOn!16*LUSI$@ z@FFKQ4_M9=0SlCSGHhB542%t#zzDzycm@WIiKP?IYr6!B9Jgl^RL;`T(TS4^%jlVP z%uSNh)H8WX{A~05x|KgaR^_YQ)QWcP?2YIC$F%KKl%|qu_O>H!FD>)$UGaE!=bY{Q z-+RB$d1osgbFpWd>Fb&aXGMEXRCvss9UmYSS9sY|*wJQH+AHPDmlIdrdTwi4w&(5U z>`?pf>rIafFJm+9J#=_ho=A&&%i-0mcb~~VEYn?kto3|LHSf*^ALgz-E>pMB^67`| zXWdMUxYn5^s($TG-XGyD9hq2Zc`ql;Rr~(&x=!nfv*%8{p?a^=v!&2U!^h~D1|yrq zBufYRx?icTQ)}Wi>$~w zodf>oM83a!VFT|`-P6CUHm!MNc*X8u>bgnu?OPtSzlat+Tg|Xmx}YxfV$$w{jhwRm zyRufOt_-^~)#uP{%`In|pR>&pn>%mncgxC#7rSb%n!b7K+&?Ej_7~&CC+R6=R{^FJ@q_tr|Caw{p~?Gm}eTJ`e|d-*@?Pn9)Zb8FF_d*Ao1dpUjU zHjUR}sqZ(+*q*v~{`=gvZ@-(Lp14$<`+UJN{;Gwg-dCzuZ4md^x?<%aCQw}k0Y7UQ Xxtz_}*K~F9fdo8V{an^LB{Ts5wqkcB literal 0 HcmV?d00001 diff --git a/parallax/foreground stars.png.import b/parallax/foreground stars.png.import new file mode 100644 index 0000000..8f9b53a --- /dev/null +++ b/parallax/foreground stars.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dpkeiihfos28m" +path="res://.godot/imported/foreground stars.png-ac6421cf56a60f87749797466fb3036c.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://parallax/foreground stars.png" +dest_files=["res://.godot/imported/foreground stars.png-ac6421cf56a60f87749797466fb3036c.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +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/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +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/parallax/foreground stars_b.png b/parallax/foreground stars_b.png new file mode 100644 index 0000000000000000000000000000000000000000..c38b9cf6ec211dbd36f81d7f1dae2c78ff634ffc GIT binary patch literal 595 zcmV-Z0<8UsP)n>TNM zsrm7GZzS0&TSbYDUkm;Mw#r&5A|-3K#D?iPZ{E~M=G@LbpZmS{obEjrT+xh{HS2tk z%@vHucu1L>Ur-ueannf?K|HEv>Lb(BVXE5aJvDZ`?XzoDKliUS#}lRoHI2fNQy;dU*p#)Z#>dkwju@SUy49DcDm=Ct~OyM^^0S_SW6pOVR<>; zY-U9(-^YH5JCU26k=P~PiAjWULMTi!#wY;>7?L?aAAb5}MU{MCDSwK*2cdENXQ2%UM@7>U_4aF_X`Z}_#;xW`d!DX(J zpFf1)hv-`s&3gc?8*qMA(PF!Bu?ZcIx@xE;saD*TOv2kKw9JF&2AUR~o|X4Gd4TA; zeAPAV?L&{8Z(aHUk>qFjn6LsD00009a7bBm000XU000XU0RWnu7ytkOc}YY;R9J=W z*0BwMAP`333l&jEupzNw0Xk=(x3RHj8WwUG9OG<^v9lE7`>HER{=5W{i|c|4+K{7V ztjZbJ1n>TNM zsrm7GZzS0&TSbYDUkm;Mw#r&5A|-3K#D?iPZ{E~M=G@LbpZmS{obEjrT+xh{HS2tk z%@vHucu1L>Ur-ueannf?K|HEv>Lb(BVXE5aJvDZ`?XzoDKliUS#}lRoHI2fNQy;dU*p#)Z#>dkwju@SUy49DcDm=Ct~OyM^^0S_SW6pOVR<>; zY-U9(-^YH5JCU26k=P~PiAjWULMTi!#wY;>7?L?aAAb5}MU{MCDSwK*2cdENXQ2%UM@7>U_4aF_X`Z}_#;xW`d!DX(J zpFf1)hv-`s&3gc?8*qMA(PF!Bu?ZcIx@xE;saD*TOv2kKw9JF&2AUR~o|X4Gd4TA; zeAPAV?L&{8Z(aHUk>qFjn6LsD00009a7bBm000XU000XU0RWnu7ytkOZ%IT!RA_h>mn6w{R`}SE?X27{ z!Zi~N000000002qTc+Jpy~Q%^^}LNGTqD5%;IGX&x=w+i=do{?bJSzKb`SUSdIx&} XaH$vY9Oi%+00000NkvXXu0mjf>j?mr literal 0 HcmV?d00001 diff --git a/parallax/midground stars.png.import b/parallax/midground stars.png.import new file mode 100644 index 0000000..2acf07c --- /dev/null +++ b/parallax/midground stars.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://c855276xbf7g6" +path="res://.godot/imported/midground stars.png-6f7b61cb3d46b7ae23c01472332a96f4.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://parallax/midground stars.png" +dest_files=["res://.godot/imported/midground stars.png-6f7b61cb3d46b7ae23c01472332a96f4.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +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/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +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/parallax_starfield.tscn b/parallax_starfield.tscn new file mode 100644 index 0000000..fa61075 --- /dev/null +++ b/parallax_starfield.tscn @@ -0,0 +1,66 @@ +[gd_scene load_steps=5 format=3 uid="uid://tlcdxoupi2lb"] + +[ext_resource type="Texture2D" uid="uid://dpkeiihfos28m" path="res://parallax/foreground stars.png" id="1_1f8kc"] +[ext_resource type="Texture2D" uid="uid://4n7q1wsq13ub" path="res://parallax/foreground stars_b.png" id="2_mewf1"] +[ext_resource type="Texture2D" uid="uid://c855276xbf7g6" path="res://parallax/midground stars.png" id="2_xwl8n"] +[ext_resource type="Texture2D" uid="uid://bn5iw6fm88p2i" path="res://parallax/background stars.png" id="3_mewf1"] + +[node name="Parallax Starfield" type="Node2D"] + +[node name="Foreground Stars" type="Parallax2D" parent="."] +scroll_scale = Vector2(1.5, 1) +scroll_offset = Vector2(52, 11) +repeat_size = Vector2(0, 128) +autoscroll = Vector2(0, 9) +repeat_times = 5 + +[node name="Sprite2D" type="Sprite2D" parent="Foreground Stars"] +modulate = Color(0.6524728, 0.65247285, 0.6524728, 1) +texture_repeat = 2 +position = Vector2(89, 133) +texture = ExtResource("1_1f8kc") +region_enabled = true +region_rect = Rect2(0, 0, 128, 32) + +[node name="Foreground Stars_b" type="Parallax2D" parent="."] +repeat_size = Vector2(0, 320) +autoscroll = Vector2(0, 7) +repeat_times = 5 + +[node name="Sprite2D" type="Sprite2D" parent="Foreground Stars_b"] +modulate = Color(0.71867925, 0.71867925, 0.71867925, 1) +texture_repeat = 2 +position = Vector2(151, 59) +texture = ExtResource("2_mewf1") +region_enabled = true +region_rect = Rect2(0, 0, 128, 32) + +[node name="Midground Stars" type="Parallax2D" parent="."] +scroll_scale = Vector2(0.75, 1) +repeat_size = Vector2(0, 320) +autoscroll = Vector2(0, 5) + +[node name="Sprite2D" type="Sprite2D" parent="Midground Stars"] +texture_repeat = 2 +position = Vector2(120, 160) +texture = ExtResource("2_xwl8n") +region_enabled = true +region_rect = Rect2(0, 0, 240, 320) + +[node name="Background Stars" type="Parallax2D" parent="."] +scroll_scale = Vector2(-1, 1) +repeat_size = Vector2(0, 320) +autoscroll = Vector2(0, 2) + +[node name="Sprite2D" type="Sprite2D" parent="Background Stars"] +texture_repeat = 2 +position = Vector2(120, 160) +texture = ExtResource("3_mewf1") +region_enabled = true +region_rect = Rect2(0, 0, 240, 320) + +[node name="ColorRect" type="ColorRect" parent="."] +z_index = -5 +offset_right = 239.0 +offset_bottom = 323.0 +color = Color(0, 0, 0, 1) From f1eec301672011898c4f449f8a304de1420f94b9 Mon Sep 17 00:00:00 2001 From: Henry Date: Wed, 31 Dec 2025 13:34:29 +0000 Subject: [PATCH 4/6] Decreased movement and shot delay of enemies based on number of enemies remaining; increased tween speed of enemy bounce at 25% remaining. --- enemy.gd | 10 +++++++--- main.gd | 16 ++++++++++++++++ main.tscn | 1 + player.gd | 3 +++ player.tscn | 26 +++++++++++++++++++++++++- project.godot | 1 + score_counter.gd | 4 ++++ ui.gd | 1 - 8 files changed, 57 insertions(+), 5 deletions(-) diff --git a/enemy.gd b/enemy.gd index f2a5df3..1523b21 100644 --- a/enemy.gd +++ b/enemy.gd @@ -3,9 +3,13 @@ extends Area2D var bullet_scene = preload("res://enemy_bullet.tscn") var start_pos = Vector2.ZERO var speed = 0 +var tween_speed: float = 1.4 var exploding = false +var enemy_move_aggression = randf_range(5, 20) +var enemy_shoot_aggression = randf_range(4, 20) + @onready var screensize = get_viewport_rect().size @@ -15,11 +19,11 @@ func start(pos): start_pos = pos await get_tree().create_timer(randf_range(0.25, 0.55)).timeout var tween = create_tween().set_trans(Tween.TRANS_BACK) - tween.tween_property(self, "position:y", start_pos.y, 1.4) + tween.tween_property(self, "position:y", start_pos.y, tween_speed) await tween.finished - $MoveTimer.wait_time = randf_range(5, 20) + $MoveTimer.wait_time = enemy_move_aggression $MoveTimer.start() - $ShootTimer.wait_time = randf_range(4, 20) + $ShootTimer.wait_time = enemy_shoot_aggression $ShootTimer.start() diff --git a/main.gd b/main.gd index aa23f33..af54c29 100644 --- a/main.gd +++ b/main.gd @@ -40,12 +40,28 @@ func spawn_enemies(): print_debug("Remaining enemies: ", enemy_count, ", ", get_tree().get_nodes_in_group("enemies").size()) + func _on_enemy_died(): enemy_count -= 1 print_debug(enemy_count) if enemy_count == 0: print_debug("Remaining enemies: ", enemy_count, ", ", get_tree().get_nodes_in_group("enemies").size()) win_game() + if enemy_count == ROWS * COLS / 2: + print_debug("Enemy count is 50%") + update_enemy_aggression(2,10) + if enemy_count == ROWS * COLS / 4: + print_debug("Enemy count is 25%") + update_enemy_aggression(1,1) + +func update_enemy_aggression(low,high): + var nodes = get_tree().get_nodes_in_group("enemies") + + for node in nodes: + if node is Area2D: + node.enemy_move_aggression = randf_range(low,high) + node.enemy_shoot_aggression = randf_range(low,high) + node.tween_speed = min(low,high) - .75 func _on_enemy_hit(value: int): Global.score += value diff --git a/main.tscn b/main.tscn index a845595..90df166 100644 --- a/main.tscn +++ b/main.tscn @@ -86,6 +86,7 @@ offset_right = 196.0 offset_bottom = 36.0 [node name="Title" type="TextureRect" parent="CanvasLayer"] +self_modulate = Color(0.015236704, 0.015236706, 0.0152367065, 1) material = SubResource("ShaderMaterial_kek77") offset_left = 27.0 offset_top = 74.0 diff --git a/player.gd b/player.gd index 0f483bd..3683998 100644 --- a/player.gd +++ b/player.gd @@ -37,6 +37,7 @@ func start(): print(shield) shader_active = false $Ship.frame = 1 + $Ship/Boosters/BoosterBurst.hide() $Ship/Boosters.hide() $Ship.show() position = Vector2(screensize.x / 2, screensize.y) @@ -123,9 +124,11 @@ func _on_damage_taken(): func _on_player_victory() -> void: print("Victory!") + # get_node("EnemyBullet").monitoring = false #TODO make sure bullets stop monitoring! set_process(false) $Ship.frame = 1 await get_tree().create_timer(1).timeout + $Ship/Boosters/BoosterBurst.show() var tween = create_tween() tween.tween_property(self, "position:y", 60 * -1, .25).set_ease(tween.EASE_IN) await tween.finished diff --git a/player.tscn b/player.tscn index 2f69b80..ed6f018 100644 --- a/player.tscn +++ b/player.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=18 format=3 uid="uid://pyuorpwb7lpe"] +[gd_scene load_steps=20 format=3 uid="uid://pyuorpwb7lpe"] [ext_resource type="Script" uid="uid://dcrnf4r6c5qaw" path="res://player.gd" id="1_sweqy"] [ext_resource type="PackedScene" uid="uid://bwxxdrdvo3le0" path="res://bullet.tscn" id="2_1jxqw"] @@ -73,6 +73,16 @@ animations = [{ "speed": 10.0 }] +[sub_resource type="CanvasItemMaterial" id="CanvasItemMaterial_dw050"] +particles_animation = true +particles_anim_h_frames = 2 +particles_anim_v_frames = 1 +particles_anim_loop = false + +[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_b26j0"] +particle_flag_disable_z = true +gravity = Vector3(0, 98, 0) + [sub_resource type="RectangleShape2D" id="RectangleShape2D_op7ga"] size = Vector2(14, 14) @@ -93,6 +103,20 @@ sprite_frames = SubResource("SpriteFrames_u1c27") animation = &"forward" autoplay = "forward" +[node name="BoosterBurst" type="GPUParticles2D" parent="Ship/Boosters"] +texture_repeat = 2 +material = SubResource("CanvasItemMaterial_dw050") +amount = 10 +texture = ExtResource("3_1jxqw") +lifetime = 0.75 +interp_to_end = 1.0 +preprocess = 1.83 +speed_scale = 15.69 +draw_order = 2 +trail_lifetime = 1.8499999999999999 +trail_sections = 2 +process_material = SubResource("ParticleProcessMaterial_b26j0") + [node name="CollisionShape2D" type="CollisionShape2D" parent="."] shape = SubResource("RectangleShape2D_op7ga") diff --git a/project.godot b/project.godot index 94dd867..8503f81 100644 --- a/project.godot +++ b/project.godot @@ -26,6 +26,7 @@ window/size/viewport_height=320 window/size/window_width_override=720 window/size/window_height_override=960 window/stretch/mode="canvas_items" +window/movie_file="/Users/henryfaber/Downloads/shmup_capture.avi" [editor] diff --git a/score_counter.gd b/score_counter.gd index ac10812..214ec7c 100644 --- a/score_counter.gd +++ b/score_counter.gd @@ -18,3 +18,7 @@ func display_digits(n): for i in 8: get_child(i).texture.region = Rect2(digit_coords[int(s[i])], Vector2(8, 8)) + # var tween = create_tween() + # tween.tween_property(get_node("HBoxContainer/ScoreCounter/Digit0"), "scale", scale + Vector2(.5,.5), .15) + # await get_tree().create_timer(.25).timeout + # tween.tween_property(get_node("HBoxContainer/ScoreCounter/Digit0"), "scale", scale + Vector2(-.5,-.5), .15) diff --git a/ui.gd b/ui.gd index 2b67631..2ab18e3 100644 --- a/ui.gd +++ b/ui.gd @@ -13,7 +13,6 @@ func _ready(): func update_score(value): score_counter.display_digits(value) - func _on_shield_changed(max_value: int, old_value: int, new_value: int) -> void: shield_bar.max_value = max_value shield_bar.value = old_value From 02d14e913ca8e2ce7af80f3d0a250b76a69f9d35 Mon Sep 17 00:00:00 2001 From: Henry Date: Sat, 3 Jan 2026 18:08:32 +0000 Subject: [PATCH 5/6] Score now briefly pops to a larger size as it increases in value. --- .../UI objects/WINNER (72 x 8).png | Bin 0 -> 338 bytes .../UI objects/WINNER (72 x 8).png.import | 40 ++++++++++++++++++ project.godot | 1 + score_counter.gd | 24 ++++++++--- ui.gd | 4 ++ 5 files changed, 63 insertions(+), 6 deletions(-) create mode 100644 Mini Pixel Pack 3/UI objects/WINNER (72 x 8).png create mode 100644 Mini Pixel Pack 3/UI objects/WINNER (72 x 8).png.import diff --git a/Mini Pixel Pack 3/UI objects/WINNER (72 x 8).png b/Mini Pixel Pack 3/UI objects/WINNER (72 x 8).png new file mode 100644 index 0000000000000000000000000000000000000000..1ff6e70487fbe79b31f0fd1491303fa07401b18a GIT binary patch literal 338 zcmeAS@N?(olHy`uVBq!ia0vp^9ze{&!2~3)Ue~JuQtTz3zOL-g7`X-YSiYR|DNig)WpMX#0UD!FmRh7>tY=c#y5u3qh>`+7cc6?hkj>!LpeYZeSkfJR z9T^xl_H+M9WCilslDyqr82*Fcg1yTpgG5S#{DK+&GWarF-Z_h}0Vp!t)5S5QV$R*k z2YDM5cwBckds}dthnHwRH>^^~%=%sL_;it{uvcSv9rq^v+xot*3Z^Vdo1S>bZ}Itn z3vC|~14C)rb+39@CspKfG` zRt&oscqplTwm$ctjZ2Q6{9N(>c#Lk+gpUtvT^u)DD!cXmyLs=^-Y0Y9YctjUt(eO$ X`s9hn{@1cVXEJ!Y`njxgN@xNA-Y|a{ literal 0 HcmV?d00001 diff --git a/Mini Pixel Pack 3/UI objects/WINNER (72 x 8).png.import b/Mini Pixel Pack 3/UI objects/WINNER (72 x 8).png.import new file mode 100644 index 0000000..5a551d2 --- /dev/null +++ b/Mini Pixel Pack 3/UI objects/WINNER (72 x 8).png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dfbykvik8gknm" +path="res://.godot/imported/WINNER (72 x 8).png-842770cf011d495aed3a3bda96e3b342.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Mini Pixel Pack 3/UI objects/WINNER (72 x 8).png" +dest_files=["res://.godot/imported/WINNER (72 x 8).png-842770cf011d495aed3a3bda96e3b342.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +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/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +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/project.godot b/project.godot index 8503f81..489cca2 100644 --- a/project.godot +++ b/project.godot @@ -11,6 +11,7 @@ config_version=5 [application] config/name="shmup01b" +run/main_scene="uid://cc2dnhuv4qx7m" config/features=PackedStringArray("4.5", "Forward Plus") config/icon="res://icon.svg" diff --git a/score_counter.gd b/score_counter.gd index 214ec7c..80fabe7 100644 --- a/score_counter.gd +++ b/score_counter.gd @@ -1,5 +1,7 @@ extends HBoxContainer +var last_score: String = "00000000" + var digit_coords = { 1: Vector2(0, 0), 2: Vector2(8, 0), @@ -14,11 +16,21 @@ var digit_coords = { } func display_digits(n): + var s = "%08d" % n + var start = 8 - str(n).length() # Finds the starting position of the counter by converting the score to a string, minus the leading zeros. + var changed = false + for i in 8: - get_child(i).texture.region = Rect2(digit_coords[int(s[i])], - Vector2(8, 8)) - # var tween = create_tween() - # tween.tween_property(get_node("HBoxContainer/ScoreCounter/Digit0"), "scale", scale + Vector2(.5,.5), .15) - # await get_tree().create_timer(.25).timeout - # tween.tween_property(get_node("HBoxContainer/ScoreCounter/Digit0"), "scale", scale + Vector2(-.5,-.5), .15) + get_child(i).texture.region = Rect2(digit_coords[int(s[i])], Vector2(8, 8)) + if i >= start and s[i] != last_score[i]: + changed = true + if changed: + for i in 8: + if i >= start: + var tween = create_tween() + tween.tween_property(get_child(i), "scale", Vector2(2,2), .15).set_trans(Tween.TRANS_BOUNCE) + tween.tween_property(get_child(i), "position:y", +5, .15).set_ease(tween.TRANS_QUART) + tween.tween_property(get_child(i), "scale", Vector2(1,1), .15).set_trans(Tween.TRANS_BOUNCE) + tween.tween_property(get_child(i), "position:y", -5, .15).set_ease(tween.TRANS_QUART) + last_score = s diff --git a/ui.gd b/ui.gd index 2ab18e3..30787f3 100644 --- a/ui.gd +++ b/ui.gd @@ -12,6 +12,10 @@ func _ready(): func update_score(value): score_counter.display_digits(value) + # var digits = score_counter.get_children() + # var tween = create_tween() + # tween.tween_property(digits,"scale",2,.15) + func _on_shield_changed(max_value: int, old_value: int, new_value: int) -> void: shield_bar.max_value = max_value From accc46379196630c86513c2aa2b1a74d4545a797 Mon Sep 17 00:00:00 2001 From: Henry Date: Sat, 10 Jan 2026 18:26:44 +0000 Subject: [PATCH 6/6] Initial reorganization of shmup prroject; temp player sprites added. --- .../Effects/Explosion (16 x 16).png | Bin .../Effects/Explosion (16 x 16).png.import | 6 +-- .../Effects/Sparkle (16 x 16).png | Bin .../Effects/Sparkle (16 x 16).png.import | 6 +-- .../Enemies/Alan (16 x 16).png | Bin .../Enemies/Alan (16 x 16).png.import | 6 +-- .../Enemies/Bon_Bon (16 x 16).png | Bin .../Enemies/Bon_Bon (16 x 16).png.import | 6 +-- .../Enemies/Lips (16 x 16).png | Bin .../Enemies/Lips (16 x 16).png.import | 6 +-- ..._+_Square_+_Missile_pick-ups (16 x 16).png | Bin ...re_+_Missile_pick-ups (16 x 16).png.import | 6 +-- .../Items/Power_item (16 x 16).png | Bin .../Items/Power_item (16 x 16).png.import | 6 +-- .../Mini Pixel Pack 3}/LICENSE.txt | 0 .../Player ship/Boosters (16 x 16).png | Bin .../Player ship/Boosters (16 x 16).png.import | 6 +-- .../Player ship/Boosters_left (16 x 16).png | Bin .../Boosters_left (16 x 16).png.import | 6 +-- .../Player ship/Boosters_right (16 x 16).png | Bin .../Boosters_right (16 x 16).png.import | 6 +-- .../Player ship/Player_ship (16 x 16).png | Bin .../Player_ship (16 x 16).png.import | 6 +-- .../Enemy_projectile (16 x 16).png | Bin .../Enemy_projectile (16 x 16).png.import | 6 +-- .../Projectiles/Player_beam (16 x 16).png | Bin .../Player_beam (16 x 16).png.import | 6 +-- .../Player_charged_beam (16 x 16).png | Bin .../Player_charged_beam (16 x 16).png.import | 6 +-- .../Player_charged_donut_shot (16 x 16).png | Bin ...er_charged_donut_shot (16 x 16).png.import | 6 +-- .../Player_charged_square_shot (16 x 16).png | Bin ...r_charged_square_shot (16 x 16).png.import | 6 +-- .../Player_donut_shot (16 x 16).png | Bin .../Player_donut_shot (16 x 16).png.import | 6 +-- .../Player_missile_shots (16 x 16).png | Bin .../Player_missile_shots (16 x 16).png.import | 6 +-- .../Player_square_shot (16 x 16).png | Bin .../Player_square_shot (16 x 16).png.import | 6 +-- .../Space_BG (2 frames) (64 x 64).png | Bin .../Space_BG (2 frames) (64 x 64).png.import | 6 +-- .../UI objects/GAME_OVER (72 x 8).png | Bin .../UI objects/GAME_OVER (72 x 8).png.import | 6 +-- .../UI objects/Item_held_box (16 x 16).png | Bin .../Item_held_box (16 x 16).png.import | 6 +-- .../UI objects/Number_font (8 x 8).png | Bin .../UI objects/Number_font (8 x 8).png.import | 6 +-- .../UI objects/Player_life_icon (16 x 16).png | Bin .../Player_life_icon (16 x 16).png.import | 6 +-- ...+_charge_bars (full + empty) (32 x 16).png | Bin ...e_bars (full + empty) (32 x 16).png.import | 6 +-- .../UI objects/START (48 x 8).png | Bin .../UI objects/START (48 x 8).png.import | 6 +-- .../UI objects/WINNER (72 x 8).png | Bin .../UI objects/WINNER (72 x 8).png.import | 6 +-- .../bar_background.png | Bin .../bar_background.png.import | 6 +-- .../bar_foreground.png | Bin .../bar_foreground.png.import | 6 +-- .../parallax}/background stars.png | Bin .../parallax}/background stars.png.import | 6 +-- .../parallax}/foreground stars.png | Bin .../parallax}/foreground stars.png.import | 6 +-- .../parallax}/foreground stars_b.png | Bin .../parallax}/foreground stars_b.png.import | 6 +-- .../parallax}/midground stars.png | Bin .../parallax}/midground stars.png.import | 6 +-- .../title - no border.png | Bin .../title - no border.png.import | 6 +-- title_white.png => _graphics/title_white.png | Bin .../title_white.png.import | 6 +-- project.godot | 6 +-- bullet.gd => scenes/bullet.gd | 0 bullet.gd.uid => scenes/bullet.gd.uid | 0 bullet.tscn => scenes/bullet.tscn | 4 +- enemy.gd => scenes/enemy.gd | 2 +- enemy.gd.uid => scenes/enemy.gd.uid | 0 enemy.tscn => scenes/enemy.tscn | 6 +-- enemy_bullet.gd => scenes/enemy_bullet.gd | 0 .../enemy_bullet.gd.uid | 0 enemy_bullet.tscn => scenes/enemy_bullet.tscn | 4 +- event_bus.gd => scenes/event_bus.gd | 0 event_bus.gd.uid => scenes/event_bus.gd.uid | 0 explosion.tscn => scenes/explosion.tscn | 2 +- global.gd => scenes/global.gd | 0 global.gd.uid => scenes/global.gd.uid | 0 main.gd => scenes/main.gd | 4 +- main.gd.uid => scenes/main.gd.uid | 0 main.tscn => scenes/main.tscn | 49 +++++++++--------- .../parallax_starfield.tscn | 8 +-- player.gd => scenes/player.gd | 14 ++--- player.gd.uid => scenes/player.gd.uid | 0 player.tscn => scenes/player.tscn | 22 ++++---- progress_bar.gd => scenes/progress_bar.gd | 0 .../progress_bar.gd.uid | 0 progress_bar.tscn => scenes/progress_bar.tscn | 6 +-- score_counter.gd => scenes/score_counter.gd | 4 +- .../score_counter.gd.uid | 0 .../score_counter.tscn | 4 +- ui.gd => scenes/ui.gd | 0 ui.gd.uid => scenes/ui.gd.uid | 0 ui.tscn => scenes/ui.tscn | 10 ++-- crt.gdshader => shaders/crt.gdshader | 0 crt.gdshader.uid => shaders/crt.gdshader.uid | 0 .../pixel_highlight.gdshader | 0 .../pixel_highlight.gdshader.uid | 0 .../player_hit.gdshader | 0 .../player_hit.gdshader.uid | 0 .../starfield.gdshader | 0 .../starfield.gdshader.uid | 0 sprites/coop.png | Bin 0 -> 1452 bytes sprites/coop.png.import | 40 ++++++++++++++ sprites/third space bgrnd.png | Bin 0 -> 25059 bytes sprites/third space bgrnd.png.import | 40 ++++++++++++++ sprites/third space title.png | Bin 0 -> 422 bytes sprites/third space title.png.import | 40 ++++++++++++++ 116 files changed, 298 insertions(+), 177 deletions(-) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Effects/Explosion (16 x 16).png (100%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Effects/Explosion (16 x 16).png.import (72%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Effects/Sparkle (16 x 16).png (100%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Effects/Sparkle (16 x 16).png.import (73%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Enemies/Alan (16 x 16).png (100%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Enemies/Alan (16 x 16).png.import (74%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Enemies/Bon_Bon (16 x 16).png (100%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Enemies/Bon_Bon (16 x 16).png.import (73%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Enemies/Lips (16 x 16).png (100%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Enemies/Lips (16 x 16).png.import (74%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Items/Circle_+_Square_+_Missile_pick-ups (16 x 16).png (100%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Items/Circle_+_Square_+_Missile_pick-ups (16 x 16).png.import (79%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Items/Power_item (16 x 16).png (100%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Items/Power_item (16 x 16).png.import (72%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/LICENSE.txt (100%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Player ship/Boosters (16 x 16).png (100%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Player ship/Boosters (16 x 16).png.import (72%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Player ship/Boosters_left (16 x 16).png (100%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Player ship/Boosters_left (16 x 16).png.import (71%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Player ship/Boosters_right (16 x 16).png (100%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Player ship/Boosters_right (16 x 16).png.import (77%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Player ship/Player_ship (16 x 16).png (100%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Player ship/Player_ship (16 x 16).png.import (72%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Projectiles/Enemy_projectile (16 x 16).png (100%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Projectiles/Enemy_projectile (16 x 16).png.import (77%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Projectiles/Player_beam (16 x 16).png (100%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Projectiles/Player_beam (16 x 16).png.import (72%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Projectiles/Player_charged_beam (16 x 16).png (100%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Projectiles/Player_charged_beam (16 x 16).png.import (76%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Projectiles/Player_charged_donut_shot (16 x 16).png (100%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Projectiles/Player_charged_donut_shot (16 x 16).png.import (81%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Projectiles/Player_charged_square_shot (16 x 16).png (100%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Projectiles/Player_charged_square_shot (16 x 16).png.import (81%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Projectiles/Player_donut_shot (16 x 16).png (100%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Projectiles/Player_donut_shot (16 x 16).png.import (77%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Projectiles/Player_missile_shots (16 x 16).png (100%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Projectiles/Player_missile_shots (16 x 16).png.import (76%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Projectiles/Player_square_shot (16 x 16).png (100%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Projectiles/Player_square_shot (16 x 16).png.import (76%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Space_BG (2 frames) (64 x 64).png (100%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/Space_BG (2 frames) (64 x 64).png.import (77%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/UI objects/GAME_OVER (72 x 8).png (100%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/UI objects/GAME_OVER (72 x 8).png.import (72%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/UI objects/Item_held_box (16 x 16).png (100%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/UI objects/Item_held_box (16 x 16).png.import (71%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/UI objects/Number_font (8 x 8).png (100%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/UI objects/Number_font (8 x 8).png.import (72%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/UI objects/Player_life_icon (16 x 16).png (100%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/UI objects/Player_life_icon (16 x 16).png.import (77%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/UI objects/Power_+_charge_bars (full + empty) (32 x 16).png (100%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/UI objects/Power_+_charge_bars (full + empty) (32 x 16).png.import (79%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/UI objects/START (48 x 8).png (100%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/UI objects/START (48 x 8).png.import (73%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/UI objects/WINNER (72 x 8).png (100%) rename {Mini Pixel Pack 3 => _graphics/Mini Pixel Pack 3}/UI objects/WINNER (72 x 8).png.import (73%) rename bar_background.png => _graphics/bar_background.png (100%) rename bar_background.png.import => _graphics/bar_background.png.import (76%) rename bar_foreground.png => _graphics/bar_foreground.png (100%) rename bar_foreground.png.import => _graphics/bar_foreground.png.import (76%) rename {parallax => _graphics/parallax}/background stars.png (100%) rename {parallax => _graphics/parallax}/background stars.png.import (74%) rename {parallax => _graphics/parallax}/foreground stars.png (100%) rename {parallax => _graphics/parallax}/foreground stars.png.import (74%) rename {parallax => _graphics/parallax}/foreground stars_b.png (100%) rename {parallax => _graphics/parallax}/foreground stars_b.png.import (74%) rename {parallax => _graphics/parallax}/midground stars.png (100%) rename {parallax => _graphics/parallax}/midground stars.png.import (75%) rename title - no border.png => _graphics/title - no border.png (100%) rename title - no border.png.import => _graphics/title - no border.png.import (75%) rename title_white.png => _graphics/title_white.png (100%) rename title_white.png.import => _graphics/title_white.png.import (76%) rename bullet.gd => scenes/bullet.gd (100%) rename bullet.gd.uid => scenes/bullet.gd.uid (100%) rename bullet.tscn => scenes/bullet.tscn (87%) rename enemy.gd => scenes/enemy.gd (95%) rename enemy.gd.uid => scenes/enemy.gd.uid (100%) rename enemy.tscn => scenes/enemy.tscn (95%) rename enemy_bullet.gd => scenes/enemy_bullet.gd (100%) rename enemy_bullet.gd.uid => scenes/enemy_bullet.gd.uid (100%) rename enemy_bullet.tscn => scenes/enemy_bullet.tscn (87%) rename event_bus.gd => scenes/event_bus.gd (100%) rename event_bus.gd.uid => scenes/event_bus.gd.uid (100%) rename explosion.tscn => scenes/explosion.tscn (94%) rename global.gd => scenes/global.gd (100%) rename global.gd.uid => scenes/global.gd.uid (100%) rename main.gd => scenes/main.gd (97%) rename main.gd.uid => scenes/main.gd.uid (100%) rename main.tscn => scenes/main.tscn (81%) rename parallax_starfield.tscn => scenes/parallax_starfield.tscn (89%) rename player.gd => scenes/player.gd (92%) rename player.gd.uid => scenes/player.gd.uid (100%) rename player.tscn => scenes/player.tscn (85%) rename progress_bar.gd => scenes/progress_bar.gd (100%) rename progress_bar.gd.uid => scenes/progress_bar.gd.uid (100%) rename progress_bar.tscn => scenes/progress_bar.tscn (81%) rename score_counter.gd => scenes/score_counter.gd (83%) rename score_counter.gd.uid => scenes/score_counter.gd.uid (100%) rename score_counter.tscn => scenes/score_counter.tscn (95%) rename ui.gd => scenes/ui.gd (100%) rename ui.gd.uid => scenes/ui.gd.uid (100%) rename ui.tscn => scenes/ui.tscn (87%) rename crt.gdshader => shaders/crt.gdshader (100%) rename crt.gdshader.uid => shaders/crt.gdshader.uid (100%) rename pixel_highlight.gdshader => shaders/pixel_highlight.gdshader (100%) rename pixel_highlight.gdshader.uid => shaders/pixel_highlight.gdshader.uid (100%) rename player_hit.gdshader => shaders/player_hit.gdshader (100%) rename player_hit.gdshader.uid => shaders/player_hit.gdshader.uid (100%) rename starfield.gdshader => shaders/starfield.gdshader (100%) rename starfield.gdshader.uid => shaders/starfield.gdshader.uid (100%) create mode 100644 sprites/coop.png create mode 100644 sprites/coop.png.import create mode 100644 sprites/third space bgrnd.png create mode 100644 sprites/third space bgrnd.png.import create mode 100644 sprites/third space title.png create mode 100644 sprites/third space title.png.import diff --git a/Mini Pixel Pack 3/Effects/Explosion (16 x 16).png b/_graphics/Mini Pixel Pack 3/Effects/Explosion (16 x 16).png similarity index 100% rename from Mini Pixel Pack 3/Effects/Explosion (16 x 16).png rename to _graphics/Mini Pixel Pack 3/Effects/Explosion (16 x 16).png diff --git a/Mini Pixel Pack 3/Effects/Explosion (16 x 16).png.import b/_graphics/Mini Pixel Pack 3/Effects/Explosion (16 x 16).png.import similarity index 72% rename from Mini Pixel Pack 3/Effects/Explosion (16 x 16).png.import rename to _graphics/Mini Pixel Pack 3/Effects/Explosion (16 x 16).png.import index a924031..e89ffe5 100644 --- a/Mini Pixel Pack 3/Effects/Explosion (16 x 16).png.import +++ b/_graphics/Mini Pixel Pack 3/Effects/Explosion (16 x 16).png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://h04wm5a27u0" -path="res://.godot/imported/Explosion (16 x 16).png-ebecf90aec797295bb48cf06289281f5.ctex" +path="res://.godot/imported/Explosion (16 x 16).png-10ea06824753728dfc19ef226632248a.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Mini Pixel Pack 3/Effects/Explosion (16 x 16).png" -dest_files=["res://.godot/imported/Explosion (16 x 16).png-ebecf90aec797295bb48cf06289281f5.ctex"] +source_file="res://_graphics/Mini Pixel Pack 3/Effects/Explosion (16 x 16).png" +dest_files=["res://.godot/imported/Explosion (16 x 16).png-10ea06824753728dfc19ef226632248a.ctex"] [params] diff --git a/Mini Pixel Pack 3/Effects/Sparkle (16 x 16).png b/_graphics/Mini Pixel Pack 3/Effects/Sparkle (16 x 16).png similarity index 100% rename from Mini Pixel Pack 3/Effects/Sparkle (16 x 16).png rename to _graphics/Mini Pixel Pack 3/Effects/Sparkle (16 x 16).png diff --git a/Mini Pixel Pack 3/Effects/Sparkle (16 x 16).png.import b/_graphics/Mini Pixel Pack 3/Effects/Sparkle (16 x 16).png.import similarity index 73% rename from Mini Pixel Pack 3/Effects/Sparkle (16 x 16).png.import rename to _graphics/Mini Pixel Pack 3/Effects/Sparkle (16 x 16).png.import index c3915f5..2976ed4 100644 --- a/Mini Pixel Pack 3/Effects/Sparkle (16 x 16).png.import +++ b/_graphics/Mini Pixel Pack 3/Effects/Sparkle (16 x 16).png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://dh6xvjf8hur3x" -path="res://.godot/imported/Sparkle (16 x 16).png-0eec6e943106564747a5e3e618d9c5a3.ctex" +path="res://.godot/imported/Sparkle (16 x 16).png-51f692d945a1c4cd8aa46e1db0e33571.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Mini Pixel Pack 3/Effects/Sparkle (16 x 16).png" -dest_files=["res://.godot/imported/Sparkle (16 x 16).png-0eec6e943106564747a5e3e618d9c5a3.ctex"] +source_file="res://_graphics/Mini Pixel Pack 3/Effects/Sparkle (16 x 16).png" +dest_files=["res://.godot/imported/Sparkle (16 x 16).png-51f692d945a1c4cd8aa46e1db0e33571.ctex"] [params] diff --git a/Mini Pixel Pack 3/Enemies/Alan (16 x 16).png b/_graphics/Mini Pixel Pack 3/Enemies/Alan (16 x 16).png similarity index 100% rename from Mini Pixel Pack 3/Enemies/Alan (16 x 16).png rename to _graphics/Mini Pixel Pack 3/Enemies/Alan (16 x 16).png diff --git a/Mini Pixel Pack 3/Enemies/Alan (16 x 16).png.import b/_graphics/Mini Pixel Pack 3/Enemies/Alan (16 x 16).png.import similarity index 74% rename from Mini Pixel Pack 3/Enemies/Alan (16 x 16).png.import rename to _graphics/Mini Pixel Pack 3/Enemies/Alan (16 x 16).png.import index c2df9fa..a005993 100644 --- a/Mini Pixel Pack 3/Enemies/Alan (16 x 16).png.import +++ b/_graphics/Mini Pixel Pack 3/Enemies/Alan (16 x 16).png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://ufutxde5gpox" -path="res://.godot/imported/Alan (16 x 16).png-5dbfafef59bec6373df61239fa506a5d.ctex" +path="res://.godot/imported/Alan (16 x 16).png-7ada1508495030355bf27914ee531a57.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Mini Pixel Pack 3/Enemies/Alan (16 x 16).png" -dest_files=["res://.godot/imported/Alan (16 x 16).png-5dbfafef59bec6373df61239fa506a5d.ctex"] +source_file="res://_graphics/Mini Pixel Pack 3/Enemies/Alan (16 x 16).png" +dest_files=["res://.godot/imported/Alan (16 x 16).png-7ada1508495030355bf27914ee531a57.ctex"] [params] diff --git a/Mini Pixel Pack 3/Enemies/Bon_Bon (16 x 16).png b/_graphics/Mini Pixel Pack 3/Enemies/Bon_Bon (16 x 16).png similarity index 100% rename from Mini Pixel Pack 3/Enemies/Bon_Bon (16 x 16).png rename to _graphics/Mini Pixel Pack 3/Enemies/Bon_Bon (16 x 16).png diff --git a/Mini Pixel Pack 3/Enemies/Bon_Bon (16 x 16).png.import b/_graphics/Mini Pixel Pack 3/Enemies/Bon_Bon (16 x 16).png.import similarity index 73% rename from Mini Pixel Pack 3/Enemies/Bon_Bon (16 x 16).png.import rename to _graphics/Mini Pixel Pack 3/Enemies/Bon_Bon (16 x 16).png.import index bf2019a..06cb8cf 100644 --- a/Mini Pixel Pack 3/Enemies/Bon_Bon (16 x 16).png.import +++ b/_graphics/Mini Pixel Pack 3/Enemies/Bon_Bon (16 x 16).png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://deyu1prtitqcp" -path="res://.godot/imported/Bon_Bon (16 x 16).png-7ea532fd020645536abf60ee7f38dace.ctex" +path="res://.godot/imported/Bon_Bon (16 x 16).png-7d3c00136ce2bbe792a84d36c6c05671.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Mini Pixel Pack 3/Enemies/Bon_Bon (16 x 16).png" -dest_files=["res://.godot/imported/Bon_Bon (16 x 16).png-7ea532fd020645536abf60ee7f38dace.ctex"] +source_file="res://_graphics/Mini Pixel Pack 3/Enemies/Bon_Bon (16 x 16).png" +dest_files=["res://.godot/imported/Bon_Bon (16 x 16).png-7d3c00136ce2bbe792a84d36c6c05671.ctex"] [params] diff --git a/Mini Pixel Pack 3/Enemies/Lips (16 x 16).png b/_graphics/Mini Pixel Pack 3/Enemies/Lips (16 x 16).png similarity index 100% rename from Mini Pixel Pack 3/Enemies/Lips (16 x 16).png rename to _graphics/Mini Pixel Pack 3/Enemies/Lips (16 x 16).png diff --git a/Mini Pixel Pack 3/Enemies/Lips (16 x 16).png.import b/_graphics/Mini Pixel Pack 3/Enemies/Lips (16 x 16).png.import similarity index 74% rename from Mini Pixel Pack 3/Enemies/Lips (16 x 16).png.import rename to _graphics/Mini Pixel Pack 3/Enemies/Lips (16 x 16).png.import index ef44573..d716bd0 100644 --- a/Mini Pixel Pack 3/Enemies/Lips (16 x 16).png.import +++ b/_graphics/Mini Pixel Pack 3/Enemies/Lips (16 x 16).png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://0fdd82dr2hio" -path="res://.godot/imported/Lips (16 x 16).png-3265ce45d4393011117c8b9b4d47738a.ctex" +path="res://.godot/imported/Lips (16 x 16).png-b7e8b839b1294d5c884878092bef7f2d.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Mini Pixel Pack 3/Enemies/Lips (16 x 16).png" -dest_files=["res://.godot/imported/Lips (16 x 16).png-3265ce45d4393011117c8b9b4d47738a.ctex"] +source_file="res://_graphics/Mini Pixel Pack 3/Enemies/Lips (16 x 16).png" +dest_files=["res://.godot/imported/Lips (16 x 16).png-b7e8b839b1294d5c884878092bef7f2d.ctex"] [params] diff --git a/Mini Pixel Pack 3/Items/Circle_+_Square_+_Missile_pick-ups (16 x 16).png b/_graphics/Mini Pixel Pack 3/Items/Circle_+_Square_+_Missile_pick-ups (16 x 16).png similarity index 100% rename from Mini Pixel Pack 3/Items/Circle_+_Square_+_Missile_pick-ups (16 x 16).png rename to _graphics/Mini Pixel Pack 3/Items/Circle_+_Square_+_Missile_pick-ups (16 x 16).png diff --git a/Mini Pixel Pack 3/Items/Circle_+_Square_+_Missile_pick-ups (16 x 16).png.import b/_graphics/Mini Pixel Pack 3/Items/Circle_+_Square_+_Missile_pick-ups (16 x 16).png.import similarity index 79% rename from Mini Pixel Pack 3/Items/Circle_+_Square_+_Missile_pick-ups (16 x 16).png.import rename to _graphics/Mini Pixel Pack 3/Items/Circle_+_Square_+_Missile_pick-ups (16 x 16).png.import index 1e7d32e..5a18d1d 100644 --- a/Mini Pixel Pack 3/Items/Circle_+_Square_+_Missile_pick-ups (16 x 16).png.import +++ b/_graphics/Mini Pixel Pack 3/Items/Circle_+_Square_+_Missile_pick-ups (16 x 16).png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://8j06xyft25w0" -path="res://.godot/imported/Circle_+_Square_+_Missile_pick-ups (16 x 16).png-3bbaa22444104ff44581c6a33a0ad891.ctex" +path="res://.godot/imported/Circle_+_Square_+_Missile_pick-ups (16 x 16).png-d8dc9d5a0db9ea33b0f238af116c345c.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Mini Pixel Pack 3/Items/Circle_+_Square_+_Missile_pick-ups (16 x 16).png" -dest_files=["res://.godot/imported/Circle_+_Square_+_Missile_pick-ups (16 x 16).png-3bbaa22444104ff44581c6a33a0ad891.ctex"] +source_file="res://_graphics/Mini Pixel Pack 3/Items/Circle_+_Square_+_Missile_pick-ups (16 x 16).png" +dest_files=["res://.godot/imported/Circle_+_Square_+_Missile_pick-ups (16 x 16).png-d8dc9d5a0db9ea33b0f238af116c345c.ctex"] [params] diff --git a/Mini Pixel Pack 3/Items/Power_item (16 x 16).png b/_graphics/Mini Pixel Pack 3/Items/Power_item (16 x 16).png similarity index 100% rename from Mini Pixel Pack 3/Items/Power_item (16 x 16).png rename to _graphics/Mini Pixel Pack 3/Items/Power_item (16 x 16).png diff --git a/Mini Pixel Pack 3/Items/Power_item (16 x 16).png.import b/_graphics/Mini Pixel Pack 3/Items/Power_item (16 x 16).png.import similarity index 72% rename from Mini Pixel Pack 3/Items/Power_item (16 x 16).png.import rename to _graphics/Mini Pixel Pack 3/Items/Power_item (16 x 16).png.import index 18b4625..45451b9 100644 --- a/Mini Pixel Pack 3/Items/Power_item (16 x 16).png.import +++ b/_graphics/Mini Pixel Pack 3/Items/Power_item (16 x 16).png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://by677b0ymmyag" -path="res://.godot/imported/Power_item (16 x 16).png-4df679887445482126f6d7476b544382.ctex" +path="res://.godot/imported/Power_item (16 x 16).png-de100257317c691ac9837c30e3588587.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Mini Pixel Pack 3/Items/Power_item (16 x 16).png" -dest_files=["res://.godot/imported/Power_item (16 x 16).png-4df679887445482126f6d7476b544382.ctex"] +source_file="res://_graphics/Mini Pixel Pack 3/Items/Power_item (16 x 16).png" +dest_files=["res://.godot/imported/Power_item (16 x 16).png-de100257317c691ac9837c30e3588587.ctex"] [params] diff --git a/Mini Pixel Pack 3/LICENSE.txt b/_graphics/Mini Pixel Pack 3/LICENSE.txt similarity index 100% rename from Mini Pixel Pack 3/LICENSE.txt rename to _graphics/Mini Pixel Pack 3/LICENSE.txt diff --git a/Mini Pixel Pack 3/Player ship/Boosters (16 x 16).png b/_graphics/Mini Pixel Pack 3/Player ship/Boosters (16 x 16).png similarity index 100% rename from Mini Pixel Pack 3/Player ship/Boosters (16 x 16).png rename to _graphics/Mini Pixel Pack 3/Player ship/Boosters (16 x 16).png diff --git a/Mini Pixel Pack 3/Player ship/Boosters (16 x 16).png.import b/_graphics/Mini Pixel Pack 3/Player ship/Boosters (16 x 16).png.import similarity index 72% rename from Mini Pixel Pack 3/Player ship/Boosters (16 x 16).png.import rename to _graphics/Mini Pixel Pack 3/Player ship/Boosters (16 x 16).png.import index a5d7436..3960408 100644 --- a/Mini Pixel Pack 3/Player ship/Boosters (16 x 16).png.import +++ b/_graphics/Mini Pixel Pack 3/Player ship/Boosters (16 x 16).png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://ces8fm7lxh574" -path="res://.godot/imported/Boosters (16 x 16).png-8b50a40dbdc7e815becad87ceb60848b.ctex" +path="res://.godot/imported/Boosters (16 x 16).png-c1fb49e062d579546acd530b756eabef.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Mini Pixel Pack 3/Player ship/Boosters (16 x 16).png" -dest_files=["res://.godot/imported/Boosters (16 x 16).png-8b50a40dbdc7e815becad87ceb60848b.ctex"] +source_file="res://_graphics/Mini Pixel Pack 3/Player ship/Boosters (16 x 16).png" +dest_files=["res://.godot/imported/Boosters (16 x 16).png-c1fb49e062d579546acd530b756eabef.ctex"] [params] diff --git a/Mini Pixel Pack 3/Player ship/Boosters_left (16 x 16).png b/_graphics/Mini Pixel Pack 3/Player ship/Boosters_left (16 x 16).png similarity index 100% rename from Mini Pixel Pack 3/Player ship/Boosters_left (16 x 16).png rename to _graphics/Mini Pixel Pack 3/Player ship/Boosters_left (16 x 16).png diff --git a/Mini Pixel Pack 3/Player ship/Boosters_left (16 x 16).png.import b/_graphics/Mini Pixel Pack 3/Player ship/Boosters_left (16 x 16).png.import similarity index 71% rename from Mini Pixel Pack 3/Player ship/Boosters_left (16 x 16).png.import rename to _graphics/Mini Pixel Pack 3/Player ship/Boosters_left (16 x 16).png.import index 7d6e2c6..4a6993a 100644 --- a/Mini Pixel Pack 3/Player ship/Boosters_left (16 x 16).png.import +++ b/_graphics/Mini Pixel Pack 3/Player ship/Boosters_left (16 x 16).png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://bjdhq42ummgky" -path="res://.godot/imported/Boosters_left (16 x 16).png-8a4708d671dcd3d8f5b39892aaefbef7.ctex" +path="res://.godot/imported/Boosters_left (16 x 16).png-4af3697e68c8e270d3ebf02c0fbc3a71.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Mini Pixel Pack 3/Player ship/Boosters_left (16 x 16).png" -dest_files=["res://.godot/imported/Boosters_left (16 x 16).png-8a4708d671dcd3d8f5b39892aaefbef7.ctex"] +source_file="res://_graphics/Mini Pixel Pack 3/Player ship/Boosters_left (16 x 16).png" +dest_files=["res://.godot/imported/Boosters_left (16 x 16).png-4af3697e68c8e270d3ebf02c0fbc3a71.ctex"] [params] diff --git a/Mini Pixel Pack 3/Player ship/Boosters_right (16 x 16).png b/_graphics/Mini Pixel Pack 3/Player ship/Boosters_right (16 x 16).png similarity index 100% rename from Mini Pixel Pack 3/Player ship/Boosters_right (16 x 16).png rename to _graphics/Mini Pixel Pack 3/Player ship/Boosters_right (16 x 16).png diff --git a/Mini Pixel Pack 3/Player ship/Boosters_right (16 x 16).png.import b/_graphics/Mini Pixel Pack 3/Player ship/Boosters_right (16 x 16).png.import similarity index 77% rename from Mini Pixel Pack 3/Player ship/Boosters_right (16 x 16).png.import rename to _graphics/Mini Pixel Pack 3/Player ship/Boosters_right (16 x 16).png.import index e18f588..0d286dc 100644 --- a/Mini Pixel Pack 3/Player ship/Boosters_right (16 x 16).png.import +++ b/_graphics/Mini Pixel Pack 3/Player ship/Boosters_right (16 x 16).png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://cjv3xbuj65pav" -path="res://.godot/imported/Boosters_right (16 x 16).png-6ce79aae3f2383fac5bef1fecccbb764.ctex" +path="res://.godot/imported/Boosters_right (16 x 16).png-d00d85348c642623576e384a8f745c5d.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Mini Pixel Pack 3/Player ship/Boosters_right (16 x 16).png" -dest_files=["res://.godot/imported/Boosters_right (16 x 16).png-6ce79aae3f2383fac5bef1fecccbb764.ctex"] +source_file="res://_graphics/Mini Pixel Pack 3/Player ship/Boosters_right (16 x 16).png" +dest_files=["res://.godot/imported/Boosters_right (16 x 16).png-d00d85348c642623576e384a8f745c5d.ctex"] [params] diff --git a/Mini Pixel Pack 3/Player ship/Player_ship (16 x 16).png b/_graphics/Mini Pixel Pack 3/Player ship/Player_ship (16 x 16).png similarity index 100% rename from Mini Pixel Pack 3/Player ship/Player_ship (16 x 16).png rename to _graphics/Mini Pixel Pack 3/Player ship/Player_ship (16 x 16).png diff --git a/Mini Pixel Pack 3/Player ship/Player_ship (16 x 16).png.import b/_graphics/Mini Pixel Pack 3/Player ship/Player_ship (16 x 16).png.import similarity index 72% rename from Mini Pixel Pack 3/Player ship/Player_ship (16 x 16).png.import rename to _graphics/Mini Pixel Pack 3/Player ship/Player_ship (16 x 16).png.import index 1efe744..edb2ba7 100644 --- a/Mini Pixel Pack 3/Player ship/Player_ship (16 x 16).png.import +++ b/_graphics/Mini Pixel Pack 3/Player ship/Player_ship (16 x 16).png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://di2xhcwcdbhxg" -path="res://.godot/imported/Player_ship (16 x 16).png-be69be68cd3df6db0d5c677798e0b7e7.ctex" +path="res://.godot/imported/Player_ship (16 x 16).png-bf56686d7b7006d03ca789504edfedcc.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Mini Pixel Pack 3/Player ship/Player_ship (16 x 16).png" -dest_files=["res://.godot/imported/Player_ship (16 x 16).png-be69be68cd3df6db0d5c677798e0b7e7.ctex"] +source_file="res://_graphics/Mini Pixel Pack 3/Player ship/Player_ship (16 x 16).png" +dest_files=["res://.godot/imported/Player_ship (16 x 16).png-bf56686d7b7006d03ca789504edfedcc.ctex"] [params] diff --git a/Mini Pixel Pack 3/Projectiles/Enemy_projectile (16 x 16).png b/_graphics/Mini Pixel Pack 3/Projectiles/Enemy_projectile (16 x 16).png similarity index 100% rename from Mini Pixel Pack 3/Projectiles/Enemy_projectile (16 x 16).png rename to _graphics/Mini Pixel Pack 3/Projectiles/Enemy_projectile (16 x 16).png diff --git a/Mini Pixel Pack 3/Projectiles/Enemy_projectile (16 x 16).png.import b/_graphics/Mini Pixel Pack 3/Projectiles/Enemy_projectile (16 x 16).png.import similarity index 77% rename from Mini Pixel Pack 3/Projectiles/Enemy_projectile (16 x 16).png.import rename to _graphics/Mini Pixel Pack 3/Projectiles/Enemy_projectile (16 x 16).png.import index db1faf2..7dc19d2 100644 --- a/Mini Pixel Pack 3/Projectiles/Enemy_projectile (16 x 16).png.import +++ b/_graphics/Mini Pixel Pack 3/Projectiles/Enemy_projectile (16 x 16).png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://dubjbfdp6ep34" -path="res://.godot/imported/Enemy_projectile (16 x 16).png-d29bdfb3abd80f316f7896a0abd02db7.ctex" +path="res://.godot/imported/Enemy_projectile (16 x 16).png-5be4a0e5b91c2e0619e55035d68c4d36.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Mini Pixel Pack 3/Projectiles/Enemy_projectile (16 x 16).png" -dest_files=["res://.godot/imported/Enemy_projectile (16 x 16).png-d29bdfb3abd80f316f7896a0abd02db7.ctex"] +source_file="res://_graphics/Mini Pixel Pack 3/Projectiles/Enemy_projectile (16 x 16).png" +dest_files=["res://.godot/imported/Enemy_projectile (16 x 16).png-5be4a0e5b91c2e0619e55035d68c4d36.ctex"] [params] diff --git a/Mini Pixel Pack 3/Projectiles/Player_beam (16 x 16).png b/_graphics/Mini Pixel Pack 3/Projectiles/Player_beam (16 x 16).png similarity index 100% rename from Mini Pixel Pack 3/Projectiles/Player_beam (16 x 16).png rename to _graphics/Mini Pixel Pack 3/Projectiles/Player_beam (16 x 16).png diff --git a/Mini Pixel Pack 3/Projectiles/Player_beam (16 x 16).png.import b/_graphics/Mini Pixel Pack 3/Projectiles/Player_beam (16 x 16).png.import similarity index 72% rename from Mini Pixel Pack 3/Projectiles/Player_beam (16 x 16).png.import rename to _graphics/Mini Pixel Pack 3/Projectiles/Player_beam (16 x 16).png.import index f798a40..004402e 100644 --- a/Mini Pixel Pack 3/Projectiles/Player_beam (16 x 16).png.import +++ b/_graphics/Mini Pixel Pack 3/Projectiles/Player_beam (16 x 16).png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://yy8fjexb6fv6" -path="res://.godot/imported/Player_beam (16 x 16).png-6a101320be4a70758755fcdcff6a81d3.ctex" +path="res://.godot/imported/Player_beam (16 x 16).png-38c42a8d236a55e4c8d1cc5c8bc130df.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Mini Pixel Pack 3/Projectiles/Player_beam (16 x 16).png" -dest_files=["res://.godot/imported/Player_beam (16 x 16).png-6a101320be4a70758755fcdcff6a81d3.ctex"] +source_file="res://_graphics/Mini Pixel Pack 3/Projectiles/Player_beam (16 x 16).png" +dest_files=["res://.godot/imported/Player_beam (16 x 16).png-38c42a8d236a55e4c8d1cc5c8bc130df.ctex"] [params] diff --git a/Mini Pixel Pack 3/Projectiles/Player_charged_beam (16 x 16).png b/_graphics/Mini Pixel Pack 3/Projectiles/Player_charged_beam (16 x 16).png similarity index 100% rename from Mini Pixel Pack 3/Projectiles/Player_charged_beam (16 x 16).png rename to _graphics/Mini Pixel Pack 3/Projectiles/Player_charged_beam (16 x 16).png diff --git a/Mini Pixel Pack 3/Projectiles/Player_charged_beam (16 x 16).png.import b/_graphics/Mini Pixel Pack 3/Projectiles/Player_charged_beam (16 x 16).png.import similarity index 76% rename from Mini Pixel Pack 3/Projectiles/Player_charged_beam (16 x 16).png.import rename to _graphics/Mini Pixel Pack 3/Projectiles/Player_charged_beam (16 x 16).png.import index 9dc2cd2..b96bb6e 100644 --- a/Mini Pixel Pack 3/Projectiles/Player_charged_beam (16 x 16).png.import +++ b/_graphics/Mini Pixel Pack 3/Projectiles/Player_charged_beam (16 x 16).png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://bltpqew3le1j" -path="res://.godot/imported/Player_charged_beam (16 x 16).png-89f205acbdb826f694a802bddbca80e1.ctex" +path="res://.godot/imported/Player_charged_beam (16 x 16).png-40b2129c04ee8d4d77b082252425c6bc.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Mini Pixel Pack 3/Projectiles/Player_charged_beam (16 x 16).png" -dest_files=["res://.godot/imported/Player_charged_beam (16 x 16).png-89f205acbdb826f694a802bddbca80e1.ctex"] +source_file="res://_graphics/Mini Pixel Pack 3/Projectiles/Player_charged_beam (16 x 16).png" +dest_files=["res://.godot/imported/Player_charged_beam (16 x 16).png-40b2129c04ee8d4d77b082252425c6bc.ctex"] [params] diff --git a/Mini Pixel Pack 3/Projectiles/Player_charged_donut_shot (16 x 16).png b/_graphics/Mini Pixel Pack 3/Projectiles/Player_charged_donut_shot (16 x 16).png similarity index 100% rename from Mini Pixel Pack 3/Projectiles/Player_charged_donut_shot (16 x 16).png rename to _graphics/Mini Pixel Pack 3/Projectiles/Player_charged_donut_shot (16 x 16).png diff --git a/Mini Pixel Pack 3/Projectiles/Player_charged_donut_shot (16 x 16).png.import b/_graphics/Mini Pixel Pack 3/Projectiles/Player_charged_donut_shot (16 x 16).png.import similarity index 81% rename from Mini Pixel Pack 3/Projectiles/Player_charged_donut_shot (16 x 16).png.import rename to _graphics/Mini Pixel Pack 3/Projectiles/Player_charged_donut_shot (16 x 16).png.import index 9460388..3d8bf65 100644 --- a/Mini Pixel Pack 3/Projectiles/Player_charged_donut_shot (16 x 16).png.import +++ b/_graphics/Mini Pixel Pack 3/Projectiles/Player_charged_donut_shot (16 x 16).png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://bcib1rh67w22s" -path="res://.godot/imported/Player_charged_donut_shot (16 x 16).png-7184c8cc5c0367908de947129c2711d9.ctex" +path="res://.godot/imported/Player_charged_donut_shot (16 x 16).png-c71b6a6236f8909972462278a3902cc3.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Mini Pixel Pack 3/Projectiles/Player_charged_donut_shot (16 x 16).png" -dest_files=["res://.godot/imported/Player_charged_donut_shot (16 x 16).png-7184c8cc5c0367908de947129c2711d9.ctex"] +source_file="res://_graphics/Mini Pixel Pack 3/Projectiles/Player_charged_donut_shot (16 x 16).png" +dest_files=["res://.godot/imported/Player_charged_donut_shot (16 x 16).png-c71b6a6236f8909972462278a3902cc3.ctex"] [params] diff --git a/Mini Pixel Pack 3/Projectiles/Player_charged_square_shot (16 x 16).png b/_graphics/Mini Pixel Pack 3/Projectiles/Player_charged_square_shot (16 x 16).png similarity index 100% rename from Mini Pixel Pack 3/Projectiles/Player_charged_square_shot (16 x 16).png rename to _graphics/Mini Pixel Pack 3/Projectiles/Player_charged_square_shot (16 x 16).png diff --git a/Mini Pixel Pack 3/Projectiles/Player_charged_square_shot (16 x 16).png.import b/_graphics/Mini Pixel Pack 3/Projectiles/Player_charged_square_shot (16 x 16).png.import similarity index 81% rename from Mini Pixel Pack 3/Projectiles/Player_charged_square_shot (16 x 16).png.import rename to _graphics/Mini Pixel Pack 3/Projectiles/Player_charged_square_shot (16 x 16).png.import index 72ba06a..cc155cf 100644 --- a/Mini Pixel Pack 3/Projectiles/Player_charged_square_shot (16 x 16).png.import +++ b/_graphics/Mini Pixel Pack 3/Projectiles/Player_charged_square_shot (16 x 16).png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://cqmvwlbyqiy3x" -path="res://.godot/imported/Player_charged_square_shot (16 x 16).png-cd56d64393c6907a8348176a56cab361.ctex" +path="res://.godot/imported/Player_charged_square_shot (16 x 16).png-198a58066247c4aa5ad0faade85d1d40.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Mini Pixel Pack 3/Projectiles/Player_charged_square_shot (16 x 16).png" -dest_files=["res://.godot/imported/Player_charged_square_shot (16 x 16).png-cd56d64393c6907a8348176a56cab361.ctex"] +source_file="res://_graphics/Mini Pixel Pack 3/Projectiles/Player_charged_square_shot (16 x 16).png" +dest_files=["res://.godot/imported/Player_charged_square_shot (16 x 16).png-198a58066247c4aa5ad0faade85d1d40.ctex"] [params] diff --git a/Mini Pixel Pack 3/Projectiles/Player_donut_shot (16 x 16).png b/_graphics/Mini Pixel Pack 3/Projectiles/Player_donut_shot (16 x 16).png similarity index 100% rename from Mini Pixel Pack 3/Projectiles/Player_donut_shot (16 x 16).png rename to _graphics/Mini Pixel Pack 3/Projectiles/Player_donut_shot (16 x 16).png diff --git a/Mini Pixel Pack 3/Projectiles/Player_donut_shot (16 x 16).png.import b/_graphics/Mini Pixel Pack 3/Projectiles/Player_donut_shot (16 x 16).png.import similarity index 77% rename from Mini Pixel Pack 3/Projectiles/Player_donut_shot (16 x 16).png.import rename to _graphics/Mini Pixel Pack 3/Projectiles/Player_donut_shot (16 x 16).png.import index 5dadb17..7cedd3d 100644 --- a/Mini Pixel Pack 3/Projectiles/Player_donut_shot (16 x 16).png.import +++ b/_graphics/Mini Pixel Pack 3/Projectiles/Player_donut_shot (16 x 16).png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://bae3jehbndemu" -path="res://.godot/imported/Player_donut_shot (16 x 16).png-3f41fd34f88147e37ae65f3f0c7f7320.ctex" +path="res://.godot/imported/Player_donut_shot (16 x 16).png-953e0fd6e2c64a8e437302b46d5129bf.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Mini Pixel Pack 3/Projectiles/Player_donut_shot (16 x 16).png" -dest_files=["res://.godot/imported/Player_donut_shot (16 x 16).png-3f41fd34f88147e37ae65f3f0c7f7320.ctex"] +source_file="res://_graphics/Mini Pixel Pack 3/Projectiles/Player_donut_shot (16 x 16).png" +dest_files=["res://.godot/imported/Player_donut_shot (16 x 16).png-953e0fd6e2c64a8e437302b46d5129bf.ctex"] [params] diff --git a/Mini Pixel Pack 3/Projectiles/Player_missile_shots (16 x 16).png b/_graphics/Mini Pixel Pack 3/Projectiles/Player_missile_shots (16 x 16).png similarity index 100% rename from Mini Pixel Pack 3/Projectiles/Player_missile_shots (16 x 16).png rename to _graphics/Mini Pixel Pack 3/Projectiles/Player_missile_shots (16 x 16).png diff --git a/Mini Pixel Pack 3/Projectiles/Player_missile_shots (16 x 16).png.import b/_graphics/Mini Pixel Pack 3/Projectiles/Player_missile_shots (16 x 16).png.import similarity index 76% rename from Mini Pixel Pack 3/Projectiles/Player_missile_shots (16 x 16).png.import rename to _graphics/Mini Pixel Pack 3/Projectiles/Player_missile_shots (16 x 16).png.import index 740621f..1800410 100644 --- a/Mini Pixel Pack 3/Projectiles/Player_missile_shots (16 x 16).png.import +++ b/_graphics/Mini Pixel Pack 3/Projectiles/Player_missile_shots (16 x 16).png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://b3y10poc002pe" -path="res://.godot/imported/Player_missile_shots (16 x 16).png-66b040bba7cc3550f183b3780caee8b2.ctex" +path="res://.godot/imported/Player_missile_shots (16 x 16).png-94448a0c9c305a763d01e89b425ad689.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Mini Pixel Pack 3/Projectiles/Player_missile_shots (16 x 16).png" -dest_files=["res://.godot/imported/Player_missile_shots (16 x 16).png-66b040bba7cc3550f183b3780caee8b2.ctex"] +source_file="res://_graphics/Mini Pixel Pack 3/Projectiles/Player_missile_shots (16 x 16).png" +dest_files=["res://.godot/imported/Player_missile_shots (16 x 16).png-94448a0c9c305a763d01e89b425ad689.ctex"] [params] diff --git a/Mini Pixel Pack 3/Projectiles/Player_square_shot (16 x 16).png b/_graphics/Mini Pixel Pack 3/Projectiles/Player_square_shot (16 x 16).png similarity index 100% rename from Mini Pixel Pack 3/Projectiles/Player_square_shot (16 x 16).png rename to _graphics/Mini Pixel Pack 3/Projectiles/Player_square_shot (16 x 16).png diff --git a/Mini Pixel Pack 3/Projectiles/Player_square_shot (16 x 16).png.import b/_graphics/Mini Pixel Pack 3/Projectiles/Player_square_shot (16 x 16).png.import similarity index 76% rename from Mini Pixel Pack 3/Projectiles/Player_square_shot (16 x 16).png.import rename to _graphics/Mini Pixel Pack 3/Projectiles/Player_square_shot (16 x 16).png.import index 9b28443..d8c4e5d 100644 --- a/Mini Pixel Pack 3/Projectiles/Player_square_shot (16 x 16).png.import +++ b/_graphics/Mini Pixel Pack 3/Projectiles/Player_square_shot (16 x 16).png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://bwrwcqrw2t7bs" -path="res://.godot/imported/Player_square_shot (16 x 16).png-d2270dc7f4c93c516f46242f96456f80.ctex" +path="res://.godot/imported/Player_square_shot (16 x 16).png-1f16c7af27ead57635098636323e0b63.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Mini Pixel Pack 3/Projectiles/Player_square_shot (16 x 16).png" -dest_files=["res://.godot/imported/Player_square_shot (16 x 16).png-d2270dc7f4c93c516f46242f96456f80.ctex"] +source_file="res://_graphics/Mini Pixel Pack 3/Projectiles/Player_square_shot (16 x 16).png" +dest_files=["res://.godot/imported/Player_square_shot (16 x 16).png-1f16c7af27ead57635098636323e0b63.ctex"] [params] diff --git a/Mini Pixel Pack 3/Space_BG (2 frames) (64 x 64).png b/_graphics/Mini Pixel Pack 3/Space_BG (2 frames) (64 x 64).png similarity index 100% rename from Mini Pixel Pack 3/Space_BG (2 frames) (64 x 64).png rename to _graphics/Mini Pixel Pack 3/Space_BG (2 frames) (64 x 64).png diff --git a/Mini Pixel Pack 3/Space_BG (2 frames) (64 x 64).png.import b/_graphics/Mini Pixel Pack 3/Space_BG (2 frames) (64 x 64).png.import similarity index 77% rename from Mini Pixel Pack 3/Space_BG (2 frames) (64 x 64).png.import rename to _graphics/Mini Pixel Pack 3/Space_BG (2 frames) (64 x 64).png.import index 03d9904..2583be0 100644 --- a/Mini Pixel Pack 3/Space_BG (2 frames) (64 x 64).png.import +++ b/_graphics/Mini Pixel Pack 3/Space_BG (2 frames) (64 x 64).png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://jj8b7vqj3ihx" -path="res://.godot/imported/Space_BG (2 frames) (64 x 64).png-29eb07262f4b59c70b5f895f08b33a15.ctex" +path="res://.godot/imported/Space_BG (2 frames) (64 x 64).png-38c14992b67aa828caac889388a35d97.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Mini Pixel Pack 3/Space_BG (2 frames) (64 x 64).png" -dest_files=["res://.godot/imported/Space_BG (2 frames) (64 x 64).png-29eb07262f4b59c70b5f895f08b33a15.ctex"] +source_file="res://_graphics/Mini Pixel Pack 3/Space_BG (2 frames) (64 x 64).png" +dest_files=["res://.godot/imported/Space_BG (2 frames) (64 x 64).png-38c14992b67aa828caac889388a35d97.ctex"] [params] diff --git a/Mini Pixel Pack 3/UI objects/GAME_OVER (72 x 8).png b/_graphics/Mini Pixel Pack 3/UI objects/GAME_OVER (72 x 8).png similarity index 100% rename from Mini Pixel Pack 3/UI objects/GAME_OVER (72 x 8).png rename to _graphics/Mini Pixel Pack 3/UI objects/GAME_OVER (72 x 8).png diff --git a/Mini Pixel Pack 3/UI objects/GAME_OVER (72 x 8).png.import b/_graphics/Mini Pixel Pack 3/UI objects/GAME_OVER (72 x 8).png.import similarity index 72% rename from Mini Pixel Pack 3/UI objects/GAME_OVER (72 x 8).png.import rename to _graphics/Mini Pixel Pack 3/UI objects/GAME_OVER (72 x 8).png.import index 4288888..7bd87ae 100644 --- a/Mini Pixel Pack 3/UI objects/GAME_OVER (72 x 8).png.import +++ b/_graphics/Mini Pixel Pack 3/UI objects/GAME_OVER (72 x 8).png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://bubqwoum50gf8" -path="res://.godot/imported/GAME_OVER (72 x 8).png-b0aed7fd8bca761f2bc09f7c32588594.ctex" +path="res://.godot/imported/GAME_OVER (72 x 8).png-6585a10b6780734958587436f91c0a47.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Mini Pixel Pack 3/UI objects/GAME_OVER (72 x 8).png" -dest_files=["res://.godot/imported/GAME_OVER (72 x 8).png-b0aed7fd8bca761f2bc09f7c32588594.ctex"] +source_file="res://_graphics/Mini Pixel Pack 3/UI objects/GAME_OVER (72 x 8).png" +dest_files=["res://.godot/imported/GAME_OVER (72 x 8).png-6585a10b6780734958587436f91c0a47.ctex"] [params] diff --git a/Mini Pixel Pack 3/UI objects/Item_held_box (16 x 16).png b/_graphics/Mini Pixel Pack 3/UI objects/Item_held_box (16 x 16).png similarity index 100% rename from Mini Pixel Pack 3/UI objects/Item_held_box (16 x 16).png rename to _graphics/Mini Pixel Pack 3/UI objects/Item_held_box (16 x 16).png diff --git a/Mini Pixel Pack 3/UI objects/Item_held_box (16 x 16).png.import b/_graphics/Mini Pixel Pack 3/UI objects/Item_held_box (16 x 16).png.import similarity index 71% rename from Mini Pixel Pack 3/UI objects/Item_held_box (16 x 16).png.import rename to _graphics/Mini Pixel Pack 3/UI objects/Item_held_box (16 x 16).png.import index 7dedb80..eca2826 100644 --- a/Mini Pixel Pack 3/UI objects/Item_held_box (16 x 16).png.import +++ b/_graphics/Mini Pixel Pack 3/UI objects/Item_held_box (16 x 16).png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://0g0350b8uw5" -path="res://.godot/imported/Item_held_box (16 x 16).png-3722eea04199d858c350b4056721dc11.ctex" +path="res://.godot/imported/Item_held_box (16 x 16).png-8660880f30d21f51910839767fe459a0.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Mini Pixel Pack 3/UI objects/Item_held_box (16 x 16).png" -dest_files=["res://.godot/imported/Item_held_box (16 x 16).png-3722eea04199d858c350b4056721dc11.ctex"] +source_file="res://_graphics/Mini Pixel Pack 3/UI objects/Item_held_box (16 x 16).png" +dest_files=["res://.godot/imported/Item_held_box (16 x 16).png-8660880f30d21f51910839767fe459a0.ctex"] [params] diff --git a/Mini Pixel Pack 3/UI objects/Number_font (8 x 8).png b/_graphics/Mini Pixel Pack 3/UI objects/Number_font (8 x 8).png similarity index 100% rename from Mini Pixel Pack 3/UI objects/Number_font (8 x 8).png rename to _graphics/Mini Pixel Pack 3/UI objects/Number_font (8 x 8).png diff --git a/Mini Pixel Pack 3/UI objects/Number_font (8 x 8).png.import b/_graphics/Mini Pixel Pack 3/UI objects/Number_font (8 x 8).png.import similarity index 72% rename from Mini Pixel Pack 3/UI objects/Number_font (8 x 8).png.import rename to _graphics/Mini Pixel Pack 3/UI objects/Number_font (8 x 8).png.import index 543d8ca..c9b002a 100644 --- a/Mini Pixel Pack 3/UI objects/Number_font (8 x 8).png.import +++ b/_graphics/Mini Pixel Pack 3/UI objects/Number_font (8 x 8).png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://ddh7mk2ekhq3u" -path="res://.godot/imported/Number_font (8 x 8).png-e706f36eadb140398b2a07c1b9215654.ctex" +path="res://.godot/imported/Number_font (8 x 8).png-3fad5e13aff75702bf7663ac584e0373.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Mini Pixel Pack 3/UI objects/Number_font (8 x 8).png" -dest_files=["res://.godot/imported/Number_font (8 x 8).png-e706f36eadb140398b2a07c1b9215654.ctex"] +source_file="res://_graphics/Mini Pixel Pack 3/UI objects/Number_font (8 x 8).png" +dest_files=["res://.godot/imported/Number_font (8 x 8).png-3fad5e13aff75702bf7663ac584e0373.ctex"] [params] diff --git a/Mini Pixel Pack 3/UI objects/Player_life_icon (16 x 16).png b/_graphics/Mini Pixel Pack 3/UI objects/Player_life_icon (16 x 16).png similarity index 100% rename from Mini Pixel Pack 3/UI objects/Player_life_icon (16 x 16).png rename to _graphics/Mini Pixel Pack 3/UI objects/Player_life_icon (16 x 16).png diff --git a/Mini Pixel Pack 3/UI objects/Player_life_icon (16 x 16).png.import b/_graphics/Mini Pixel Pack 3/UI objects/Player_life_icon (16 x 16).png.import similarity index 77% rename from Mini Pixel Pack 3/UI objects/Player_life_icon (16 x 16).png.import rename to _graphics/Mini Pixel Pack 3/UI objects/Player_life_icon (16 x 16).png.import index 995a917..049445c 100644 --- a/Mini Pixel Pack 3/UI objects/Player_life_icon (16 x 16).png.import +++ b/_graphics/Mini Pixel Pack 3/UI objects/Player_life_icon (16 x 16).png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://b2bqurwj2nfiq" -path="res://.godot/imported/Player_life_icon (16 x 16).png-7a4677c243ab1126885bee36bf4021a9.ctex" +path="res://.godot/imported/Player_life_icon (16 x 16).png-a4bdd8e7d55c5b46a71afc8f2ca0fc54.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Mini Pixel Pack 3/UI objects/Player_life_icon (16 x 16).png" -dest_files=["res://.godot/imported/Player_life_icon (16 x 16).png-7a4677c243ab1126885bee36bf4021a9.ctex"] +source_file="res://_graphics/Mini Pixel Pack 3/UI objects/Player_life_icon (16 x 16).png" +dest_files=["res://.godot/imported/Player_life_icon (16 x 16).png-a4bdd8e7d55c5b46a71afc8f2ca0fc54.ctex"] [params] diff --git a/Mini Pixel Pack 3/UI objects/Power_+_charge_bars (full + empty) (32 x 16).png b/_graphics/Mini Pixel Pack 3/UI objects/Power_+_charge_bars (full + empty) (32 x 16).png similarity index 100% rename from Mini Pixel Pack 3/UI objects/Power_+_charge_bars (full + empty) (32 x 16).png rename to _graphics/Mini Pixel Pack 3/UI objects/Power_+_charge_bars (full + empty) (32 x 16).png diff --git a/Mini Pixel Pack 3/UI objects/Power_+_charge_bars (full + empty) (32 x 16).png.import b/_graphics/Mini Pixel Pack 3/UI objects/Power_+_charge_bars (full + empty) (32 x 16).png.import similarity index 79% rename from Mini Pixel Pack 3/UI objects/Power_+_charge_bars (full + empty) (32 x 16).png.import rename to _graphics/Mini Pixel Pack 3/UI objects/Power_+_charge_bars (full + empty) (32 x 16).png.import index 2b343ad..c35c357 100644 --- a/Mini Pixel Pack 3/UI objects/Power_+_charge_bars (full + empty) (32 x 16).png.import +++ b/_graphics/Mini Pixel Pack 3/UI objects/Power_+_charge_bars (full + empty) (32 x 16).png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://cpm0la8lccja1" -path="res://.godot/imported/Power_+_charge_bars (full + empty) (32 x 16).png-332abb785dd99b7e759f933d2e5ccf61.ctex" +path="res://.godot/imported/Power_+_charge_bars (full + empty) (32 x 16).png-911fe50052e961e55988a9735b77ddd2.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Mini Pixel Pack 3/UI objects/Power_+_charge_bars (full + empty) (32 x 16).png" -dest_files=["res://.godot/imported/Power_+_charge_bars (full + empty) (32 x 16).png-332abb785dd99b7e759f933d2e5ccf61.ctex"] +source_file="res://_graphics/Mini Pixel Pack 3/UI objects/Power_+_charge_bars (full + empty) (32 x 16).png" +dest_files=["res://.godot/imported/Power_+_charge_bars (full + empty) (32 x 16).png-911fe50052e961e55988a9735b77ddd2.ctex"] [params] diff --git a/Mini Pixel Pack 3/UI objects/START (48 x 8).png b/_graphics/Mini Pixel Pack 3/UI objects/START (48 x 8).png similarity index 100% rename from Mini Pixel Pack 3/UI objects/START (48 x 8).png rename to _graphics/Mini Pixel Pack 3/UI objects/START (48 x 8).png diff --git a/Mini Pixel Pack 3/UI objects/START (48 x 8).png.import b/_graphics/Mini Pixel Pack 3/UI objects/START (48 x 8).png.import similarity index 73% rename from Mini Pixel Pack 3/UI objects/START (48 x 8).png.import rename to _graphics/Mini Pixel Pack 3/UI objects/START (48 x 8).png.import index aee09a5..9c80b8e 100644 --- a/Mini Pixel Pack 3/UI objects/START (48 x 8).png.import +++ b/_graphics/Mini Pixel Pack 3/UI objects/START (48 x 8).png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://bonoqs5pisflo" -path="res://.godot/imported/START (48 x 8).png-b41e5258a8560332501673d6e19664b8.ctex" +path="res://.godot/imported/START (48 x 8).png-9b06176d0a103cf01d79aefbbc461dc4.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Mini Pixel Pack 3/UI objects/START (48 x 8).png" -dest_files=["res://.godot/imported/START (48 x 8).png-b41e5258a8560332501673d6e19664b8.ctex"] +source_file="res://_graphics/Mini Pixel Pack 3/UI objects/START (48 x 8).png" +dest_files=["res://.godot/imported/START (48 x 8).png-9b06176d0a103cf01d79aefbbc461dc4.ctex"] [params] diff --git a/Mini Pixel Pack 3/UI objects/WINNER (72 x 8).png b/_graphics/Mini Pixel Pack 3/UI objects/WINNER (72 x 8).png similarity index 100% rename from Mini Pixel Pack 3/UI objects/WINNER (72 x 8).png rename to _graphics/Mini Pixel Pack 3/UI objects/WINNER (72 x 8).png diff --git a/Mini Pixel Pack 3/UI objects/WINNER (72 x 8).png.import b/_graphics/Mini Pixel Pack 3/UI objects/WINNER (72 x 8).png.import similarity index 73% rename from Mini Pixel Pack 3/UI objects/WINNER (72 x 8).png.import rename to _graphics/Mini Pixel Pack 3/UI objects/WINNER (72 x 8).png.import index 5a551d2..2a8729c 100644 --- a/Mini Pixel Pack 3/UI objects/WINNER (72 x 8).png.import +++ b/_graphics/Mini Pixel Pack 3/UI objects/WINNER (72 x 8).png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://dfbykvik8gknm" -path="res://.godot/imported/WINNER (72 x 8).png-842770cf011d495aed3a3bda96e3b342.ctex" +path="res://.godot/imported/WINNER (72 x 8).png-fb2a694f46cb50d065669fdaceeaa3d5.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://Mini Pixel Pack 3/UI objects/WINNER (72 x 8).png" -dest_files=["res://.godot/imported/WINNER (72 x 8).png-842770cf011d495aed3a3bda96e3b342.ctex"] +source_file="res://_graphics/Mini Pixel Pack 3/UI objects/WINNER (72 x 8).png" +dest_files=["res://.godot/imported/WINNER (72 x 8).png-fb2a694f46cb50d065669fdaceeaa3d5.ctex"] [params] diff --git a/bar_background.png b/_graphics/bar_background.png similarity index 100% rename from bar_background.png rename to _graphics/bar_background.png diff --git a/bar_background.png.import b/_graphics/bar_background.png.import similarity index 76% rename from bar_background.png.import rename to _graphics/bar_background.png.import index 359e1d8..54aeb95 100644 --- a/bar_background.png.import +++ b/_graphics/bar_background.png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://d11molrkdjjh5" -path="res://.godot/imported/bar_background.png-dca6d05f963330b50cc37c3e2531e06b.ctex" +path="res://.godot/imported/bar_background.png-9b09e3dc4c45cf686c0f1772ed77964c.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://bar_background.png" -dest_files=["res://.godot/imported/bar_background.png-dca6d05f963330b50cc37c3e2531e06b.ctex"] +source_file="res://_graphics/bar_background.png" +dest_files=["res://.godot/imported/bar_background.png-9b09e3dc4c45cf686c0f1772ed77964c.ctex"] [params] diff --git a/bar_foreground.png b/_graphics/bar_foreground.png similarity index 100% rename from bar_foreground.png rename to _graphics/bar_foreground.png diff --git a/bar_foreground.png.import b/_graphics/bar_foreground.png.import similarity index 76% rename from bar_foreground.png.import rename to _graphics/bar_foreground.png.import index 08dd89b..6f0d4f5 100644 --- a/bar_foreground.png.import +++ b/_graphics/bar_foreground.png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://bsl3pxvxiuoqg" -path="res://.godot/imported/bar_foreground.png-ba23043b2beb5c69470cabe71365b89a.ctex" +path="res://.godot/imported/bar_foreground.png-e8688360b4228b60e66d35e5fe83a484.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://bar_foreground.png" -dest_files=["res://.godot/imported/bar_foreground.png-ba23043b2beb5c69470cabe71365b89a.ctex"] +source_file="res://_graphics/bar_foreground.png" +dest_files=["res://.godot/imported/bar_foreground.png-e8688360b4228b60e66d35e5fe83a484.ctex"] [params] diff --git a/parallax/background stars.png b/_graphics/parallax/background stars.png similarity index 100% rename from parallax/background stars.png rename to _graphics/parallax/background stars.png diff --git a/parallax/background stars.png.import b/_graphics/parallax/background stars.png.import similarity index 74% rename from parallax/background stars.png.import rename to _graphics/parallax/background stars.png.import index aa8a6ad..65128ac 100644 --- a/parallax/background stars.png.import +++ b/_graphics/parallax/background stars.png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://bn5iw6fm88p2i" -path="res://.godot/imported/background stars.png-844e616782bec8464721a90faeb774cb.ctex" +path="res://.godot/imported/background stars.png-d3443d00ba45f5379fb933f66ed04d0f.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://parallax/background stars.png" -dest_files=["res://.godot/imported/background stars.png-844e616782bec8464721a90faeb774cb.ctex"] +source_file="res://_graphics/parallax/background stars.png" +dest_files=["res://.godot/imported/background stars.png-d3443d00ba45f5379fb933f66ed04d0f.ctex"] [params] diff --git a/parallax/foreground stars.png b/_graphics/parallax/foreground stars.png similarity index 100% rename from parallax/foreground stars.png rename to _graphics/parallax/foreground stars.png diff --git a/parallax/foreground stars.png.import b/_graphics/parallax/foreground stars.png.import similarity index 74% rename from parallax/foreground stars.png.import rename to _graphics/parallax/foreground stars.png.import index 8f9b53a..373d0c1 100644 --- a/parallax/foreground stars.png.import +++ b/_graphics/parallax/foreground stars.png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://dpkeiihfos28m" -path="res://.godot/imported/foreground stars.png-ac6421cf56a60f87749797466fb3036c.ctex" +path="res://.godot/imported/foreground stars.png-fa82e0e1e3ba4e4f28cb26da6d956c9a.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://parallax/foreground stars.png" -dest_files=["res://.godot/imported/foreground stars.png-ac6421cf56a60f87749797466fb3036c.ctex"] +source_file="res://_graphics/parallax/foreground stars.png" +dest_files=["res://.godot/imported/foreground stars.png-fa82e0e1e3ba4e4f28cb26da6d956c9a.ctex"] [params] diff --git a/parallax/foreground stars_b.png b/_graphics/parallax/foreground stars_b.png similarity index 100% rename from parallax/foreground stars_b.png rename to _graphics/parallax/foreground stars_b.png diff --git a/parallax/foreground stars_b.png.import b/_graphics/parallax/foreground stars_b.png.import similarity index 74% rename from parallax/foreground stars_b.png.import rename to _graphics/parallax/foreground stars_b.png.import index 59f761f..7fae246 100644 --- a/parallax/foreground stars_b.png.import +++ b/_graphics/parallax/foreground stars_b.png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://4n7q1wsq13ub" -path="res://.godot/imported/foreground stars_b.png-338a0e256be6f9b89fec689220b03e10.ctex" +path="res://.godot/imported/foreground stars_b.png-0dc22920b122a8ffb19dba716641d43a.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://parallax/foreground stars_b.png" -dest_files=["res://.godot/imported/foreground stars_b.png-338a0e256be6f9b89fec689220b03e10.ctex"] +source_file="res://_graphics/parallax/foreground stars_b.png" +dest_files=["res://.godot/imported/foreground stars_b.png-0dc22920b122a8ffb19dba716641d43a.ctex"] [params] diff --git a/parallax/midground stars.png b/_graphics/parallax/midground stars.png similarity index 100% rename from parallax/midground stars.png rename to _graphics/parallax/midground stars.png diff --git a/parallax/midground stars.png.import b/_graphics/parallax/midground stars.png.import similarity index 75% rename from parallax/midground stars.png.import rename to _graphics/parallax/midground stars.png.import index 2acf07c..bb88d76 100644 --- a/parallax/midground stars.png.import +++ b/_graphics/parallax/midground stars.png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://c855276xbf7g6" -path="res://.godot/imported/midground stars.png-6f7b61cb3d46b7ae23c01472332a96f4.ctex" +path="res://.godot/imported/midground stars.png-0a37acc0906df9c54a708d664ba73870.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://parallax/midground stars.png" -dest_files=["res://.godot/imported/midground stars.png-6f7b61cb3d46b7ae23c01472332a96f4.ctex"] +source_file="res://_graphics/parallax/midground stars.png" +dest_files=["res://.godot/imported/midground stars.png-0a37acc0906df9c54a708d664ba73870.ctex"] [params] diff --git a/title - no border.png b/_graphics/title - no border.png similarity index 100% rename from title - no border.png rename to _graphics/title - no border.png diff --git a/title - no border.png.import b/_graphics/title - no border.png.import similarity index 75% rename from title - no border.png.import rename to _graphics/title - no border.png.import index d835cbc..560ab65 100644 --- a/title - no border.png.import +++ b/_graphics/title - no border.png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://db2v7dea5wi4" -path="res://.godot/imported/title - no border.png-f3a39f3e35d38034df2e041c7aa18607.ctex" +path="res://.godot/imported/title - no border.png-a0bb00f06f664fc73865ab566cdb14f1.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://title - no border.png" -dest_files=["res://.godot/imported/title - no border.png-f3a39f3e35d38034df2e041c7aa18607.ctex"] +source_file="res://_graphics/title - no border.png" +dest_files=["res://.godot/imported/title - no border.png-a0bb00f06f664fc73865ab566cdb14f1.ctex"] [params] diff --git a/title_white.png b/_graphics/title_white.png similarity index 100% rename from title_white.png rename to _graphics/title_white.png diff --git a/title_white.png.import b/_graphics/title_white.png.import similarity index 76% rename from title_white.png.import rename to _graphics/title_white.png.import index ec98877..dcf7137 100644 --- a/title_white.png.import +++ b/_graphics/title_white.png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://dfkr6mlotol6" -path="res://.godot/imported/title_white.png-d36b8f2d01d5f1557338a72c7191d974.ctex" +path="res://.godot/imported/title_white.png-25688760ca8094909ee73f6e839a0c24.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://title_white.png" -dest_files=["res://.godot/imported/title_white.png-d36b8f2d01d5f1557338a72c7191d974.ctex"] +source_file="res://_graphics/title_white.png" +dest_files=["res://.godot/imported/title_white.png-25688760ca8094909ee73f6e839a0c24.ctex"] [params] diff --git a/project.godot b/project.godot index 489cca2..1035c1a 100644 --- a/project.godot +++ b/project.godot @@ -10,15 +10,15 @@ config_version=5 [application] -config/name="shmup01b" +config/name="the third place" run/main_scene="uid://cc2dnhuv4qx7m" config/features=PackedStringArray("4.5", "Forward Plus") config/icon="res://icon.svg" [autoload] -EventBus="*res://event_bus.gd" -Global="*res://global.gd" +EventBus="*res://scenes/event_bus.gd" +Global="*res://scenes/global.gd" [display] diff --git a/bullet.gd b/scenes/bullet.gd similarity index 100% rename from bullet.gd rename to scenes/bullet.gd diff --git a/bullet.gd.uid b/scenes/bullet.gd.uid similarity index 100% rename from bullet.gd.uid rename to scenes/bullet.gd.uid diff --git a/bullet.tscn b/scenes/bullet.tscn similarity index 87% rename from bullet.tscn rename to scenes/bullet.tscn index f469f27..f92b38a 100644 --- a/bullet.tscn +++ b/scenes/bullet.tscn @@ -1,7 +1,7 @@ [gd_scene load_steps=4 format=3 uid="uid://bwxxdrdvo3le0"] -[ext_resource type="Script" uid="uid://c6oorp45vpqpc" path="res://bullet.gd" id="1_v8qja"] -[ext_resource type="Texture2D" uid="uid://bltpqew3le1j" path="res://Mini Pixel Pack 3/Projectiles/Player_charged_beam (16 x 16).png" id="2_t4vbm"] +[ext_resource type="Script" uid="uid://c6oorp45vpqpc" path="res://scenes/bullet.gd" id="1_v8qja"] +[ext_resource type="Texture2D" uid="uid://bltpqew3le1j" path="res://_graphics/Mini Pixel Pack 3/Projectiles/Player_charged_beam (16 x 16).png" id="2_t4vbm"] [sub_resource type="RectangleShape2D" id="RectangleShape2D_2b2rl"] size = Vector2(12, 10) diff --git a/enemy.gd b/scenes/enemy.gd similarity index 95% rename from enemy.gd rename to scenes/enemy.gd index 1523b21..dc7be3c 100644 --- a/enemy.gd +++ b/scenes/enemy.gd @@ -1,6 +1,6 @@ extends Area2D -var bullet_scene = preload("res://enemy_bullet.tscn") +var bullet_scene = preload("res://scenes/enemy_bullet.tscn") var start_pos = Vector2.ZERO var speed = 0 var tween_speed: float = 1.4 diff --git a/enemy.gd.uid b/scenes/enemy.gd.uid similarity index 100% rename from enemy.gd.uid rename to scenes/enemy.gd.uid diff --git a/enemy.tscn b/scenes/enemy.tscn similarity index 95% rename from enemy.tscn rename to scenes/enemy.tscn index f4e591a..3cad3ce 100644 --- a/enemy.tscn +++ b/scenes/enemy.tscn @@ -1,8 +1,8 @@ [gd_scene load_steps=9 format=3 uid="uid://mp72cjiuquik"] -[ext_resource type="Script" uid="uid://xoihsrr4hw4k" path="res://enemy.gd" id="1_4gyqm"] -[ext_resource type="Texture2D" uid="uid://deyu1prtitqcp" path="res://Mini Pixel Pack 3/Enemies/Bon_Bon (16 x 16).png" id="1_7k104"] -[ext_resource type="Texture2D" uid="uid://h04wm5a27u0" path="res://Mini Pixel Pack 3/Effects/Explosion (16 x 16).png" id="3_qi2p4"] +[ext_resource type="Script" uid="uid://xoihsrr4hw4k" path="res://scenes/enemy.gd" id="1_4gyqm"] +[ext_resource type="Texture2D" uid="uid://deyu1prtitqcp" path="res://_graphics/Mini Pixel Pack 3/Enemies/Bon_Bon (16 x 16).png" id="1_7k104"] +[ext_resource type="Texture2D" uid="uid://h04wm5a27u0" path="res://_graphics/Mini Pixel Pack 3/Effects/Explosion (16 x 16).png" id="3_qi2p4"] [sub_resource type="RectangleShape2D" id="RectangleShape2D_4gyqm"] size = Vector2(14, 8) diff --git a/enemy_bullet.gd b/scenes/enemy_bullet.gd similarity index 100% rename from enemy_bullet.gd rename to scenes/enemy_bullet.gd diff --git a/enemy_bullet.gd.uid b/scenes/enemy_bullet.gd.uid similarity index 100% rename from enemy_bullet.gd.uid rename to scenes/enemy_bullet.gd.uid diff --git a/enemy_bullet.tscn b/scenes/enemy_bullet.tscn similarity index 87% rename from enemy_bullet.tscn rename to scenes/enemy_bullet.tscn index 5a50c7f..32d33aa 100644 --- a/enemy_bullet.tscn +++ b/scenes/enemy_bullet.tscn @@ -1,7 +1,7 @@ [gd_scene load_steps=4 format=3 uid="uid://3xbr5bnuk04u"] -[ext_resource type="Texture2D" uid="uid://dubjbfdp6ep34" path="res://Mini Pixel Pack 3/Projectiles/Enemy_projectile (16 x 16).png" id="1_1xapl"] -[ext_resource type="Script" uid="uid://dusi2flaqer4b" path="res://enemy_bullet.gd" id="1_gl7bs"] +[ext_resource type="Texture2D" uid="uid://dubjbfdp6ep34" path="res://_graphics/Mini Pixel Pack 3/Projectiles/Enemy_projectile (16 x 16).png" id="1_1xapl"] +[ext_resource type="Script" uid="uid://dusi2flaqer4b" path="res://scenes/enemy_bullet.gd" id="1_gl7bs"] [sub_resource type="RectangleShape2D" id="RectangleShape2D_gl7bs"] size = Vector2(6, 6) diff --git a/event_bus.gd b/scenes/event_bus.gd similarity index 100% rename from event_bus.gd rename to scenes/event_bus.gd diff --git a/event_bus.gd.uid b/scenes/event_bus.gd.uid similarity index 100% rename from event_bus.gd.uid rename to scenes/event_bus.gd.uid diff --git a/explosion.tscn b/scenes/explosion.tscn similarity index 94% rename from explosion.tscn rename to scenes/explosion.tscn index c917f03..94df773 100644 --- a/explosion.tscn +++ b/scenes/explosion.tscn @@ -1,6 +1,6 @@ [gd_scene load_steps=5 format=3 uid="uid://4jvu41vu2557"] -[ext_resource type="Texture2D" uid="uid://h04wm5a27u0" path="res://Mini Pixel Pack 3/Effects/Explosion (16 x 16).png" id="1_q7epf"] +[ext_resource type="Texture2D" uid="uid://h04wm5a27u0" path="res://_graphics/Mini Pixel Pack 3/Effects/Explosion (16 x 16).png" id="1_q7epf"] [sub_resource type="Animation" id="Animation_j4sxf"] length = 0.001 diff --git a/global.gd b/scenes/global.gd similarity index 100% rename from global.gd rename to scenes/global.gd diff --git a/global.gd.uid b/scenes/global.gd.uid similarity index 100% rename from global.gd.uid rename to scenes/global.gd.uid diff --git a/main.gd b/scenes/main.gd similarity index 97% rename from main.gd rename to scenes/main.gd index af54c29..7cc79d3 100644 --- a/main.gd +++ b/scenes/main.gd @@ -1,7 +1,7 @@ extends Node2D -var enemy = preload("res://enemy.tscn") -var player = preload("res://player.tscn") +var enemy = preload("res://scenes/enemy.tscn") +var player = preload("res://scenes/player.tscn") var instance = null var playing = false var enemy_count: int = 0: diff --git a/main.gd.uid b/scenes/main.gd.uid similarity index 100% rename from main.gd.uid rename to scenes/main.gd.uid diff --git a/main.tscn b/scenes/main.tscn similarity index 81% rename from main.tscn rename to scenes/main.tscn index 90df166..f09e66b 100644 --- a/main.tscn +++ b/scenes/main.tscn @@ -1,15 +1,13 @@ [gd_scene load_steps=14 format=3 uid="uid://cc2dnhuv4qx7m"] -[ext_resource type="Script" uid="uid://c51huloycn5as" path="res://main.gd" id="1_h2yge"] -[ext_resource type="Texture2D" uid="uid://jj8b7vqj3ihx" path="res://Mini Pixel Pack 3/Space_BG (2 frames) (64 x 64).png" id="1_ig7tw"] -[ext_resource type="PackedScene" uid="uid://tlcdxoupi2lb" path="res://parallax_starfield.tscn" id="2_5vw27"] -[ext_resource type="PackedScene" uid="uid://s6wf3egdqtmh" path="res://ui.tscn" id="4_1bvp3"] -[ext_resource type="Texture2D" uid="uid://db2v7dea5wi4" path="res://title - no border.png" id="4_7mycd"] -[ext_resource type="Shader" uid="uid://x02irwg8ynvp" path="res://pixel_highlight.gdshader" id="4_272bh"] -[ext_resource type="Texture2D" uid="uid://bonoqs5pisflo" path="res://Mini Pixel Pack 3/UI objects/START (48 x 8).png" id="5_lquwl"] -[ext_resource type="Texture2D" uid="uid://bubqwoum50gf8" path="res://Mini Pixel Pack 3/UI objects/GAME_OVER (72 x 8).png" id="6_7mycd"] - -[sub_resource type="ShaderMaterial" id="ShaderMaterial_5vw27"] +[ext_resource type="Script" uid="uid://c51huloycn5as" path="res://scenes/main.gd" id="1_h2yge"] +[ext_resource type="PackedScene" uid="uid://tlcdxoupi2lb" path="res://scenes/parallax_starfield.tscn" id="2_5vw27"] +[ext_resource type="Texture2D" uid="uid://b25w6ms7bxlhu" path="res://sprites/third space bgrnd.png" id="3_tipki"] +[ext_resource type="PackedScene" uid="uid://s6wf3egdqtmh" path="res://scenes/ui.tscn" id="4_1bvp3"] +[ext_resource type="Shader" uid="uid://x02irwg8ynvp" path="res://shaders/pixel_highlight.gdshader" id="4_272bh"] +[ext_resource type="Texture2D" uid="uid://bonoqs5pisflo" path="res://_graphics/Mini Pixel Pack 3/UI objects/START (48 x 8).png" id="5_lquwl"] +[ext_resource type="Texture2D" uid="uid://0mcbtnidp5kn" path="res://sprites/third space title.png" id="5_tipki"] +[ext_resource type="Texture2D" uid="uid://bubqwoum50gf8" path="res://_graphics/Mini Pixel Pack 3/UI objects/GAME_OVER (72 x 8).png" id="6_7mycd"] [sub_resource type="Animation" id="Animation_1bvp3"] length = 0.001 @@ -58,21 +56,13 @@ shader_parameter/pause_duration = 6.0 shader_parameter/offset = 10.0 shader_parameter/pixelate_line = 0 +[sub_resource type="ShaderMaterial" id="ShaderMaterial_5vw27"] + [node name="Main" type="Node2D"] script = ExtResource("1_h2yge") [node name="Parallax Starfield" parent="." instance=ExtResource("2_5vw27")] -[node name="background" type="Sprite2D" parent="."] -visible = false -z_index = -4 -texture_repeat = 2 -material = SubResource("ShaderMaterial_5vw27") -texture = ExtResource("1_ig7tw") -centered = false -region_enabled = true -region_rect = Rect2(0, 0, 240, 320) - [node name="AnimationPlayer" type="AnimationPlayer" parent="."] libraries = { &"": SubResource("AnimationLibrary_lquwl") @@ -88,11 +78,11 @@ offset_bottom = 36.0 [node name="Title" type="TextureRect" parent="CanvasLayer"] self_modulate = Color(0.015236704, 0.015236706, 0.0152367065, 1) material = SubResource("ShaderMaterial_kek77") -offset_left = 27.0 -offset_top = 74.0 -offset_right = 211.0 -offset_bottom = 141.0 -texture = ExtResource("4_7mycd") +offset_left = 50.0 +offset_top = 50.0 +offset_right = 146.0 +offset_bottom = 117.0 +texture = ExtResource("5_tipki") [node name="CenterContainer" type="CenterContainer" parent="CanvasLayer"] anchors_preset = 15 @@ -109,4 +99,13 @@ texture_normal = ExtResource("5_lquwl") layout_mode = 2 texture = ExtResource("6_7mycd") +[node name="background" type="Sprite2D" parent="."] +z_index = -4 +texture_repeat = 2 +material = SubResource("ShaderMaterial_5vw27") +scale = Vector2(1.1064814, 1.0557377) +texture = ExtResource("3_tipki") +centered = false +region_rect = Rect2(0, 0, 240, 320) + [connection signal="pressed" from="CanvasLayer/CenterContainer/Start" to="." method="_on_start_pressed"] diff --git a/parallax_starfield.tscn b/scenes/parallax_starfield.tscn similarity index 89% rename from parallax_starfield.tscn rename to scenes/parallax_starfield.tscn index fa61075..8a81564 100644 --- a/parallax_starfield.tscn +++ b/scenes/parallax_starfield.tscn @@ -1,9 +1,9 @@ [gd_scene load_steps=5 format=3 uid="uid://tlcdxoupi2lb"] -[ext_resource type="Texture2D" uid="uid://dpkeiihfos28m" path="res://parallax/foreground stars.png" id="1_1f8kc"] -[ext_resource type="Texture2D" uid="uid://4n7q1wsq13ub" path="res://parallax/foreground stars_b.png" id="2_mewf1"] -[ext_resource type="Texture2D" uid="uid://c855276xbf7g6" path="res://parallax/midground stars.png" id="2_xwl8n"] -[ext_resource type="Texture2D" uid="uid://bn5iw6fm88p2i" path="res://parallax/background stars.png" id="3_mewf1"] +[ext_resource type="Texture2D" uid="uid://dpkeiihfos28m" path="res://_graphics/parallax/foreground stars.png" id="1_1f8kc"] +[ext_resource type="Texture2D" uid="uid://4n7q1wsq13ub" path="res://_graphics/parallax/foreground stars_b.png" id="2_mewf1"] +[ext_resource type="Texture2D" uid="uid://c855276xbf7g6" path="res://_graphics/parallax/midground stars.png" id="2_xwl8n"] +[ext_resource type="Texture2D" uid="uid://bn5iw6fm88p2i" path="res://_graphics/parallax/background stars.png" id="3_mewf1"] [node name="Parallax Starfield" type="Node2D"] diff --git a/player.gd b/scenes/player.gd similarity index 92% rename from player.gd rename to scenes/player.gd index 3683998..c12bdd1 100644 --- a/player.gd +++ b/scenes/player.gd @@ -37,8 +37,8 @@ func start(): print(shield) shader_active = false $Ship.frame = 1 - $Ship/Boosters/BoosterBurst.hide() - $Ship/Boosters.hide() + # $Ship/Boosters/BoosterBurst.hide() + # $Ship/Boosters.hide() $Ship.show() position = Vector2(screensize.x / 2, screensize.y) var tween = create_tween() @@ -49,7 +49,7 @@ func start(): print(shield) await get_tree().create_timer(1).timeout set_process(true) - $Ship/Boosters.show() + # $Ship/Boosters.show() can_shoot = true # EventBus.shield_changed.emit(max_shield, old_value, shield) @@ -57,10 +57,10 @@ func _process(delta): var input = Input.get_vector("left", "right", "up", "down") if input.x > 0: $Ship.frame = 2 - $Ship/Boosters.animation = "right" + # $Ship/Boosters.animation = "right" elif input.x < 0: $Ship.frame = 0 - $Ship/Boosters.animation = "left" + # $Ship/Boosters.animation = "left" else: $Ship.frame = 1 $Ship/Boosters.animation = "forward" @@ -76,7 +76,7 @@ func shoot(): $GunCooldown.start() var b = bullet_scene.instantiate() get_tree().root.add_child(b) - b.start(position + ship.position + Vector2(0, -1)) + b.start(position + ship.position + Vector2(0, -10)) var tween = create_tween().set_parallel(false) tween.tween_property(ship, "position:y", 1, 0.1) tween.tween_property(ship, "position:y", 0, 0.05) @@ -128,7 +128,7 @@ func _on_player_victory() -> void: set_process(false) $Ship.frame = 1 await get_tree().create_timer(1).timeout - $Ship/Boosters/BoosterBurst.show() + # $Ship/Boosters/BoosterBurst.show() var tween = create_tween() tween.tween_property(self, "position:y", 60 * -1, .25).set_ease(tween.EASE_IN) await tween.finished diff --git a/player.gd.uid b/scenes/player.gd.uid similarity index 100% rename from player.gd.uid rename to scenes/player.gd.uid diff --git a/player.tscn b/scenes/player.tscn similarity index 85% rename from player.tscn rename to scenes/player.tscn index ed6f018..669ad71 100644 --- a/player.tscn +++ b/scenes/player.tscn @@ -1,13 +1,13 @@ [gd_scene load_steps=20 format=3 uid="uid://pyuorpwb7lpe"] -[ext_resource type="Script" uid="uid://dcrnf4r6c5qaw" path="res://player.gd" id="1_sweqy"] -[ext_resource type="PackedScene" uid="uid://bwxxdrdvo3le0" path="res://bullet.tscn" id="2_1jxqw"] -[ext_resource type="Texture2D" uid="uid://di2xhcwcdbhxg" path="res://Mini Pixel Pack 3/Player ship/Player_ship (16 x 16).png" id="2_2hs0m"] -[ext_resource type="Texture2D" uid="uid://ces8fm7lxh574" path="res://Mini Pixel Pack 3/Player ship/Boosters (16 x 16).png" id="3_1jxqw"] -[ext_resource type="Shader" uid="uid://dfywtah53il1m" path="res://player_hit.gdshader" id="3_dw050"] -[ext_resource type="Texture2D" uid="uid://bjdhq42ummgky" path="res://Mini Pixel Pack 3/Player ship/Boosters_left (16 x 16).png" id="4_dw050"] -[ext_resource type="Texture2D" uid="uid://cjv3xbuj65pav" path="res://Mini Pixel Pack 3/Player ship/Boosters_right (16 x 16).png" id="5_b26j0"] -[ext_resource type="PackedScene" uid="uid://4jvu41vu2557" path="res://explosion.tscn" id="8_dw050"] +[ext_resource type="Script" uid="uid://dcrnf4r6c5qaw" path="res://scenes/player.gd" id="1_sweqy"] +[ext_resource type="PackedScene" uid="uid://bwxxdrdvo3le0" path="res://scenes/bullet.tscn" id="2_1jxqw"] +[ext_resource type="Texture2D" uid="uid://ces8fm7lxh574" path="res://_graphics/Mini Pixel Pack 3/Player ship/Boosters (16 x 16).png" id="3_1jxqw"] +[ext_resource type="Shader" uid="uid://dfywtah53il1m" path="res://shaders/player_hit.gdshader" id="3_dw050"] +[ext_resource type="Texture2D" uid="uid://bjdhq42ummgky" path="res://_graphics/Mini Pixel Pack 3/Player ship/Boosters_left (16 x 16).png" id="4_dw050"] +[ext_resource type="Texture2D" uid="uid://42nppsb4mtv8" path="res://sprites/coop.png" id="4_smehm"] +[ext_resource type="Texture2D" uid="uid://cjv3xbuj65pav" path="res://_graphics/Mini Pixel Pack 3/Player ship/Boosters_right (16 x 16).png" id="5_b26j0"] +[ext_resource type="PackedScene" uid="uid://4jvu41vu2557" path="res://scenes/explosion.tscn" id="8_dw050"] [sub_resource type="ShaderMaterial" id="ShaderMaterial_b26j0"] shader = ExtResource("3_dw050") @@ -93,11 +93,12 @@ bullet_scene = ExtResource("2_1jxqw") [node name="Ship" type="Sprite2D" parent="." groups=["ship"]] unique_name_in_owner = true material = SubResource("ShaderMaterial_b26j0") -texture = ExtResource("2_2hs0m") +texture = ExtResource("4_smehm") hframes = 3 frame = 1 [node name="Boosters" type="AnimatedSprite2D" parent="Ship"] +visible = false position = Vector2(0, 15) sprite_frames = SubResource("SpriteFrames_u1c27") animation = &"forward" @@ -113,11 +114,12 @@ interp_to_end = 1.0 preprocess = 1.83 speed_scale = 15.69 draw_order = 2 -trail_lifetime = 1.8499999999999999 +trail_lifetime = 1.85 trail_sections = 2 process_material = SubResource("ParticleProcessMaterial_b26j0") [node name="CollisionShape2D" type="CollisionShape2D" parent="."] +scale = Vector2(2.0054688, 2.0054688) shape = SubResource("RectangleShape2D_op7ga") [node name="GunCooldown" type="Timer" parent="."] diff --git a/progress_bar.gd b/scenes/progress_bar.gd similarity index 100% rename from progress_bar.gd rename to scenes/progress_bar.gd diff --git a/progress_bar.gd.uid b/scenes/progress_bar.gd.uid similarity index 100% rename from progress_bar.gd.uid rename to scenes/progress_bar.gd.uid diff --git a/progress_bar.tscn b/scenes/progress_bar.tscn similarity index 81% rename from progress_bar.tscn rename to scenes/progress_bar.tscn index 7f8d56f..e5377b9 100644 --- a/progress_bar.tscn +++ b/scenes/progress_bar.tscn @@ -1,8 +1,8 @@ [gd_scene load_steps=4 format=3 uid="uid://c8s7htpdg4v4i"] -[ext_resource type="Texture2D" uid="uid://d11molrkdjjh5" path="res://bar_background.png" id="1_q0tf5"] -[ext_resource type="Texture2D" uid="uid://bsl3pxvxiuoqg" path="res://bar_foreground.png" id="2_5xu4y"] -[ext_resource type="Script" uid="uid://b85ktxeoj4b2n" path="res://progress_bar.gd" id="3_5xu4y"] +[ext_resource type="Texture2D" uid="uid://d11molrkdjjh5" path="res://_graphics/bar_background.png" id="1_q0tf5"] +[ext_resource type="Texture2D" uid="uid://bsl3pxvxiuoqg" path="res://_graphics/bar_foreground.png" id="2_5xu4y"] +[ext_resource type="Script" uid="uid://b85ktxeoj4b2n" path="res://scenes/progress_bar.gd" id="3_5xu4y"] [node name="ProgressBar" type="TextureProgressBar"] anchors_preset = 10 diff --git a/score_counter.gd b/scenes/score_counter.gd similarity index 83% rename from score_counter.gd rename to scenes/score_counter.gd index 80fabe7..1ca15de 100644 --- a/score_counter.gd +++ b/scenes/score_counter.gd @@ -30,7 +30,7 @@ func display_digits(n): if i >= start: var tween = create_tween() tween.tween_property(get_child(i), "scale", Vector2(2,2), .15).set_trans(Tween.TRANS_BOUNCE) - tween.tween_property(get_child(i), "position:y", +5, .15).set_ease(tween.TRANS_QUART) + # tween.tween_property(get_child(i), "position:y", +5, .15).set_ease(tween.TRANS_QUART) tween.tween_property(get_child(i), "scale", Vector2(1,1), .15).set_trans(Tween.TRANS_BOUNCE) - tween.tween_property(get_child(i), "position:y", -5, .15).set_ease(tween.TRANS_QUART) + # tween.tween_property(get_child(i), "position:y", -5, .15).set_ease(tween.TRANS_QUART) last_score = s diff --git a/score_counter.gd.uid b/scenes/score_counter.gd.uid similarity index 100% rename from score_counter.gd.uid rename to scenes/score_counter.gd.uid diff --git a/score_counter.tscn b/scenes/score_counter.tscn similarity index 95% rename from score_counter.tscn rename to scenes/score_counter.tscn index f78f2f3..554d290 100644 --- a/score_counter.tscn +++ b/scenes/score_counter.tscn @@ -1,7 +1,7 @@ [gd_scene load_steps=11 format=3 uid="uid://5qkcf1cpre32"] -[ext_resource type="Script" uid="uid://val4c82n4krk" path="res://score_counter.gd" id="1_t7i3n"] -[ext_resource type="Texture2D" uid="uid://ddh7mk2ekhq3u" path="res://Mini Pixel Pack 3/UI objects/Number_font (8 x 8).png" id="1_terno"] +[ext_resource type="Script" uid="uid://val4c82n4krk" path="res://scenes/score_counter.gd" id="1_t7i3n"] +[ext_resource type="Texture2D" uid="uid://ddh7mk2ekhq3u" path="res://_graphics/Mini Pixel Pack 3/UI objects/Number_font (8 x 8).png" id="1_terno"] [sub_resource type="AtlasTexture" id="AtlasTexture_t7i3n"] atlas = ExtResource("1_terno") diff --git a/ui.gd b/scenes/ui.gd similarity index 100% rename from ui.gd rename to scenes/ui.gd diff --git a/ui.gd.uid b/scenes/ui.gd.uid similarity index 100% rename from ui.gd.uid rename to scenes/ui.gd.uid diff --git a/ui.tscn b/scenes/ui.tscn similarity index 87% rename from ui.tscn rename to scenes/ui.tscn index 0e897c0..6e772a3 100644 --- a/ui.tscn +++ b/scenes/ui.tscn @@ -1,10 +1,10 @@ [gd_scene load_steps=7 format=3 uid="uid://s6wf3egdqtmh"] -[ext_resource type="Texture2D" uid="uid://d11molrkdjjh5" path="res://bar_background.png" id="1_m6e0p"] -[ext_resource type="Script" uid="uid://b544c65halgk4" path="res://ui.gd" id="1_nltto"] -[ext_resource type="Texture2D" uid="uid://bsl3pxvxiuoqg" path="res://bar_foreground.png" id="2_27fn8"] -[ext_resource type="Shader" uid="uid://dfywtah53il1m" path="res://player_hit.gdshader" id="2_ibotj"] -[ext_resource type="PackedScene" uid="uid://5qkcf1cpre32" path="res://score_counter.tscn" id="4_ibotj"] +[ext_resource type="Texture2D" uid="uid://d11molrkdjjh5" path="res://_graphics/bar_background.png" id="1_m6e0p"] +[ext_resource type="Script" uid="uid://b544c65halgk4" path="res://scenes/ui.gd" id="1_nltto"] +[ext_resource type="Texture2D" uid="uid://bsl3pxvxiuoqg" path="res://_graphics/bar_foreground.png" id="2_27fn8"] +[ext_resource type="Shader" uid="uid://dfywtah53il1m" path="res://shaders/player_hit.gdshader" id="2_ibotj"] +[ext_resource type="PackedScene" uid="uid://5qkcf1cpre32" path="res://scenes/score_counter.tscn" id="4_ibotj"] [sub_resource type="ShaderMaterial" id="ShaderMaterial_n5ude"] shader = ExtResource("2_ibotj") diff --git a/crt.gdshader b/shaders/crt.gdshader similarity index 100% rename from crt.gdshader rename to shaders/crt.gdshader diff --git a/crt.gdshader.uid b/shaders/crt.gdshader.uid similarity index 100% rename from crt.gdshader.uid rename to shaders/crt.gdshader.uid diff --git a/pixel_highlight.gdshader b/shaders/pixel_highlight.gdshader similarity index 100% rename from pixel_highlight.gdshader rename to shaders/pixel_highlight.gdshader diff --git a/pixel_highlight.gdshader.uid b/shaders/pixel_highlight.gdshader.uid similarity index 100% rename from pixel_highlight.gdshader.uid rename to shaders/pixel_highlight.gdshader.uid diff --git a/player_hit.gdshader b/shaders/player_hit.gdshader similarity index 100% rename from player_hit.gdshader rename to shaders/player_hit.gdshader diff --git a/player_hit.gdshader.uid b/shaders/player_hit.gdshader.uid similarity index 100% rename from player_hit.gdshader.uid rename to shaders/player_hit.gdshader.uid diff --git a/starfield.gdshader b/shaders/starfield.gdshader similarity index 100% rename from starfield.gdshader rename to shaders/starfield.gdshader diff --git a/starfield.gdshader.uid b/shaders/starfield.gdshader.uid similarity index 100% rename from starfield.gdshader.uid rename to shaders/starfield.gdshader.uid diff --git a/sprites/coop.png b/sprites/coop.png new file mode 100644 index 0000000000000000000000000000000000000000..90e9fe815bceae38e21813be8022f7f4cf968a20 GIT binary patch literal 1452 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 z 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 literal 0 HcmV?d00001 diff --git a/sprites/third space title.png.import b/sprites/third space title.png.import new file mode 100644 index 0000000..3b31bcd --- /dev/null +++ b/sprites/third space title.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://0mcbtnidp5kn" +path="res://.godot/imported/third space title.png-edb024a2f8b5f37f763c5eccaa1c95ff.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://sprites/third space title.png" +dest_files=["res://.godot/imported/third space title.png-edb024a2f8b5f37f763c5eccaa1c95ff.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +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/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +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