MCPcopy Create free account
hub / github.com/OpenStarbound/OpenStarbound / variantMapToTile

Function variantMapToTile

source/game/StarDungeonImagePart.cpp:75–103  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

73 }
74
75 Tile variantMapToTile(JsonObject const& tile) {
76 Tile result;
77 if (tile.contains("brush"))
78 result.brushes = Brush::readBrushes(tile.get("brush"));
79 if (tile.contains("rules"))
80 result.rules = Rule::readRules(tile.get("rules"));
81
82 if (tile.contains("connector") && tile.get("connector").toBool()) {
83 auto connector = TileConnector();
84
85 connector.forwardOnly = tile.contains("connectForwardOnly") && tile.get("connectForwardOnly").toBool();
86
87 Json connectorValue = tile.get("value");
88 if (Maybe<Json> value = tile.maybe("connector-value"))
89 connectorValue = value.take();
90
91 if (connectorValue.isType(Json::Type::String))
92 connector.value = connectorValue.toString();
93 else
94 connector.value = connectorColorValue(jsonToVec4B(connectorValue));
95
96 if (tile.contains("direction"))
97 connector.direction = DungeonDirectionNames.getLeft(tile.get("direction").toString());
98
99 result.connector = connector;
100 }
101
102 return result;
103 }
104
105 ImageTileset::ImageTileset(Json const& tileset) {
106 for (Json const& tileDef : tileset.iterateArray()) {

Callers 1

ImageTilesetMethod · 0.85

Calls 10

TileConnectorClass · 0.85
connectorColorValueFunction · 0.85
jsonToVec4BFunction · 0.85
toBoolMethod · 0.80
containsMethod · 0.45
getMethod · 0.45
maybeMethod · 0.45
takeMethod · 0.45
isTypeMethod · 0.45
toStringMethod · 0.45

Tested by

no test coverage detected