using GTANetworkAPI;
using ReallifeGamemode.Server.Entities;
using ReallifeGamemode.Server.Entities.Saves;
using ReallifeGamemode.Server.Models;

/**
* @overview Life of German Reallife - Managers LoadManager (LoadManager.cs)
* @author VegaZ
* @copyright (c) 2008 - 2018 Life of German
*/

namespace ReallifeGamemode.Server.Managers
{
    public class LoadManager : Script
    {

        [ServerEvent(Event.ResourceStart)]
        public void OnResourceStart()
        {
            using (var loadData = new DatabaseContext())
            {
                foreach (SavedBlip b in loadData.Blips)
                {
                    if (b.Active == true)
                    {
                        NAPI.Blip.CreateBlip((uint)b.Sprite, new Vector3(b.PositionX, b.PositionY, b.PositionZ), b.Scale,
                        b.Color, b.Name, b.Alpha, b.DrawDistance, b.ShortRange, (short)b.Rotation, b.Dimension);
                    }
                }

                foreach (ServerVehicle veh in loadData.ServerVehicles)
                {
                    if (!veh.Active) continue;

                    Vehicle current = veh.Spawn();
                    TuningManager.ApplyTuningToServerVehicle(veh);
                }
            }
        }
    }
}
