gun system + minigun
This commit is contained in:
parent
84415d5aca
commit
f73f093ae2
13 changed files with 84 additions and 24 deletions
11
player/guns/base_gun.gd
Normal file
11
player/guns/base_gun.gd
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
@abstract
|
||||
class_name Gun
|
||||
extends Node3D
|
||||
|
||||
var fire_clock := 0.
|
||||
|
||||
@export_custom(PROPERTY_HINT_NONE, "suffix:rounds per minute")
|
||||
var fire_rate := 125.
|
||||
|
||||
@abstract
|
||||
func fire(aim_angle: float) -> void
|
||||
1
player/guns/base_gun.gd.uid
Normal file
1
player/guns/base_gun.gd.uid
Normal file
|
|
@ -0,0 +1 @@
|
|||
uid://v3nmgfwx8ivi
|
||||
10
player/guns/basic_gun.gd
Normal file
10
player/guns/basic_gun.gd
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
class_name BasicGun
|
||||
extends Gun
|
||||
|
||||
func fire(aim_angle: float) -> void:
|
||||
var dir := Vector3.RIGHT.rotated(Vector3.UP, aim_angle)
|
||||
var player_projectile: PlayerProjectile = preload("res://player/projectile/player_projectile.tscn").instantiate()
|
||||
player_projectile.init(dir)
|
||||
player_projectile.global_position = global_position + Vector3.UP * 0.5
|
||||
get_tree().current_scene.add_child(player_projectile)
|
||||
fire_clock = 60. / fire_rate
|
||||
1
player/guns/basic_gun.gd.uid
Normal file
1
player/guns/basic_gun.gd.uid
Normal file
|
|
@ -0,0 +1 @@
|
|||
uid://fv1n5noqdfg2
|
||||
13
player/guns/mini_gun.gd
Normal file
13
player/guns/mini_gun.gd
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
class_name MiniGun
|
||||
extends Gun
|
||||
|
||||
func fire(aim_angle: float) -> void:
|
||||
var dir := Vector3.RIGHT.rotated(Vector3.UP, aim_angle)
|
||||
var player_projectile: PlayerProjectile = preload("res://player/projectile/player_projectile.tscn").instantiate()
|
||||
player_projectile.init(dir)
|
||||
player_projectile.damage = 5
|
||||
player_projectile.global_position = global_position + Vector3.UP * 0.5
|
||||
get_tree().current_scene.add_child(player_projectile)
|
||||
fire_clock = 60. / fire_rate
|
||||
|
||||
Player.instance.velocity += -dir * 10.
|
||||
1
player/guns/mini_gun.gd.uid
Normal file
1
player/guns/mini_gun.gd.uid
Normal file
|
|
@ -0,0 +1 @@
|
|||
uid://b87cyvu2m5b1k
|
||||
Loading…
Add table
Add a link
Reference in a new issue