Веб-сайт самохостера Lotigara

summaryrefslogtreecommitdiff
path: root/source/game/StarUniverseClient.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'source/game/StarUniverseClient.cpp')
-rw-r--r--source/game/StarUniverseClient.cpp15
1 files changed, 8 insertions, 7 deletions
diff --git a/source/game/StarUniverseClient.cpp b/source/game/StarUniverseClient.cpp
index 9b26416..e025517 100644
--- a/source/game/StarUniverseClient.cpp
+++ b/source/game/StarUniverseClient.cpp
@@ -183,13 +183,14 @@ void UniverseClient::update() {
m_warpDelay.reset();
if (m_warping) {
m_warpCinemaCancelTimer = GameTimer(assets->json("/client.config:playerWarpCinemaMinimumTime").toFloat());
- String cinematic;
- if (m_mainPlayer->isDeploying())
- cinematic = assets->json("/client.config:deployCinematic").toString();
- else
- cinematic = assets->json("/client.config:warpCinematic").toString();
- cinematic = cinematic.replaceTags(StringMap<String>{{"species", m_mainPlayer->species()}});
- m_mainPlayer->setPendingCinematic(Json(move(cinematic)));
+
+ bool isDeploying = m_mainPlayer->isDeploying();
+ String cinematicJsonPath = isDeploying ? "/client.config:deployCinematic" : "/client.config:warpCinematic";
+ String cinematicAssetPath = assets->json(cinematicJsonPath).toString()
+ .replaceTags(StringMap<String>{{"species", m_mainPlayer->species()}});
+
+ Json cinematic = jsonMerge(assets->json(cinematicJsonPath + "Base"), assets->json(cinematicAssetPath));
+ m_mainPlayer->setPendingCinematic(cinematic);
}
}
}