Godot Script Beta

GODOT SCRIPT Node.get_node(). Esta función usa caminos para traer nodos en el árbol actual o en cualquier parte de la es

Views 60 Downloads 0 File size 184KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

GODOT SCRIPT Node.get_node(). Esta función usa caminos para traer nodos en el árbol actual o en cualquier parte de la escena, relativa al nodo que posee el script. get_node("Button") llama al botón (el botón es un nodo). func _on_button_pressed(): get_node("Label").set_text("HELLO!") Al presionar el botón llama al nodo label (etiqueta) y sobre el establece el texto “HELLO!” func _ready(): get_node("Button").connect("pressed",self,"_on_button _pressed") Ahora el nodo Button es conectado a un código que indica que yo presione el boton.

Nota: Ya que es un error común en este tutorial, clarifiquemos nuevamente que get_node(camino) funciona regresando el hijo inmediato del nodo que es controlado por el script (en este caso, Panel), por lo que Button debe ser un hijo de Panel para que el código anterior funcione. Para darle mas contexto a esta aclaración, si Button fuese hijo de Label, el código para obtenerlo sería: # not for this case # but just in case get_node("Label/Button") Al presionar el boton activa este código el cual se conecta con otro código para activarlo que es: get_node("Label").set_text("HELLO!") para que se pueda escribir “HELLO”

CONTADOR extends Label var accum=0 func _ready(): set_process(true) func _process(delta): accum += delta set_text(str(accum)) Suma 1 a delta empezando desde 0 y lo muestra en set_text(str(accum))

GRUPOS func _ready(): add_to_group("enemigos") De esta forma, si el jugador, entrando sigilosamente a la base secreta, es descubierto, todos los enemigos pueden ser notificados sobre la alarma activada, usando SceneTree.call_group(): func _on_discovered(): get_tree().call_group(0, "guardias", "jugador_fue_descubierto") El código superior llama la función “jugador_fue_descubierto” en cada miembro del grupo “guardias”. Opcionalmente, es posible obtener la lista completa de nodos “guardias” llamando a SceneTree.get_nodes_in_group(): var guardias = get_tree().get_nodes_in_group("guardias") Luego agregaremos mas sobre SceneTree