Ejemplo n.º 1
0
    void AddWeaponToList(Ammo_Tool weapon)
    {
        if (weaponsList.Contains(weapon))
        {
            return;
        }

        weaponsList.Add(weapon);
    }
Ejemplo n.º 2
0
    public void DropCurWeapon()
    {
        if (!currentWeapon)
        {
            return;
        }

        currentWeapon.SetEquipped(false);
        currentWeapon.SetOwner(null);
        weaponsList.Remove(currentWeapon);
        currentWeapon = null;
    }
Ejemplo n.º 3
0
    public override void OnInspectorGUI()
    {
        base.OnInspectorGUI();

        weapon = (Ammo_Tool)target;

        EditorGUILayout.LabelField("Weapon Helpers");

        if (GUILayout.Button("Save gun equip location."))
        {
            Transform weaponT   = weapon.transform;
            Vector3   weaponPos = weaponT.localPosition;
            Vector3   weaponRot = weaponT.localEulerAngles;
            weapon.weaponSettings.equipPosition = weaponPos;
            weapon.weaponSettings.equipRotation = weaponRot;
        }

        if (GUILayout.Button("Save gun unequip location."))
        {
            Transform weaponT   = weapon.transform;
            Vector3   weaponPos = weaponT.localPosition;
            Vector3   weaponRot = weaponT.localEulerAngles;
            weapon.weaponSettings.unequipPosition = weaponPos;
            weapon.weaponSettings.unequipRotation = weaponRot;
        }

        EditorGUILayout.LabelField("Debug Positioning");

        if (GUILayout.Button("Move gun to equip location"))
        {
            Transform weaponT = weapon.transform;
            weaponT.localPosition = weapon.weaponSettings.equipPosition;
            Quaternion eulerAngles = Quaternion.Euler(weapon.weaponSettings.equipRotation);
            weaponT.localRotation = eulerAngles;
        }

        if (GUILayout.Button("Move gun to unequip location"))
        {
            Transform weaponT = weapon.transform;
            weaponT.localPosition = weapon.weaponSettings.unequipPosition;
            Quaternion eulerAngles = Quaternion.Euler(weapon.weaponSettings.unequipRotation);
            weaponT.localRotation = eulerAngles;
        }
    }
Ejemplo n.º 4
0
    //Switches to the next weapon
    public void SwitchWeapons()
    {
        if (settingWeapon || weaponsList.Count == 0)
        {
            return;
        }

        if (currentWeapon)
        {
            int currentWeaponIndex = weaponsList.IndexOf(currentWeapon);
            int nextWeaponIndex    = (currentWeaponIndex + 1) % weaponsList.Count;

            currentWeapon = weaponsList[nextWeaponIndex];
        }
        else
        {
            currentWeapon = weaponsList[0];
        }
        settingWeapon = true;
        StartCoroutine(StopSettingWeapon());

        //	SetupWeapons ();
    }