因此,我有以下代码,用于在占位符内切换武器,我想将其扩展到从按钮切换武器,所以我也可以在我的手机上切换它们。
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
public class WeaponSwitcher : MonoBehaviour {
public int selectedWeapon = 0;
// Use this for initialization
void Start () {
SelectWeapon();
}
// Update is called once per frame
void Update () {
int previousSelectedWeapon = selectedWeapon;
if (Input.GetAxis ("Mouse ScrollWheel") > 0f)
{
if (selectedWeapon >= transform.childCount - 1)
selectedWeapon = 0;
else
selectedWeapon++;
}
if (Input.GetAxis ("Mouse ScrollWheel") < 0f)
{
if (selectedWeapon <= 0)
selectedWeapon = transform.childCount - 1;
else
selectedWeapon--;
}
if (previousSelectedWeapon != selectedWeapon)
{
SelectWeapon ();
}
}
void SelectWeapon()
{
int i = 0;
foreach (Transform weapon in transform)
{
if (i == selectedWeapon)
weapon.gameObject.SetActive (true);
else
weapon.gameObject.SetActive (false);
i++;
}
}
}我该怎么办?我是新手,我尝试过的一切都没有奏效。
我尝试了一个独立的脚本,只是为了寻找哪个武器是活动的,并关闭了另一个(只有两个),等等,但它没有工作。
public class ChangeWeapon : MonoBehaviour
{
public GameObject gun;
public GameObject shotgun;
void switchWeapons ()
{
gun = GameObject.Find("Gun");
shotgun = GameObject.Find("Shotgun");
if (gun.gameObject.activeSelf)
{
shotgun.gameObject.SetActive (true);
gun.gameObject.SetActive (false);
}
else
{
shotgun.gameObject.SetActive (false);
gun.gameObject.SetActive (true);
}
}
}发布于 2019-05-08 18:17:16
https://stackoverflow.com/questions/56042747
复制相似问题