diff options
| -rw-r--r-- | Bullet.cs | 4 | ||||
| -rw-r--r-- | Player.cs | 2 | ||||
| -rw-r--r-- | Weapon.cs | 5 | ||||
| -rw-r--r-- | project.godot | 24 | ||||
| -rw-r--r-- | weapons/something.tscn | 3 |
5 files changed, 33 insertions, 5 deletions
@@ -4,8 +4,8 @@ public partial class Bullet : Area2D { [Export] public float Speed { get; set; } = 600.0f; [Export] public float Damage { get; set; } = 10.0f; - [Export] public bool PierceEntity { get; set; } = false; - [Export] public bool PierceTerrain { get; set; } = false; + public bool PierceEntity { get; set; } = false; + public bool PierceTerrain { get; set; } = false; public Vector2 Direction { get; set; } = Vector2.Zero; public override void _Ready() @@ -18,7 +18,7 @@ public partial class Player : CharacterBody2D, IDamageable public override void _PhysicsProcess(double delta) { - Vector2 direction = Input.GetVector("ui_left", "ui_right", "ui_up", "ui_down"); + Vector2 direction = Input.GetVector("left", "right", "up", "down"); Velocity = direction * _stats.RuntimeStats.MoveSpeed; MoveAndSlide(); } @@ -3,7 +3,8 @@ using Godot; public partial class Weapon : Node2D { [Export] public PackedScene BulletScene { get; set; } - + [Export] public bool PierceEntity { get; set; } = false; + [Export] public bool PierceTerrain { get; set; } = false; // Future-proofing: Different weapons can have different damage multipliers! [Export] public float DamageMultiplier { get; set; } = 1.0f; public override void _Process(double delta) @@ -32,6 +33,8 @@ public partial class Weapon : Node2D bullet.GlobalPosition = GlobalPosition; // Spawns right where the weapon node is! bullet.Direction = Vector2.Right.Rotated(GlobalRotation); bullet.Damage = finalDamage; + bullet.PierceEntity = PierceEntity; + bullet.PierceTerrain = PierceTerrain; // 4. Add it to the world GetTree().Root.AddChild(bullet); diff --git a/project.godot b/project.godot index 2d4f4c8..7d104cf 100644 --- a/project.godot +++ b/project.godot @@ -44,6 +44,30 @@ weapon_2={ "events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":16,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":50,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null) ] } +left={ +"deadzone": 0.2, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":65,"key_label":0,"unicode":97,"location":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194319,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null) +] +} +up={ +"deadzone": 0.2, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":87,"key_label":0,"unicode":119,"location":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194320,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null) +] +} +right={ +"deadzone": 0.2, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194321,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":68,"key_label":0,"unicode":100,"location":0,"echo":false,"script":null) +] +} +down={ +"deadzone": 0.2, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":83,"key_label":0,"unicode":115,"location":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194322,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null) +] +} [layer_names] diff --git a/weapons/something.tscn b/weapons/something.tscn index 93ea0cf..2319fe4 100644 --- a/weapons/something.tscn +++ b/weapons/something.tscn @@ -7,7 +7,8 @@ [node name="Weapon" type="Node2D" unique_id=1330410444] script = ExtResource("1_1d5wo") BulletScene = ExtResource("2_faifk") -DamageMultiplier = 100.0 +PierceEntity = true +PierceTerrain = true [node name="Sprite2D" type="Sprite2D" parent="." unique_id=962000068] position = Vector2(8, 0) |
