Exemplo n.º 1
0
    private void Awake()
    {
        _instance = this;
        if (GenNewMapOnStart)
        {
            GenerateMap();
        }

        CurrentlyDisplayingMapType = MapDisplays.TilesWithVision;
    }
Exemplo n.º 2
0
    public void RenderMap(MapDisplays mapDisplay)
    {
        DateTime start = DateTime.Now;

        CurrentlyDisplayingMapType = mapDisplay;
        switch (mapDisplay)
        {
        case MapDisplays.Population:
            //this.RenderMapWithKeyAndRange(x => x.Population, 1000);
            this.RenderMapWithKey(x => x.Population);
            break;

        case MapDisplays.Supply:
            //this.RenderMapWithKeyAndRange(x => x.Supply, 1000);
            this.RenderMapWithKey(x => x.Supply);
            break;

        case MapDisplays.HeightMap:
            this.RenderMapWithKey(x => x.Height);
            break;

        case MapDisplays.HeightGradient:
            this.RenderMapWithKey(x => x.HeightGradient.magnitude);
            break;

        case MapDisplays.Tiles:
            this.RenderMapWithTiles();
            break;

        case MapDisplays.TilesWithVision:
            //RenderAllTilesGray();
            RenderDiscoveredTiles(LocalPlayerController.Instance.GeneralDivision.AttachedDivision);
            RenderMapWithTilesAndVision(LocalPlayerController.Instance.GeneralDivision, PlayerVision);
            break;

        case MapDisplays.MovementSpeed:
            this.RenderMapWithKey(x => 1 / (float)x.MoveCost);
            break;

        case MapDisplays.Simple:
            this.RenderSimple();
            break;

        case MapDisplays.PlayerControlledAreas:
            this.RenderMapWithZoneOfControl();
            break;
        }

        DateTime end = DateTime.Now;

        Debug.Log($"render time {end - start}");

        OnMapRerender?.Invoke();
    }