Attention | Topic was automatically imported from the old Question2Answer platform. | |
Asked By | abbos |
How to change weapons (pick up)
Attention | Topic was automatically imported from the old Question2Answer platform. | |
Asked By | abbos |
How to change weapons (pick up)
Reply From: | Bernard Cloutier |
I assume you’ve got nodes arranged something like:
- Player
- WeaponSlot
- Weapon
It’s probably not like this, but this node structure is just for example (since you haven’t shown your scene tree or your code).
If you want to change your weapon, you’d simply remove the child node of WeaponSlot, and then add the new weapon node as a child of it.
Ex: In your player script
func change_weapon(newWeapon):
var currentWeapon = $WeaponSlot.get_child(0)
$WeaponSlot.remove_child(currentWeapon )
$WeaponSlot.add_child(newWeapon)
If you wonder how to do pickups in general, check out this page of the godot fps tutorial: https://docs.godotengine.org/en/stable/tutorials/3d/fps_tutorial/part_four.html#adding-the-health-pickups
The tutorial also covers switching weapons, although the 3 weapons are always in the player’s “backpack”.
I suggest you share some screenshots of your editor and paste in your current scripts in order to get more helpful answers. If you want more people to help you, you have to be prepared to go into more details with your questions.