private void Attack(SurvivorSprite survivorSprite)
        {
            this.AttackerBooleans = shotgunAttackTextureSheet.CellCollisionBooleans[0];
            this.AttackerPixels   = shotgunAttackTextureSheet.CellCollisionPixels[0];
            this.AttackerBounds   = CollisionHelper.CalculateCollisionRectangle(
                survivorSprite.Location.TransformMatrixForOffset(shotgunAttackTextureSheet.CellOffsets[0]),
                new Point(shotgunAttackTextureSheet.CellSourceRectangles[0].Width,
                          shotgunAttackTextureSheet.CellSourceRectangles[0].Height));
            this.AttackerTransformMatrix = survivorSprite.Location.TransformMatrixForOffset(shotgunAttackTextureSheet.CellOffsets[0]);
            MultiAttackResults multiAttackResults = survivorSprite.Game.ZombiesSubsystem.ZombiesAttackManager.AttackWithProjectile(this, DamageValue);

            survivorSprite.Game.Results.KillResults.ShotgunBlastKills += multiAttackResults.Kills;
            if (multiAttackResults.Kills > 0)
            {
                survivorSprite.Game.Results.ShotgunWeaponResults.UsageResultingInKills++;
                if (multiAttackResults.Kills == 2)
                {
                    survivorSprite.Game.Results.KillResults.DoubleKills++;
                }
                else if (multiAttackResults.Kills == 3)
                {
                    survivorSprite.Game.Results.KillResults.TripleKills++;
                }
            }
            else if (multiAttackResults.Damages > 0)
            {
                survivorSprite.Game.Results.ShotgunWeaponResults.UsageResultingInDamage++;
            }
            else
            {
                survivorSprite.Game.Results.ShotgunWeaponResults.UsageResultingInNoDamage++;
            }
        }
        private void Attack(SurvivorSprite survivorSprite)
        {
            this.AttackerBooleans = pistolAttackTextureSheet.CellCollisionBooleans[0];
            this.AttackerPixels   = pistolAttackTextureSheet.CellCollisionPixels[0];
            this.AttackerBounds   = CollisionHelper.CalculateCollisionRectangle(
                survivorSprite.Location.TransformMatrixForOffset(pistolAttackTextureSheet.CellOffsets[0]),
                new Point(pistolAttackTextureSheet.CellSourceRectangles[0].Width,
                          pistolAttackTextureSheet.CellSourceRectangles[0].Height));
            this.AttackerTransformMatrix = survivorSprite.Location.TransformMatrixForOffset(pistolAttackTextureSheet.CellOffsets[0]);
            AttackResults attackResults = survivorSprite.Game.ZombiesSubsystem.ZombiesAttackManager.AttackWithProjectileSingleTarget(this, DamageValue);

            if (attackResults == AttackResults.Kill)
            {
                survivorSprite.Game.Results.PistolWeaponResults.UsageResultingInKills++;
                survivorSprite.Game.Results.KillResults.PistolShotKills++;
            }
            else if (attackResults == AttackResults.Damage)
            {
                survivorSprite.Game.Results.PistolWeaponResults.UsageResultingInDamage++;
            }
            else
            {
                survivorSprite.Game.Results.PistolWeaponResults.UsageResultingInNoDamage++;
            }
        }