我目前有一个有 2 种武器的游戏,我希望玩家能够在它们之间切换,而不是跑来跑去捡起武器。
我有一个基本的武器选择器脚本:
public VRTK.VRTK_ObjectAutoGrab autoGrab;
public VRTK.VRTK_ControllerEvents controllerEvents;
public VRTK.VRTK_InteractableObject[] weapons;
public int selectedWeapon = 0;
void Start () {
SelectWeapon();
}
void Update () {
int previousSelectedWeapon = selectedWeapon;
if(controllerEvents.gripClicked)
{
if(selectedWeapon >= transform.childCount - 1)
{
selectedWeapon = 0;
}
selectedWeapon++;
}
if(previousSelectedWeapon != selectedWeapon)
{
SelectWeapon();
}
}
void SelectWeapon()
{
int i = 0;
foreach(Transform weapon in transform)
{
if(i == selectedWeapon)
{
//autoGrab.objectToGrab = weapons[i];
weapon.gameObject.SetActive(true);
}
else
{
weapon.gameObject.SetActive(false);
}
i++;
}
}
在这个脚本中,我试图通过更改自动抓取对象tograb(更改武器)来使用手柄按钮来更改武器。我不确定这是否是正确的方法,或者是否可行,但感谢您的帮助!