]> Untitled Git - star-foxy.git/blobdiff - player/player.gd
Updated with keyboard controls
[star-foxy.git] / player / player.gd
index fa2445ffe0e2a39f195475cd12acb3bcc89a517d..018f6694bc23ba003487e072c61e66c6bfc4d694 100644 (file)
@@ -5,7 +5,9 @@ const SPEED_MAX = 20
 const SPEED_TURN = 120
 const SPEED_AIM = PI / 2
 
+var bullet_alterating = 0
 var velocity = Vector3()
+var scene_bullet = preload("res://player/bullet.tscn")
 
 # Called when the node enters the scene tree for the first time.
 func _ready():
@@ -36,6 +38,21 @@ func get_player_input(delta):
        elif Input.is_action_pressed("player_aim_right"):
                rotate(Vector3.UP, -SPEED_AIM * delta)  
                
+       # offense
+       if Input.is_action_pressed("player_fire"):
+               if $bullet_timer.time_left == 0:
+                       fire_bullet()
+               
+func fire_bullet():
+       var bullet = scene_bullet.instance()
+       $"..".add_child(bullet)
+       
+       bullet_alterating = (bullet_alterating + 1) % 2
+       bullet.translation = translation - transform.basis.x * (4 * bullet_alterating - 2)
+       bullet.rotation = rotation
+       bullet.direction = -transform.basis.z
+       
+       $bullet_timer.start()
        
 func _process(delta):
        # get velocity changes player asks for