public void OnPointerEnter(PointerEventData eventData) { weaponUP = weaponManager.GetCurrentWeapon().GetWeaponUpgrade(); damage.text = weaponUP.damage.ToString(); fireRate.text = weaponUP.fireRate.ToString(); maxBullets.text = weaponUP.maxBullets.ToString(); ui.SetActive(true); }
public override ISpecialAction NextSpecialAction() { if (next == null) { next = new WeaponUpgrade(new PowerHookLauncher(SceneMgr, Owner)); } return(next); }
public override ISpecialAction NextSpecialAction() { if (next == null) { next = new WeaponUpgrade(new ProximityCannonIII(SceneMgr, Owner)); } return(next); }
public void UpdateUI() { for (int i = 0; i < slots.Count; i++) { Text nameText = slots[i].transform.GetChild(0).GetComponent <Text>(); nameText.text = String.Format("{0}", equipment[i].name); Text levelText = slots[i].transform.GetChild(1).GetComponent <Text>(); Text statText = slots[i].transform.GetChild(2).GetComponent <Text>(); Text costText = slots[i].transform.GetChild(3).transform.GetChild(0).GetComponent <Text>(); if (equipment[i] is WeaponEquipment) { WeaponUpgrade u = (WeaponUpgrade)UpgradeManager.instance.upgrades[i]; levelText.text = String.Format("Level: {0}", u.level); statText.text = String.Format( "Damage: {0}\n" + "Accuracy: {1}\n" + "Firerate: {2}\n" + "Range: {3}\n", u.damageIncrease, u.accuracyIncrease, u.fireRateIncrease, u.rangeIncrease); costText.text = String.Format("${0}", u.cost); } else if (equipment[i] is StorageEquipment) { StorageUpgrade u = (StorageUpgrade)UpgradeManager.instance.upgrades[i]; levelText.text = String.Format("Level: {0}", u.level); statText.text = String.Format("Storage Capacity: {0}\n", u.capacityIncrease); costText.text = String.Format("${0}", u.cost); } else if (equipment[i] is EnergyEquipment) { EnergyUpgrade u = (EnergyUpgrade)UpgradeManager.instance.upgrades[i]; levelText.text = String.Format("Level: {0}", u.level); statText.text = String.Format("Energy Capacity: {0}\n", u.capacityIncrease); costText.text = String.Format("${0}", u.cost); } else if (equipment[i] is TransmitterEquipment) { TransmitterUpgrade u = (TransmitterUpgrade)UpgradeManager.instance.upgrades[i]; levelText.text = String.Format("Level: {0}", u.level); statText.text = String.Format("Upload Time: {0}\n", u.uploadMultiplier); costText.text = String.Format("${0}", u.cost); } else { ResearchUpgrade u = (ResearchUpgrade)UpgradeManager.instance.upgrades[i]; levelText.text = String.Format("Level: {0}", u.level); statText.text = String.Format( "Scan Time: {0}\nRange: {1}\n", u.timeReduction, u.rangeIncrease); costText.text = String.Format("${0}", u.cost); } } }
public static List <WeaponUpgrade> Randomise(int seed, State settings) { var result = new List <WeaponUpgrade>(); var random = new Random(seed + 9); for (int i = 0; i < 33; i++) { var itemPool = Item.Lookup.Values.Where(item => !item.KeyItem && !item.Magazine && !item.SummonItem && !item.ChocoboWorld).Select(item => item.ID).ToList(); var upgrade = new WeaponUpgrade() { Price = (byte)(random.Next(1, 251)), Item1 = (byte)itemPool[random.Next(itemPool.Count)], Item1Quantity = (byte)random.Next(1, 21) }; if (random.Next(4) == 0) { result.Add(upgrade); continue; } itemPool.Remove(upgrade.Item1); upgrade.Item2 = (byte)itemPool[random.Next(itemPool.Count)]; upgrade.Item2Quantity = (byte)random.Next(1, 21); if (random.Next(3) == 0) { result.Add(upgrade); continue; } itemPool.Remove(upgrade.Item2); upgrade.Item3 = (byte)itemPool[random.Next(itemPool.Count)]; upgrade.Item3Quantity = (byte)random.Next(1, 21); if (random.Next(2) == 0) { result.Add(upgrade); continue; } itemPool.Remove(upgrade.Item3); upgrade.Item4 = (byte)itemPool[random.Next(itemPool.Count)]; upgrade.Item4Quantity = (byte)random.Next(1, 21); result.Add(upgrade); } return(result); }
public override void AddUpgrade(Upgrade upgrade) { if (upgrade is WeaponUpgrade) { upgrades.Add(upgrade); WeaponUpgrade weaponUpgrade = (WeaponUpgrade)upgrade; level = weaponUpgrade.level; damage = weaponUpgrade.damageIncrease; inaccuracy = weaponUpgrade.accuracyIncrease; fireRate = weaponUpgrade.fireRateIncrease; range = weaponUpgrade.rangeIncrease; } }
public void Read(BitStream stream) { CreateUpgradesIfNotExisting(); ID = stream.Read <E_WeaponID>(); EquipSlotIdx = stream.ReadByte(); Upgrades.Clear(); int count = stream.ReadByte(); for (int i = 0; i < count; i++) { WeaponUpgrade upg = new WeaponUpgrade(); upg.ID = stream.Read <E_WeaponUpgradeID>(); Upgrades.Add(upg); } }
public static ISpecialAction ReadSpecialAction(this NetIncomingMessage msg, SceneMgr mgr, Player owner = null) { //chtelo by to aby kazdej objekt implementoval sendable takhle nektery akce nepujdou pouzit ISpecialAction action = null; int hash = msg.ReadInt32(); if (hash == typeof(HealAction).GUID.GetHashCode()) { action = new HealAction(); } else if (hash == typeof(ActiveWeapon).GUID.GetHashCode()) { action = new ActiveWeapon(); } else if (hash == typeof(WeaponUpgrade).GUID.GetHashCode()) { action = new WeaponUpgrade(); } else if (hash == typeof(AsteroidDamage).GUID.GetHashCode()) { action = new AsteroidDamage(mgr, owner); } else if (hash == typeof(AsteroidGrowth).GUID.GetHashCode()) { action = new AsteroidGrowth(mgr, owner); } else if (hash == typeof(AsteroidSlow).GUID.GetHashCode()) { action = new AsteroidSlow(mgr, owner); } else if (hash == typeof(AsteroidThrow).GUID.GetHashCode()) { action = new AsteroidThrow(mgr, owner); } else if (hash == typeof(StaticField).GUID.GetHashCode()) { action = new StaticField(mgr, owner); } if (action != null) { action.ReadObject(msg); } return(action); }
public void UpdateUpgrades(int index) { int structType = structVals[index]; if (structType == 0) { WeaponUpgradeStruct wu = (WeaponUpgradeStruct)upgradeStructs[index]; wu.Upgrade(); upgradeStructs[index] = wu; upgrades[index] = new WeaponUpgrade( wu.cost, wu.levelUpgrade, wu.damageUpgrade, wu.inaccuracryUpgrade, wu.fireRateUpgrade, wu.rangeUpgrade); } else if (structType == 1) { StorageUpgradeStruct su = (StorageUpgradeStruct)upgradeStructs[index]; su.Upgrade(); upgradeStructs[index] = su; upgrades[index] = new StorageUpgrade( su.cost, su.levelUpgrade, su.capacityUpgrade); } else if (structType == 2) { EnergyUpgradeStruct eu = (EnergyUpgradeStruct)upgradeStructs[index]; eu.Upgrade(); upgradeStructs[index] = eu; upgrades[index] = new EnergyUpgrade( eu.cost, eu.levelUpgrade, eu.energyCapacityUpgrade); } else if (structType == 3) { TransUpgradeStruct tu = (TransUpgradeStruct)upgradeStructs[index]; tu.Upgrade(); upgradeStructs[index] = tu; upgrades[index] = new TransmitterUpgrade( tu.cost, tu.levelUpgrade, tu.uploadFactorUpgrade); } else { ResearchUpgradeStruct ru = (ResearchUpgradeStruct)upgradeStructs[index]; ru.Upgrade(); upgradeStructs[index] = ru; upgrades[index] = new ResearchUpgrade( ru.cost, ru.levelUpgrade, ru.scanTimeUpgrade, ru.scanRangeUpgrade); } }
public static void Apply(FileSource menuSource, List <WeaponUpgrade> upgrades) { // fill in data from existing upgrade file var existingUpgrades = WeaponUpgrade.ReadAllFromSource(menuSource); for (int i = 0; i < existingUpgrades.Count; i++) { upgrades[i].MsgOffset = existingUpgrades[i].MsgOffset; } // write out new file var result = new List <byte>(); foreach (var u in upgrades) { result.AddRange(u.Encode()); } menuSource.ReplaceFile(Globals.WeaponUpgradePath, result.ToArray()); }
public void SetUpgrades(WeaponUpgrade currentUpgrade) { //Debug.Log(currentUpgrade.upgradeName + " is " + currentUpgrade.upgradeStatus); upgradeIcon.sprite = currentUpgrade.upgradeIcon; switch (currentUpgrade.upgradeStatus) { case status.locked: div.color = new Color32(123, 6, 27, 255); background.color = new Color32(123, 6, 27, 255); upgradeIcon.color = new Color32(123, 6, 27, 255); Lock.gameObject.SetActive(true); lockedBar.gameObject.SetActive(true); Check.gameObject.SetActive(false); break; case status.available: div.color = new Color32(255, 255, 255, 255); background.color = new Color32(255, 255, 255, 255); upgradeIcon.color = new Color32(255, 255, 255, 255); Lock.gameObject.SetActive(false); lockedBar.gameObject.SetActive(false); Check.gameObject.SetActive(false); break; case status.unavailable: div.color = new Color32(123, 6, 27, 255); background.color = new Color32(123, 6, 27, 255); upgradeIcon.color = new Color32(123, 6, 27, 255); Lock.gameObject.SetActive(false); lockedBar.gameObject.SetActive(false); Check.gameObject.SetActive(false); break; case status.upgraded: div.color = new Color32(101, 101, 101, 255); background.color = new Color32(101, 101, 101, 255); upgradeIcon.color = new Color32(101, 101, 101, 255); Lock.gameObject.SetActive(false); lockedBar.gameObject.SetActive(false); Check.gameObject.SetActive(true); break; } }
// Start is called before the first frame update void Start() { gameSettings = Resources.Load <GameSettings>("GameSettings"); healthBar = FindObjectOfType <HealthBar>(); playerStatus = Resources.Load <PlayerStatus>("PlayerStatus"); ammoDropUpgrade = Resources.Load <AmmoDropUpgrade>("PlayerUpgrades/AmmoDrop"); maxAmmoUpgrade = Resources.Load <MaxAmmoUpgrade>("PlayerUpgrades/MaxAmmo"); weaponUpgrades.AddRange(Resources.LoadAll <WeaponUpgrade>("PlayerUpgrades/Guns")); int index; do { index = Random.Range(0, weaponUpgrades.Count); } while (weaponUpgrades[index].GunToEquip == playerStatus.EquippedGun); currentWeaponUpgrade = weaponUpgrades[index]; gunText.text = $"Cost: {currentWeaponUpgrade.UpgradeCost}\n{currentWeaponUpgrade.GunToEquip.name}"; gunButton.PlayerUpgrade = currentWeaponUpgrade; UpdateHealthBar(); }
// Use this for initialization void Start() { instance = this; }
void Content() { try { switch (Type) { case 1: //Sw - Selected weapon WeaponUpgrade Sw = (WeaponUpgrade)selected; break; case 2: ArmorUpgrade Sa = (ArmorUpgrade)selected; break; } //for nulls GUILayout.BeginVertical("box"); GUILayout.BeginHorizontal(); GUILayout.FlexibleSpace(); GUILayout.Label("Stage " + (stageSelect + 1)); GUILayout.FlexibleSpace(); GUILayout.EndHorizontal(); switch (Type) { case 1: //Sw - Selected weapon WeaponUpgrade Sw = (WeaponUpgrade)selected; GUILayout.BeginHorizontal(); GUILayout.BeginVertical("box"); Sw.Stage[stageSelect].AddStats.dmg = EditorGUILayout.IntField("Dmg", Sw.Stage[stageSelect].AddStats.dmg); Sw.Stage[stageSelect].AddStats.dmg_dice = EditorGUILayout.IntField("Dmg dice", Sw.Stage[stageSelect].AddStats.dmg_dice); Sw.Stage[stageSelect].AddStats.crit_multiply = EditorGUILayout.FloatField("Crit multiply", Sw.Stage[stageSelect].AddStats.crit_multiply); Sw.Stage[stageSelect].AddStats.range = EditorGUILayout.FloatField("Range", Sw.Stage[stageSelect].AddStats.range); Sw.Stage[stageSelect].AddStats.armor_phisical = EditorGUILayout.IntField("Armor Phisical", Sw.Stage[stageSelect].AddStats.armor_phisical); Sw.Stage[stageSelect].AddStats.armor_magicial = EditorGUILayout.IntField("Armor Magicial", Sw.Stage[stageSelect].AddStats.armor_magicial); EditorFunctions.ViewBattle(Sw.Stage[stageSelect].AddStats); GUILayout.EndVertical(); GUILayout.BeginVertical("box", GUILayout.Width(610)); ComponentsPanel(Sw.Stage[stageSelect].Components); GUILayout.EndVertical(); GUILayout.EndHorizontal(); break; case 2: ArmorUpgrade Sa = (ArmorUpgrade)selected; scrollContent = GUILayout.BeginScrollView(scrollContent); GUILayout.BeginVertical(); for (int i = 0; i < Sa.Weight_Type.Count; i++) { GUILayout.Space(10); GUILayout.BeginVertical("box"); GUILayout.Label("" + ((Weight)i), center); GUILayout.EndVertical(); GUILayout.BeginHorizontal(); GUILayout.BeginVertical("box"); Sa.Weight_Type[i].Stage[stageSelect].AddStats.armor_phisical = EditorGUILayout.IntField("Armor Phisical", Sa.Weight_Type[i].Stage[stageSelect].AddStats.armor_phisical); Sa.Weight_Type[i].Stage[stageSelect].AddStats.armor_magicial = EditorGUILayout.IntField("Armor Magicial", Sa.Weight_Type[i].Stage[stageSelect].AddStats.armor_magicial); EditorFunctions.ViewBattle(Sa.Weight_Type[i].Stage[stageSelect].AddStats); GUILayout.EndVertical(); GUILayout.BeginVertical("box", GUILayout.Width(610)); ComponentsPanel(Sa.Weight_Type[i].Stage[stageSelect].Components); GUILayout.EndVertical(); GUILayout.EndHorizontal(); } GUILayout.EndVertical(); GUILayout.EndScrollView(); break; } GUILayout.EndVertical(); } catch {} }
public void UpgradeArmor(WeaponUpgrade upgrade) { if (upgrade.upgradeType != ItemUpgradeType.Weapon) { Debug.LogError("The ItemUpgrade being passed into the Upgrade callback is not of the type Weapon! Is the Item improperly constructed??"); return; } gunStats.Upgrade(upgrade.attackRate, upgrade.damage, upgrade.reload_speed, upgrade.ammo); }
void Start() { app = FindObjectOfType <AppManager>(); upgradeInventory.SetActive(toggle); fundingText.text = String.Format("Current Funding:\n${0}", app.funding); upgradePrefab = (GameObject)Resources.Load("UpgradeSlot"); equipment = PlayerManager.instance.equipment; for (int i = 0; i < equipment.Count; i++) { slot = Instantiate(upgradePrefab) as GameObject; slots.Add(slot); slot.transform.SetParent(upgradeWindow.transform, false); Text nameText = slot.transform.GetChild(0).GetComponent <Text>(); nameText.text = String.Format("{0}", equipment[i].name); Text levelText = slot.transform.GetChild(1).GetComponent <Text>(); Text statText = slot.transform.GetChild(2).GetComponent <Text>(); Text costText = slot.transform.GetChild(3).transform.GetChild(0).GetComponent <Text>(); Image icon = slot.transform.GetChild(4).GetComponent <Image>(); if (equipment[i] is WeaponEquipment) { WeaponUpgrade u = (WeaponUpgrade)UpgradeManager.instance.upgrades[i]; levelText.text = String.Format("Level: {0}", u.level); statText.text = String.Format( "Damage: {0}\n" + "Accuracy: {1}\n" + "Firerate: {2}\n" + "Range: {3}\n", u.damageIncrease, u.accuracyIncrease, u.fireRateIncrease, u.rangeIncrease); costText.text = String.Format("${0}", u.cost); icon.sprite = weaponImage; } else if (equipment[i] is StorageEquipment) { StorageUpgrade u = (StorageUpgrade)UpgradeManager.instance.upgrades[i]; levelText.text = String.Format("Level: {0}", u.level); statText.text = String.Format("Storage Capacity: {0}\n", u.capacityIncrease); costText.text = String.Format("${0}", u.cost); icon.sprite = storageImage; } else if (equipment[i] is EnergyEquipment) { EnergyUpgrade u = (EnergyUpgrade)UpgradeManager.instance.upgrades[i]; levelText.text = String.Format("Level: {0}", u.level); statText.text = String.Format("Energy Capacity: {0}\n", u.capacityIncrease); costText.text = String.Format("${0}", u.cost); icon.sprite = batteryImage; } else if (equipment[i] is TransmitterEquipment) { TransmitterUpgrade u = (TransmitterUpgrade)UpgradeManager.instance.upgrades[i]; levelText.text = String.Format("Level: {0}", u.level); statText.text = String.Format("Upload Time: {0}\n", u.uploadMultiplier); costText.text = String.Format("${0}", u.cost); icon.sprite = transmitterImage; } else { ResearchUpgrade u = (ResearchUpgrade)UpgradeManager.instance.upgrades[i]; levelText.text = String.Format("Level: {0}", u.level); statText.text = String.Format( "Scan Time: {0}\nRange: {1}\n", u.timeReduction, u.rangeIncrease); costText.text = String.Format("${0}", u.cost); if (equipment[i].name.IndexOf("Geological") != -1) { icon.sprite = geologyImage; } else if (equipment[i].name.IndexOf("Biological") != -1) { icon.sprite = biologyImage; } else if (equipment[i].name.IndexOf("Archeological") != -1) { icon.sprite = archeologyImage; } } } }
private void Start() { script = weaponUpgrade.GetComponent <WeaponUpgrade>(); }