fixed weapon spawning in and added per-weapon crosshair size

This commit is contained in:
derek
2025-03-18 16:14:20 -05:00
parent ba18dd30f5
commit 9802c0927e
10 changed files with 38 additions and 64 deletions

View File

@@ -32,9 +32,15 @@ func _process(delta: float) -> void:
position = hud.viewportCenter
var velocity_adjust = clamp(hud.player.velocity.length() * .1,1,3)
var crosshair_radius
if hud.player.gun != null:
crosshair_radius = hud.player.gun.weapon_info.crosshair_radius
else:
crosshair_radius = OUTER_RING_START_RADIUS
# Crosshair
outer_ring_radius = lerp(outer_ring_radius,(OUTER_RING_START_RADIUS + crosshair_target) * velocity_adjust,delta * SIZE_SNAP_AMT)
outer_ring_radius = lerp(outer_ring_radius,(crosshair_radius + crosshair_target) * velocity_adjust,delta * SIZE_SNAP_AMT)
crosshair_target = lerp(crosshair_target,0.0,delta * SIZE_RETURN_AMT)
#if stamina is 25%, change colors to red

View File

@@ -557,7 +557,6 @@ func ladder_collide():
gravity = level_control.gamemode.gravity
func wall_jump():
print("CAN JUMP? ",can_wall_jump)
if can_wall_jump == true:
if wall_ray_1.is_colliding() or wall_ray_2.is_colliding() or wall_ray_3.is_colliding():
can_wall_jump = false

View File

@@ -17,25 +17,25 @@ func _process(delta):
pass
func picked_up():
var spawn_gun = gun_resource.instantiate()
var gun_held = false
#check if gun is owned
for i in GameGlobals.held_guns:
if i == gun_resource:
gun_held = true
if spawn_gun.weapon_info.weapon_type == 0:
add_ammo(gun_held,spawn_gun.weapon_info.gun_name,spawn_gun.weapon_info.bullet.ammo_type,spawn_gun.weapon_info.bullet.special_bullet_name,spawn_gun.weapon_info.max_ammo,spawn_gun.weapon_info.start_mags)
if !gun_held:
GameGlobals.held_guns.append(gun_resource)
var instance_gun = gun_resource.instantiate()
var weapon_id = GameGlobals.held_guns.size() - 1
if level_control.player.gun != null:
level_control.player.gun.anim_player.play("swap_out")
level_control.gun_spawn(weapon_id)
SignalBus.emit_signal("weapon_list_changed")
queue_free()
var spawn_gun = gun_resource.instantiate()
var gun_held = false
#check if gun is owned
for i in GameGlobals.held_guns:
if i == gun_resource:
gun_held = true
if spawn_gun.weapon_info.weapon_type == 0:
add_ammo(!gun_held,spawn_gun.weapon_info.gun_name,spawn_gun.weapon_info.bullet.ammo_type,spawn_gun.weapon_info.bullet.special_bullet_name,spawn_gun.weapon_info.max_ammo,spawn_gun.weapon_info.start_mags)
if !gun_held:
GameGlobals.held_guns.append(gun_resource)
var instance_gun = gun_resource.instantiate()
var weapon_id = GameGlobals.held_guns.size() - 1
if level_control.player.gun != null:
level_control.player.gun.anim_player.play("swap_out")
level_control.gun_spawn(weapon_id)
SignalBus.emit_signal("weapon_list_changed")
queue_free()
func add_ammo(new_gun,gun_name,ammo_type,special_bullet_name,max_ammo,start_mags):
if new_gun:

View File

@@ -9,6 +9,7 @@ class_name weapon_resource
@export var bullet : bullet_resource
@export_enum("Auto", "Single", "Burst") var fire_mode: int
@export var fov_zoom_amt = .98
@export var crosshair_radius = 50
@export var ads : bool = false
@export var recoil_amount : Vector3 = Vector3(.05,.05,.05)
@export var kick_amount : float = .1