Beispiel #1
0
    private void Start()
    {
        loadoutLoader = LoadoutSwitcharoo.Instance;
        UnitWeaponLoadout curSelectedUnit = loadoutLoader.GetTeam1UnitLoadouts[loadoutLoader.GetUnit];
        WeaponBase        hoveredWeapon   = curSelectedUnit.availableWeapons[int.Parse("" + transform.name[5])];


        //if (GameConfig.Instance.IsSandbox)
        //{
        //}
        //else
        //{

        //}

        //Debug.Log("" + transform.name[5]);
        //Debug.Log(int.Parse("" + transform.name[5]));
        //Debug.Log(loadoutLoader.GetTeam1UnitLoadouts[loadoutLoader.GetUnit]);
        //Debug.Log(loadoutLoader.GetTeam1UnitLoadouts[loadoutLoader.GetUnit].unlockedWeapons[int.Parse("" + transform.name[5])]);
        curText = "Name: " + hoveredWeapon.name + "\nMax ammo before rearm: " + (hoveredWeapon.maxAmmo > 50000 ? Mathf.Infinity : hoveredWeapon.maxAmmo == 0 ? Mathf.Infinity : hoveredWeapon.maxAmmo)
                  + "\nRearmament time: " + hoveredWeapon.reloadTime + "\nDamage per projectile: " + hoveredWeapon.damage + "\nWeapon type: " + FormatString("" + hoveredWeapon.typeOfWeapon)
                  + "\nExtra desc: " + hoveredWeapon.GetComponent <WeaponAdditionalInfo>().desc;
        imgObj.color  = new Color(imgObj.color.r, imgObj.color.g, imgObj.color.b, 0f);
        textObj.color = new Color(textObj.color.r, textObj.color.g, textObj.color.b, 0f);
    }
Beispiel #2
0
    private void LoadUnitWeapons(Transform unitClone, string unitName) // CALLED WHEN SPAWNING UNITS
    {
        UnitWeaponLoadout[] weaponLoadouts = null;
        UnitWeaponLoadout   curLoadout     = null;
        int curUnit;

        if (currentUnit.teamLayer == 9)
        {
            weaponLoadouts = LoadoutSwitcharoo.Instance.GetTeam2UnitLoadouts;
        }
        else if (currentUnit.teamLayer == 10)
        {
            weaponLoadouts = LoadoutSwitcharoo.Instance.GetTeam1UnitLoadouts;
        }

        foreach (UnitWeaponLoadout loadout in weaponLoadouts)
        {
            string str1 = loadout.name.ToLower().Replace(" ", string.Empty);
            string str2 = unitName.ToLower().Replace(" ", string.Empty);

            if (str1 == str2)
            {
                curLoadout = loadout;
                //Debug.Log(str1 + " == " + str2);
                break;
            }
        }

        UnitBase unit = unitClone.GetComponent <UnitBase>();

        curUnit = LoadoutSwitcharoo.Instance.GetUnit;
        for (int i = 0; i < unit.weapons.Length; i++)
        {
            if (curLoadout)
            {
                WeaponBase weaponClone = Instantiate(curLoadout.weapons[i]); // here
                weaponClone.transform.parent        = unitClone;
                weaponClone.transform.localPosition = Vector3.zero;

                unit.weapons[i]       = weaponClone;
                unit.weapons[i].owner = unitClone;
            }
            else
            {
                Debug.Log(curLoadout + " | " + currentUnit.unitPrefab);
                Debug.Log("Error..");
                Debug.Break();

                return;
            }
        }

        unit.InitializeWeapons();
    }