limboai/demo/demo/ai/trees/09_agent_summoner.tres

156 lines
5.4 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

[gd_resource type="BehaviorTree" load_steps=35 format=3 uid="uid://cpxk7jnqpwwlc"]
[ext_resource type="Script" path="res://demo/ai/tasks/select_random_nearby_pos.gd" id="1_sgn0p"]
[ext_resource type="Script" path="res://demo/ai/tasks/arrive_pos.gd" id="2_pshl2"]
[sub_resource type="BlackboardPlan" id="BlackboardPlan_58oq1"]
var/speed/name = &"speed"
var/speed/type = 3
var/speed/value = 300.0
var/speed/hint = 1
var/speed/hint_string = "10,1000,10"
var/summon_cooldown/name = &"summon_cooldown"
var/summon_cooldown/type = 1
var/summon_cooldown/value = false
var/summon_cooldown/hint = 0
var/summon_cooldown/hint_string = ""
[sub_resource type="BBNode" id="BBNode_b7euf"]
resource_name = "AnimationPlayer"
saved_value = NodePath("AnimationPlayer")
[sub_resource type="BTPlayAnimation" id="BTPlayAnimation_sot6a"]
animation_player = SubResource("BBNode_b7euf")
animation_name = &"idle"
blend = 0.1
[sub_resource type="BTRandomWait" id="BTRandomWait_0wc6p"]
[sub_resource type="BTSequence" id="BTSequence_kwkxc"]
custom_name = "Summoning sickness"
children = [SubResource("BTPlayAnimation_sot6a"), SubResource("BTRandomWait_0wc6p")]
[sub_resource type="BTRunLimit" id="BTRunLimit_x2jr4"]
children = [SubResource("BTSequence_kwkxc")]
[sub_resource type="BBVariant" id="BBVariant_y3x7n"]
resource_name = "6"
saved_value = 6
type = 2
[sub_resource type="BTCheckAgentProperty" id="BTCheckAgentProperty_olmdj"]
property = &"summon_count"
check_type = 1
value = SubResource("BBVariant_y3x7n")
[sub_resource type="BTComment" id="BTComment_ef6y0"]
custom_name = "Variable $summon_cooldown is updated by the Cooldown task below"
[sub_resource type="BBVariant" id="BBVariant_hgde2"]
resource_name = "false"
saved_value = false
type = 1
[sub_resource type="BTCheckVar" id="BTCheckVar_hc3o3"]
children = [SubResource("BTComment_ef6y0")]
variable = &"summon_cooldown"
value = SubResource("BBVariant_hgde2")
[sub_resource type="BBNode" id="BBNode_q8bei"]
resource_name = "AnimationPlayer"
saved_value = NodePath("AnimationPlayer")
[sub_resource type="BTPlayAnimation" id="BTPlayAnimation_6leni"]
animation_player = SubResource("BBNode_q8bei")
animation_name = &"summon"
blend = 0.1
[sub_resource type="BTWait" id="BTWait_8og18"]
duration = 0.5
[sub_resource type="BTAction" id="BTAction_yeyns"]
script = ExtResource("1_sgn0p")
range_min = 300.0
range_max = 500.0
position_var = &"minion_pos"
[sub_resource type="BBVariant" id="BBVariant_wfjwy"]
resource_name = "$minion_pos"
value_source = 1
variable = &"minion_pos"
type = 5
[sub_resource type="BBNode" id="BBNode_v271m"]
resource_name = "."
saved_value = NodePath(".")
[sub_resource type="BTCallMethod" id="BTCallMethod_4ath5"]
node = SubResource("BBNode_v271m")
method = &"summon_minion"
args = Array[BBVariant]([SubResource("BBVariant_wfjwy")])
[sub_resource type="BTCooldown" id="BTCooldown_25f70"]
children = [SubResource("BTCallMethod_4ath5")]
duration = 6.0
cooldown_state_var = &"summon_cooldown"
[sub_resource type="BTWait" id="BTWait_tdhfn"]
[sub_resource type="BTSequence" id="BTSequence_2n742"]
custom_name = "Summon minion"
children = [SubResource("BTCheckAgentProperty_olmdj"), SubResource("BTCheckVar_hc3o3"), SubResource("BTPlayAnimation_6leni"), SubResource("BTWait_8og18"), SubResource("BTAction_yeyns"), SubResource("BTCooldown_25f70"), SubResource("BTWait_tdhfn")]
[sub_resource type="BTAction" id="BTAction_33wje"]
script = ExtResource("1_sgn0p")
range_min = 300.0
range_max = 700.0
position_var = &"pos"
[sub_resource type="BBNode" id="BBNode_w5fh2"]
resource_name = "AnimationPlayer"
saved_value = NodePath("AnimationPlayer")
[sub_resource type="BTPlayAnimation" id="BTPlayAnimation_qbxm8"]
animation_player = SubResource("BBNode_w5fh2")
animation_name = &"walk"
blend = 0.1
[sub_resource type="BTAction" id="BTAction_dfifw"]
script = ExtResource("2_pshl2")
target_position_var = &"pos"
speed_var = &"speed"
tolerance = 50.0
avoid_var = &""
[sub_resource type="BTTimeLimit" id="BTTimeLimit_i05cm"]
children = [SubResource("BTAction_dfifw")]
time_limit = 3.0
[sub_resource type="BBNode" id="BBNode_vinxt"]
resource_name = "AnimationPlayer"
saved_value = NodePath("AnimationPlayer")
[sub_resource type="BTPlayAnimation" id="BTPlayAnimation_t7drr"]
animation_player = SubResource("BBNode_vinxt")
animation_name = &"idle"
blend = 0.1
[sub_resource type="BTRandomWait" id="BTRandomWait_axjfh"]
[sub_resource type="BTSequence" id="BTSequence_ks71q"]
custom_name = "Chill"
children = [SubResource("BTPlayAnimation_t7drr"), SubResource("BTRandomWait_axjfh")]
[sub_resource type="BTSequence" id="BTSequence_dss4d"]
custom_name = "Reposition"
children = [SubResource("BTAction_33wje"), SubResource("BTPlayAnimation_qbxm8"), SubResource("BTTimeLimit_i05cm"), SubResource("BTSequence_ks71q")]
[sub_resource type="BTSelector" id="BTSelector_gp6q5"]
children = [SubResource("BTRunLimit_x2jr4"), SubResource("BTSequence_2n742"), SubResource("BTSequence_dss4d")]
[resource]
description = "[con]CheckAgentProperty[/con] examines the agents property value and compares it to a given value or a blackboard variable. In this example, it checks if the [color=cyan]summon_count[/color] property is less than 6.
You can also check or share a [dec]Cooldown[/dec] in different parts of the behavior tree if you provide a blackboard variable for the [dec]Cooldown[/dec] decorator to use. [con]CheckVar[/con] is responsible here for examining the cooldown variable named \"summon_cooldown\"."
blackboard_plan = SubResource("BlackboardPlan_58oq1")
root_task = SubResource("BTSelector_gp6q5")