add stones, pickups
This commit is contained in:
@@ -2,6 +2,7 @@ extends Node3D
|
||||
|
||||
const PLAYER_SCENE := preload("res://scenes/Player.tscn")
|
||||
const ENEMY_SCENE := preload("res://scenes/Enemy.tscn")
|
||||
const ROCK_SCENE := preload("res://scenes/Rock.tscn")
|
||||
|
||||
const ARENA := 14.0
|
||||
const WALL_T := 1.2
|
||||
@@ -42,6 +43,7 @@ func _ready() -> void:
|
||||
_create_camera()
|
||||
_create_ui()
|
||||
_spawn_player()
|
||||
_spawn_rocks()
|
||||
_start_game()
|
||||
add_to_group("main")
|
||||
Input.mouse_mode = Input.MOUSE_MODE_CAPTURED
|
||||
@@ -187,6 +189,16 @@ func _process(delta: float) -> void:
|
||||
if Input.is_mouse_button_pressed(MOUSE_BUTTON_RIGHT):
|
||||
player.set_aim_direction(deg_to_rad(cam_yaw))
|
||||
|
||||
# ─── Rocks ────────────────────────────────────────────────────────────────────
|
||||
|
||||
func _spawn_rocks() -> void:
|
||||
for i in range(10):
|
||||
var rock := ROCK_SCENE.instantiate()
|
||||
add_child(rock)
|
||||
var angle := randf() * TAU
|
||||
var dist := randf_range(3.5, ARENA - 2.0)
|
||||
rock.position = Vector3(cos(angle) * dist, 0.0, sin(angle) * dist)
|
||||
|
||||
# ─── Player ───────────────────────────────────────────────────────────────────
|
||||
|
||||
func _spawn_player() -> void:
|
||||
@@ -238,6 +250,10 @@ func _spawn_enemy() -> void:
|
||||
2: enemy.position = Vector3(-(ARENA - 0.5), 0, r)
|
||||
3: enemy.position = Vector3( (ARENA - 0.5), 0, r)
|
||||
|
||||
func add_bonus_score(amount: int) -> void:
|
||||
score += amount
|
||||
_update_labels()
|
||||
|
||||
func _on_enemy_died(points: int) -> void:
|
||||
score += points
|
||||
kills += 1
|
||||
|
||||
Reference in New Issue
Block a user