Integrate per-save identity and interaction UI
This commit is contained in:
parent
ac82a28f3b
commit
4fda6e97f6
58 changed files with 3471 additions and 461 deletions
|
|
@ -14,4 +14,5 @@ surface_water_relation = 2
|
|||
population = 4
|
||||
surface_population_per_100_square_meters = 0.4
|
||||
maximum_surface_population = 16
|
||||
sprite_pixel_size = 0.0005
|
||||
sprite_pixel_size = 0.01
|
||||
sprite_surface_offset = 0.11
|
||||
|
|
|
|||
|
|
@ -20,7 +20,8 @@ scare_radius = 2.8
|
|||
capture_radius = 0.7
|
||||
interaction_range = 2.6
|
||||
charge_duration = 2.0
|
||||
sprite_pixel_size = 0.0005
|
||||
sprite_pixel_size = 0.01
|
||||
sprite_surface_offset = 0.11
|
||||
sprite_tilt_degrees = -45.0
|
||||
capture_respawn_min_seconds = 480.0
|
||||
capture_respawn_max_seconds = 720.0
|
||||
|
|
|
|||
|
|
@ -11,4 +11,5 @@ required_tool_id = &"crab_net"
|
|||
surface_materials = Array[StringName]([&"sand"])
|
||||
minimum_surface_y = -0.5
|
||||
population = 4
|
||||
sprite_pixel_size = 0.0005
|
||||
sprite_pixel_size = 0.01
|
||||
sprite_surface_offset = 0.11
|
||||
|
|
|
|||
|
|
@ -11,4 +11,5 @@ required_tool_id = &"crab_net"
|
|||
surface_materials = Array[StringName]([&"sand"])
|
||||
minimum_surface_y = 0.08
|
||||
population = 4
|
||||
sprite_pixel_size = 0.0005
|
||||
sprite_pixel_size = 0.01
|
||||
sprite_surface_offset = 0.11
|
||||
|
|
|
|||
|
|
@ -61,6 +61,7 @@ var surface_population_per_100_square_meters := 0.0
|
|||
@export_range(0.1, 10.0, 0.05) var interaction_range: float = 2.6
|
||||
@export_range(0.1, 10.0, 0.05) var charge_duration: float = 2.0
|
||||
@export_range(0.0001, 0.01, 0.00005) var sprite_pixel_size: float = 0.001
|
||||
@export_range(-2.0, 2.0, 0.01) var sprite_surface_offset: float = 0.11
|
||||
@export_range(-90.0, 90.0, 1.0) var sprite_tilt_degrees: float = -45.0
|
||||
@export_category("Respawn Budget")
|
||||
@export_range(0.0, 3600.0, 1.0) var capture_respawn_min_seconds: float = 480.0
|
||||
|
|
@ -117,6 +118,7 @@ func is_valid() -> bool:
|
|||
and interaction_range > 0.0
|
||||
and charge_duration > 0.0
|
||||
and sprite_pixel_size > 0.0
|
||||
and is_finite(sprite_surface_offset)
|
||||
and capture_respawn_max_seconds >= capture_respawn_min_seconds
|
||||
and scare_respawn_max_seconds >= scare_respawn_min_seconds
|
||||
)
|
||||
|
|
|
|||
|
|
@ -2,8 +2,6 @@ class_name WorldGatherable
|
|||
extends Node3D
|
||||
|
||||
const GatherableDataType = preload("res://gathering/gatherable_data.gd")
|
||||
const REFERENCE_SPRITE_PIXEL_SIZE: float = 0.001
|
||||
const REFERENCE_SPRITE_HEIGHT: float = 0.22
|
||||
const WATER_SPURT_INTERVAL_SECONDS: float = 1.15
|
||||
const WATER_SPURT_COLOR := Color(0.48, 0.82, 0.84, 1.0)
|
||||
const WATER_SPURT_HOLE_COLOR := Color(0.23, 0.27, 0.24, 1.0)
|
||||
|
|
@ -47,11 +45,7 @@ func configure(
|
|||
_sprite.position.y = (
|
||||
0.0
|
||||
if not data.spawn_anchor_set_id.is_empty()
|
||||
else (
|
||||
REFERENCE_SPRITE_HEIGHT
|
||||
* data.sprite_pixel_size
|
||||
/ REFERENCE_SPRITE_PIXEL_SIZE
|
||||
)
|
||||
else data.sprite_surface_offset
|
||||
)
|
||||
_sprite.rotation_degrees.x = data.sprite_tilt_degrees
|
||||
|
||||
|
|
@ -118,7 +112,6 @@ func _ensure_visual() -> void:
|
|||
return
|
||||
_sprite = Sprite3D.new()
|
||||
_sprite.name = "GatherableSprite"
|
||||
_sprite.position.y = REFERENCE_SPRITE_HEIGHT
|
||||
_sprite.shaded = false
|
||||
_sprite.double_sided = true
|
||||
_sprite.billboard = BaseMaterial3D.BILLBOARD_ENABLED
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue