pickups distributed through level manager. need to fix drop amount

This commit is contained in:
derek
2024-08-05 16:50:09 -05:00
parent 3335ad0804
commit 7c5e850077
27 changed files with 151 additions and 146 deletions

View File

@@ -239,63 +239,9 @@ func _headbob(time) -> Vector3:
func _on_pick_up_detection_body_entered(body):
if body.is_in_group("pickup"):
if body.pickupType == "stamina":
pickupmsg = pickup_announce.instantiate()
pickupmsg.pickuptext = "stamina"
get_parent().add_child(pickupmsg)
remaining_stamina += (body.rand_amt/100) * MAX_STAMINA
pickup_sound.pitch_scale = 1 + rng.randf_range(-.3,.3)
pickup_sound.play()
body.queue_free()
elif body.pickupType == "ammo":
pickupmsg = pickup_announce.instantiate()
pickupmsg.pickuptext = "ammo"
get_parent().add_child(pickupmsg)
level_control.ammo_reserve[level_control.current_gun_index] += clamp(int((body.rand_amt/100) * gun.max_ammo), 1, gun.max_ammo)
picked_up = true
picked_up_text = "ammo"
pickup_sound.pitch_scale = 1 + rng.randf_range(-.3,.3)
pickup_sound.play()
body.queue_free()
elif body.pickupType == "money":
pickupmsg = pickup_announce.instantiate()
pickupmsg.pickuptext = "$" + str(int(body.rand_amt))
get_parent().add_child(pickupmsg)
level_control.money += int(body.rand_amt)
picked_up = true
picked_up_text = "ammo"
pickup_sound.pitch_scale = 1 + rng.randf_range(-.3,.3)
pickup_sound.play()
body.queue_free()
elif body.pickupType == "health":
level_control.health += 1
picked_up = true
pickup_sound.pitch_scale = 1 + rng.randf_range(-.3,.3)
pickup_sound.play()
body.queue_free()
elif body.pickupType == "jump":
pickupmsg = pickup_announce.instantiate()
pickupmsg.pickuptext = "jump"
get_parent().add_child(pickupmsg)
double_jump = true
picked_up = true
picked_up_text = "double jump"
pickup_sound.pitch_scale = 1 + rng.randf_range(-.3,.3)
pickup_sound.play()
body.queue_free()
elif body.pickupType == "weapon":
pickup_sound.pitch_scale = 1 + rng.randf_range(-.3,.3)
pickup_sound.play()
level_control.held_guns.append(body.gun_resource)
var instance_gun = body.gun_resource.instantiate()
level_control.ammo_current.append(instance_gun.max_ammo)
level_control.ammo_reserve.append(instance_gun.max_ammo * instance_gun.start_mags)
body.queue_free()
var weapon_id = level_control.held_guns.size() - 1
gun.anim_player.play("swap_out")
level_control.gun_spawn(weapon_id)
body.picked_up()
func ladder_collide(is_climbing):
if is_climbing == true:
@@ -305,7 +251,7 @@ func ladder_collide(is_climbing):
func _on_pick_up_magnet_body_entered(body):
if body.is_in_group("pickup") and body.is_in_group("magnet"):
body.player = self
body.player_follow = self
func weapon_tilt(input_x, delta):
if weapon_holder: