public override void OnHandleCollision(ActorBase other) { AmmoBase ammo = other as AmmoBase; if (ammo != null) { DecreaseHealth(ammo.Strength, ammo); if (health <= 0) { return; } HandleAmmoFrozenStateChange(ammo); if (!(ammo is AmmoFreezer)) { if (attackTime <= 0f) { PlaySound("Attack"); speedX = (IsFacingLeft ? -1f : 1f) * attackSpeed; SetAnimation(AnimState.TransitionAttack); } attackTime = 200f; noiseCooldown = 45f; } } }
public override void OnHandleCollision(ActorBase other) { AmmoBase ammo = other as AmmoBase; if (ammo != null) { DecreaseHealth(ammo.Strength, other); FallTime = 400f; collisionFlags = CollisionFlags.CollideWithOtherActors | CollisionFlags.CollideWithTileset | CollisionFlags.CollideWithSolidObjects | CollisionFlags.ApplyGravitation; } }
public override void OnHandleCollision(ActorBase other) { //base.HandleCollision(other); AmmoBase ammo = other as AmmoBase; if (ammo != null) { if (fall == FallDirection.None) { fall = (ammo.Speed.X < 0 ? FallDirection.Left : FallDirection.Right); } ammo.DecreaseHealth(1, this); } }
public AmmoDataContainer(AmmoBase ammo) { this.ammo = ammo; this.timerLimit = ammo.reloadTime; }
public void AddAmmoToList(AmmoBase _ammobase) { weaponAmmo.Add(_ammobase); print(weaponAmmo.Count); }