Compare commits

..

2 Commits

Author SHA1 Message Date
Georgiy Gorin e185d2e1fd Merge branch 'exp' of https://git.nfedorov.dev/DragonSpirit/KickSurvivors into exp 2026-04-23 16:27:03 +03:00
Georgiy Gorin 34a9b6b18f Нью баланс 2026-04-23 16:11:34 +03:00
9 changed files with 15 additions and 14 deletions
+1 -1
View File
@@ -32,7 +32,7 @@ func _ready() -> void:
_tooltip = Label3D.new() _tooltip = Label3D.new()
_tooltip.text = "Boulder\nRock+Rock\nVery heavy. High damage" _tooltip.text = "Boulder\nRock+Rock\nVery heavy. High damage"
_tooltip.billboard = BaseMaterial3D.BILLBOARD_ENABLED _tooltip.billboard = BaseMaterial3D.BILLBOARD_ENABLED
_tooltip.font_size = 28 _tooltip.font_size = 56
_tooltip.outline_size = 6 _tooltip.outline_size = 6
_tooltip.position = Vector3(0, 1.4, 0) _tooltip.position = Vector3(0, 1.4, 0)
_tooltip.modulate = Color(1.0, 0.95, 0.8) _tooltip.modulate = Color(1.0, 0.95, 0.8)
+3 -3
View File
@@ -89,13 +89,13 @@ func setup(type: String, wave: int) -> void:
match type: match type:
"slime": "slime":
move_speed = 2.8 + wave * 0.12 move_speed = 2.8 + wave * 0.12
health = 25 + wave * 4 health = 40 + wave * 4
score_value = 10 score_value = 10
damage_to_player = 8 damage_to_player = 8
enemy_level = 1 enemy_level = 1
"bat": "bat":
move_speed = 5 + wave * 0.15 move_speed = 5 + wave * 0.15
health = 40 + wave * 2 health = 100 + wave * 2
score_value = 20 score_value = 20
damage_to_player = 6 damage_to_player = 6
base_scale = 0.7 base_scale = 0.7
@@ -107,7 +107,7 @@ func setup(type: String, wave: int) -> void:
#mesh_node1.set_visible(true) #mesh_node1.set_visible(true)
"ogre": "ogre":
move_speed = 3 + wave * 0.08 move_speed = 3 + wave * 0.08
health = 150 + wave * 12 health = 200 + wave * 12
score_value = 50 score_value = 50
damage_to_player = 18 damage_to_player = 18
base_scale = 1.5 base_scale = 1.5
+1 -1
View File
@@ -34,7 +34,7 @@ func _ready() -> void:
_tooltip = Label3D.new() _tooltip = Label3D.new()
_tooltip.text = "Magic Essence\nKick into\nEnchanting Table → Sphere" _tooltip.text = "Magic Essence\nKick into\nEnchanting Table → Sphere"
_tooltip.billboard = BaseMaterial3D.BILLBOARD_ENABLED _tooltip.billboard = BaseMaterial3D.BILLBOARD_ENABLED
_tooltip.font_size = 28 _tooltip.font_size = 56
_tooltip.outline_size = 6 _tooltip.outline_size = 6
_tooltip.position = Vector3(0, 1.2, 0) _tooltip.position = Vector3(0, 1.2, 0)
_tooltip.modulate = Color(0.85, 0.7, 1.0) _tooltip.modulate = Color(0.85, 0.7, 1.0)
+2 -2
View File
@@ -16,7 +16,7 @@ var kick_tier: int = 0
var toughness_tier: int = 2 var toughness_tier: int = 2
var state: State = State.IDLE var state: State = State.IDLE
var fly_vel: Vector3 = Vector3.ZERO var fly_vel: Vector3 = Vector3.ZERO
var health: float = 80.0 var health: float = 400.0
var dead: bool = false var dead: bool = false
var damage_modifier: float = 0.9 var damage_modifier: float = 0.9
@@ -34,7 +34,7 @@ func _ready() -> void:
_tooltip = Label3D.new() _tooltip = Label3D.new()
_tooltip.text = "Iron\nHeavy weapon\n+Leather → Iron Shield\nForge → Metal Plate" _tooltip.text = "Iron\nHeavy weapon\n+Leather → Iron Shield\nForge → Metal Plate"
_tooltip.billboard = BaseMaterial3D.BILLBOARD_ENABLED _tooltip.billboard = BaseMaterial3D.BILLBOARD_ENABLED
_tooltip.font_size = 28 _tooltip.font_size = 56
_tooltip.outline_size = 6 _tooltip.outline_size = 6
_tooltip.position = Vector3(0, 1.1, 0) _tooltip.position = Vector3(0, 1.1, 0)
_tooltip.modulate = Color(1.0, 0.95, 0.8) _tooltip.modulate = Color(1.0, 0.95, 0.8)
+1 -1
View File
@@ -21,7 +21,7 @@ func _ready() -> void:
_tooltip = Label3D.new() _tooltip = Label3D.new()
_tooltip.text = "Leather\n+Stick → Boots\n+Rock → Leather Armor\n+Iron → Iron Shield" _tooltip.text = "Leather\n+Stick → Boots\n+Rock → Leather Armor\n+Iron → Iron Shield"
_tooltip.billboard = BaseMaterial3D.BILLBOARD_ENABLED _tooltip.billboard = BaseMaterial3D.BILLBOARD_ENABLED
_tooltip.font_size = 28 _tooltip.font_size = 56
_tooltip.outline_size = 6 _tooltip.outline_size = 6
_tooltip.position = Vector3(0, 1.0, 0) _tooltip.position = Vector3(0, 1.0, 0)
_tooltip.modulate = Color(1.0, 0.95, 0.8) _tooltip.modulate = Color(1.0, 0.95, 0.8)
+4 -3
View File
@@ -10,7 +10,7 @@ const CAM_DIST := 8.0
const MOUSE_SENS := 0.18 const MOUSE_SENS := 0.18
const PITCH_MIN := 5.0 const PITCH_MIN := 5.0
const PITCH_MAX := 70.0 const PITCH_MAX := 70.0
const SPAWN_TIME := 10 const SPAWN_TIME := 5
var arena_size: float = 14.0 var arena_size: float = 14.0
var cam_yaw: float = 0.0 var cam_yaw: float = 0.0
@@ -149,7 +149,7 @@ var rocks_on_field: int = 0
var rocks_pending: int = 0 var rocks_pending: int = 0
func _get_rock_limit() -> int: func _get_rock_limit() -> int:
return mini(2 + (wave + 1) / 2, 7) return mini(3 + (wave + 1) / 2, 7)
func _spawn_rocks() -> void: func _spawn_rocks() -> void:
var limit := _get_rock_limit() var limit := _get_rock_limit()
@@ -158,7 +158,7 @@ func _spawn_rocks() -> void:
var sticks_on_field: int = 0 var sticks_on_field: int = 0
var sticks_pending: int = 0 var sticks_pending: int = 0
const STICK_LIMIT := 2 const STICK_LIMIT := 3
func _spawn_sticks() -> void: func _spawn_sticks() -> void:
for i in range(STICK_LIMIT): for i in range(STICK_LIMIT):
@@ -178,6 +178,7 @@ func _on_stick_destroyed() -> void:
if sticks_on_field + sticks_pending < STICK_LIMIT: if sticks_on_field + sticks_pending < STICK_LIMIT:
sticks_pending += 1 sticks_pending += 1
await get_tree().create_timer(GameSettings.item_respawn_delay).timeout await get_tree().create_timer(GameSettings.item_respawn_delay).timeout
sticks_pending -= 1 sticks_pending -= 1
if game_active: if game_active:
_spawn_single_stick() _spawn_single_stick()
+1 -1
View File
@@ -8,7 +8,7 @@ signal health_changed(current: int, maximum: int)
@export var kick_force: float = 60.0 @export var kick_force: float = 60.0
@export var kick_cooldown: float = 0.6 @export var kick_cooldown: float = 0.6
@export var kick_angle: float = 60.0 @export var kick_angle: float = 60.0
@export var max_health: int = 100 @export var max_health: int = 300
var health: int = max_health var health: int = max_health
var kick_tier: int = 0 var kick_tier: int = 0
+1 -1
View File
@@ -32,7 +32,7 @@ func _ready() -> void:
_tooltip = Label3D.new() _tooltip = Label3D.new()
_tooltip.text = "Rock\n+Rock → Boulder\n+Stick → Wood Shield" _tooltip.text = "Rock\n+Rock → Boulder\n+Stick → Wood Shield"
_tooltip.billboard = BaseMaterial3D.BILLBOARD_ENABLED _tooltip.billboard = BaseMaterial3D.BILLBOARD_ENABLED
_tooltip.font_size = 28 _tooltip.font_size = 56
_tooltip.outline_size = 6 _tooltip.outline_size = 6
_tooltip.position = Vector3(0, 1.1, 0) _tooltip.position = Vector3(0, 1.1, 0)
_tooltip.modulate = Color(1.0, 0.95, 0.8) _tooltip.modulate = Color(1.0, 0.95, 0.8)
+1 -1
View File
@@ -32,7 +32,7 @@ func _ready() -> void:
_tooltip = Label3D.new() _tooltip = Label3D.new()
_tooltip.text = "Stick\n+Leather → Boots\n+Stick → Stick Armor\n+Rock → Wood Shield" _tooltip.text = "Stick\n+Leather → Boots\n+Stick → Stick Armor\n+Rock → Wood Shield"
_tooltip.billboard = BaseMaterial3D.BILLBOARD_ENABLED _tooltip.billboard = BaseMaterial3D.BILLBOARD_ENABLED
_tooltip.font_size = 28 _tooltip.font_size = 56
_tooltip.outline_size = 6 _tooltip.outline_size = 6
_tooltip.position = Vector3(0, 1.2, 0) _tooltip.position = Vector3(0, 1.2, 0)
_tooltip.modulate = Color(1.0, 0.95, 0.8) _tooltip.modulate = Color(1.0, 0.95, 0.8)