Fixing minor bugs
This commit is contained in:
1 parent
c7b3f04cd4
commit
3495d28edf
9 files changed
+115
-25
No files matched your search
@@ -11,6 +11,8 @@
|
||||
|
||||
#include "ScriptEngine.h"
|
||||
#include "dialogue/DialogueSystem.h"
|
||||
#include "SparkEmitter.h"
|
||||
#include <functional>
|
||||
namespace ZL
|
||||
{
|
||||
|
||||
@@ -25,6 +27,8 @@ namespace ZL
|
||||
std::string scriptPath;
|
||||
Eigen::Vector3f playerPosition = Eigen::Vector3f::Zero();
|
||||
Eigen::Vector3f ghostPosition = Eigen::Vector3f::Zero();
|
||||
Eigen::Vector3f teleportPosition = Eigen::Vector3f::Zero();
|
||||
float teleportRadius = 0.0f;
|
||||
};
|
||||
|
||||
class Location
|
||||
@@ -64,6 +68,15 @@ namespace ZL
|
||||
ScriptEngine scriptEngine;
|
||||
Dialogue::DialogueSystem dialogueSystem;
|
||||
|
||||
// Teleport zone: when the player crosses into the radius of teleportPosition,
|
||||
// onTeleport() is invoked once. Re-triggering requires leaving the zone first
|
||||
// (rising-edge detection via playerInTeleportZone).
|
||||
Eigen::Vector3f teleportPosition = Eigen::Vector3f::Zero();
|
||||
float teleportRadius = 0.0f;
|
||||
bool playerInTeleportZone = false;
|
||||
std::function<void()> onTeleport;
|
||||
std::unique_ptr<SparkEmitter> teleportSparks;
|
||||
|
||||
#ifdef SHOW_PATH
|
||||
std::vector<VertexRenderStruct> debugNavMeshes;
|
||||
void buildDebugNavMeshes();
|
||||
|
||||
Reference in new issue
Block a user