feat: implement weapon framework, hitscan logic, and player movement controller with state management

This commit is contained in:
DottsGit
2026-06-05 00:25:41 -04:00
parent ea96b41287
commit da16a3a757
11 changed files with 104 additions and 7 deletions
+4 -1
View File
@@ -9,6 +9,7 @@ var owner_player: CharacterBody3D
var falloff_start: float = 10.0
var min_damage: float = 5.0
var drop_gravity: float = 0.0 # For arc projectiles (nailgun might have slight drop, plasma none)
var impact_type: String = "bullet"
var logical_source = null
var _previous_position: Vector3
@@ -58,6 +59,8 @@ func _on_hit(result: Dictionary) -> void:
if result.collider.has_method("take_damage"):
result.collider.take_damage(final_damage, result.position, owner_player)
else:
var size = 0.4 if impact_type == "plasma" else 0.15
ImpactSpawner.spawn(get_tree(), impact_type, result.position, result.normal, size)
# Spawn impact effect? Not needed yet for prototype.
queue_free()