public void HandleBulletHit(TankDefs.BulletType bulletType) { if (active && parentTank != null) { parentTank.TurnOffShield(); } }
public void UnRegisterPickup(TankDefs.BulletType bulletType, BaseBulletPickup pickupBehaviour) { switch (bulletType) { case TankDefs.BulletType.LonglivingShot: LonglivingShotPickup lsp = pickupBehaviour.GetComponent <LonglivingShotPickup>(); if (lsp != null && longlivingShotPickupsSpawned.Contains(lsp)) { longlivingShotPickupsSpawned.Remove(lsp); } break; case TankDefs.BulletType.Minigun: MinigunPickup mp = pickupBehaviour.GetComponent <MinigunPickup>(); if (mp != null && minigunPickupsSpawned.Contains(mp)) { minigunPickupsSpawned.Remove(mp); } break; case TankDefs.BulletType.Shotgun: ShotgunPickup sp = pickupBehaviour.GetComponent <ShotgunPickup>(); if (sp != null && shotgunPickupsSpawned.Contains(sp)) { shotgunPickupsSpawned.Remove(sp); } break; case TankDefs.BulletType.Shield: ShieldPickup slp = pickupBehaviour.GetComponent <ShieldPickup>(); if (slp != null && shieldPickupsSpawned.Contains(slp)) { shieldPickupsSpawned.Remove(slp); } break; } }
public GameObject GetBulletPrefab(TankDefs.BulletType bulletType) { GameObject retBullet = null; switch (bulletType) { case TankDefs.BulletType.Normal: if (normalBulletPrefab == null) { retBullet = Resources.Load(bulletPrefabsFolder + normalBulletPrefabName) as GameObject; } else { retBullet = Instantiate(normalBulletPrefab); } break; case TankDefs.BulletType.LonglivingShot: if (longlivingBulletPrefab == null) { retBullet = Resources.Load(bulletPrefabsFolder + longlivingBulletPrefabName) as GameObject; } else { retBullet = Instantiate(longlivingBulletPrefab); } break; case TankDefs.BulletType.Shotgun: if (shotgunBulletPrefab == null) { retBullet = Resources.Load(bulletPrefabsFolder + shotgunBulletPrefabName) as GameObject; } else { retBullet = Instantiate(shotgunBulletPrefab); } break; } return(retBullet); }
private void SetBulletType(TankDefs.BulletType bulletType) { switch (bulletType) { case TankDefs.BulletType.Normal: shielded = false; if (ownShield == null) { ownShield = gameObject.GetComponentInChildren <ShieldBehaviour>(); } if (ownShield != null) { TurnOffShield(); } this.bulletModifier = TankDefs.BulletType.Normal; this.bulletPrefab = PickupManager.Instance.GetBulletPrefab(this.bulletModifier); this.modifierShots = 0; this.maxBulletCount = 4; this.reloadSpeed = 1; break; case TankDefs.BulletType.LonglivingShot: shielded = false; if (ownShield == null) { ownShield = gameObject.GetComponentInChildren <ShieldBehaviour>(); } if (ownShield != null) { TurnOffShield(); } this.bulletModifier = TankDefs.BulletType.LonglivingShot; this.bulletPrefab = PickupManager.Instance.GetBulletPrefab(this.bulletModifier); this.modifierShots = 4; this.maxBulletCount = 4; this.reloadSpeed = 1; break; case TankDefs.BulletType.Minigun: shielded = false; if (ownShield == null) { ownShield = gameObject.GetComponentInChildren <ShieldBehaviour>(); } if (ownShield != null) { TurnOffShield(); } this.bulletModifier = TankDefs.BulletType.Normal; this.bulletPrefab = PickupManager.Instance.GetBulletPrefab(this.bulletModifier); this.modifierShots = 20; this.maxBulletCount = 20; this.reloadSpeed = 0.05f; break; case TankDefs.BulletType.Shotgun: shielded = false; if (ownShield == null) { ownShield = gameObject.GetComponentInChildren <ShieldBehaviour>(); } if (ownShield != null) { TurnOffShield(); } this.bulletModifier = TankDefs.BulletType.Shotgun; this.bulletPrefab = PickupManager.Instance.GetBulletPrefab(this.bulletModifier); this.modifierShots = 4; this.maxBulletCount = 12; this.reloadSpeed = 1.2f; break; // Special Non-Bullet modifiers case TankDefs.BulletType.Shield: shielded = true; if (ownShield == null) { ownShield = gameObject.GetComponentInChildren <ShieldBehaviour>(); } if (ownShield != null) { TurnOnShield(); } this.bulletModifier = TankDefs.BulletType.Normal; bulletPrefab = PickupManager.Instance.GetBulletPrefab(TankDefs.BulletType.Normal); modifierShots = 0; maxBulletCount = 4; reloadSpeed = 1; break; } }
public void TriggerPickup(TankDefs.BulletType bulletType) { SetBulletType(bulletType); }
public void HandleBulletHit(TankDefs.BulletType bulletType) { Die(); }