From 5ea68a6a685219c28606108e38e6836fad20c7d3 Mon Sep 17 00:00:00 2001 From: Sage Vaillancourt Date: Sun, 3 Jun 2018 11:11:27 -0400 Subject: [PATCH] General enemy class. Two new enemy types. Removal of ship_speed upgrades. Laser damage almost implemented. Multiplayer substantially improved. --- BG.gd | 14 ++ Bad.gd | 59 ++++++++ Bad.tscn | 32 +++++ Bad1.gd | 18 +-- BadClass.gd | 15 +++ BadLaser.gd | 4 +- BlackHole.gd | 51 +++++++ BlackHole.tscn | 73 ++++++++++ Bloob.gd | 2 +- Bloob.tscn | 16 ++- Image Sources/Prison.xcf | Bin 0 -> 189294 bytes Image Sources/mothership.xcf | Bin 56628 -> 426644 bytes Laser.gd | 3 + Laser.tscn | 1 - Main.gd | 106 ++++++++++++--- Main.tscn | 186 +++++++++++++++++++------- MainMenu.gd | 3 + Mothership.gd | 38 +++--- Mothership.tscn | 54 +++++++- Networking.gd | 14 +- Networking.tscn | 2 +- OtherPlayer.tscn | 49 ++++++- Player.gd | 115 +++++++++------- Player.tscn | 2 +- Prison.gd | 39 ++++++ Prison.tscn | 53 ++++++++ Range.gd | 15 +++ RectangleBoss.gd | 10 +- RectangleBoss.tscn | 20 +-- TODO | 1 + Turret.gd | 38 ++++++ Turret.tscn | 87 ++++++++++++ UpgradeMenu.gd | 23 ++-- UpgradeMenu.tscn | 34 ++++- art/ColorSelect.png | Bin 128878 -> 209473 bytes art/bad/BlackHole/base.png | Bin 0 -> 43674 bytes art/bad/BlackHole/base_1.png | Bin 0 -> 47645 bytes art/bad/BlackHole/base_2.png | Bin 0 -> 53246 bytes art/bad/BlackHole/base_3.png | Bin 0 -> 60572 bytes art/bad/BlackHole/base_4.png | Bin 0 -> 61134 bytes art/bad/BlackHole/base_5.png | Bin 0 -> 67070 bytes art/bad/BlackHole/base_6.png | Bin 0 -> 71703 bytes art/bad/BlackHole/half1.png | Bin 0 -> 49072 bytes art/bad/BlackHole/half2.png | Bin 0 -> 42868 bytes art/bad/prison/Prison.png | Bin 0 -> 68603 bytes art/bad/prison/Star.png | Bin 0 -> 23704 bytes art/bad/prison/StarSmile.png | Bin 0 -> 24134 bytes art/bg.png | Bin 147389 -> 200756 bytes art/drawn_bg1.png | Bin 0 -> 1331772 bytes art/drawn_bg2.png | Bin 0 -> 888242 bytes art/interface/how_to.png | Bin 0 -> 199015 bytes art/interface/how_to_desktop.png | Bin 0 -> 208906 bytes art/mothership/mothership.png | Bin 13576 -> 20609 bytes art/mothership/mothership_damage1.png | Bin 17626 -> 24326 bytes art/mothership/mothership_damage2.png | Bin 18903 -> 33868 bytes art/mothership/whoops_guy.png | Bin 0 -> 6718 bytes art/turret/shootin.png | Bin 0 -> 44478 bytes art/turret/turret.png | Bin 0 -> 47870 bytes art/upgrade_menu/shootingspeed1.png | Bin 29542 -> 35733 bytes art/upgrade_menu/shootingspeed2.png | Bin 37767 -> 44274 bytes art/upgrade_menu/shootingspeed3.png | Bin 26824 -> 37649 bytes art/upgrade_menu/shootingspeed4.png | Bin 36452 -> 42298 bytes art/upgrade_menu/shootingspeed5.png | Bin 55612 -> 55967 bytes export_presets.cfg | 28 ++++ 64 files changed, 1002 insertions(+), 203 deletions(-) create mode 100644 BG.gd create mode 100644 Bad.gd create mode 100644 Bad.tscn create mode 100644 BadClass.gd create mode 100644 BlackHole.gd create mode 100644 BlackHole.tscn create mode 100644 Image Sources/Prison.xcf create mode 100644 Prison.gd create mode 100644 Prison.tscn create mode 100644 Range.gd create mode 100644 Turret.gd create mode 100644 Turret.tscn create mode 100644 art/bad/BlackHole/base.png create mode 100644 art/bad/BlackHole/base_1.png create mode 100644 art/bad/BlackHole/base_2.png create mode 100644 art/bad/BlackHole/base_3.png create mode 100644 art/bad/BlackHole/base_4.png create mode 100644 art/bad/BlackHole/base_5.png create mode 100644 art/bad/BlackHole/base_6.png create mode 100644 art/bad/BlackHole/half1.png create mode 100644 art/bad/BlackHole/half2.png create mode 100644 art/bad/prison/Prison.png create mode 100644 art/bad/prison/Star.png create mode 100644 art/bad/prison/StarSmile.png create mode 100644 art/drawn_bg1.png create mode 100644 art/drawn_bg2.png create mode 100644 art/interface/how_to.png create mode 100644 art/interface/how_to_desktop.png create mode 100644 art/mothership/whoops_guy.png create mode 100644 art/turret/shootin.png create mode 100644 art/turret/turret.png diff --git a/BG.gd b/BG.gd new file mode 100644 index 0000000..717bb5e --- /dev/null +++ b/BG.gd @@ -0,0 +1,14 @@ +extends Node2D +var fly_speed = 5 + + +func _ready(): + pass + +func _process(delta): + $bg1.position.x -= delta*fly_speed + $bg2.position.x -= delta*fly_speed + if $bg1.position.x < -550: + $bg1.position.x = 1600 + if $bg2.position.x < -550: + $bg2.position.x = 1600 \ No newline at end of file diff --git a/Bad.gd b/Bad.gd new file mode 100644 index 0000000..a9c859a --- /dev/null +++ b/Bad.gd @@ -0,0 +1,59 @@ +# +# Copyright (C) 2018 Sage Vaillancourt, sagev9000@gmail.com +# +# This file is part of Fronter. +# +# Fronter is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# Fronter is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Fronter. If not, see . +# + +extends Area2D + +signal dead +var speed = 50 +var screensize +var health_multi = 1 +var kill_reward = 0 + +var health = 1 +var starting_health = 1 +var hit_timer = 1000 + +func _on_Visibility_screen_exited(): + queue_free() + +func _ready(): + connect("area_entered", self, "hit") + pass + +func hit(who): + health -= who.damage/health_multi + hit_timer = 0 + + #var health_bar = Vector2(((health * 6) - 157), -273) + #$HealthBar.set_point_position( 1, health_bar ) + + if health <= 0: + emit_signal("dead", kill_reward) + queue_free() + +var velocity = Vector2() + +func _process(delta): + velocity.x -= 1 + + if velocity.length() > 0: + velocity = velocity.normalized() * speed + + position += velocity * delta + prints(health) \ No newline at end of file diff --git a/Bad.tscn b/Bad.tscn new file mode 100644 index 0000000..53aa462 --- /dev/null +++ b/Bad.tscn @@ -0,0 +1,32 @@ +[gd_scene format=2] + +[node name="BadClass" type="Area2D" index="0"] + +input_pickable = true +gravity_vec = Vector2( 0, 1 ) +gravity = 98.0 +linear_damp = 0.1 +angular_damp = 1.0 +collision_layer = 2 +collision_mask = 0 +audio_bus_override = false +audio_bus_name = "Master" +_sections_unfolded = [ "Collision" ] + +[node name="CollisionBox" type="CollisionShape2D" parent="." index="0"] + +[node name="HealthBar" type="Line2D" parent="." index="1"] + +points = PoolVector2Array( ) +width = 12.0 +default_color = Color( 0, 1, 0.0352941, 1 ) +texture_mode = 892679477 +sharp_limit = 2.0 +round_precision = 8 + +[node name="MainSprite" type="AnimatedSprite" parent="." index="2"] + +animation = "default" +_sections_unfolded = [ "Transform" ] + + diff --git a/Bad1.gd b/Bad1.gd index 4428e35..8ec409d 100644 --- a/Bad1.gd +++ b/Bad1.gd @@ -37,17 +37,20 @@ func _ready(): pass func hit(who): - health -= 10/health_multi + health -= who.damage/health_multi $AnimatedSprite.frame = 1 hit_timer = 0 + + var health_bar = Vector2(((health * 6) - 157), -273) + $Line2D.set_point_position( 1, health_bar ) + + if health <= 0: + emit_signal("dead", 15) + queue_free() var velocity = Vector2() func _process(delta): - if health <= 0: - emit_signal("dead", 15) - queue_free() - if hit_timer < 0.15: hit_timer += delta velocity.x = 0 @@ -57,11 +60,8 @@ func _process(delta): else: velocity.x -= 1 $AnimatedSprite.frame = 0 - + if velocity.length() > 0: velocity = velocity.normalized() * SPEED - var health_bar = Vector2(((health * 6) - 157), -273) - $Line2D.set_point_position( 1, health_bar ) - position += velocity * delta \ No newline at end of file diff --git a/BadClass.gd b/BadClass.gd new file mode 100644 index 0000000..8d75e6e --- /dev/null +++ b/BadClass.gd @@ -0,0 +1,15 @@ +extends "res://Bad.gd" + +# class member variables go here, for example: +# var a = 2 +# var b = "textvar" + +func _ready(): + # Called every time the node is added to the scene. + # Initialization here + pass + +#func _process(delta): +# # Called every frame. Delta is time since last frame. +# # Update game logic here. +# pass diff --git a/BadLaser.gd b/BadLaser.gd index 194b4b5..90376d9 100644 --- a/BadLaser.gd +++ b/BadLaser.gd @@ -39,7 +39,7 @@ func _ready(): func hit(who): - health -= 10/health_multi + health -= who.damage/health_multi $AnimatedSprite.frame = 1 hit_timer = 0 @@ -47,7 +47,7 @@ var velocity = Vector2() func _process(delta): if health <= 0: - emit_signal("dead", 200) + emit_signal("dead", 100) queue_free() $Rotatable.rotation_degrees += delta*fire_speed diff --git a/BlackHole.gd b/BlackHole.gd new file mode 100644 index 0000000..87badde --- /dev/null +++ b/BlackHole.gd @@ -0,0 +1,51 @@ +extends "res://Bad.gd" + +# class member variables go here, for example: +# var a = 2 +# var b = "textvar" + +var rot_speed = 1 + +func _ready(): + starting_health = 5000 + health = starting_health + speed = 10 + position.x = 700 + position.y = 300 + +var splitting = false + +func _process(delta): + rotation += delta*rot_speed + if rotation > 2*PI: + rotation = 0 + + if health < starting_health*0.88: + $MainSprite.frame = 1 + if health < starting_health*0.76: + $MainSprite.frame = 2 + if health < starting_health*0.64: + $MainSprite.frame = 3 + if health < starting_health*0.52: + $MainSprite.frame = 4 + if health < starting_health*0.40: + $MainSprite.frame = 5 + if health < starting_health*0.28: + $MainSprite.frame = 6 + if health < starting_health*0.16: + $CollisionBox.disabled = true + $TopHalf.visible = true + $BotHalf.visible = true + $MainSprite.visible = false + if rotation_degrees > 45 && rotation_degrees < 70: + splitting = true + + if splitting: + rot_speed = 0 + $TopHalf.position.y -= delta*500 + $TopHalf.position.x -= delta*250 + $BotHalf.position.y += delta*500 + $BotHalf.position.x += delta*250 + + $TopHalf.rotation += delta + $BotHalf.rotation -= delta \ No newline at end of file diff --git a/BlackHole.tscn b/BlackHole.tscn new file mode 100644 index 0000000..6061571 --- /dev/null +++ b/BlackHole.tscn @@ -0,0 +1,73 @@ +[gd_scene load_steps=16 format=2] + +[ext_resource path="res://Bad.tscn" type="PackedScene" id=1] +[ext_resource path="res://BlackHole.gd" type="Script" id=2] +[ext_resource path="res://art/bad/BlackHole/base.png" type="Texture" id=3] +[ext_resource path="res://art/bad/BlackHole/base_1.png" type="Texture" id=4] +[ext_resource path="res://art/bad/BlackHole/base_2.png" type="Texture" id=5] +[ext_resource path="res://art/bad/BlackHole/base_3.png" type="Texture" id=6] +[ext_resource path="res://art/bad/BlackHole/base_4.png" type="Texture" id=7] +[ext_resource path="res://art/bad/BlackHole/base_5.png" type="Texture" id=8] +[ext_resource path="res://art/bad/BlackHole/base_6.png" type="Texture" id=9] +[ext_resource path="res://art/bad/BlackHole/half2.png" type="Texture" id=10] +[ext_resource path="res://art/bad/BlackHole/half1.png" type="Texture" id=11] + +[sub_resource type="CircleShape2D" id=2] + +custom_solver_bias = 0.0 +radius = 904.987 + +[sub_resource type="SpriteFrames" id=1] + +animations = [ { +"frames": [ ExtResource( 3 ), ExtResource( 4 ), ExtResource( 5 ), ExtResource( 6 ), ExtResource( 7 ), ExtResource( 8 ), ExtResource( 9 ) ], +"loop": true, +"name": "default", +"speed": 5.0 +} ] + +[sub_resource type="SpriteFrames" id=3] + +animations = [ { +"frames": [ ExtResource( 10 ) ], +"loop": true, +"name": "default", +"speed": 5.0 +} ] + +[sub_resource type="SpriteFrames" id=4] + +animations = [ { +"frames": [ ExtResource( 11 ) ], +"loop": true, +"name": "default", +"speed": 5.0 +} ] + +[node name="BlackHole" index="0" instance=ExtResource( 1 )] + +scale = Vector2( 0.3, 0.3 ) +script = ExtResource( 2 ) +_sections_unfolded = [ "Collision", "Transform" ] + +[node name="CollisionBox" parent="." index="0"] + +shape = SubResource( 2 ) + +[node name="MainSprite" parent="." index="2"] + +frames = SubResource( 1 ) + +[node name="TopHalf" type="AnimatedSprite" parent="." index="3"] + +visible = false +frames = SubResource( 3 ) +animation = "default" + +[node name="BotHalf" type="AnimatedSprite" parent="." index="4"] + +visible = false +frames = SubResource( 4 ) +animation = "default" + + diff --git a/Bloob.gd b/Bloob.gd index 0b4e015..0e14187 100644 --- a/Bloob.gd +++ b/Bloob.gd @@ -38,7 +38,7 @@ func _on_Visibility_screen_exited(): queue_free() func hit(who): - health -= 10/health_multi + health -= who.damage/health_multi # $AnimatedSprite.frame = 1 hit_timer = 0 diff --git a/Bloob.tscn b/Bloob.tscn index 1787689..911c1ab 100644 --- a/Bloob.tscn +++ b/Bloob.tscn @@ -18,7 +18,7 @@ animations = [ { "speed": 5.0 } ] -[node name="Area2D" type="Area2D"] +[node name="BadBlob" type="Area2D"] scale = Vector2( 0.25, 0.25 ) z_index = -1 @@ -27,6 +27,7 @@ gravity_vec = Vector2( 0, 1 ) gravity = 98.0 linear_damp = 0.1 angular_damp = 1.0 +collision_layer = 2 collision_mask = 0 audio_bus_override = false audio_bus_name = "Master" @@ -44,4 +45,17 @@ shape = SubResource( 1 ) frames = SubResource( 2 ) animation = "default" +[node name="Line2D" type="Line2D" parent="." index="2"] + +position = Vector2( 112, 65.3334 ) +points = PoolVector2Array( -157, -273, 143, -273 ) +width = 12.0 +default_color = Color( 0, 1, 0.0390625, 1 ) +texture_mode = 31 +joint_mode = 2 +begin_cap_mode = 2 +end_cap_mode = 2 +sharp_limit = 2.0 +round_precision = 8 + diff --git a/Image Sources/Prison.xcf b/Image Sources/Prison.xcf new file mode 100644 index 0000000000000000000000000000000000000000..f4ec24aeb44a8e219ea23a5d54ccc3756d85623a GIT binary patch literal 189294 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 A=>Px# literal 0 HcmV?d00001 diff --git a/Image Sources/mothership.xcf b/Image Sources/mothership.xcf index eea9f2d887988cc198caaec450964d56af485ddd..57e2861f3569d803577e89a937bb608e221e2a51 100644 GIT binary patch literal 426644 zcmeF42b>kv`S;JgTPS;%4oh3OH0dBLh_aw7MvW5x1``r2Xe_8$Q4E%7)>wjFqq)Hn zHNjY3jWM=Zv3F4{AVs9N1+EAzyL-#byx-?JGrO0SrV>rU-OuN@zd2>j%$zCrInQ~X z=bSe2>`Bp!PChj{W$(R9j4`2GjA;z(UvvJ4Li}q98jhk!z+Wqn3z~s8{
P5ndR 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

