proto3 initial commit
This commit is contained in:
60
proto3/godot/scenes/debug/ai_debug.gd
Normal file
60
proto3/godot/scenes/debug/ai_debug.gd
Normal file
@@ -0,0 +1,60 @@
|
||||
extends Control
|
||||
|
||||
|
||||
# Declare member variables here. Examples:
|
||||
# var a = 2
|
||||
# var b = "text"
|
||||
|
||||
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
func _ready():
|
||||
pass # Replace with function body.
|
||||
|
||||
|
||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||
func _process(delta):
|
||||
for k in $VBoxContainer/list.get_children():
|
||||
k.queue_free()
|
||||
var dst = INF
|
||||
var player_pos = global.player.global_transform.origin
|
||||
for k in get_tree().get_nodes_in_group("npc"):
|
||||
var hb = HBoxContainer.new()
|
||||
var label1 = Label.new()
|
||||
label1.text = k.name
|
||||
var label2 = Label.new()
|
||||
if k.has_meta("action"):
|
||||
label2.text = k.get_meta("action")
|
||||
else:
|
||||
label2.text = "unknown action"
|
||||
hb.add_child(label1)
|
||||
hb.add_child(label2)
|
||||
$VBoxContainer/list.add_child(hb)
|
||||
var npc_pos = k.global_transform.origin
|
||||
var ndst = player_pos.distance_squared_to(npc_pos)
|
||||
if ndst < dst:
|
||||
var bb = k.get_node("blackboard")
|
||||
$VBoxContainer/closest/name.text = k.name
|
||||
dst = ndst
|
||||
if k.has_meta("action"):
|
||||
$VBoxContainer/closest/action.text = "action: " + k.get_meta("action")
|
||||
var enemy = bb.get("closest_enemy")
|
||||
if enemy:
|
||||
$VBoxContainer/closest/closest_enemy.text = "enemy: " + enemy.name
|
||||
else:
|
||||
$VBoxContainer/closest/closest_enemy.text = "no enemy"
|
||||
if k.has_meta("target_group"):
|
||||
$VBoxContainer/closest/target_group.text = "target: " + k.get_meta("target_group")
|
||||
else:
|
||||
$VBoxContainer/closest/target_group.text = ""
|
||||
if k.has_meta("target_loc"):
|
||||
$VBoxContainer/closest/target_loc.text = "target loc: " + str(k.get_meta("target_loc"))
|
||||
else:
|
||||
$VBoxContainer/closest/target_loc.text = ""
|
||||
if k.has_meta("path"):
|
||||
$VBoxContainer/closest/path.text = "path: " + str(k.get_meta("path"))
|
||||
else:
|
||||
$VBoxContainer/closest/path.text = ""
|
||||
if k.has_meta("path_point"):
|
||||
$VBoxContainer/closest/path_point.text = "path point: " + str(k.get_meta("path_point"))
|
||||
else:
|
||||
$VBoxContainer/closest/path_point.text = ""
|
||||
Reference in New Issue
Block a user