public void Add(Projectile item) { Debug.Assert(item != null, "item is null."); ProjectileList.Add(item); EntityList.Add(item); PhysicalObjectList.Add(item); }
public void Shooting(Player Player) { if (Vector2.Distance(Player.Position, Position) <= Radius && ShootingCooldown <= 0) { Projectile projectile = new Projectile(Game1.redProTex, Position, Player.GetPlayerCenter(), Damage, Range, projectileSpeed); ShootingCooldown = 1000; ProjectileList.Add(projectile); } }
public bool Auto() { if (KeyMouseReader.mouseState.LeftButton == ButtonState.Pressed && firstWeapon.GetWeaponType() == WeaponTypes.auto) { if (firstWeapon.GetCooldown() <= 0) { projectile = new Projectile(Game1.yellowProTex, playerCenter, target, firstWeapon.GetDamage(), firstWeapon.GetRange(), firstWeapon.GetProjectileSpeed()); ProjectileList.Add(projectile); firstWeapon.SetCooldown(firstWeapon.GetOriginCooldown()); return(true); } } return(false); }
public bool SemiAuto() { if (KeyMouseReader.LeftClick() && firstWeapon.GetWeaponType() == WeaponTypes.semiAuto) { if (firstWeapon.GetCooldown() <= 0) { projectile = new Projectile(Game1.greenProTex, playerCenter, target, firstWeapon.GetDamage(), firstWeapon.GetRange(), firstWeapon.GetProjectileSpeed()); ProjectileList.Add(projectile); firstWeapon.SetCooldown(firstWeapon.GetOriginCooldown()); return(true); } } return(false); }
/// <summary> /// Makes the player shoot a projectile. /// </summary> /// <param name="shootFactor">The number of projectiles the player can shoot.</param> public void ShootBeam(float shootFactor) { if (CreateNewProjectile && CanShootProjectile && _Mana.mana >= _Mana.maxMana / shootFactor - 1) { _Mana.mana -= shootFactor; Projectile projectile = new Projectile(new Vector2(Position.X - 5, Position.Y + 11), Color.White, ProjectileAnimationSet, myGame, this); ProjectileList.Add(projectile); myGame.gameManager.shootSFX.Play(1f, 0f, 0f); HasShotProjectile = true; } if (_Mana.mana < 0) { _Mana.mana = 0; } }
public override ProjectileList ThrowProjectile(CreepUnitList InRange) { ProjectileList Projectiles = new ProjectileList(); if (InRange.Count > 3) { Random rand = new Random(); int toAtk = rand.Next(2); toAtk += 2; for (int i = 0; i < toAtk; i++) { Projectiles.Add(ThrowProjectile(InRange[i])); } } else { for (int i = 0; i < InRange.Count; i++) { Projectiles.Add(ThrowProjectile(InRange[i])); } } return Projectiles; }
public void Spawn(IProjectile spawnable) { ProjectileList.Add(spawnable); }