/// <summary> /// Lança uma granada. /// </summary> void Granade() { Granade clone = Instantiate(granadePrefab, grenadeOrigin.transform.position, Quaternion.LookRotation(grenadeOrigin.transform.forward)); clone.Init(grenadeOrigin.transform.forward); clone.transform.parent = shotsFolder; }
private void Start() { if (granade == null) { granade = GetComponentInParent <Granade>(); } }
private void ShootGranade() { Granade g = GetGranade().GetComponent <Granade>(); g.transform.position = gun._bulletSpawnPosition.position; g.transform.rotation = gun.transform.rotation; g.GetComponent <Rigidbody2D>().velocity = g.transform.right * 20; _trowTimer = 2; _granadeCount--; }
void ThrowGranade(Quaternion Dir) { //Init new Granade GameObject Current = Instantiate(GranadeToInstantiate, transform.position + Player.forward, Dir); RB = Current.GetComponent <Rigidbody>(); Granade CurrentGranade = Current.GetComponent <Granade>(); RB.AddForce(Current.transform.forward * 6 + Current.transform.up * 3, ForceMode.Impulse); CurrentGranade.CanExplode = true; }
// Update is called once per frame void Update() { if (GM.Active) { cooldown -= Time.deltaTime; if (cooldown <= 0) { Granade.Go(transform.position, target, 4, 2, 2, 3); cooldown = Cooldown; } } }
// Update is called once per frame void Update() { if (GM.Active) { cooldown -= Time.deltaTime; if (cooldown <= 0 && IsReady) { Granade.Go(transform.position, target + Random.insideUnitCircle * spread, 5, ExplSize, damage, Suppression); cooldown = Cooldown; } } }
public static void Go(Vector2 Start, Vector2 target, float speed, float size, float damage, float suppression) { if (GranadePool == null) { GranadePool = GameObject.Find("Granades").GetComponent <ObjectPool>(); } GameObject go = GranadePool.GetNextObject(); Granade gr = go.GetComponent <Granade>(); gr.speed = speed; gr.maxSize = size; gr.Damage = damage; gr.Suppression = suppression; go.transform.position = Start; go.transform.rotation = Quaternion.FromToRotation(Vector2.up, target - Start); gr.timeTilInpact = Vector2.Distance(Start, target) / speed; go.SetActive(true); SoundBoard.instance.PlayLaunch(); }
void InitiateGranade() { if (gameObject.name.Contains("Still Cannon Wrapper")) { latestGranade = Instantiate(granadePrefab, transform.GetChild(0).position, transform.rotation) as GameObject; } else { latestGranade = Instantiate(granadePrefab, transform.position, transform.rotation) as GameObject; } if (isUpShootingLauncher) { latestGranade.transform.Rotate(0, 0, 90f); } latestGranadeClass = latestGranade.GetComponent <Granade>(); latestGranadeClass.granadeSpeed = granadeSpeed; }
public void Create_Guns(string type) { if (type == "S") { Sniper temp = WeaponsFacotry.CreateWeapon(type) as Sniper; Assert.AreEqual(10, temp.ammo); Assert.AreEqual("AWP", temp.name); Assert.AreEqual(75, temp.damage); Assert.AreEqual(900, temp.cost); } else if (type == "A") { Automat temp = WeaponsFacotry.CreateWeapon(type) as Automat; Assert.AreEqual(30, temp.ammo); Assert.AreEqual("AK-47", temp.name); Assert.AreEqual(45, temp.damage); Assert.AreEqual(750, temp.cost); } else if (type == "P") { Pistol temp = WeaponsFacotry.CreateWeapon(type) as Pistol; Assert.AreEqual(7, temp.ammo); Assert.AreEqual("Desert Eagle", temp.name); Assert.AreEqual(30, temp.damage); Assert.AreEqual(500, temp.cost); } else if (type == "B") { Bazooka temp = WeaponsFacotry.CreateWeapon(type) as Bazooka; Assert.AreEqual(1, temp.ammo); Assert.AreEqual("RukyBazuky", temp.name); Assert.AreEqual(100, temp.damage); Assert.AreEqual(1000, temp.cost); } else { Granade temp = WeaponsFacotry.CreateWeapon(type) as Granade; Assert.AreEqual(1, temp.ammo); Assert.AreEqual("small", temp.name); Assert.AreEqual(10, temp.damage); Assert.AreEqual(0, temp.cost); } }
public void updateAnimations(bool slowmo) { // update animations of all gameobjects. for (int i = 0; i < numAnimators; i++) { if (animators[i] != null) { if (slowmo) { animators[i].speed = slowmoSpeed; } else { animators[i].speed = normalSpeed; } } } // set enemy granade launchers to initialize new granades wrt slow-motion factor. for (int i = 0; i < numLaunchers; i++) { if (slowmo) { granadeLaunchersInScene[i].SetSlowmoForGranadeLauncher(slowmoSpeed); } else { granadeLaunchersInScene[i].SetSlowmoForGranadeLauncher(1f); } } for (int i = 0; i < numContainers; i++) { if (slowmo) { placeObjectScriptContainersInScene[i].SetSlowmoForObjectInLine(slowmoSpeed); } else { placeObjectScriptContainersInScene[i].SetSlowmoForObjectInLine(1 / slowmoSpeed); } } // update moving speed for all active granades and scaling speed of all non active granades. Granade[] granades = FindObjectsOfType <Granade>(); int activeGranades = granades.Length; for (int i = 0; i < activeGranades; i++) { Granade granadeClass = granades[i].GetComponent <Granade>(); if (granadeClass.isGranadeActive()) { if (slowmo) { granadeClass.setGranadeSpeed(slowmoSpeed); } else { granadeClass.setGranadeSpeed((1 / slowmoSpeed)); } } else { if (slowmo) { granadeClass.SetScaleFactor(slowmoSpeed); } else { granadeClass.SetScaleFactor((1 / slowmoSpeed)); } } } }
void Start() { transform.localScale = new Vector3(startScale, startScale, startScale); bulletInstance = Instantiate(bulletPrefab, transform.position, transform.rotation) as GameObject; bulletClass = bulletInstance.GetComponent <Granade>(); }