Compare commits

...

3 commits

9 changed files with 33 additions and 17 deletions

View file

@ -10,12 +10,12 @@ class_name ActiveItem extends Item
if active_item_uses != null:
while active_item_uses.get_children().size() > uses:
active_item_uses.remove_child(active_item_uses.get_child(0))
while active_item_uses.get_children().size() < uses:
if uses_left_icon != null:
if uses_left_icon != null:
while active_item_uses.get_children().size() < uses:
active_item_uses.add_child(uses_left_icon.instantiate())
func collect() -> bool:
if (player.active_item == null):
if (player.active_item == null or (player.active_item.item_name == item_name and player.active_item.uses < uses)):
player.active_item = self
uses = uses
actually_collect()
@ -36,7 +36,8 @@ func trigger_activation():
func activate():
assert(false)
func remove():
func remove(reset_player_active = true):
uses = 0
player.active_item = null
if reset_player_active:
player.active_item = null
self.queue_free()

View file

@ -31,7 +31,6 @@ scale = Vector2(2.17, 3.5)
shape = SubResource("CircleShape2D_gllxn")
[node name="Sprite2D2" type="Sprite2D" parent="."]
modulate = Color(0.583047, 0.321422, 0.988413, 1)
position = Vector2(8, 2)
scale = Vector2(1.5, 1.5)
texture = ExtResource("5_o1smo")

View file

@ -21,10 +21,11 @@ func activate():
dash_dir = player.earth_aligner.global_from_local(Vector2.RIGHT * player.facing * 1600)
player.inv_time = max(player.inv_time, dash_time)
func remove():
func remove(reset_player_active = true):
if(dash_timer != null):
player.active_item = null
if reset_player_active:
player.active_item = null
await dash_timer.timeout
super()
super(false)
else:
super()

View file

@ -32,7 +32,6 @@ scale = Vector2(1, 4)
shape = SubResource("CircleShape2D_ktd5x")
[node name="Sprite2D2" type="Sprite2D" parent="."]
modulate = Color(0.725757, 0.519822, 5.77569e-07, 1)
position = Vector2(-2, 14)
scale = Vector2(1.2, 1.2)
texture = ExtResource("3_vqrqe")

View file

@ -1,5 +1,6 @@
extends ActiveItem
var cooldown = 10
var timer : SceneTreeTimer
func actually_collect():
player.set_cooldown(cooldown)
@ -8,5 +9,13 @@ func activate():
$UpdashSound.play()
player.activate_cooldown()
player.reset_to_velocity = Vector2(0,1)
await get_tree().create_timer(0.1).timeout
timer = get_tree().create_timer(0.1)
await timer.timeout
player.reset_to_velocity = Vector2(0, -2400)
func remove(reset_player_active = true):
if reset_player_active:
player.active_item = null
if timer != null and timer.time_left > 0:
await timer.timeout
super(false)

View file

@ -27,7 +27,6 @@ scale = Vector2(1.1, 4.4)
shape = SubResource("CircleShape2D_ghbl6")
[node name="Sprite2D2" type="Sprite2D" parent="."]
modulate = Color(0.583047, 0.321422, 0.988413, 1)
position = Vector2(0, 15)
scale = Vector2(1.4, 1.4)
texture = ExtResource("3_ssiqx")

View file

@ -13,6 +13,6 @@
[resource]
script = ExtResource("6_rli0f")
common = Array[PackedScene]([ExtResource("1_2l6sh")])
rare = Array[PackedScene]([ExtResource("3_g002j"), ExtResource("2_rli0f"), ExtResource("4_vpswe"), ExtResource("5_jwi73")])
unique = Array[PackedScene]([ExtResource("6_73uum"), ExtResource("7_k6eth"), ExtResource("8_8cxou"), ExtResource("9_esvgx")])
common = Array[PackedScene]([ExtResource("1_2l6sh"), ExtResource("1_2l6sh"), ExtResource("9_esvgx"), ExtResource("5_jwi73"), ExtResource("4_vpswe")])
rare = Array[PackedScene]([ExtResource("3_g002j"), ExtResource("2_rli0f")])
unique = Array[PackedScene]([ExtResource("6_73uum"), ExtResource("7_k6eth"), ExtResource("8_8cxou")])

View file

@ -1,4 +1,4 @@
[gd_scene load_steps=16 format=3 uid="uid://cxo6bq26huau7"]
[gd_scene load_steps=18 format=3 uid="uid://cxo6bq26huau7"]
[ext_resource type="PackedScene" uid="uid://cmaovvr15b3qk" path="res://player/player.tscn" id="2_1bvp3"]
[ext_resource type="Texture2D" uid="uid://d3fpq76anm4t7" path="res://world/Background Prototype/Background prototype.png" id="3_kek77"]
@ -15,6 +15,8 @@
[ext_resource type="PackedScene" uid="uid://cqn67nwyrtq3k" path="res://ui/journal/journal.tscn" id="10_w48qg"]
[ext_resource type="PackedScene" uid="uid://cpe4s6vsn0ujd" path="res://enemies/boss/boss.tscn" id="11_efxa6"]
[ext_resource type="Script" uid="uid://gul4u5tw1vxk" path="res://bg_image.gd" id="13_vivmo"]
[ext_resource type="PackedScene" uid="uid://bbpf28ohayd8n" path="res://items/permanent_items/backslash/backslash.tscn" id="16_2cqfq"]
[ext_resource type="PackedScene" uid="uid://bwtdls58ajair" path="res://items/permanent_items/upslash/upslash.tscn" id="16_yaehf"]
[node name="main" type="Node2D"]
@ -103,6 +105,12 @@ colors = Array[Color]([Color(0, 0.6441987, 0.6693053, 1), Color(0.90588236, 0.15
script = ExtResource("10_efxa6")
boss = ExtResource("11_efxa6")
[node name="Upslash" parent="." instance=ExtResource("16_yaehf")]
position = Vector2(827, -2974)
[node name="Backslash" parent="." instance=ExtResource("16_2cqfq")]
position = Vector2(1021, -2924)
[connection signal="active_item_changed" from="Player" to="UIOverlay/ItemUI" method="_on_player_active_item_changed"]
[connection signal="health_changed" from="Player" to="UIOverlay/Healthbar" method="_on_player_health_changed"]
[connection signal="max_hp_changed" from="Player" to="UIOverlay/Healthbar" method="_on_player_max_hp_changed"]

View file

@ -19,7 +19,7 @@ func swing(dir_str) -> void:
if dir_str == "up":
scale.x = abs(scale.x)
scale.y = abs(scale.y) * facing
rotation = PI/2
rotation = PI/2 * facing_mult
else:
scale.x = abs(scale.x) * facing
scale.y = abs(scale.y)