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

Method readStoredData

source/game/StarObject.cpp:690–723  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

688}
689
690void Object::readStoredData(Json const& diskStore) {
691 setUniqueId(diskStore.optString("uniqueId"));
692 setTilePosition(jsonToVec2I(diskStore.get("tilePosition")));
693 setOrientationIndex(jsonToSize(diskStore.get("orientationIndex")));
694 m_direction.set(DirectionNames.getLeft(diskStore.getString("direction")));
695
696 m_interactive.set(diskStore.getBool("interactive", !configValue("interactAction", Json()).isNull()));
697
698 m_scriptComponent.setScriptStorage(diskStore.getObject("scriptStorage", JsonObject()));
699
700 JsonArray inputNodes = diskStore.getArray("inputWireNodes");
701 for (size_t i = 0; i < m_inputNodes.size(); ++i) {
702 if (i < inputNodes.size()) {
703 auto& in = m_inputNodes[i];
704 List<WireConnection> connections;
705 for (auto const& conn : inputNodes[i].getArray("connections"))
706 connections.append(WireConnection{jsonToVec2I(conn.get(0)), (size_t)conn.get(1).toUInt()});
707 in.connections.set(std::move(connections));
708 in.state.set(inputNodes[i].getBool("state"));
709 }
710 }
711
712 JsonArray outputNodes = diskStore.getArray("outputWireNodes");
713 for (size_t i = 0; i < m_outputNodes.size(); ++i) {
714 if (i < outputNodes.size()) {
715 auto& in = m_outputNodes[i];
716 List<WireConnection> connections;
717 for (auto const& conn : outputNodes[i].getArray("connections"))
718 connections.append(WireConnection{jsonToVec2I(conn.get(0)), (size_t)conn.get(1).toUInt()});
719 in.connections.set(std::move(connections));
720 in.state.set(outputNodes[i].getBool("state"));
721 }
722 }
723}
724
725Json Object::writeStoredData() const {
726 JsonArray inputNodes;

Callers 1

diskLoadObjectMethod · 0.45

Calls 15

jsonToVec2IFunction · 0.85
jsonToSizeFunction · 0.85
JsonClass · 0.85
optStringMethod · 0.80
getStringMethod · 0.80
getBoolMethod · 0.80
setScriptStorageMethod · 0.80
getArrayMethod · 0.80
toUIntMethod · 0.80
getMethod · 0.45
setMethod · 0.45
isNullMethod · 0.45

Tested by

no test coverage detected