Ut@wD3pa?*QYa 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 delta 2822 zcmeIzk4v0&0LSrBEtygmD4COVaBRxl=8qdYQ_Rwsa2hJY z2|L5(fx@m(5NGJdRl1pzGPp6f$-LrmDwD8~W+Y)DWvut(YSI7D1Fz@4zP(2tzTfBh z+SR%@a5Z9Q<(aA)Ys2XZYsDE?dFRgO!XhqbRfHY7qOD`L_R(jUSK4k4!|+7j$@j{) zei3e_?&?;HGs+y9NB8|!%hTOUW#QZ13U@wgkFT~!;a$?~LA;1pkdI@i`0sbO@#D4_ zX~(zt0l!JnPhbz81=sJ|FU722L)y(9?2bb+(vjnq_CzBADab?~is6#tQ;~%uIDu+# zP5gPuO0&|eG%L+&wu=~+l4wb^Bw7+J$!yngM>_DebnrON!hMdD2R*oiYf>sLm6l3N zrKOtfCgvp@%|^4)Y&4tM9^eltgO)+dpk>f9XfN$RymXj$n0A zA0OajT#=e-&9r7(Gp*TdU*fLRMr)(B(c0X^HZy*QUnCFFL-Wu)G!LyK98XGKnwRFK zb<#R%o%`{;bm3<_ls?>reMm(Xjz~SU9$F8rht^}Z6R2kW{X{>}PxKT0M86y7rG8pJ zt)JFU>o?m)3`>KwLE0c~kTz(x>$oEg(}roov|-w?+3ri1o23BHRNySm!Nd9odKg@i z#)xCYF%M{CX1j))(gbaSHbI-9O_*&S52UX?!56rNMf`+6rKz1#kQoayV?k!@1~Ybp z8N0!Z-MlK@nnEa%(=yhj+iX0yW2L+I@FRX_!(l(0-TV17$0D1j6L%GsyUI`3ovD7y z`o_t(&zf5imuwyEIa_0Qx8EOep!?m-h<$Ez7ySE}<K$w6F@E=|%p=B74{( zThL{OAMkh%tl_1TczmOk#?aHF$Z9Y0Mx50}EKfGI*&B zZo*gtH)wD(#-=pKJfQP z!3h^?P=^LIq6sZ%M+dynN`G-eQjfdwpK87o-D8rHFa zO^F9U_biA)G-42oI3&P|L?j~xX|N$3naGCQ&M60ZC_oV$C`KvD;Die`s6zu9(S#PX zqXS-a!G~V>(T4#HVFUq;VjPpK|Gg;&K}=%?AsAS|5|*)oRjgqh8`zY1w={1-6rvG> zSi~U#RwN=BDM*72>BvMj>pyR2kb^uFpa>2WqZDOu!i5^tp#hC(LJQi_0WZ4XLofX3 z!vKabf&fM_j!D*kehNWMV+J7@SilmNv4T~sVI3RT qFohtdF@q2cEMN)CSmEEqXOZz?mhO-4{QvRq6hv6`u-jb}ne!Ly#2VrN diff --git a/Laser.gd b/Laser.gd index 4cc031a..740c1d5 100644 --- a/Laser.gd +++ b/Laser.gd @@ -21,11 +21,14 @@ extends Area2D signal hit +const DEFAULT_DAMAGE = 10 + export (int) var SPEED export (int) var DAMAGE var plasma = false var current_pen = 0 var friendly_laser = true +var damage = DEFAULT_DAMAGE func _ready(): $AnimatedSprite.play() diff --git a/Laser.tscn b/Laser.tscn index ae98311..e89973e 100644 --- a/Laser.tscn +++ b/Laser.tscn @@ -47,7 +47,6 @@ __meta__ = { [node name="AnimatedSprite" type="AnimatedSprite" parent="." index="1"] -modulate = Color( 0, 0.71875, 1, 1 ) position = Vector2( -1.90735e-06, 0 ) scale = Vector2( 0.1, 0.2 ) frames = SubResource( 2 ) diff --git a/Main.gd b/Main.gd index d50bc10..e8dd429 100644 --- a/Main.gd +++ b/Main.gd @@ -22,7 +22,9 @@ extends Node export (PackedScene) var FirstBad export (PackedScene) var BlobBad export (PackedScene) var LaserBad +export (PackedScene) var Prison export (PackedScene) var RectangleBoss +export (PackedScene) var BlackHole var players = {} @@ -38,12 +40,19 @@ var touchy_shooty = false var my_info = { name = "sagethesagesage", color = "FFFFFF" } var mainmenu -const BADDIE_WAIT_TIME_DEFAULT = 5 +var not_loading = false + +const BADDIE_WAIT_TIME_DEFAULT = 4 func _ready(): # Prepare black rectangle for fading in $ColorRect.visible = true + if OS.has_touchscreen_ui_hint(): + $HowTo.visible = true + else: + $HowToDesktop.visible = true + # Launch the main menu on boot and pause the game mainmenu = preload("res://MainMenu.tscn").instance() add_child(mainmenu) @@ -77,6 +86,13 @@ func _process(delta): if (Input.is_action_pressed("ui_quit")): get_tree().quit() + if Input.is_action_pressed("ui_right") || Input.is_action_pressed("ui_left"): + _on_HideHowTo_pressed() + if Input.is_action_pressed("ui_down") || Input.is_action_pressed("ui_up"): + _on_HideHowTo_pressed() + if Input.is_action_pressed("ui_accept"): + _on_HideHowTo_pressed() + # Constantly update point display updatePoints() @@ -109,32 +125,36 @@ func _process(delta): if rectangle_opacity <= 0: screen_flashing = false $ColorRect.visible = false - - # After 100 enemies, enter bossMode - if total_bads_spawned == 100: - bossMode() # When an enemy dies func _on_bad_death(kill_money): # Give players appropriate money $Player.money += kill_money -var a_round_of_bads = 30 +######################### +# ENEMY SPAWNING SCRIPT # +######################### +var a_round_of_bads = 50 var sendblob = 1 -var bad_health_multi = 1 +var bad_health_multi = 1.5 var total_bads_spawned = 0 func BaddieTimer(): - if total_bads_spawned == 75: + if total_bads_spawned == 5: # 75 default if get_tree().is_network_server(): + total_bads_spawned += 1 rpc("bossMode") else: + total_bads_spawned += 1 bossMode() - total_bads_spawned += 1 if bads_this_round <= a_round_of_bads && bad_spawning_enabled: var bad_type var badposition = Vector2() - if sendblob%20 == 0: + + if sendblob%50 == 0: + bad_type = 3 + sendblob += 1 + elif sendblob%20 == 0: bad_type = 2 sendblob += 1 elif sendblob%5 == 0: @@ -145,8 +165,8 @@ func BaddieTimer(): sendblob += 1 bads_this_round += 1 - if $BaddieTimer.wait_time > 0.5: - $BaddieTimer.wait_time = $BaddieTimer.wait_time * 0.975 + if $BaddieTimer.wait_time > 1: + $BaddieTimer.wait_time = $BaddieTimer.wait_time * 0.99 if bads_this_round == a_round_of_bads: bad_health_multi *= 1.5 @@ -167,14 +187,26 @@ sync func spawnBad(bad_type, position, health_multi): bad = BlobBad.instance() if bad_type == 2: bad = LaserBad.instance() + if bad_type == 3: + bad = Prison.instance() + # Increase BG speed with each enemy spawned + $BG.fly_speed *= 1.01 + + # Add one to total of enemies spawned total_bads_spawned += 1 add_child(bad) bad.connect("dead", self, "_on_bad_death") + if bad_type == 3: + bad.connect("health_up", self, "_on_health_up") bad.health_multi = health_multi bad.position = position +func _on_health_up(hp_increase): + $Mothership.health += hp_increase + $Mothership._update_health_bar() + func _on_PauseButton_pressed(): $Player.upgradeMenu() @@ -192,7 +224,10 @@ func _on_Player_restart_game(): for child in self.get_children(): if (child.has_method("_on_Visibility_screen_exited")): child.queue_free() + if (child.has_method("bossHealth")): + child.queue_free() bads_this_round = 0 + total_bads_spawned = 0 $BaddieTimer.wait_time = BADDIE_WAIT_TIME_DEFAULT $ShootButton.visible = true @@ -222,30 +257,33 @@ func double_laser_upgrade(id): get_node(str(id)).double_laser = true # Show other player's movement -func _on_Player_multiplayer_movement(id, position, is_shooting): - get_node(str(id)).position = position - #prints("Set position of", id, "( currently", get_node(str(id)).position, ") to", position) - - if is_shooting: +func _on_Player_multiplayer_movement(id, pos, other_is_shooting): + get_node(str(id)).position = pos + + if other_is_shooting: get_node(str(id)).shoot() # BOSS MODE # # Disable enemy spawning # Wait a few seconds for enemies to clear # Call for boss launch +var bosstimer = null sync func bossMode(): + prints("bossMode()") bad_spawning_enabled = false - var bosstimer = Timer.new() + bosstimer = Timer.new() bosstimer.connect("timeout",self,"_launch_boss") add_child(bosstimer) #to process - bosstimer.wait_time = 3 # 15 default + bosstimer.wait_time = 15 bosstimer.one_shot = true bosstimer.start() #to start # Spawn the first boss func _launch_boss(): + prints("_launch_boss()") var bad - bad = RectangleBoss.instance() + #bad = RectangleBoss.instance() + bad = BlackHole.instance() add_child(bad) # Flash screen when signalled @@ -254,12 +292,25 @@ func _launch_boss(): # Boss death functions the same as regular death bad.connect("dead", self, "_on_boss_death") + + # Get boss health + bad.connect("boss_health", self, "getBossHealth") + +func getBossHealth(currentHealth, totalHealth): + totalHealth = float(totalHealth) + var health_bar = Vector2(((currentHealth/totalHealth)*800)+100, 50) + $BossHealth.set_point_position(1, health_bar) + $BossHealth.default_color.a = 1 + if currentHealth <= 0: + $BossHealth.default_color.a = 0 + pass # Currently same as regular enemy death func _on_boss_death(kill_money): # Give players appropriate money, and restart spawns $Player.money += kill_money bad_spawning_enabled = true + bosstimer.stop() # Begins screen-flashing process func _flash_screen(): @@ -270,10 +321,11 @@ func _flash_screen(): func _load_players(id, info): player_info = info - #prints(player_info) + prints("_load_players", player_info) #prints(player_info[id].name, "YEET", player_info[id].color) func _start_multiplayer_game(): + print(player_info) mainmenu.now_quitting = true for peer_id in player_info: if peer_id != get_tree().get_network_unique_id(): @@ -282,4 +334,14 @@ func _start_multiplayer_game(): prints(str(peer_id), "yeetert") add_child(player) #get_node("/").add_child(player) - player.setUsername(player_info[peer_id].name) \ No newline at end of file + player.setUsername(player_info[peer_id].name) + #$MultiplayerTimer.start() + +func _on_HideHowTo_pressed(): + $HowTo.visible = false + $HowToDesktop.visible = false + $HideHowTo.visible = false + +func _on_Player_other_ship_enable_rainbow(id): + prints("Other player entered rainbow mode") + get_node(str(id)).enable_the_rainbow() \ No newline at end of file diff --git a/Main.tscn b/Main.tscn index 62801ff..f8a040b 100644 --- a/Main.tscn +++ b/Main.tscn @@ -1,15 +1,20 @@ -[gd_scene load_steps=13 format=2] +[gd_scene load_steps=20 format=2] [ext_resource path="res://Main.gd" type="Script" id=1] [ext_resource path="res://Bad1.tscn" type="PackedScene" id=2] [ext_resource path="res://Bloob.tscn" type="PackedScene" id=3] [ext_resource path="res://BadLaser.tscn" type="PackedScene" id=4] -[ext_resource path="res://RectangleBoss.tscn" type="PackedScene" id=5] -[ext_resource path="res://art/bg.png" type="Texture" id=6] -[ext_resource path="res://Player.tscn" type="PackedScene" id=7] -[ext_resource path="res://Mothership.tscn" type="PackedScene" id=8] -[ext_resource path="res://art/interface/pause.png" type="Texture" id=9] -[ext_resource path="res://OtherPlayer.tscn" type="PackedScene" id=10] +[ext_resource path="res://Prison.tscn" type="PackedScene" id=5] +[ext_resource path="res://RectangleBoss.tscn" type="PackedScene" id=6] +[ext_resource path="res://BlackHole.tscn" type="PackedScene" id=7] +[ext_resource path="res://BG.gd" type="Script" id=8] +[ext_resource path="res://art/bg.png" type="Texture" id=9] +[ext_resource path="res://Player.tscn" type="PackedScene" id=10] +[ext_resource path="res://Mothership.tscn" type="PackedScene" id=11] +[ext_resource path="res://OtherPlayer.tscn" type="PackedScene" id=12] +[ext_resource path="res://art/interface/how_to.png" type="Texture" id=13] +[ext_resource path="res://art/interface/how_to_desktop.png" type="Texture" id=14] +[ext_resource path="res://art/interface/pause.png" type="Texture" id=15] [sub_resource type="ImageTexture" id=1] @@ -22,60 +27,82 @@ size = Vector2( 0, 0 ) [sub_resource type="SpriteFrames" id=2] animations = [ { -"frames": [ ExtResource( 9 ) ], +"frames": [ ExtResource( 13 ) ], "loop": true, "name": "default", "speed": 5.0 } ] -[node name="Main" type="Node"] +[sub_resource type="SpriteFrames" id=3] + +animations = [ { +"frames": [ ExtResource( 14 ) ], +"loop": true, +"name": "default", +"speed": 5.0 +} ] + +[sub_resource type="SpriteFrames" id=4] + +animations = [ { +"frames": [ ExtResource( 15 ) ], +"loop": true, +"name": "default", +"speed": 5.0 +} ] + +[node name="Main" type="Node" index="0"] script = ExtResource( 1 ) _sections_unfolded = [ "Pause" ] FirstBad = ExtResource( 2 ) BlobBad = ExtResource( 3 ) LaserBad = ExtResource( 4 ) -RectangleBoss = ExtResource( 5 ) +Prison = ExtResource( 5 ) +RectangleBoss = ExtResource( 6 ) +BlackHole = ExtResource( 7 ) -[node name="Sprite" type="Sprite" parent="." index="0"] +[node name="BG" type="Node2D" parent="." index="0"] -editor/display_folded = true +z_index = -1 +script = ExtResource( 8 ) +_sections_unfolded = [ "Z Index" ] + +[node name="bg1" type="Sprite" parent="BG" index="0"] + +position = Vector2( 577.646, 365.663 ) +scale = Vector2( 0.694364, 0.694364 ) +texture = ExtResource( 9 ) +_sections_unfolded = [ "Transform" ] + +[node name="bg2" type="Sprite" parent="BG" index="1"] + +position = Vector2( 1823.66, 361.868 ) +scale = Vector2( 0.6985, 0.6985 ) +texture = ExtResource( 9 ) +_sections_unfolded = [ "Transform" ] + +[node name="Sprite" type="Sprite" parent="." index="1"] + +visible = false z_index = -5 texture = SubResource( 1 ) _sections_unfolded = [ "Z Index" ] -[node name="bg" type="Sprite" parent="Sprite" index="0"] +[node name="Player" parent="." index="2" instance=ExtResource( 10 )] -position = Vector2( 544.657, 347.107 ) -texture = ExtResource( 6 ) - -[node name="Player" parent="." index="1" instance=ExtResource( 7 )] - -[node name="BaddieTimer" type="Timer" parent="." index="2"] +[node name="BaddieTimer" type="Timer" parent="." index="3"] process_mode = 1 -wait_time = 1.0 +wait_time = 2.0 one_shot = false autostart = false -[node name="Mothership" parent="." index="3" instance=ExtResource( 8 )] +[node name="Mothership" parent="." index="4" instance=ExtResource( 11 )] -editor/display_folded = true position = Vector2( 18.327, 304.835 ) -[node name="Line2D" type="Line2D" parent="Mothership" index="2"] - -position = Vector2( 32.7402, 101.849 ) -scale = Vector2( 3.33333, 3.33333 ) -points = PoolVector2Array( 100, 200, 900, 200 ) -width = 15.0 -default_color = Color( 0.037384, 0.683594, 0, 1 ) -texture_mode = 31 -sharp_limit = 2.0 -round_precision = 8 -_sections_unfolded = [ "Z Index" ] - -[node name="MoneyDisplay" type="Label" parent="." index="4"] +[node name="MoneyDisplay" type="Label" parent="." index="5"] anchor_left = 0.0 anchor_top = 0.0 @@ -98,7 +125,57 @@ lines_skipped = 0 max_lines_visible = -1 _sections_unfolded = [ "Size Flags", "custom_fonts" ] -[node name="ShootButton" type="Button" parent="." index="5"] +[node name="OtherPlayer" parent="." index="6" instance=ExtResource( 12 )] + +visible = false +_sections_unfolded = [ "Material", "Transform", "Visibility" ] + +[node name="BossHealth" type="Line2D" parent="." index="7"] + +points = PoolVector2Array( 100, 50, 900, 50 ) +width = 15.0 +default_color = Color( 1, 0, 0, 0 ) +texture_mode = 31 +sharp_limit = 2.0 +round_precision = 8 + +[node name="ColorRect" type="ColorRect" parent="." index="8"] + +visible = false +anchor_left = 0.0 +anchor_top = 0.0 +anchor_right = 0.0 +anchor_bottom = 0.0 +margin_right = 1026.0 +margin_bottom = 601.0 +rect_pivot_offset = Vector2( 0, 0 ) +rect_clip_content = false +mouse_filter = 0 +mouse_default_cursor_shape = 0 +size_flags_horizontal = 1 +size_flags_vertical = 1 +color = Color( 0, 0, 0, 1 ) +_sections_unfolded = [ "Visibility" ] + +[node name="HowTo" type="AnimatedSprite" parent="." index="9"] + +visible = false +position = Vector2( 482.397, 299.674 ) +scale = Vector2( 0.42077, 0.42077 ) +frames = SubResource( 2 ) +animation = "default" +_sections_unfolded = [ "Transform", "Visibility" ] + +[node name="HowToDesktop" type="AnimatedSprite" parent="." index="10"] + +visible = false +position = Vector2( 482, 300 ) +scale = Vector2( 0.42, 0.42 ) +frames = SubResource( 3 ) +animation = "default" +_sections_unfolded = [ "Transform", "Visibility" ] + +[node name="ShootButton" type="Button" parent="." index="11"] anchor_left = 0.0 anchor_top = 0.0 @@ -124,7 +201,7 @@ flat = true align = 1 _sections_unfolded = [ "Theme" ] -[node name="PauseButton" type="Button" parent="." index="6"] +[node name="PauseButton" type="Button" parent="." index="12"] anchor_left = 0.0 anchor_top = 0.0 @@ -148,34 +225,37 @@ group = null flat = true align = 1 -[node name="Pause" type="AnimatedSprite" parent="." index="7"] +[node name="Pause" type="AnimatedSprite" parent="." index="13"] position = Vector2( 972.128, 67.044 ) scale = Vector2( 0.199771, 0.199771 ) -frames = SubResource( 2 ) +frames = SubResource( 4 ) animation = "default" -[node name="OtherPlayer" parent="." index="8" instance=ExtResource( 10 )] +[node name="HideHowTo" type="Button" parent="." index="14"] -visible = false -_sections_unfolded = [ "Transform", "Visibility" ] - -[node name="ColorRect" type="ColorRect" parent="." index="9"] - -visible = false anchor_left = 0.0 anchor_top = 0.0 anchor_right = 0.0 anchor_bottom = 0.0 -margin_right = 1026.0 -margin_bottom = 601.0 +margin_left = -50.0 +margin_top = -15.0 +margin_right = 1044.0 +margin_bottom = 623.0 rect_pivot_offset = Vector2( 0, 0 ) rect_clip_content = false +focus_mode = 2 mouse_filter = 0 mouse_default_cursor_shape = 0 size_flags_horizontal = 1 size_flags_vertical = 1 -color = Color( 0, 0, 0, 1 ) +toggle_mode = false +action_mode = 0 +enabled_focus_mode = 2 +shortcut = null +group = null +flat = true +align = 1 _sections_unfolded = [ "Visibility" ] [connection signal="body_entered" from="Player" to="Player" method="_on_Player_body_entered"] @@ -186,12 +266,14 @@ _sections_unfolded = [ "Visibility" ] [connection signal="other_ship_color_change" from="Player" to="." method="other_ship_color_change"] +[connection signal="other_ship_enable_rainbow" from="Player" to="." method="_on_Player_other_ship_enable_rainbow"] + [connection signal="other_shooting_upgrade" from="Player" to="." method="other_shooting_upgrade"] -[connection signal="restart_game" from="Player" to="Mothership" method="_on_Player_restart_game"] - [connection signal="restart_game" from="Player" to="." method="_on_Player_restart_game"] +[connection signal="restart_game" from="Player" to="Mothership" method="_on_Player_restart_game"] + [connection signal="update_display" from="Player" to="." method="_on_Player_update_display"] [connection signal="timeout" from="BaddieTimer" to="." method="BaddieTimer"] @@ -206,4 +288,6 @@ _sections_unfolded = [ "Visibility" ] [connection signal="pressed" from="PauseButton" to="." method="_on_PauseButton_pressed"] +[connection signal="pressed" from="HideHowTo" to="." method="_on_HideHowTo_pressed"] + diff --git a/MainMenu.gd b/MainMenu.gd index 0d572c9..d6cbcd9 100644 --- a/MainMenu.gd +++ b/MainMenu.gd @@ -51,6 +51,9 @@ func _process(delta): if (Input.is_action_pressed("ui_quit")): get_tree().quit() + #if (Input.is_action_pressed("ui_accept")): + # now_quitting = true + if ($Ship.rotation_degrees > -7 || $Ship.rotation_degrees < -13): rotation_multiplier = SLOW_ROTATION else: diff --git a/Mothership.gd b/Mothership.gd index 6192bcf..dbaaf7f 100644 --- a/Mothership.gd +++ b/Mothership.gd @@ -36,40 +36,42 @@ var timer = null var bullet_delay = 0.1 func _ready(): - var health_bar = Vector2(((health * (.8)) + 100), 200) - $Line2D.set_point_position( 1, health_bar ) - pass -# timer = Timer.new() -# timer.set_one_shot(true) -# timer.set_wait_time(bullet_delay) -# timer.connect("timeout", self, "on_timeout_complete") -# add_child(timer) + _update_health_bar() func _process(delta): if get_tree().has_network_peer() && not get_tree().is_network_server(): #health = slave_health pass + if health <= 100 && $BlownOut/WhoopsGuy.unit_offset < 1: + $BlownOut/WhoopsGuy.unit_offset += delta + func _on_Mothership_area_shape_entered(area_id, area, area_shape, self_shape): - if not get_tree().has_network_peer(): + #if not get_tree().has_network_peer(): + if not get_tree().is_network_server(): health -= 50 if get_tree().is_network_server(): health -= 50 rset("slave_health", health) - prints(health) - var health_bar = Vector2(((health * (.8)) + 100), 200) - $Line2D.set_point_position( 1, health_bar ) + + _update_health_bar() + if health <= 250: - $AnimatedSprite.frame = 1 + $BaseSprite.frame = 1 if health <= 100: - $AnimatedSprite.frame = 2 + $BaseSprite.frame = 2 if health <= 0: - $AnimatedSprite.frame = 3 + $BaseSprite.frame = 3 emit_signal("game_over") prints("Game Over!") func _on_Player_restart_game(): health = STARTING_HEALTH - $AnimatedSprite.frame = 0 - var health_bar = Vector2(((health * (.8)) + 100), 200) - $Line2D.set_point_position( 1, health_bar ) \ No newline at end of file + $BaseSprite.frame = 0 + var health_bar = Vector2(((health * (.8)) + 100), 300) + $Line2D.set_point_position( 1, health_bar ) + +func _update_health_bar(): + var health_bar = Vector2(((health * (.8)) + 100), 300) + $Line2D.set_point_position( 1, health_bar ) + print(health) \ No newline at end of file diff --git a/Mothership.tscn b/Mothership.tscn index 329fa2f..59e3957 100644 --- a/Mothership.tscn +++ b/Mothership.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=9 format=2] +[gd_scene load_steps=11 format=2] [ext_resource path="res://Mothership.gd" type="Script" id=1] [ext_resource path="res://Laser.tscn" type="PackedScene" id=2] @@ -6,6 +6,7 @@ [ext_resource path="res://art/mothership/mothership_damage1.png" type="Texture" id=4] [ext_resource path="res://art/mothership/mothership_damage2.png" type="Texture" id=5] [ext_resource path="res://art/mothership/mothership_ruined.png" type="Texture" id=6] +[ext_resource path="res://art/mothership/whoops_guy.png" type="Texture" id=7] [sub_resource type="CapsuleShape2D" id=1] @@ -22,15 +23,24 @@ animations = [ { "speed": 5.0 } ] +[sub_resource type="Curve2D" id=3] + +bake_interval = 5.0 +_data = { +"points": PoolVector2Array( 0, 0, 0, 0, -815.417, -275.207, -142.554, 423.496, 70.8929, -199.411, -142.027, -653.941, 0, 0, 0, 0, 36.6832, -1766.51 ) +} +_sections_unfolded = [ "Resource" ] + [node name="Mothership" type="Area2D"] -position = Vector2( 23.327, 304.835 ) -scale = Vector2( 0.3, 0.3 ) +position = Vector2( 42.1613, 302.944 ) +scale = Vector2( 0.263572, 0.240903 ) input_pickable = true gravity_vec = Vector2( 0, 1 ) gravity = 98.0 linear_damp = 0.1 angular_damp = 1.0 +monitorable = false collision_layer = 31 collision_mask = 31 audio_bus_override = false @@ -44,10 +54,46 @@ Laser = ExtResource( 2 ) position = Vector2( -110, 0 ) shape = SubResource( 1 ) -[node name="AnimatedSprite" type="AnimatedSprite" parent="." index="1"] +[node name="BaseSprite" type="AnimatedSprite" parent="." index="1"] +position = Vector2( 78.4, 0 ) frames = SubResource( 2 ) animation = "default" +_sections_unfolded = [ "Transform" ] + +[node name="BlownOut" type="Path2D" parent="." index="2"] + +position = Vector2( 935.039, 262.064 ) +curve = SubResource( 3 ) + +[node name="WhoopsGuy" type="PathFollow2D" parent="BlownOut" index="0"] + +position = Vector2( -815.417, -275.207 ) +rotation = -0.0246469 +offset = 0.0 +h_offset = 0.0 +v_offset = 0.0 +rotate = false +cubic_interp = true +loop = false +lookahead = 4.0 + +[node name="whoops_guy" type="Sprite" parent="BlownOut/WhoopsGuy" index="0"] + +rotation = -1.39698e-09 +texture = ExtResource( 7 ) +_sections_unfolded = [ "Offset", "Transform" ] + +[node name="Line2D" type="Line2D" parent="." index="3"] + +position = Vector2( 32.7402, 101.849 ) +scale = Vector2( 3.33333, 3.33333 ) +points = PoolVector2Array( 100, 300, 900, 300 ) +width = 15.0 +default_color = Color( 0.037384, 0.683594, 0, 1 ) +texture_mode = 31 +sharp_limit = 2.0 +round_precision = 8 [connection signal="area_shape_entered" from="." to="." method="_on_Mothership_area_shape_entered"] diff --git a/Networking.gd b/Networking.gd index 3b5dab5..db8b33a 100644 --- a/Networking.gd +++ b/Networking.gd @@ -95,15 +95,19 @@ func _server_disconnected(): func _connected_fail(): pass # Could not even connect to server, abort -remote func register_player(id, info): - player_info[id] = info +remote func register_player(new_id, info): + prints("REGISTERING", new_id, info) + player_info[new_id] = info if get_tree().is_network_server(): # Send my info to new player - #rpc_id(id, "register_player", 1, my_info) + rpc_id(new_id, "register_player", 1, my_info) # Send the info of existing players for peer_id in player_info: - rpc_id(id, "register_player", peer_id, player_info[peer_id]) - emit_signal("player_info", id, player_info) + if peer_id != new_id: + rpc_id(new_id, "register_player", peer_id, player_info[peer_id]) + rpc_id(peer_id, "register_player", new_id, player_info[new_id]) + #player_info[new_id] = info + emit_signal("player_info", new_id, player_info) $Lobby/RichTextLabel.bbcode_text = "" #$Players.text = str(player_info) diff --git a/Networking.tscn b/Networking.tscn index 1df5cfb..71bbe74 100644 --- a/Networking.tscn +++ b/Networking.tscn @@ -99,7 +99,7 @@ animations = [ { "speed": 5.0 } ] -[node name="Networking" type="Node" index="0"] +[node name="Networking" type="Node"] pause_mode = 2 script = ExtResource( 1 ) diff --git a/OtherPlayer.tscn b/OtherPlayer.tscn index dcfddf8..a93aa77 100644 --- a/OtherPlayer.tscn +++ b/OtherPlayer.tscn @@ -77,8 +77,6 @@ func _ready(): add_child(timer) timer.start() - $AnimatedSprite.modulate = \"00FFFF\" - position.x = 100 position.y = 250 @@ -109,10 +107,22 @@ func setUsername(name): username = name func modulate(color): - $AnimatedSprite.modulate = color + if !rainbow_is_on: + $AnimatedSprite.modulate = color + +var rainbow = Color(0,0,0,1) +var r_up = true +var g_up = true +var b_up = true +var rainbow_speed = 30 +var rainbow_is_on = false func _process(delta): $Username.text = username + + if rainbow_is_on: + rainbow(delta) + pass func shoot(): @@ -132,9 +142,36 @@ func shoot(): laser2.position.x = position.x + 46 laser2.current_pen = laser_penetration - can_shoot = false - timer.start()" + timer.start() + +# Funky colors # +func enable_the_rainbow(): + rainbow_is_on = true + +func rainbow(delta): + if rainbow.r < 1 && r_up: + rainbow.r += rainbow_speed*delta/10 + if rainbow.r >= 1: r_up = false + else: + rainbow.r -= rainbow_speed*delta/10 + if rainbow.r <= 0.2: r_up = true + + if rainbow.g < 1 && g_up: + rainbow.g += rainbow_speed*delta/9 + if rainbow.g >= 1: g_up = false + else: + rainbow.g -= rainbow_speed*delta/9 + if rainbow.g <= 0.2: g_up = true + + if rainbow.b < 1 && b_up: + rainbow.b += rainbow_speed*delta/8 + if rainbow.b >= 1: b_up = false + else: + rainbow.b -= rainbow_speed*delta/8 + if rainbow.b <= 0.2: b_up = true + + $AnimatedSprite.modulate = rainbow" _sections_unfolded = [ "Resource" ] [sub_resource type="SpriteFrames" id=2] @@ -165,11 +202,11 @@ collision_mask = 29 audio_bus_override = false audio_bus_name = "Master" script = SubResource( 1 ) +_sections_unfolded = [ "Material" ] Laser = ExtResource( 1 ) [node name="AnimatedSprite" type="AnimatedSprite" parent="." index="0"] -modulate = Color( 0.276855, 0.445152, 0.84375, 1 ) position = Vector2( 1.01175, 7.07602 ) scale = Vector2( 0.2, 0.2 ) frames = SubResource( 2 ) diff --git a/Player.gd b/Player.gd index 62aa4b5..ec67e47 100644 --- a/Player.gd +++ b/Player.gd @@ -23,13 +23,11 @@ extends Area2D signal update_display # tells parent to update points display signal refund # will tell parent a refund is occuring, for display signal shooting_speed_upgrade # signals that a shooting speed upgrade has occured -signal ship_speed_upgrade signal other_shooting_upgrade -signal other_ship_speed_upgrade signal double_laser_upgrade signal other_ship_color_change +signal other_ship_enable_rainbow signal shooting_speed_fully_upgraded -signal ship_speed_fully_upgraded signal restart_game signal multiplayer_movement @@ -39,6 +37,8 @@ export (PackedScene) var Laser # THINGS THAT MAY NEED ADJUSTING ################################# +var ship_speed = 500 + # first 5 tiers of shooting speed const BULLET_DELAY_TIER1 = 0.8 const BULLET_DELAY_TIER2 = 0.5 @@ -61,21 +61,21 @@ const BULLET_DELAY_TIER5_COST = 1000 # double laser cost const DOUBLE_LASER_COST = 2000 -# the 5 tiers of ship speed -const SHIP_SPEED_TIER1 = 150 -const SHIP_SPEED_TIER2 = 200 -const SHIP_SPEED_TIER3 = 300 -const SHIP_SPEED_TIER4 = 500 -const SHIP_SPEED_TIER5 = 800 +# 5 tiers of laser damage +const LASER_DAMAGE_TIER1 = 10 +const LASER_DAMAGE_TIER2 = 12 +const LASER_DAMAGE_TIER3 = 15 +const LASER_DAMAGE_TIER4 = 20 +const LASER_DAMAGE_TIER5 = 50 -# costs of ship speed upgrades -const SHIP_SPEED_TIER2_COST = 200 -const SHIP_SPEED_TIER3_COST = 400 -const SHIP_SPEED_TIER4_COST = 600 -const SHIP_SPEED_TIER5_COST = 800 +# costs of laser damage upgrades +const LASER_DAMAGE_TIER2_COST = 200 +const LASER_DAMAGE_TIER3_COST = 500 +const LASER_DAMAGE_TIER4_COST = 1000 +const LASER_DAMAGE_TIER5_COST = 2000 # the ship's starting position -const STARTING_POSITION = Vector2(100, 250) +const STARTING_POSITION = Vector2(130, 250) # the amount of money the player starts with const STARTING_MONEY = 100 @@ -94,10 +94,6 @@ var can_shoot = false # timer for shooting speed var timer = null -# sets ship movement speed to the default -var ship_speed = SHIP_SPEED_TIER1 -var ship_speed_tier = 0 - # sets the delay between shots to the default var bullet_delay = BULLET_DELAY_TIER1 var bullet_delay_tier = 0 @@ -105,6 +101,7 @@ var bullet_delay_tier = 0 # sets other shooting settings to their defaults var laser_penetration = 0 var double_laser = false +var laser_damage = LASER_DAMAGE_TIER1 # gives the player their starting points var money = STARTING_MONEY @@ -126,13 +123,12 @@ func upgradeMenu(): add_child(upgmenu) upgmenu.connect("refund", self, "_refund_button") upgmenu.connect("bullet_delay_upgrade", self, "upgradeBulletDelay_button") - upgmenu.connect("ship_speed_upgrade", self, "upgradeShipSpeed_button") upgmenu.connect("double_laser_upgrade", self, "doubleLaserUpgrade_button") upgmenu.connect("laser_penetration_upgrade", self, "laserPenetrationUpgrade_button") upgmenu.connect("menu_closed", self, "menuClosed") upgmenu.connect("change_color", self, "changeColor") + upgmenu.connect("taste_the_rainbow", self, "enable_the_rainbow") upgmenu.bullet_delay_tier = bullet_delay_tier - upgmenu.ship_speed_tier = ship_speed_tier if !get_tree().has_network_peer(): get_tree().paused = true @@ -215,34 +211,6 @@ func upgradeBulletDelay(): timer.set_wait_time(bullet_delay) rpc("other_shooting_speed_upgrade", get_tree().get_network_unique_id(), bullet_delay) -# upgrades the speed at which the ship moves -# not relevant for touchscreen users -# may be deprecated -func upgradeShipSpeed(): - prints("func upgradeShipSpeed():") - if (ship_speed == SHIP_SPEED_TIER1 && money >= SHIP_SPEED_TIER2_COST): - ship_speed = SHIP_SPEED_TIER2 - money -= SHIP_SPEED_TIER2_COST - ship_value += SHIP_SPEED_TIER2_COST - ship_speed_tier = 1 - elif (ship_speed == SHIP_SPEED_TIER2 && money >= SHIP_SPEED_TIER3_COST): - ship_speed = SHIP_SPEED_TIER3 - money -= SHIP_SPEED_TIER3_COST - ship_value += SHIP_SPEED_TIER3_COST - ship_speed_tier = 2 - elif (ship_speed == SHIP_SPEED_TIER3 && money >= SHIP_SPEED_TIER4_COST): - ship_speed = SHIP_SPEED_TIER4 - money -= SHIP_SPEED_TIER4_COST - ship_value += SHIP_SPEED_TIER4_COST - ship_speed_tier = 3 - elif (ship_speed == SHIP_SPEED_TIER4 && money >= SHIP_SPEED_TIER5_COST): - ship_speed = SHIP_SPEED_TIER5 - money -= SHIP_SPEED_TIER5_COST - ship_value += SHIP_SPEED_TIER5_COST - ship_speed_tier = 4 - - prints(ship_speed) - func doubleLaserUpgrade(): if money >= DOUBLE_LASER_COST && double_laser == false: money -= DOUBLE_LASER_COST @@ -275,7 +243,6 @@ func _refund_button(): bullet_delay = BULLET_DELAY_TIER1 bullet_delay_tier = 0 timer.set_wait_time(bullet_delay) - ship_speed = SHIP_SPEED_TIER1 laser_penetration = 0 double_laser = false shooting_speed_upgrade = SHOOTING_SPEED_UPGRADE_DEFAULT @@ -317,12 +284,22 @@ remote func other_shooting_speed_upgrade(id, bullet_delay): remote func _change_color(id, color): emit_signal("other_ship_color_change", id, color) +remote func _enable_rainbow(id): + emit_signal("other_ship_enable_rainbow", id) + remote func double_laser_upgrade(id): emit_signal("double_laser_upgrade", id) # the player's movement vector var velocity = Vector2() +var rainbow = Color(0,0,0,1) +var r_up = true +var g_up = true +var b_up = true +var rainbow_speed = 30 +var rainbow_is_on = false + func _process(delta): # move player with keyboard velocity = Vector2() @@ -338,8 +315,11 @@ func _process(delta): velocity = velocity.normalized() * ship_speed position += velocity * delta + if rainbow_is_on: + rainbow(delta) + # prevents player leaving the screen - position.x = clamp(position.x, 0, screensize.x) + position.x = clamp(position.x-100, 0, screensize.x-164) + 100 position.y = clamp(position.y, 0, screensize.y) # basically exists just for rpc messages about whether or not the player is currently firing @@ -370,6 +350,7 @@ func shoot(): laser.current_pen = laser_penetration laser.position.y = position.y - 27 laser.position.x = position.x + 46 + laser.damage = laser_damage #MAYBE THE LASERS SHOULD BE THEIR OWN NODES #Would allow for more simple additions in the future @@ -384,6 +365,38 @@ func shoot(): can_shoot = false timer.start() +# Funky colors # +# NOT CURRENTLY REFUNDABLE # +func enable_the_rainbow(): + if money >= 2000 && not rainbow_is_on: + money -= 2000 + rainbow_is_on = true + rpc("_enable_rainbow", get_tree().get_network_unique_id()) + +func rainbow(delta): + if rainbow.r < 1 && r_up: + rainbow.r += rainbow_speed*delta/10 + if rainbow.r >= 1: r_up = false + else: + rainbow.r -= rainbow_speed*delta/10 + if rainbow.r <= 0.2: r_up = true + + if rainbow.g < 1 && g_up: + rainbow.g += rainbow_speed*delta/9 + if rainbow.g >= 1: g_up = false + else: + rainbow.g -= rainbow_speed*delta/9 + if rainbow.g <= 0.2: g_up = true + + if rainbow.b < 1 && b_up: + rainbow.b += rainbow_speed*delta/8 + if rainbow.b >= 1: b_up = false + else: + rainbow.b -= rainbow_speed*delta/8 + if rainbow.b <= 0.2: b_up = true + + $AnimatedSprite.modulate = rainbow + # displays endgame screen and pauses func gameOver(): var gameover = preload("res://GameOver.tscn").instance() diff --git a/Player.tscn b/Player.tscn index 392080b..805a37c 100644 --- a/Player.tscn +++ b/Player.tscn @@ -20,7 +20,7 @@ custom_solver_bias = 0.0 radius = 12.8998 height = 40.4125 -[node name="Player" type="Area2D" index="0"] +[node name="Player" type="Area2D"] input_pickable = true gravity_point = true diff --git a/Prison.gd b/Prison.gd new file mode 100644 index 0000000..393b574 --- /dev/null +++ b/Prison.gd @@ -0,0 +1,39 @@ +extends "res://Bad.gd" + +func _ready(): + health = 500 + speed = 50 + pass + +signal health_up + +var centered_x = false +var centered_y = false + +func _process(delta): + if health < 200: + speed = 0 + $StarSprite.frame = 1 + $MainSprite.visible = false + $CollisionBox.disabled = true + + if centered_x && centered_y: + $StarSprite.rotation += delta*10 + position.x -= delta*500 + if position.x < 0: + emit_signal("health_up", 200) + queue_free() + + if position.x < 500: + position.x += delta*100 + elif position.x > 524: + position.x -= delta*100 + else: + centered_x = true + + if position.y < 280: + position.y += delta*100 + elif position.y > 320: + position.y -= delta*100 + else: + centered_y = true \ No newline at end of file diff --git a/Prison.tscn b/Prison.tscn new file mode 100644 index 0000000..17d705d --- /dev/null +++ b/Prison.tscn @@ -0,0 +1,53 @@ +[gd_scene load_steps=9 format=2] + +[ext_resource path="res://Bad.tscn" type="PackedScene" id=1] +[ext_resource path="res://Prison.gd" type="Script" id=2] +[ext_resource path="res://art/bad/prison/Star.png" type="Texture" id=3] +[ext_resource path="res://art/bad/prison/StarSmile.png" type="Texture" id=4] +[ext_resource path="res://art/bad/prison/Prison.png" type="Texture" id=5] + +[sub_resource type="SpriteFrames" id=1] + +animations = [ { +"frames": [ ExtResource( 3 ), ExtResource( 4 ) ], +"loop": true, +"name": "default", +"speed": 5.0 +} ] + +[sub_resource type="CapsuleShape2D" id=2] + +custom_solver_bias = 0.0 +radius = 367.866 +height = 196.873 + +[sub_resource type="SpriteFrames" id=3] + +animations = [ { +"frames": [ ExtResource( 5 ) ], +"loop": true, +"name": "default", +"speed": 5.0 +} ] + +[node name="Prison" instance=ExtResource( 1 )] + +scale = Vector2( 0.2, 0.2 ) +script = ExtResource( 2 ) +_sections_unfolded = [ "Collision", "Transform" ] + +[node name="StarSprite" type="AnimatedSprite" parent="." index="0"] + +frames = SubResource( 1 ) +animation = "default" + +[node name="CollisionBox" parent="." index="1"] + +position = Vector2( 0, -40 ) +shape = SubResource( 2 ) + +[node name="MainSprite" parent="." index="3"] + +frames = SubResource( 3 ) + + diff --git a/Range.gd b/Range.gd new file mode 100644 index 0000000..5129ae8 --- /dev/null +++ b/Range.gd @@ -0,0 +1,15 @@ +extends Area2D + +# class member variables go here, for example: +# var a = 2 +# var b = "textvar" + +func _ready(): + # Called every time the node is added to the scene. + # Initialization here + pass + +#func _process(delta): +# # Called every frame. Delta is time since last frame. +# # Update game logic here. +# pass diff --git a/RectangleBoss.gd b/RectangleBoss.gd index 746a4ed..c33d609 100644 --- a/RectangleBoss.gd +++ b/RectangleBoss.gd @@ -22,12 +22,14 @@ extends Area2D signal dead signal flash signal boss_fight_over +signal boss_health export (PackedScene) var Laser #### MAYBE ADD A HEALTH BAR TO MAIN ITSELF #### #var health = 3000 # DEFAULT: -var health = 20000 +var starting_health = 20000 +var health = starting_health var timer = null var hit_timer = 1000 @@ -48,7 +50,7 @@ func _ready(): pass func hit(who): - health -= 3/health_multi + health -= who.damage/(health_multi*3.5) if health > 1500: $Inside/InsideBadSprite.frame = 1 hit_timer = 0 @@ -57,6 +59,7 @@ func hit(who): updateOutsideSprite() if get_tree().is_network_server(): rpc("bossHealth", health) + emit_signal("boss_health", health, starting_health) func _process(delta): # Entering view @@ -115,6 +118,8 @@ func _process(delta): #### DOES LOW HEALTH RELEASE THE INSIDE OR NO HEALTH? #### if health <= 0 && !flashed: emit_signal("flash") + $OutsideBottomCollision.disabled = true + $OutsideTopCollision.disabled = true prints("flash") flashed = true #queue_free() @@ -142,6 +147,7 @@ func _on_Inside_area_entered(area): rpc("bossHealth", health) else: pass + emit_signal("boss_health", health, starting_health) func updateOutsideSprite(): if health > 18000: diff --git a/RectangleBoss.tscn b/RectangleBoss.tscn index ea51103..0ba7ddc 100644 --- a/RectangleBoss.tscn +++ b/RectangleBoss.tscn @@ -32,12 +32,12 @@ animations = [ { "speed": 5.0 } ] -[sub_resource type="RectangleShape2D" id=4] +[sub_resource type="RectangleShape2D" id=2] custom_solver_bias = 0.0 extents = Vector2( 414.127, 469.45 ) -[sub_resource type="SpriteFrames" id=2] +[sub_resource type="SpriteFrames" id=3] animations = [ { "frames": [ ExtResource( 8 ), ExtResource( 9 ), ExtResource( 10 ), ExtResource( 11 ), ExtResource( 12 ), ExtResource( 13 ), ExtResource( 14 ), ExtResource( 15 ), ExtResource( 16 ), ExtResource( 17 ), ExtResource( 18 ), ExtResource( 19 ), ExtResource( 20 ), ExtResource( 21 ), ExtResource( 22 ) ], @@ -46,12 +46,12 @@ animations = [ { "speed": 5.0 } ] -[sub_resource type="RectangleShape2D" id=3] +[sub_resource type="RectangleShape2D" id=4] custom_solver_bias = 0.0 extents = Vector2( 404.313, 217.774 ) -[node name="RectangleBoss" type="Area2D"] +[node name="RectangleBoss" type="Area2D" index="0"] position = Vector2( 336.401, -1.22772 ) scale = Vector2( 0.25, 0.25 ) @@ -60,10 +60,12 @@ gravity_vec = Vector2( 0, 1 ) gravity = 98.0 linear_damp = 0.1 angular_damp = 1.0 +collision_layer = 2 +collision_mask = 0 audio_bus_override = false audio_bus_name = "Master" script = ExtResource( 1 ) -_sections_unfolded = [ "Transform" ] +_sections_unfolded = [ "Collision", "Transform" ] Laser = ExtResource( 2 ) [node name="Inside" type="Area2D" parent="." index="0"] @@ -87,7 +89,7 @@ _sections_unfolded = [ "Transform" ] position = Vector2( 3501.19, 1181.02 ) scale = Vector2( 1, 1.00835 ) -shape = SubResource( 4 ) +shape = SubResource( 2 ) [node name="Line2D" type="Line2D" parent="." index="1"] @@ -101,19 +103,19 @@ round_precision = 8 [node name="BigBadSprite" type="AnimatedSprite" parent="." index="2"] position = Vector2( 3392, 1182 ) -frames = SubResource( 2 ) +frames = SubResource( 3 ) animation = "default" _sections_unfolded = [ "Transform" ] [node name="OutsideTopCollision" type="CollisionShape2D" parent="." index="3"] position = Vector2( 3427.85, 491.096 ) -shape = SubResource( 3 ) +shape = SubResource( 4 ) [node name="OutsideBottomCollision" type="CollisionShape2D" parent="." index="4"] position = Vector2( 3427.85, 1866.16 ) -shape = SubResource( 3 ) +shape = SubResource( 4 ) [connection signal="area_entered" from="Inside" to="." method="_on_Inside_area_entered"] diff --git a/TODO b/TODO index a1cbc03..595141b 100644 --- a/TODO +++ b/TODO @@ -4,4 +4,5 @@ * A story mode? * The main menu stars could do something silly and fun, like change colors, maybe taking the menu colors with them. +* Purchasable Mothership upgrades (like turrets), and make all upgrades exponentially more expensive for higher tiers * etc., etc. diff --git a/Turret.gd b/Turret.gd new file mode 100644 index 0000000..a6756fc --- /dev/null +++ b/Turret.gd @@ -0,0 +1,38 @@ +extends Node2D + +var current_target +var can_shoot = true + +func _ready(): + pass + +var zeroPoint = Vector2(-60, -1015) + +func _process(delta): + pass + + +func entityEnteredRange(bad_id, bad, bad_shape, self_shape): + print(bad.get_name()) + if ("Bad" in bad.get_name()) && can_shoot: + current_target = bad_id + #var local_pos = zeroPoint + area.position + var local_pos = Vector2() + local_pos = to_local(bad.position) + $Beam.set_point_position(1, local_pos) + $TurretSprite.rotation = ($Beam.get_point_position(0).angle_to($Beam.get_point_position(1))) + PI/5.3 + print($Beam.get_point_position(0).angle_to($Beam.get_point_position(1))) + $Beam.default_color.a = 200 + $TurretSprite.frame = 1 + bad.hit("turret") + $FlashTimer.start() + can_shoot = false + +func _on_FlashTimer_timeout(): + $Beam.default_color.a = 0 + $TurretSprite.frame = 0 + pass # replace with function body + +func _on_ReloadTimer_timeout(): + can_shoot = true + pass # replace with function body diff --git a/Turret.tscn b/Turret.tscn new file mode 100644 index 0000000..1ef190e --- /dev/null +++ b/Turret.tscn @@ -0,0 +1,87 @@ +[gd_scene load_steps=6 format=2] + +[ext_resource path="res://Turret.gd" type="Script" id=1] +[ext_resource path="res://art/turret/turret.png" type="Texture" id=2] +[ext_resource path="res://art/turret/shootin.png" type="Texture" id=3] + +[sub_resource type="CircleShape2D" id=1] + +custom_solver_bias = 0.0 +radius = 32.0821 + +[sub_resource type="SpriteFrames" id=2] + +animations = [ { +"frames": [ ExtResource( 2 ), ExtResource( 3 ) ], +"loop": true, +"name": "default", +"speed": 5.0 +} ] + +[node name="Turret" type="Node2D"] + +script = ExtResource( 1 ) +_sections_unfolded = [ "Material", "Pause", "Transform", "Visibility", "Z Index" ] + +[node name="Beam" type="Line2D" parent="." index="0"] + +position = Vector2( -26.6667, 6.66667 ) +points = PoolVector2Array( 26.4234, -6.61987, 2000, 0 ) +width = 10.0 +default_color = Color( 1, 0, 0, 0 ) +texture_mode = 31 +sharp_limit = 2.0 +round_precision = 8 + +[node name="Range" type="Area2D" parent="." index="1"] + +position = Vector2( -51.824, -18.5961 ) +scale = Vector2( 30.8534, 30.8534 ) +input_pickable = true +gravity_vec = Vector2( 0, 1 ) +gravity = 98.0 +linear_damp = 0.1 +angular_damp = 1.0 +monitorable = false +collision_layer = 31 +collision_mask = 31 +audio_bus_override = false +audio_bus_name = "Master" +_sections_unfolded = [ "Collision" ] +__meta__ = { +"_edit_group_": true +} + +[node name="RangeCircle" type="CollisionShape2D" parent="Range" index="0"] + +shape = SubResource( 1 ) + +[node name="FlashTimer" type="Timer" parent="." index="2"] + +process_mode = 1 +wait_time = 0.15 +one_shot = false +autostart = false + +[node name="ReloadTimer" type="Timer" parent="." index="3"] + +process_mode = 1 +wait_time = 1.0 +one_shot = false +autostart = true + +[node name="TurretSprite" type="AnimatedSprite" parent="." index="4"] + +rotation = 0.785398 +scale = Vector2( 0.12, 0.12 ) +frames = SubResource( 2 ) +animation = "default" +_sections_unfolded = [ "Transform" ] + +[connection signal="area_shape_entered" from="Range" to="." method="entityEnteredRange"] + +[connection signal="timeout" from="FlashTimer" to="." method="_on_FlashTimer_timeout"] + +[connection signal="timeout" from="ReloadTimer" to="." method="_on_ReloadTimer_timeout"] + + diff --git a/UpgradeMenu.gd b/UpgradeMenu.gd index ffdc686..379e6eb 100644 --- a/UpgradeMenu.gd +++ b/UpgradeMenu.gd @@ -22,31 +22,27 @@ extends Node signal refund signal speed_upgrade signal bullet_delay_upgrade -signal ship_speed_upgrade signal double_laser_upgrade signal add_laser signal plasma_lasers signal menu_closed signal change_color +signal taste_the_rainbow var bullet_delay_tier var shooting_speed_tier -var ship_speed_tier var double_lasers func _ready(): bullet_delay_tier = get_parent().bullet_delay_tier $ShootingSpeedUpgrade/Icon.frame = bullet_delay_tier - ship_speed_tier = get_parent().ship_speed_tier - $ShipSpeedUpgrade/Icon.frame = ship_speed_tier if get_tree().has_network_peer(): $ColorRect.color = Color(1,1,1,0.5) else: - $ColorRect.color = Color(1,1,1,0.5) + $ColorRect.color = Color(0,0,0,1) func _process(delta): $ShootingSpeedUpgrade/Icon.frame = bullet_delay_tier - $ShipSpeedUpgrade/Icon.frame = ship_speed_tier if (Input.is_action_pressed("ui_quit")): get_tree().quit() if Input.is_action_pressed("ui_accept"): @@ -59,9 +55,7 @@ func _on_Button_pressed(): func _on_Refund_pressed(): bullet_delay_tier = 0 - ship_speed_tier = 0 $ShootingSpeedUpgrade/Icon.frame = 0 - $ShipSpeedUpgrade/Icon.frame = 0 get_tree().paused = false emit_signal("refund") @@ -70,12 +64,6 @@ func _on_ShootingSpeedUpgrade_pressed(): emit_signal("bullet_delay_upgrade") bullet_delay_tier = get_parent().bullet_delay_tier -func _on_ShipSpeedUpgrade_pressed(): - get_tree().paused = false - emit_signal("ship_speed_upgrade") - prints("UPGRADE SHIP SPEED SIGNAL EMITTED") - ship_speed_tier = get_parent().ship_speed_tier - func _on_DoubleLaserUpgrade_pressed(): get_tree().paused = false emit_signal("double_laser_upgrade") @@ -107,4 +95,9 @@ func _on_DarkenedLawnGreen_pressed(): emit_signal("change_color", "7bd126") func _on_DeepSkyBlue_pressed(): - emit_signal("change_color", "00bfff") \ No newline at end of file + emit_signal("change_color", "00bfff") + +#### NOT PAUSING GAME? #### +func _on_Rainbow_pressed(): + get_tree().paused = false + emit_signal("taste_the_rainbow") diff --git a/UpgradeMenu.tscn b/UpgradeMenu.tscn index 2aef888..6bf8600 100644 --- a/UpgradeMenu.tscn +++ b/UpgradeMenu.tscn @@ -66,6 +66,7 @@ mouse_default_cursor_shape = 0 size_flags_horizontal = 1 size_flags_vertical = 1 color = Color( 0, 0, 0, 1 ) +_sections_unfolded = [ "Visibility" ] [node name="Resume" type="Button" parent="." index="1"] @@ -153,10 +154,9 @@ animation = "default" [node name="ShipSpeedUpgrade" type="Node" parent="." index="4"] -editor/display_folded = true - [node name="Button" type="Button" parent="ShipSpeedUpgrade" index="0"] +visible = false anchor_left = 0.0 anchor_top = 0.0 anchor_right = 0.0 @@ -181,6 +181,7 @@ align = 1 [node name="Icon" type="AnimatedSprite" parent="ShipSpeedUpgrade" index="1"] +visible = false position = Vector2( 530, 310 ) scale = Vector2( 0.392712, 0.392712 ) frames = SubResource( 3 ) @@ -188,8 +189,6 @@ animation = "New Anim" [node name="ColorSelect" type="Node2D" parent="." index="5"] -editor/display_folded = true - [node name="ColorSelectBG" type="Sprite" parent="ColorSelect" index="0"] position = Vector2( 150, 210 ) @@ -412,8 +411,33 @@ group = null flat = true align = 1 +[node name="Rainbow" type="Button" parent="ColorSelect/ColorSelectBG" index="9"] + +anchor_left = 0.0 +anchor_top = 0.0 +anchor_right = 0.0 +anchor_bottom = 0.0 +margin_left = -501.0 +margin_top = 668.0 +margin_right = 501.0 +margin_bottom = 1002.0 +rect_pivot_offset = Vector2( 0, 0 ) +rect_clip_content = false +focus_mode = 2 +mouse_filter = 0 +mouse_default_cursor_shape = 0 +size_flags_horizontal = 1 +size_flags_vertical = 1 +toggle_mode = false +enabled_focus_mode = 2 +shortcut = null +group = null +flat = true +align = 1 + [node name="DoubleLaserUpgrade" type="Node2D" parent="." index="6"] +editor/display_folded = true position = Vector2( -150, -10 ) __meta__ = { "_edit_group_": true @@ -477,6 +501,8 @@ align = 1 [connection signal="pressed" from="ColorSelect/ColorSelectBG/DeepSkyBlue" to="." method="_on_DeepSkyBlue_pressed"] +[connection signal="pressed" from="ColorSelect/ColorSelectBG/Rainbow" to="." method="_on_Rainbow_pressed"] + [connection signal="pressed" from="DoubleLaserUpgrade/Button" to="." method="_on_DoubleLaserUpgrade_pressed"] diff --git a/art/ColorSelect.png b/art/ColorSelect.png index 044859c8bf0f08822e0e08885e1e86d53e254f21..81e4ca362b24ceeaf0d4821a360d8fd70646f0e5 100644 GIT binary patch delta 83738 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