30 lines
950 B
GDScript
30 lines
950 B
GDScript
extends Resource
|
|
|
|
## Base class for every possible entity in game. Makes possible for entities to be spawned using seedpackets
|
|
class_name SeedpacketResource
|
|
|
|
## Thumbnail of an entity
|
|
@export var preview : Texture2D
|
|
|
|
## Cost of entity in local units
|
|
@export var cost : float
|
|
|
|
## Recharge time for seedpacket in seconds
|
|
@export_range(0.05,60,0.01,"or_greater","suffix:seconds") var recharge_time : float = 3
|
|
|
|
## Initial recharge fraction. Zero equals that seedpacket recharges instantly, one equals that packet starts uncharged
|
|
@export_range(0,1,0.01) var initial_recharge_percent : float = 1
|
|
|
|
## Scene that can be spawned
|
|
@export var scene : PackedScene
|
|
|
|
## Order to sort in almanach
|
|
@export_range(0,4056,1,"or_greater","hide_slider") var order : int
|
|
|
|
var gid : StringName = ""
|
|
|
|
func get_gid() -> StringName:
|
|
if gid == "":
|
|
var split_path = resource_path.split("/")
|
|
gid = split_path[split_path.size()].trim_suffix(".tres").to_lower()
|
|
return gid
|