Update flower entity to spawn snails based on game state.
- Added Snail entity with states for eating and sleeping. - Modified Flowers script to handle snail spawning logic.
This commit is contained in:
parent
9988ee23de
commit
908f834181
8 changed files with 143 additions and 2 deletions
|
|
@ -3,8 +3,40 @@ class_name Flowers
|
|||
|
||||
@onready var outline = $AreaHighlight
|
||||
|
||||
@export var health : int = 100
|
||||
|
||||
var spawn_snails : bool = false
|
||||
|
||||
@onready var spawn_area = $FlowerCollectionArea/CollisionShape2D
|
||||
@onready var snail = $Snail
|
||||
|
||||
func _ready():
|
||||
hide_outline()
|
||||
|
||||
## Check if this level is spawning snails or not
|
||||
if GameState.spawn_snails:
|
||||
Log.pr("Going to be spawning snails!")
|
||||
spawn_snails = true
|
||||
|
||||
Log.pr(get_random_snail_spawn())
|
||||
snail.global_position = get_random_snail_spawn()
|
||||
|
||||
|
||||
func show_outline():
|
||||
outline.visible = true
|
||||
|
||||
func hide_outline():
|
||||
outline.visible = false
|
||||
outline.visible = false
|
||||
|
||||
|
||||
func get_random_snail_spawn():
|
||||
var circle_radius = spawn_area.shape.radius
|
||||
var random_angle = randf_range(0, TAU)
|
||||
|
||||
var x = circle_radius * cos(random_angle)
|
||||
var y = circle_radius * sin(random_angle)
|
||||
|
||||
var circle_center = spawn_area.global_position
|
||||
var random_point = circle_center + Vector2(x, y)
|
||||
|
||||
return random_point
|
||||
Loading…
Add table
Add a link
Reference in a new issue