Setup framework to synchronize player bullet with player position.
This commit is contained in:
parent
07c63f4122
commit
6856dcb172
2 changed files with 5 additions and 3 deletions
|
|
@ -3,6 +3,7 @@ extends Area2D
|
||||||
@export var speed: int = 150
|
@export var speed: int = 150
|
||||||
@export var shield_max: int = 10
|
@export var shield_max: int = 10
|
||||||
|
|
||||||
|
var velocity: Vector2 = Vector2.ZERO
|
||||||
var shield: int = 0: set = shield_set
|
var shield: int = 0: set = shield_set
|
||||||
var can_shoot: bool = true
|
var can_shoot: bool = true
|
||||||
var is_shooting: bool = false
|
var is_shooting: bool = false
|
||||||
|
|
@ -61,9 +62,10 @@ func shoot():
|
||||||
#if not can_shoot: return
|
#if not can_shoot: return
|
||||||
#if can_shoot:
|
#if can_shoot:
|
||||||
var bullet = weapon_current.instantiate()
|
var bullet = weapon_current.instantiate()
|
||||||
bullet.position = self.position + Vector2(0,-12)
|
bullet.position = self.position + Vector2(0,-20)
|
||||||
get_tree().root.add_child(bullet)
|
get_tree().root.add_child(bullet)
|
||||||
weapon_rate = bullet.shot_data.rate
|
weapon_rate = bullet.shot_data.rate
|
||||||
|
#bullet.global_transform = self.global_transform
|
||||||
prints(bullet.shot_data.shot_name, "weapon fired") #Print which weapon is firing
|
prints(bullet.shot_data.shot_name, "weapon fired") #Print which weapon is firing
|
||||||
#weapon_cooldown = $WeaponCooldown
|
#weapon_cooldown = $WeaponCooldown
|
||||||
#weapon_cooldown.wait_time = bullet.shot_data.cooldown
|
#weapon_cooldown.wait_time = bullet.shot_data.cooldown
|
||||||
|
|
|
||||||
|
|
@ -3,9 +3,9 @@ extends Area2D
|
||||||
@onready var bullet = load("res://scenes/stock_weapon.tscn")
|
@onready var bullet = load("res://scenes/stock_weapon.tscn")
|
||||||
|
|
||||||
@export var shot_data: PlayerShot
|
@export var shot_data: PlayerShot
|
||||||
|
@onready var player = get_node("../Player")
|
||||||
|
|
||||||
|
|
||||||
func _process(delta):
|
func _process(delta):
|
||||||
#position.y += shot_data.speed * delta #This works normally
|
#position.y += shot_data.speed * delta #This works normally
|
||||||
var player_position = get_node("../Player").position
|
position += (transform.y + player.velocity) * shot_data.speed * delta
|
||||||
position.y += player_position.y * shot_data.speed * delta
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue