update to godot 4.2, started navmeshes
parent
b99dca6eca
commit
388c2a0e4c
|
@ -9,19 +9,17 @@ gradient = SubResource("Gradient_p5otp")
|
|||
|
||||
[resource]
|
||||
lifetime_randomness = 0.5
|
||||
particle_flag_disable_z = true
|
||||
emission_shape = 6
|
||||
emission_ring_axis = Vector3(0, 0, 1)
|
||||
emission_ring_height = 1.0
|
||||
emission_ring_radius = 128.0
|
||||
emission_ring_inner_radius = 64.0
|
||||
particle_flag_disable_z = true
|
||||
direction = Vector3(2, 1, 0)
|
||||
gravity = Vector3(32, 32, 0)
|
||||
initial_velocity_min = 32.0
|
||||
initial_velocity_max = 64.0
|
||||
angular_velocity_max = 30.0
|
||||
orbit_velocity_min = 0.0
|
||||
orbit_velocity_max = 0.0
|
||||
gravity = Vector3(32, 32, 0)
|
||||
linear_accel_min = -64.0
|
||||
linear_accel_max = -32.0
|
||||
color_ramp = SubResource("GradientTexture1D_4a2pn")
|
||||
|
|
|
@ -11,11 +11,9 @@ gradient = SubResource("Gradient_v7xci")
|
|||
particle_flag_rotate_y = true
|
||||
particle_flag_disable_z = true
|
||||
spread = 180.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
initial_velocity_min = 64.0
|
||||
initial_velocity_max = 96.0
|
||||
orbit_velocity_min = 0.0
|
||||
orbit_velocity_max = 0.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
linear_accel_min = -128.0
|
||||
linear_accel_max = -96.0
|
||||
scale_min = 0.1
|
||||
|
|
|
@ -8,18 +8,16 @@ point_count = 3
|
|||
curve = SubResource("Curve_jqr7v")
|
||||
|
||||
[resource]
|
||||
particle_flag_disable_z = true
|
||||
emission_shape = 1
|
||||
emission_sphere_radius = 8.0
|
||||
particle_flag_disable_z = true
|
||||
direction = Vector3(0, -1, 0)
|
||||
gravity = Vector3(0, 0, 0)
|
||||
initial_velocity_min = 64.0
|
||||
initial_velocity_max = 128.0
|
||||
orbit_velocity_min = 0.0
|
||||
orbit_velocity_max = 0.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
linear_accel_min = -256.0
|
||||
linear_accel_max = -128.0
|
||||
attractor_interaction_enabled = false
|
||||
scale_min = 0.01
|
||||
scale_max = 0.02
|
||||
scale_curve = SubResource("CurveTexture_s2csc")
|
||||
attractor_interaction_enabled = false
|
||||
|
|
|
@ -22,16 +22,14 @@ point_count = 3
|
|||
curve = SubResource("Curve_0565g")
|
||||
|
||||
[resource]
|
||||
particle_flag_disable_z = true
|
||||
emission_shape = 2
|
||||
emission_sphere_radius = 8.0
|
||||
particle_flag_disable_z = true
|
||||
direction = Vector3(0, -1, 0)
|
||||
spread = 90.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
initial_velocity_min = 128.0
|
||||
initial_velocity_max = 256.0
|
||||
orbit_velocity_min = 0.0
|
||||
orbit_velocity_max = 0.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
tangential_accel_min = -16.0
|
||||
tangential_accel_max = 16.0
|
||||
scale_min = 0.25
|
||||
|
|
|
@ -25,16 +25,14 @@ curve_y = SubResource("Curve_lfa60")
|
|||
curve_z = SubResource("Curve_3iug1")
|
||||
|
||||
[resource]
|
||||
emission_shape = 1
|
||||
emission_sphere_radius = 4.0
|
||||
particle_flag_align_y = true
|
||||
particle_flag_disable_z = true
|
||||
emission_shape = 1
|
||||
emission_sphere_radius = 4.0
|
||||
spread = 180.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
initial_velocity_min = 256.0
|
||||
initial_velocity_max = 256.0
|
||||
orbit_velocity_min = 0.0
|
||||
orbit_velocity_max = 0.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
linear_accel_min = -512.0
|
||||
linear_accel_max = -512.0
|
||||
scale_min = 0.1
|
||||
|
|
|
@ -22,15 +22,13 @@ point_count = 3
|
|||
curve = SubResource("Curve_0565g")
|
||||
|
||||
[resource]
|
||||
particle_flag_disable_z = true
|
||||
emission_shape = 2
|
||||
emission_sphere_radius = 32.0
|
||||
particle_flag_disable_z = true
|
||||
direction = Vector3(0, -1, 0)
|
||||
gravity = Vector3(0, 0, 0)
|
||||
initial_velocity_min = 128.0
|
||||
initial_velocity_max = 256.0
|
||||
orbit_velocity_min = 0.0
|
||||
orbit_velocity_max = 0.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
tangential_accel_min = -16.0
|
||||
tangential_accel_max = 16.0
|
||||
scale_min = 0.25
|
||||
|
|
|
@ -22,16 +22,14 @@ point_count = 3
|
|||
curve = SubResource("Curve_0565g")
|
||||
|
||||
[resource]
|
||||
particle_flag_disable_z = true
|
||||
emission_shape = 2
|
||||
emission_sphere_radius = 8.0
|
||||
particle_flag_disable_z = true
|
||||
direction = Vector3(0, -1, 0)
|
||||
spread = 90.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
initial_velocity_min = 128.0
|
||||
initial_velocity_max = 256.0
|
||||
orbit_velocity_min = 0.0
|
||||
orbit_velocity_max = 0.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
tangential_accel_min = -16.0
|
||||
tangential_accel_max = 16.0
|
||||
scale_min = 0.25
|
||||
|
|
|
@ -33,7 +33,7 @@ length = 0.001
|
|||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("../Sprites/Node2D/Character:frame")
|
||||
tracks/0/path = NodePath("%Sprites/Node2D/Character:frame")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
|
@ -50,7 +50,7 @@ loop_mode = 1
|
|||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("../Sprites/Node2D/Character:frame")
|
||||
tracks/0/path = NodePath("%Sprites/Node2D/Character:frame")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
|
@ -112,13 +112,11 @@ curve = SubResource("Curve_30p4b")
|
|||
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_qdhau"]
|
||||
particle_flag_disable_z = true
|
||||
spread = 180.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
initial_velocity_min = 32.0
|
||||
initial_velocity_max = 32.0
|
||||
angular_velocity_min = 90.0
|
||||
angular_velocity_max = 90.0
|
||||
orbit_velocity_min = 0.0
|
||||
orbit_velocity_max = 0.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
linear_accel_min = -64.0
|
||||
linear_accel_max = -32.0
|
||||
tangential_accel_min = 8.0
|
||||
|
@ -256,6 +254,7 @@ texture = ExtResource("14_o5rd3")
|
|||
stream = ExtResource("15_8yg1g")
|
||||
|
||||
[node name="Sprites" type="Node2D" parent="."]
|
||||
unique_name_in_owner = true
|
||||
y_sort_enabled = true
|
||||
use_parent_material = true
|
||||
position = Vector2(-0.5, 0)
|
||||
|
@ -269,16 +268,16 @@ use_parent_material = true
|
|||
texture = ExtResource("16_6uxxp")
|
||||
offset = Vector2(0, -12)
|
||||
hframes = 7
|
||||
frame = 1
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
||||
position = Vector2(0, -4)
|
||||
shape = SubResource("RectangleShape2D_bfqew")
|
||||
|
||||
[node name="Inventory" type="Node2D" parent="."]
|
||||
[node name="Inventory" type="Node2D" parent="." node_paths=PackedStringArray("Items")]
|
||||
y_sort_enabled = true
|
||||
position = Vector2(0, -4)
|
||||
script = ExtResource("17_6fh5y")
|
||||
Items = []
|
||||
|
||||
[node name="Sword" parent="Inventory" instance=ExtResource("18_7l8tj")]
|
||||
|
||||
|
|
|
@ -34,7 +34,7 @@ length = 0.001
|
|||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("../Sprites/Node2D/Character:frame")
|
||||
tracks/0/path = NodePath("%Sprites/Node2D/Character:frame")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
|
@ -251,13 +251,11 @@ curve = SubResource("Curve_30p4b")
|
|||
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_qdhau"]
|
||||
particle_flag_disable_z = true
|
||||
spread = 180.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
initial_velocity_min = 32.0
|
||||
initial_velocity_max = 32.0
|
||||
angular_velocity_min = 90.0
|
||||
angular_velocity_max = 90.0
|
||||
orbit_velocity_min = 0.0
|
||||
orbit_velocity_max = 0.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
linear_accel_min = -64.0
|
||||
linear_accel_max = -32.0
|
||||
tangential_accel_min = 8.0
|
||||
|
@ -346,6 +344,7 @@ NPC = NodePath("../..")
|
|||
|
||||
[node name="NavigationAgent2D" type="NavigationAgent2D" parent="."]
|
||||
target_desired_distance = 16.0
|
||||
debug_enabled = true
|
||||
|
||||
[node name="Animations" type="Node" parent="."]
|
||||
script = ExtResource("9_ssmee")
|
||||
|
@ -406,6 +405,7 @@ texture = ExtResource("14_88n3w")
|
|||
stream = ExtResource("15_w7mkq")
|
||||
|
||||
[node name="Sprites" type="Node2D" parent="."]
|
||||
unique_name_in_owner = true
|
||||
y_sort_enabled = true
|
||||
use_parent_material = true
|
||||
position = Vector2(-0.5, 0)
|
||||
|
@ -424,12 +424,11 @@ hframes = 7
|
|||
position = Vector2(0, -4)
|
||||
shape = SubResource("RectangleShape2D_bfqew")
|
||||
|
||||
[node name="Inventory" type="Node2D" parent="."]
|
||||
[node name="Inventory" type="Node2D" parent="." node_paths=PackedStringArray("Items")]
|
||||
position = Vector2(0, -4)
|
||||
script = ExtResource("17_5rur0")
|
||||
|
||||
[node name="DocLance" parent="Inventory" instance=ExtResource("18_jblpi")]
|
||||
position = Vector2(0, 4)
|
||||
|
||||
[node name="Hurtbox" parent="." instance=ExtResource("20_dwjfv")]
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[gd_scene load_steps=77 format=3 uid="uid://b2254pup8k161"]
|
||||
[gd_scene load_steps=76 format=3 uid="uid://b2254pup8k161"]
|
||||
|
||||
[ext_resource type="Script" path="res://Characters/Player.cs" id="1_flygr"]
|
||||
[ext_resource type="Shader" path="res://Shaders/Flash.gdshader" id="2_ngsgt"]
|
||||
|
@ -33,7 +33,6 @@
|
|||
[ext_resource type="Texture2D" uid="uid://d1ukste16yq6v" path="res://Assets/Sprites/Particles/player-light.png" id="15_3hahh"]
|
||||
[ext_resource type="Script" path="res://Utils/DamageTime.cs" id="15_4xl06"]
|
||||
[ext_resource type="AudioStream" uid="uid://st8qgqiygy5a" path="res://Assets/Sounds/electricity.wav" id="15_61bua"]
|
||||
[ext_resource type="PackedScene" uid="uid://g7wfcubs6bdd" path="res://Items/Weapons/Railgun.tscn" id="21_n8w32"]
|
||||
[ext_resource type="PackedScene" uid="uid://ce0ph4wk0ylra" path="res://UI/TargetTracer.tscn" id="22_hxi53"]
|
||||
[ext_resource type="PackedScene" uid="uid://5y1acxl4j4n7" path="res://Items/Weapons/Pugio.tscn" id="22_mqpn7"]
|
||||
[ext_resource type="PackedScene" uid="uid://d1d4vg7we5rjr" path="res://Items/Weapons/Shotgun.tscn" id="22_rmciq"]
|
||||
|
@ -178,7 +177,7 @@ tracks/0/path = NodePath("%Sprites/Node2D/Character:rotation")
|
|||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0, 0.5),
|
||||
"times": PackedFloat32Array(0, 0.45),
|
||||
"transitions": PackedFloat32Array(1, 1),
|
||||
"update": 0,
|
||||
"values": [0.0, 6.28319]
|
||||
|
@ -489,11 +488,9 @@ _data = {
|
|||
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_852jj"]
|
||||
particle_flag_disable_z = true
|
||||
spread = 180.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
initial_velocity_min = 8.0
|
||||
initial_velocity_max = 16.0
|
||||
orbit_velocity_min = 0.0
|
||||
orbit_velocity_max = 0.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
linear_accel_min = -32.0
|
||||
linear_accel_max = -16.0
|
||||
scale_min = 0.1
|
||||
|
@ -510,12 +507,12 @@ colors = PackedColorArray(1, 1, 1, 0, 1, 1, 1, 1)
|
|||
gradient = SubResource("Gradient_8w5b1")
|
||||
|
||||
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_untv1"]
|
||||
particle_flag_disable_z = true
|
||||
emission_shape = 2
|
||||
emission_sphere_radius = 24.0
|
||||
particle_flag_disable_z = true
|
||||
gravity = Vector3(0, 0, 0)
|
||||
orbit_velocity_min = 0.01
|
||||
orbit_velocity_max = 0.02
|
||||
gravity = Vector3(0, 0, 0)
|
||||
radial_accel_min = -128.0
|
||||
radial_accel_max = -128.0
|
||||
scale_min = 0.1
|
||||
|
@ -531,11 +528,9 @@ gradient = SubResource("Gradient_61bqd")
|
|||
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_1umee"]
|
||||
particle_flag_disable_z = true
|
||||
spread = 180.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
initial_velocity_min = 64.0
|
||||
initial_velocity_max = 64.0
|
||||
orbit_velocity_min = 0.0
|
||||
orbit_velocity_max = 0.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
linear_accel_min = -128.0
|
||||
linear_accel_max = -128.0
|
||||
scale_min = 0.25
|
||||
|
@ -563,8 +558,6 @@ curve = SubResource("Curve_xcuxr")
|
|||
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_4jub4"]
|
||||
particle_flag_disable_z = true
|
||||
gravity = Vector3(0, 0, 0)
|
||||
orbit_velocity_min = 0.0
|
||||
orbit_velocity_max = 0.0
|
||||
scale_curve = SubResource("CurveTexture_80m7d")
|
||||
color = Color(1, 1, 1, 0.25098)
|
||||
color_ramp = SubResource("GradientTexture1D_3jlnh")
|
||||
|
@ -824,10 +817,11 @@ text = "lol"
|
|||
label_settings = SubResource("LabelSettings_q5h1n")
|
||||
horizontal_alignment = 1
|
||||
|
||||
[node name="Inventory" type="Node2D" parent="."]
|
||||
[node name="Inventory" type="Node2D" parent="." node_paths=PackedStringArray("Items")]
|
||||
y_sort_enabled = true
|
||||
position = Vector2(0, -4)
|
||||
script = ExtResource("7_xyenu")
|
||||
Items = []
|
||||
InventoryMap = {
|
||||
"equip_1": 0,
|
||||
"equip_2": 1,
|
||||
|
@ -849,10 +843,6 @@ visible = false
|
|||
[node name="Shotgun" parent="Inventory" instance=ExtResource("22_rmciq")]
|
||||
visible = false
|
||||
|
||||
[node name="Railgun" parent="Inventory" instance=ExtResource("21_n8w32")]
|
||||
visible = false
|
||||
UseTime = 0.2
|
||||
|
||||
[node name="RemoteTransform2D2" type="RemoteTransform2D" parent="Inventory"]
|
||||
position = Vector2(0, 4)
|
||||
|
||||
|
|
|
@ -25,7 +25,7 @@
|
|||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_etlnr"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("1_alo0e")
|
||||
shader_parameter/color = Quaternion(1, 1, 1, 1)
|
||||
shader_parameter/color = Vector4(1, 1, 1, 1)
|
||||
shader_parameter/intensity = 0.0
|
||||
shader_parameter/alpha_modulate = 1.0
|
||||
|
||||
|
@ -139,13 +139,11 @@ curve = SubResource("Curve_2w6gd")
|
|||
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_nt70f"]
|
||||
particle_flag_disable_z = true
|
||||
spread = 180.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
initial_velocity_min = 32.0
|
||||
initial_velocity_max = 32.0
|
||||
angular_velocity_min = 90.0
|
||||
angular_velocity_max = 90.0
|
||||
orbit_velocity_min = 0.0
|
||||
orbit_velocity_max = 0.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
linear_accel_min = -64.0
|
||||
linear_accel_max = -32.0
|
||||
tangential_accel_min = 8.0
|
||||
|
@ -282,10 +280,11 @@ texture = ExtResource("11_wp6i2")
|
|||
[node name="HurtSound" type="AudioStreamPlayer2D" parent="Effects"]
|
||||
stream = ExtResource("12_iwry7")
|
||||
|
||||
[node name="Inventory" type="Node2D" parent="."]
|
||||
[node name="Inventory" type="Node2D" parent="." node_paths=PackedStringArray("Items")]
|
||||
y_sort_enabled = true
|
||||
position = Vector2(0, -4)
|
||||
script = ExtResource("3_ktm40")
|
||||
Items = []
|
||||
|
||||
[node name="Sword" parent="Inventory" instance=ExtResource("4_4gsqu")]
|
||||
|
||||
|
|
|
@ -9,7 +9,10 @@ public partial class DynamicDoor : StaticBody2D
|
|||
public string MapStateKey { get; set; }
|
||||
|
||||
[Export]
|
||||
public Godot.Collections.Array<NodePath> VisibleOnToggle { get; set; } = new();
|
||||
public Godot.Collections.Array<NodePath> VisibleOnToggle { get; set; }
|
||||
|
||||
[Export]
|
||||
public Godot.Collections.Array<NavigationRegion2D> Rebake { get; set; }
|
||||
|
||||
[Export]
|
||||
public bool DefaultState { get; set; }
|
||||
|
@ -36,7 +39,7 @@ public partial class DynamicDoor : StaticBody2D
|
|||
}
|
||||
}
|
||||
|
||||
private void RefreshMapState(bool value)
|
||||
private async void RefreshMapState(bool value)
|
||||
{
|
||||
if (value)
|
||||
{
|
||||
|
@ -46,6 +49,19 @@ public partial class DynamicDoor : StaticBody2D
|
|||
{
|
||||
Close();
|
||||
}
|
||||
|
||||
await ToSignal(_animPlayer,
|
||||
AnimationPlayer.SignalName.AnimationFinished);
|
||||
|
||||
if (Rebake is not null)
|
||||
{
|
||||
foreach (var navmesh in Rebake)
|
||||
{
|
||||
// rebake navmesh so NPCs can correctly travel conditionally
|
||||
GD.Print("rebaking");
|
||||
navmesh.BakeNavigationPolygon();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public virtual void Open()
|
||||
|
@ -62,6 +78,13 @@ public partial class DynamicDoor : StaticBody2D
|
|||
|
||||
public void SetAnimations(bool isEnabled)
|
||||
{
|
||||
if (VisibleOnToggle is null)
|
||||
{
|
||||
GD.PushWarning($"DynamicDoor {GetPath()} has no VisibleOnToggle " +
|
||||
"array. Set this to empty array to disable this warning.");
|
||||
return;
|
||||
}
|
||||
|
||||
foreach (var animKey in _animPlayer.GetAnimationList())
|
||||
{
|
||||
var anim = _animPlayer.GetAnimation(animKey);
|
||||
|
|
|
@ -45,10 +45,10 @@ public partial class Inventory : Node2D
|
|||
|
||||
public Inventory()
|
||||
{
|
||||
InventoryMap = new Dictionary<string, int>();
|
||||
InventoryMap.Add("equip_1", 0);
|
||||
InventoryMap.Add("equip_2", 1);
|
||||
InventoryMap.Add("equip_3", 2);
|
||||
//InventoryMap = new Dictionary<string, int>();
|
||||
//InventoryMap.Add("equip_1", 0);
|
||||
//InventoryMap.Add("equip_2", 1);
|
||||
//InventoryMap.Add("equip_3", 2);
|
||||
}
|
||||
|
||||
public override void _Ready()
|
||||
|
|
|
@ -22,16 +22,14 @@ point_count = 3
|
|||
curve = SubResource("Curve_36q15")
|
||||
|
||||
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_duy55"]
|
||||
particle_flag_disable_z = true
|
||||
emission_shape = 3
|
||||
emission_box_extents = Vector3(1, 1, 1)
|
||||
particle_flag_disable_z = true
|
||||
direction = Vector3(0, 1, 0)
|
||||
spread = 60.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
initial_velocity_min = 8.0
|
||||
initial_velocity_max = 16.0
|
||||
orbit_velocity_min = 0.0
|
||||
orbit_velocity_max = 0.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
scale_min = 2.0
|
||||
scale_max = 2.0
|
||||
scale_curve = SubResource("CurveTexture_383y7")
|
||||
|
|
|
@ -23,15 +23,13 @@ point_count = 2
|
|||
curve = SubResource("Curve_fbk1d")
|
||||
|
||||
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_5k2ug"]
|
||||
particle_flag_disable_z = true
|
||||
emission_shape = 3
|
||||
emission_box_extents = Vector3(16, 1, 1)
|
||||
particle_flag_disable_z = true
|
||||
direction = Vector3(0, -1, 0)
|
||||
gravity = Vector3(0, 0, 0)
|
||||
initial_velocity_min = 4.0
|
||||
initial_velocity_max = 8.0
|
||||
orbit_velocity_min = 0.0
|
||||
orbit_velocity_max = 0.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
scale_min = 0.25
|
||||
scale_max = 0.25
|
||||
scale_curve = SubResource("CurveTexture_scj30")
|
||||
|
@ -131,6 +129,33 @@ tracks/3/keys = {
|
|||
}
|
||||
tracks/3/use_blend = true
|
||||
|
||||
[sub_resource type="Animation" id="Animation_5kkkm"]
|
||||
resource_name = "close_init"
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("Gate:frame")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [0]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("CollisionShape2D:disabled")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [false]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_1nbqx"]
|
||||
resource_name = "open"
|
||||
tracks/0/type = "value"
|
||||
|
@ -200,33 +225,6 @@ tracks/1/keys = {
|
|||
"values": [true]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_5kkkm"]
|
||||
resource_name = "close_init"
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("Gate:frame")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [0]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("CollisionShape2D:disabled")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [false]
|
||||
}
|
||||
|
||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_3eva7"]
|
||||
_data = {
|
||||
"RESET": SubResource("Animation_ylaba"),
|
||||
|
@ -236,11 +234,12 @@ _data = {
|
|||
"open_init": SubResource("Animation_s143f")
|
||||
}
|
||||
|
||||
[node name="ArenaDoor" type="StaticBody2D"]
|
||||
[node name="ArenaDoor" type="StaticBody2D" node_paths=PackedStringArray("Rebake")]
|
||||
collision_mask = 0
|
||||
script = ExtResource("1_t6mj1")
|
||||
MapStateKey = "b_arena_depths_door_1"
|
||||
VisibleOnToggle = [NodePath("GPUParticles2D"), NodePath("AudioStreamPlayer2D")]
|
||||
Rebake = []
|
||||
|
||||
[node name="Gate" type="Sprite2D" parent="."]
|
||||
texture = ExtResource("2_kvtjv")
|
||||
|
@ -267,3 +266,7 @@ libraries = {
|
|||
max_distance = 512.0
|
||||
attenuation = 8.0
|
||||
bus = &"Effects"
|
||||
|
||||
[node name="NavigationObstacle2D" type="NavigationObstacle2D" parent="."]
|
||||
avoidance_enabled = false
|
||||
vertices = PackedVector2Array(-16, -8, 16, -8, 16, 0, -16, 0)
|
||||
|
|
|
@ -21,46 +21,27 @@ format = 2
|
|||
layer_0/name = "z-index 0"
|
||||
layer_0/y_sort_enabled = true
|
||||
layer_1/name = "z-index -1"
|
||||
layer_1/enabled = true
|
||||
layer_1/modulate = Color(1, 1, 1, 1)
|
||||
layer_1/y_sort_enabled = true
|
||||
layer_1/y_sort_origin = 0
|
||||
layer_1/z_index = -1
|
||||
layer_1/tile_data = PackedInt32Array()
|
||||
layer_2/name = "z-index -1 (under)"
|
||||
layer_2/enabled = true
|
||||
layer_2/modulate = Color(1, 1, 1, 1)
|
||||
layer_2/y_sort_enabled = true
|
||||
layer_2/y_sort_origin = 0
|
||||
layer_2/z_index = -1
|
||||
layer_2/tile_data = PackedInt32Array()
|
||||
layer_3/name = "z-index -2"
|
||||
layer_3/enabled = true
|
||||
layer_3/modulate = Color(1, 1, 1, 1)
|
||||
layer_3/y_sort_enabled = true
|
||||
layer_3/y_sort_origin = 0
|
||||
layer_3/z_index = -2
|
||||
layer_3/tile_data = PackedInt32Array()
|
||||
layer_4/name = "z-index -3"
|
||||
layer_4/enabled = true
|
||||
layer_4/modulate = Color(1, 1, 1, 1)
|
||||
layer_4/y_sort_enabled = true
|
||||
layer_4/y_sort_origin = 0
|
||||
layer_4/z_index = -3
|
||||
layer_4/tile_data = PackedInt32Array()
|
||||
layer_5/name = "Lower 1"
|
||||
layer_5/enabled = true
|
||||
layer_5/modulate = Color(1, 1, 1, 1)
|
||||
layer_5/y_sort_enabled = false
|
||||
layer_5/y_sort_origin = 0
|
||||
layer_5/z_index = -4
|
||||
layer_5/tile_data = PackedInt32Array()
|
||||
layer_6/name = "z-index 0 (walls)"
|
||||
layer_6/enabled = true
|
||||
layer_6/modulate = Color(1, 1, 1, 1)
|
||||
layer_6/y_sort_enabled = true
|
||||
layer_6/y_sort_origin = -8
|
||||
layer_6/z_index = 0
|
||||
layer_6/tile_data = PackedInt32Array()
|
||||
script = ExtResource("2_4m0a1")
|
||||
Entities = NodePath("Entities")
|
||||
|
|
|
@ -34,15 +34,13 @@ point_count = 3
|
|||
curve = SubResource("Curve_d18qq")
|
||||
|
||||
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_h14dv"]
|
||||
particle_flag_disable_z = true
|
||||
emission_shape = 3
|
||||
emission_box_extents = Vector3(144, 144, 1)
|
||||
particle_flag_disable_z = true
|
||||
spread = 180.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
initial_velocity_min = 8.0
|
||||
initial_velocity_max = 32.0
|
||||
orbit_velocity_min = 0.0
|
||||
orbit_velocity_max = 0.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
scale_min = 0.1
|
||||
scale_max = 0.2
|
||||
scale_curve = SubResource("CurveTexture_wiyu8")
|
||||
|
|
File diff suppressed because one or more lines are too long
|
@ -7,16 +7,19 @@
|
|||
vertices = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3)])
|
||||
outlines = Array[PackedVector2Array]([PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)])
|
||||
source_geometry_group_name = &"navigation_polygon_source_group"
|
||||
|
||||
[sub_resource type="NavigationPolygon" id="NavigationPolygon_d0snv"]
|
||||
vertices = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3)])
|
||||
outlines = Array[PackedVector2Array]([PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)])
|
||||
source_geometry_group_name = &"navigation_polygon_source_group"
|
||||
|
||||
[sub_resource type="NavigationPolygon" id="NavigationPolygon_m43r7"]
|
||||
vertices = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3)])
|
||||
outlines = Array[PackedVector2Array]([PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)])
|
||||
source_geometry_group_name = &"navigation_polygon_source_group"
|
||||
|
||||
[sub_resource type="CanvasTexture" id="CanvasTexture_3n6aa"]
|
||||
diffuse_texture = ExtResource("1_kud44")
|
||||
|
@ -501,6 +504,7 @@ texture = SubResource("CanvasTexture_3n6aa")
|
|||
vertices = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3)])
|
||||
outlines = Array[PackedVector2Array]([PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)])
|
||||
source_geometry_group_name = &"navigation_polygon_source_group"
|
||||
|
||||
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_mdfpe"]
|
||||
texture = ExtResource("2_lihbs")
|
||||
|
|
|
@ -71,56 +71,56 @@ polygon = PackedVector2Array(142, -2, 8, 32, -55, 18)
|
|||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_dap58"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("5_dtu2e")
|
||||
shader_parameter/color = Quaternion(1, 1, 1, 1)
|
||||
shader_parameter/color = Vector4(1, 1, 1, 1)
|
||||
shader_parameter/intensity = 0.0
|
||||
shader_parameter/alpha_modulate = 1.0
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_tgpe5"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("5_dtu2e")
|
||||
shader_parameter/color = Quaternion(1, 1, 1, 1)
|
||||
shader_parameter/color = Vector4(1, 1, 1, 1)
|
||||
shader_parameter/intensity = 0.0
|
||||
shader_parameter/alpha_modulate = 1.0
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_oqgvr"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("5_dtu2e")
|
||||
shader_parameter/color = Quaternion(1, 1, 1, 1)
|
||||
shader_parameter/color = Vector4(1, 1, 1, 1)
|
||||
shader_parameter/intensity = 0.0
|
||||
shader_parameter/alpha_modulate = 1.0
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_k1kq6"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("5_dtu2e")
|
||||
shader_parameter/color = Quaternion(1, 1, 1, 1)
|
||||
shader_parameter/color = Vector4(1, 1, 1, 1)
|
||||
shader_parameter/intensity = 0.0
|
||||
shader_parameter/alpha_modulate = 1.0
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_lbypa"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("5_dtu2e")
|
||||
shader_parameter/color = Quaternion(1, 1, 1, 1)
|
||||
shader_parameter/color = Vector4(1, 1, 1, 1)
|
||||
shader_parameter/intensity = 0.0
|
||||
shader_parameter/alpha_modulate = 1.0
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_re0th"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("5_dtu2e")
|
||||
shader_parameter/color = Quaternion(1, 1, 1, 1)
|
||||
shader_parameter/color = Vector4(1, 1, 1, 1)
|
||||
shader_parameter/intensity = 0.0
|
||||
shader_parameter/alpha_modulate = 1.0
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_1l3ye"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("5_dtu2e")
|
||||
shader_parameter/color = Quaternion(1, 1, 1, 1)
|
||||
shader_parameter/color = Vector4(1, 1, 1, 1)
|
||||
shader_parameter/intensity = 0.0
|
||||
shader_parameter/alpha_modulate = 1.0
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_eiin3"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("5_dtu2e")
|
||||
shader_parameter/color = Quaternion(1, 1, 1, 1)
|
||||
shader_parameter/color = Vector4(1, 1, 1, 1)
|
||||
shader_parameter/intensity = 0.0
|
||||
shader_parameter/alpha_modulate = 1.0
|
||||
|
||||
|
|
|
@ -47,6 +47,12 @@ public partial class PlayerRollState : PlayerState
|
|||
_timeLeftToRoll = 0;
|
||||
_rollDirection = Character.Direction;
|
||||
_particles.Emitting = false;
|
||||
if (_player.MovementAnimation.CurrentAnimation == "roll")
|
||||
{
|
||||
// prevents player's sprite from being at an angle when exiting too
|
||||
// soon
|
||||
_player.MovementAnimation.Stop();
|
||||
}
|
||||
base.Exit(nextState);
|
||||
}
|
||||
|
||||
|
|
|
@ -6,20 +6,28 @@ namespace SupaLidlGame.State.Global;
|
|||
public partial class GlobalState : Node
|
||||
{
|
||||
[Export]
|
||||
public Progression Progression { get; set; } = new();
|
||||
public Progression Progression { get; set; }
|
||||
|
||||
[Export]
|
||||
public MapState MapState { get; set; } = new();
|
||||
public MapState MapState { get; set; }
|
||||
|
||||
[Export]
|
||||
public Stats Stats { get; set; } = new();
|
||||
public Stats Stats { get; set; }
|
||||
|
||||
[Export]
|
||||
public GameSettings Settings { get; set; } = new();
|
||||
public GameSettings Settings { get; set; }
|
||||
|
||||
[Signal]
|
||||
public delegate void SummonBossEventHandler(string bossName);
|
||||
|
||||
public GlobalState()
|
||||
{
|
||||
Progression = new();
|
||||
MapState = new();
|
||||
Stats = new();
|
||||
Settings = new();
|
||||
}
|
||||
|
||||
public override void _Ready()
|
||||
{
|
||||
ProcessMode = ProcessModeEnum.Always;
|
||||
|
|
|
@ -66,6 +66,12 @@ public partial class AttackState : ThinkerState
|
|||
}
|
||||
}
|
||||
|
||||
public override IState<ThinkerState> Enter(IState<ThinkerState> prev)
|
||||
{
|
||||
GD.Print("attacking");
|
||||
return base.Enter(prev);
|
||||
}
|
||||
|
||||
public void UpdateWeights(Vector2 pos)
|
||||
{
|
||||
// FIXME: TODO: remove all the spaghetti
|
||||
|
|
|
@ -25,6 +25,12 @@ public partial class PursueState : ThinkerState
|
|||
[Export]
|
||||
public float MaxDistanceFromOrigin { get; set; }
|
||||
|
||||
public override IState<ThinkerState> Enter(IState<ThinkerState> prev)
|
||||
{
|
||||
GD.Print("pursuing");
|
||||
return base.Enter(prev);
|
||||
}
|
||||
|
||||
public override ThinkerState Think()
|
||||
{
|
||||
var bestTarget = NPC.FindBestTarget();
|
||||
|
@ -51,10 +57,10 @@ public partial class PursueState : ThinkerState
|
|||
|
||||
public override ThinkerState PhysicsProcess(double delta)
|
||||
{
|
||||
if (!NavigationAgent.IsTargetReachable())
|
||||
{
|
||||
return PassiveState ?? base.PhysicsProcess(delta);
|
||||
}
|
||||
//if (!NavigationAgent.IsTargetReachable())
|
||||
//{
|
||||
// return PassiveState ?? base.PhysicsProcess(delta);
|
||||
//}
|
||||
|
||||
var navPos = NavigationAgent.GetNextPathPosition();
|
||||
NPC.Direction = NPC.GlobalPosition.DirectionTo(navPos);
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<Project Sdk="Godot.NET.Sdk/4.1.0-dev">
|
||||
<Project Sdk="Godot.NET.Sdk/4.2.0">
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net6.0</TargetFramework>
|
||||
<EnableDynamicLoading>true</EnableDynamicLoading>
|
||||
|
@ -9,4 +9,4 @@
|
|||
<None Remove="UnitTests/**/*" />
|
||||
<PackageReference Include="Firebelley.GodotUtilities" Version="4.0.4" />
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
</Project>
|
|
@ -12,7 +12,7 @@ config_version=5
|
|||
|
||||
config/name="SupaLidlGame"
|
||||
run/main_scene="res://Scenes/Maps/ArenaExterior.tscn"
|
||||
config/features=PackedStringArray("4.1", "C#", "Forward Plus")
|
||||
config/features=PackedStringArray("4.2", "C#", "Forward Plus")
|
||||
config/icon="res://icon.svg"
|
||||
|
||||
[autoload]
|
||||
|
@ -43,7 +43,7 @@ project/assembly_name="SupaLidlGame"
|
|||
|
||||
[editor_plugins]
|
||||
|
||||
enabled=PackedStringArray("res://addons/panku_console/plugin.cfg", "res://addons/dialogue_manager/plugin.cfg")
|
||||
enabled=PackedStringArray("res://addons/dialogue_manager/plugin.cfg")
|
||||
|
||||
[input]
|
||||
|
||||
|
@ -80,20 +80,20 @@ ui_down={
|
|||
}
|
||||
roll={
|
||||
"deadzone": 0.5,
|
||||
"events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":0,"position":Vector2(0, 0),"global_position":Vector2(0, 0),"factor":1.0,"button_index":3,"pressed":false,"double_click":false,"script":null)
|
||||
"events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":0,"position":Vector2(0, 0),"global_position":Vector2(0, 0),"factor":1.0,"button_index":3,"canceled":false,"pressed":false,"double_click":false,"script":null)
|
||||
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":32,"key_label":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":7,"pressure":0.0,"pressed":false,"script":null)
|
||||
]
|
||||
}
|
||||
attack1={
|
||||
"deadzone": 0.5,
|
||||
"events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":0,"position":Vector2(0, 0),"global_position":Vector2(0, 0),"factor":1.0,"button_index":1,"pressed":false,"double_click":false,"script":null)
|
||||
"events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":0,"position":Vector2(0, 0),"global_position":Vector2(0, 0),"factor":1.0,"button_index":1,"canceled":false,"pressed":false,"double_click":false,"script":null)
|
||||
, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":5,"axis_value":1.0,"script":null)
|
||||
]
|
||||
}
|
||||
attack2={
|
||||
"deadzone": 0.5,
|
||||
"events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":0,"position":Vector2(0, 0),"global_position":Vector2(0, 0),"factor":1.0,"button_index":2,"pressed":false,"double_click":false,"script":null)
|
||||
"events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":0,"position":Vector2(0, 0),"global_position":Vector2(0, 0),"factor":1.0,"button_index":2,"canceled":false,"pressed":false,"double_click":false,"script":null)
|
||||
, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":2,"axis_value":1.0,"script":null)
|
||||
]
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue