În Godot Engine, o Resursă (Resource) este un container de date partajabil între noduri și instanțe. Spre deosebire de noduri, resursele nu au poziție în scenă și nu consumă ciclu de procesare fizică. Crearea de resurse personalizate cu class_name ... extends Resource este secretul unui cod curat pentru inventare, statistici de personaje și arbori de abilități.
Definirea unei resurse de armă (ArmaDate.gd)
# Salvați ca 'ArmaDate.gd':
class_name ArmaDate
extends Resource
@export var nume_arma: String = "Sabie de Fier"
@export var daune: int = 25
@export var viteza_atac: float = 1.2
@export var pictograma: Texture2D
@export var sunet_lovitura: AudioStream
# Putem include și metode ajutătoare:
func calculeaza_dps() -> float:
return daune * viteza_atac
Utilizarea resursei într-un nod de jucător și salvarea pe disc
extends CharacterBody2D
# Inspectorul din Godot va permite acum tragerea unui fișier .tres direct aici!
@export var arma_echipata: ArmaDate
func _ready() -> void:
if arma_echipata:
print("Jucătorul are echipată arma:", arma_echipata.nume_arma)
print("DPS armă:", arma_echipata.calculeaza_dps())
# Salvarea programatică a unei resurse ca fișier '.tres' pe disc:
func salveaza_arma_noua() -> void:
var sabie_magica = ArmaDate.new()
sabie_magica.nume_arma = "Sabie de Foc Legendara"
sabie_magica.daune = 120
ResourceSaver.save(sabie_magica, "user://arma_salvata.tres")
Întrebări & Exemple de Cod:
Resurse Personalizate în Godot 4: Moștenirea Clasei Resource și Salvarea .tresAi o nelămurire despre utilizarea comenzii
Resurse Personalizate în Godot 4: Moștenirea Clasei Resource și Salvarea .tressau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!
Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.