Ignore:
Timestamp:
Jun 10, 2023, 6:33:56 PM (17 months ago)
Author:
alloc
Message:

Added more details to API map/config
Updated web files to 0.7.0

File:
1 edited

Legend:

Unmodified
Added
Removed
  • TFP-WebServer/MapRendering/src/Api/Map.cs

    r434 r444  
    1010        public class Map : AbsRestApi {
    1111
    12                 private static readonly byte[] jsonEnabledKey = JsonWriter.GetEncodedPropertyNameWithBeginObject ("enabled");
    13                
    1412                protected override void HandleRestGet (RequestContext _context) {
    1513                        string id = _context.RequestPath;
     
    1917                        switch (id) {
    2018                                case "config":
    21                                         writer.WriteRaw (jsonEnabledKey);
    22                                         writer.WriteBoolean (MapRenderer.Enabled);
    23                                         writer.WriteEndObject ();
     19                                        writeConfig (ref writer);
    2420                                        break;
    2521                                default:
     
    2925                       
    3026                        SendEnvelopedResult (_context, ref writer);
     27                }
     28
     29                private static readonly byte[] jsonKeyEnabled = JsonWriter.GetEncodedPropertyNameWithBeginObject ("enabled");
     30                private static readonly byte[] jsonKeyMapBlockSize = JsonWriter.GetEncodedPropertyNameWithPrefixValueSeparator ("mapBlockSize");
     31                private static readonly byte[] jsonKeyMaxZoom = JsonWriter.GetEncodedPropertyNameWithPrefixValueSeparator ("maxZoom");
     32                private static readonly byte[] jsonKeyMapSize = JsonWriter.GetEncodedPropertyNameWithPrefixValueSeparator ("mapSize");
     33               
     34                private void writeConfig (ref JsonWriter writer) {
     35                        writer.WriteRaw (jsonKeyEnabled);
     36                        writer.WriteBoolean (MapRenderer.Enabled);
     37
     38                        writer.WriteRaw (jsonKeyMapBlockSize);
     39                        writer.WriteInt32 (Constants.MapBlockSize);
     40
     41                        writer.WriteRaw (jsonKeyMaxZoom);
     42                        writer.WriteInt32 (Constants.Zoomlevels - 1);
     43
     44                        GameManager.Instance.World.GetWorldExtent (out Vector3i worldMinPos, out Vector3i worldMaxPos);
     45                        Vector3i worldSize = worldMaxPos - worldMinPos;
     46
     47                        writer.WriteRaw (jsonKeyMapSize);
     48                        JsonCommons.WriteVector3I (ref writer, worldSize);
     49                       
     50                        writer.WriteEndObject ();
    3151                }
    3252
Note: See TracChangeset for help on using the changeset viewer.