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

Method getTileObjectInfo

source/game/StarDungeonTMXPart.cpp:380–394  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

378 }
379
380 Maybe<TMXObject::TileObjectInfo> TMXObject::getTileObjectInfo(
381 Json const& tmx, TMXTilesetsPtr tilesets, TileLayer layer) {
382 Maybe<unsigned> optGid = tmx.optUInt("gid");
383 if (optGid.isNothing())
384 return {};
385
386 unsigned flipBits = *optGid & TileFlip::AllBits;
387 unsigned gid = *optGid & ~TileFlip::AllBits;
388
389 if (flipBits & (TileFlip::Vertical | TileFlip::Diagonal))
390 throw tmxObjectError(tmx, "object contains vertical or diagonal flips, which are not supported");
391
392 Tiled::Tile const& gidTile = tilesets->getTile(gid, layer);
393 return TileObjectInfo{gidTile.properties, flipBits};
394 }
395
396 TileLayer TMXObject::getLayer(Maybe<Json> const& groupProperties, Maybe<Json> const& objectProperties) {
397 if (objectProperties.isValid() && objectProperties->contains("layer"))

Callers

nothing calls this directly

Calls 3

optUIntMethod · 0.80
isNothingMethod · 0.80
getTileMethod · 0.45

Tested by

no test coverage detected