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

Method diskStore

source/game/StarNpc.cpp:135–157  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

133}
134
135Json Npc::diskStore() const {
136 return JsonObject{
137 {"npcVariant", Root::singleton().npcDatabase()->writeNpcVariantToJson(m_npcVariant)},
138 {"movementController", m_movementController->storeState()},
139 {"statusController", m_statusController->diskStore()},
140 {"armor", m_armor->diskStore()},
141 {"tools", m_tools->diskStore()},
142 {"aimPosition", jsonFromVec2F({m_xAimPosition.get(), m_yAimPosition.get()})},
143 {"humanoidState", Humanoid::StateNames.getRight(m_humanoid.state())},
144 {"humanoidEmoteState", HumanoidEmoteNames.getRight(m_humanoid.emoteState())},
145 {"isInteractive", m_isInteractive.get()},
146 {"shifting", m_shifting.get()},
147 {"damageOnTouch", m_damageOnTouch.get()},
148 {"effectEmitter", m_effectEmitter->toJson()},
149 {"disableWornArmor", m_disableWornArmor.get()},
150 {"scriptStorage", m_scriptComponent.getScriptStorage()},
151 {"uniqueId", jsonFromMaybe(uniqueId())},
152 {"team", getTeam().toJson()},
153 {"deathParticleBurst", jsonFromMaybe(m_deathParticleBurst.get())},
154 {"dropPools", m_dropPools.get().transformed(construct<Json>())},
155 {"aggressive", m_aggressive.get()}
156 };
157}
158
159ByteArray Npc::netStore(NetCompatibilityRules rules) {
160 return Root::singleton().npcDatabase()->writeNpcVariant(m_npcVariant, rules);

Callers 8

diskStoreEntityMethod · 0.45
toJsonMethod · 0.45
storeMethod · 0.45
savePlayerMethod · 0.45
updateVersionedJsonMethod · 0.45
storeMethod · 0.45
writeStoredDataMethod · 0.45
makePlayerCallbacksMethod · 0.45

Calls 12

singletonClass · 0.85
jsonFromVec2FFunction · 0.85
jsonFromMaybeFunction · 0.85
writeNpcVariantToJsonMethod · 0.80
npcDatabaseMethod · 0.80
emoteStateMethod · 0.80
getScriptStorageMethod · 0.80
storeStateMethod · 0.45
getMethod · 0.45
stateMethod · 0.45
toJsonMethod · 0.45
transformedMethod · 0.45

Tested by

no test coverage detected