private void BuildingDamageHandler(BuildingDamageResult bdr)
    {
        switch (bdr.Result)
        {
        case BuildingDamageResult.DamageResult.None:
            break;

        case BuildingDamageResult.DamageResult.PartiallyDestroyed:
            break;

        case BuildingDamageResult.DamageResult.Destroyed:
            Vector3 local = CoordConverter.GeocToLocal(bdr.Location);
            StartCoroutine(DestroyBuildingAtPosition(local));
            break;

        default:
            break;
        }
    }
        private void PublishReport()
        {
            DamagedBuildingsReport report = new DamagedBuildingsReport();

            int length = damageMessages.Messages.Count;

            DamagedBuildingsReport.DamagedBuildings[] damagedBuildings = new DamagedBuildingsReport.DamagedBuildings[length];

            for (int i = 0; i < length; i++)
            {
                BuildingDamageResult resultMessage = damageMessages.Messages[i];

                damagedBuildings[i] = new DamagedBuildingsReport.DamagedBuildings()
                {
                    Location = resultMessage.Location,
                    State    = (DamagedBuildingsReport.DamageState)resultMessage.Result
                };
            }

            report.DamagedBuildingsLength = length;
            report.Buildings = damagedBuildings;

            EventReportsManager.Send(report);
        }
 private void BuildingDamageHandler(BuildingDamageResult bdr)
 {
     damageMessages.Messages.Add(bdr);
     JSONDataSaver.Write(damageMessages, FileName);
 }