mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2025-12-17 03:37:08 -06:00
Compare commits
1 Commits
script-stu
...
ez-mem-fix
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
6943e2048f |
@@ -96,6 +96,7 @@ set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
||||
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
|
||||
|
||||
find_package(MariaDB)
|
||||
find_package(JSON)
|
||||
|
||||
# Create a /resServer directory
|
||||
make_directory(${CMAKE_BINARY_DIR}/resServer)
|
||||
@@ -229,7 +230,6 @@ include_directories(
|
||||
"tests/dCommonTests"
|
||||
"tests/dGameTests"
|
||||
"tests/dGameTests/dComponentsTests"
|
||||
"tests/dGameTests/dScriptsTests"
|
||||
|
||||
SYSTEM "thirdparty/magic_enum/include/magic_enum"
|
||||
SYSTEM "thirdparty/raknet/Source"
|
||||
@@ -285,7 +285,7 @@ add_subdirectory(dPhysics)
|
||||
add_subdirectory(dServer)
|
||||
|
||||
# Create a list of common libraries shared between all binaries
|
||||
set(COMMON_LIBRARIES "dCommon" "dDatabase" "dNet" "raknet" "MariaDB::ConnCpp" "magic_enum")
|
||||
set(COMMON_LIBRARIES "dCommon" "dDatabase" "dNet" "raknet" "MariaDB::ConnCpp" "magic_enum" "nlohmann_json::nlohmann_json")
|
||||
|
||||
# Add platform specific common libraries
|
||||
if(UNIX)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
PROJECT_VERSION_MAJOR=2
|
||||
PROJECT_VERSION_MINOR=3
|
||||
PROJECT_VERSION_PATCH=0
|
||||
PROJECT_VERSION_MAJOR=1
|
||||
PROJECT_VERSION_MINOR=1
|
||||
PROJECT_VERSION_PATCH=1
|
||||
|
||||
# Debugging
|
||||
# Set DYNAMIC to 1 to enable the -rdynamic flag for the linker, yielding some symbols in crashlogs.
|
||||
|
||||
20
cmake/FindJSON.cmake
Normal file
20
cmake/FindJSON.cmake
Normal file
@@ -0,0 +1,20 @@
|
||||
include(FetchContent)
|
||||
|
||||
message(STATUS "Fetching json...")
|
||||
|
||||
FetchContent_Declare(
|
||||
json
|
||||
GIT_REPOSITORY https://github.com/nlohmann/json
|
||||
GIT_TAG v3.11.3
|
||||
)
|
||||
|
||||
FetchContent_GetProperties(json)
|
||||
if(NOT json_POPULATED)
|
||||
FetchContent_Populate(json)
|
||||
add_subdirectory(${json_SOURCE_DIR} ${json_BINARY_DIR} EXCLUDE_FROM_ALL)
|
||||
endif()
|
||||
|
||||
FetchContent_MakeAvailable(json)
|
||||
|
||||
message(STATUS "json fetched and is now ready.")
|
||||
set(JSON_FOUND TRUE)
|
||||
@@ -1840,12 +1840,6 @@ const NiPoint3& Entity::GetPosition() const {
|
||||
return vehicel->GetPosition();
|
||||
}
|
||||
|
||||
auto* rigidBodyPhantomPhysicsComponent = GetComponent<RigidbodyPhantomPhysicsComponent>();
|
||||
|
||||
if (rigidBodyPhantomPhysicsComponent != nullptr) {
|
||||
return rigidBodyPhantomPhysicsComponent->GetPosition();
|
||||
}
|
||||
|
||||
return NiPoint3Constant::ZERO;
|
||||
}
|
||||
|
||||
@@ -1874,12 +1868,6 @@ const NiQuaternion& Entity::GetRotation() const {
|
||||
return vehicel->GetRotation();
|
||||
}
|
||||
|
||||
auto* rigidBodyPhantomPhysicsComponent = GetComponent<RigidbodyPhantomPhysicsComponent>();
|
||||
|
||||
if (rigidBodyPhantomPhysicsComponent != nullptr) {
|
||||
return rigidBodyPhantomPhysicsComponent->GetRotation();
|
||||
}
|
||||
|
||||
return NiQuaternionConstant::IDENTITY;
|
||||
}
|
||||
|
||||
@@ -1908,12 +1896,6 @@ void Entity::SetPosition(const NiPoint3& position) {
|
||||
vehicel->SetPosition(position);
|
||||
}
|
||||
|
||||
auto* rigidBodyPhantomPhysicsComponent = GetComponent<RigidbodyPhantomPhysicsComponent>();
|
||||
|
||||
if (rigidBodyPhantomPhysicsComponent != nullptr) {
|
||||
rigidBodyPhantomPhysicsComponent->SetPosition(position);
|
||||
}
|
||||
|
||||
Game::entityManager->SerializeEntity(this);
|
||||
}
|
||||
|
||||
@@ -1942,12 +1924,6 @@ void Entity::SetRotation(const NiQuaternion& rotation) {
|
||||
vehicel->SetRotation(rotation);
|
||||
}
|
||||
|
||||
auto* rigidBodyPhantomPhysicsComponent = GetComponent<RigidbodyPhantomPhysicsComponent>();
|
||||
|
||||
if (rigidBodyPhantomPhysicsComponent != nullptr) {
|
||||
rigidBodyPhantomPhysicsComponent->SetRotation(rotation);
|
||||
}
|
||||
|
||||
Game::entityManager->SerializeEntity(this);
|
||||
}
|
||||
|
||||
|
||||
@@ -47,7 +47,7 @@ PhantomPhysicsComponent::PhantomPhysicsComponent(Entity* parent) : PhysicsCompon
|
||||
m_Direction = NiPoint3(); // * m_DirectionalMultiplier
|
||||
|
||||
if (m_Parent->GetVar<bool>(u"create_physics")) {
|
||||
m_dpEntity = CreatePhysicsLnv(m_Scale, ComponentType);
|
||||
CreatePhysics();
|
||||
}
|
||||
|
||||
if (m_Parent->GetVar<bool>(u"respawnVol")) {
|
||||
@@ -89,9 +89,105 @@ PhantomPhysicsComponent::PhantomPhysicsComponent(Entity* parent) : PhysicsCompon
|
||||
m_RespawnRot = m_Rotation;
|
||||
}
|
||||
|
||||
if (!m_dpEntity) {
|
||||
m_dpEntity = CreatePhysicsEntity(ComponentType);
|
||||
if (!m_dpEntity) return;
|
||||
/*
|
||||
for (LDFBaseData* data : settings) {
|
||||
if (data) {
|
||||
if (data->GetKey() == u"create_physics") {
|
||||
if (bool(std::stoi(data->GetValueAsString()))) {
|
||||
CreatePhysics(settings);
|
||||
}
|
||||
}
|
||||
|
||||
if (data->GetKey() == u"respawnVol") {
|
||||
if (bool(std::stoi(data->GetValueAsString()))) {
|
||||
m_IsRespawnVolume = true;
|
||||
}
|
||||
}
|
||||
|
||||
if (m_IsRespawnVolume) {
|
||||
if (data->GetKey() == u"rspPos") {
|
||||
//Joy, we get to split strings!
|
||||
std::stringstream test(data->GetValueAsString());
|
||||
std::string segment;
|
||||
std::vector<std::string> seglist;
|
||||
|
||||
while (std::getline(test, segment, '\x1f')) {
|
||||
seglist.push_back(segment);
|
||||
}
|
||||
|
||||
m_RespawnPos = NiPoint3(std::stof(seglist[0]), std::stof(seglist[1]), std::stof(seglist[2]));
|
||||
}
|
||||
|
||||
if (data->GetKey() == u"rspRot") {
|
||||
//Joy, we get to split strings!
|
||||
std::stringstream test(data->GetValueAsString());
|
||||
std::string segment;
|
||||
std::vector<std::string> seglist;
|
||||
|
||||
while (std::getline(test, segment, '\x1f')) {
|
||||
seglist.push_back(segment);
|
||||
}
|
||||
|
||||
m_RespawnRot = NiQuaternion(std::stof(seglist[0]), std::stof(seglist[1]), std::stof(seglist[2]), std::stof(seglist[3]));
|
||||
}
|
||||
}
|
||||
|
||||
if (m_Parent->GetLOT() == 4945) // HF - RespawnPoints
|
||||
{
|
||||
m_IsRespawnVolume = true;
|
||||
m_RespawnPos = m_Position;
|
||||
m_RespawnRot = m_Rotation;
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
if (!m_HasCreatedPhysics) {
|
||||
CDComponentsRegistryTable* compRegistryTable = CDClientManager::GetTable<CDComponentsRegistryTable>();
|
||||
auto componentID = compRegistryTable->GetByIDAndType(m_Parent->GetLOT(), eReplicaComponentType::PHANTOM_PHYSICS);
|
||||
|
||||
CDPhysicsComponentTable* physComp = CDClientManager::GetTable<CDPhysicsComponentTable>();
|
||||
|
||||
if (physComp == nullptr) return;
|
||||
|
||||
auto* info = physComp->GetByID(componentID);
|
||||
if (info == nullptr || info->physicsAsset == "" || info->physicsAsset == "NO_PHYSICS") return;
|
||||
|
||||
//temp test
|
||||
if (info->physicsAsset == "miscellaneous\\misc_phys_10x1x5.hkx") {
|
||||
m_dpEntity = new dpEntity(m_Parent->GetObjectID(), 10.0f, 5.0f, 1.0f);
|
||||
} else if (info->physicsAsset == "miscellaneous\\misc_phys_640x640.hkx") {
|
||||
// TODO Fix physics simulation to do simulation at high velocities due to bullet through paper problem...
|
||||
m_dpEntity = new dpEntity(m_Parent->GetObjectID(), 1638.4f, 13.521004f * 2.0f, 1638.4f);
|
||||
|
||||
// Move this down by 13.521004 units so it is still effectively at the same height as before
|
||||
m_Position = m_Position - NiPoint3Constant::UNIT_Y * 13.521004f;
|
||||
} else if (info->physicsAsset == "env\\trigger_wall_tall.hkx") {
|
||||
m_dpEntity = new dpEntity(m_Parent->GetObjectID(), 10.0f, 25.0f, 1.0f);
|
||||
} else if (info->physicsAsset == "env\\env_gen_placeholderphysics.hkx") {
|
||||
m_dpEntity = new dpEntity(m_Parent->GetObjectID(), 20.0f, 20.0f, 20.0f);
|
||||
} else if (info->physicsAsset == "env\\POI_trigger_wall.hkx") {
|
||||
m_dpEntity = new dpEntity(m_Parent->GetObjectID(), 1.0f, 12.5f, 20.0f); // Not sure what the real size is
|
||||
} else if (info->physicsAsset == "env\\NG_NinjaGo\\env_ng_gen_gate_chamber_puzzle_ceiling_tile_falling_phantom.hkx") {
|
||||
m_dpEntity = new dpEntity(m_Parent->GetObjectID(), 18.0f, 5.0f, 15.0f);
|
||||
m_Position += m_Rotation.GetForwardVector() * 7.5f;
|
||||
} else if (info->physicsAsset == "env\\NG_NinjaGo\\ng_flamejet_brick_phantom.HKX") {
|
||||
m_dpEntity = new dpEntity(m_Parent->GetObjectID(), 1.0f, 1.0f, 12.0f);
|
||||
m_Position += m_Rotation.GetForwardVector() * 6.0f;
|
||||
} else if (info->physicsAsset == "env\\Ring_Trigger.hkx") {
|
||||
m_dpEntity = new dpEntity(m_Parent->GetObjectID(), 6.0f, 6.0f, 6.0f);
|
||||
} else if (info->physicsAsset == "env\\vfx_propertyImaginationBall.hkx") {
|
||||
m_dpEntity = new dpEntity(m_Parent->GetObjectID(), 4.5f);
|
||||
} else if (info->physicsAsset == "env\\env_won_fv_gas-blocking-volume.hkx") {
|
||||
m_dpEntity = new dpEntity(m_Parent->GetObjectID(), 390.496826f, 111.467964f, 600.821534f, true);
|
||||
m_Position.y -= (111.467964f * m_Scale) / 2;
|
||||
} else {
|
||||
// LOG_DEBUG("This one is supposed to have %s", info->physicsAsset.c_str());
|
||||
|
||||
//add fallback cube:
|
||||
m_dpEntity = new dpEntity(m_Parent->GetObjectID(), 2.0f, 2.0f, 2.0f);
|
||||
}
|
||||
|
||||
m_dpEntity->SetScale(m_Scale);
|
||||
m_dpEntity->SetRotation(m_Rotation);
|
||||
m_dpEntity->SetPosition(m_Position);
|
||||
@@ -105,6 +201,69 @@ PhantomPhysicsComponent::~PhantomPhysicsComponent() {
|
||||
}
|
||||
}
|
||||
|
||||
void PhantomPhysicsComponent::CreatePhysics() {
|
||||
unsigned char alpha;
|
||||
unsigned char red;
|
||||
unsigned char green;
|
||||
unsigned char blue;
|
||||
int type = -1;
|
||||
float x = 0.0f;
|
||||
float y = 0.0f;
|
||||
float z = 0.0f;
|
||||
float width = 0.0f; //aka "radius"
|
||||
float height = 0.0f;
|
||||
|
||||
if (m_Parent->HasVar(u"primitiveModelType")) {
|
||||
type = m_Parent->GetVar<int32_t>(u"primitiveModelType");
|
||||
x = m_Parent->GetVar<float>(u"primitiveModelValueX");
|
||||
y = m_Parent->GetVar<float>(u"primitiveModelValueY");
|
||||
z = m_Parent->GetVar<float>(u"primitiveModelValueZ");
|
||||
} else {
|
||||
CDComponentsRegistryTable* compRegistryTable = CDClientManager::GetTable<CDComponentsRegistryTable>();
|
||||
auto componentID = compRegistryTable->GetByIDAndType(m_Parent->GetLOT(), eReplicaComponentType::PHANTOM_PHYSICS);
|
||||
|
||||
CDPhysicsComponentTable* physComp = CDClientManager::GetTable<CDPhysicsComponentTable>();
|
||||
|
||||
if (physComp == nullptr) return;
|
||||
|
||||
auto info = physComp->GetByID(componentID);
|
||||
|
||||
if (info == nullptr) return;
|
||||
|
||||
type = info->pcShapeType;
|
||||
width = info->playerRadius;
|
||||
height = info->playerHeight;
|
||||
}
|
||||
|
||||
switch (type) {
|
||||
case 1: { //Make a new box shape
|
||||
NiPoint3 boxSize(x, y, z);
|
||||
if (x == 0.0f) {
|
||||
//LU has some weird values, so I think it's best to scale them down a bit
|
||||
if (height < 0.5f) height = 2.0f;
|
||||
if (width < 0.5f) width = 2.0f;
|
||||
|
||||
//Scale them:
|
||||
width = width * m_Scale;
|
||||
height = height * m_Scale;
|
||||
|
||||
boxSize = NiPoint3(width, height, width);
|
||||
}
|
||||
|
||||
m_dpEntity = new dpEntity(m_Parent->GetObjectID(), boxSize);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (!m_dpEntity) return;
|
||||
|
||||
m_dpEntity->SetPosition({ m_Position.x, m_Position.y - (height / 2), m_Position.z });
|
||||
|
||||
dpWorld::AddEntity(m_dpEntity);
|
||||
|
||||
m_HasCreatedPhysics = true;
|
||||
}
|
||||
|
||||
void PhantomPhysicsComponent::Serialize(RakNet::BitStream& outBitStream, bool bIsInitialUpdate) {
|
||||
PhysicsComponent::Serialize(outBitStream, bIsInitialUpdate);
|
||||
|
||||
@@ -149,9 +308,8 @@ void ApplyCollisionEffect(const LWOOBJID& target, const ePhysicsEffectType effec
|
||||
controllablePhysicsComponent->SetGravityScale(effectScale);
|
||||
GameMessages::SendSetGravityScale(target, effectScale, targetEntity->GetSystemAddress());
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
// The other types are not handled by the server
|
||||
case ePhysicsEffectType::ATTRACT:
|
||||
case ePhysicsEffectType::FRICTION:
|
||||
case ePhysicsEffectType::PUSH:
|
||||
@@ -159,7 +317,6 @@ void ApplyCollisionEffect(const LWOOBJID& target, const ePhysicsEffectType effec
|
||||
default:
|
||||
break;
|
||||
}
|
||||
// The other types are not handled by the server and are here to handle all cases of the enum.
|
||||
}
|
||||
|
||||
void PhantomPhysicsComponent::Update(float deltaTime) {
|
||||
@@ -199,12 +356,24 @@ void PhantomPhysicsComponent::SetDirection(const NiPoint3& pos) {
|
||||
m_IsDirectional = true;
|
||||
}
|
||||
|
||||
void PhantomPhysicsComponent::SpawnVertices() const {
|
||||
if (!m_dpEntity) {
|
||||
LOG("No dpEntity to spawn vertices for %llu:%i", m_Parent->GetObjectID(), m_Parent->GetLOT());
|
||||
return;
|
||||
void PhantomPhysicsComponent::SpawnVertices() {
|
||||
if (!m_dpEntity) return;
|
||||
|
||||
LOG("%llu", m_Parent->GetObjectID());
|
||||
auto box = static_cast<dpShapeBox*>(m_dpEntity->GetShape());
|
||||
for (auto vert : box->GetVertices()) {
|
||||
LOG("%f, %f, %f", vert.x, vert.y, vert.z);
|
||||
|
||||
EntityInfo info;
|
||||
info.lot = 33;
|
||||
info.pos = vert;
|
||||
info.spawner = nullptr;
|
||||
info.spawnerID = m_Parent->GetObjectID();
|
||||
info.spawnerNodeID = 0;
|
||||
|
||||
Entity* newEntity = Game::entityManager->CreateEntity(info, nullptr);
|
||||
Game::entityManager->ConstructEntity(newEntity);
|
||||
}
|
||||
PhysicsComponent::SpawnVertices(m_dpEntity);
|
||||
}
|
||||
|
||||
void PhantomPhysicsComponent::SetDirectionalMultiplier(float mul) {
|
||||
|
||||
@@ -18,7 +18,6 @@ class LDFBaseData;
|
||||
class Entity;
|
||||
class dpEntity;
|
||||
enum class ePhysicsEffectType : uint32_t ;
|
||||
enum class eReplicaComponentType : uint32_t;
|
||||
|
||||
/**
|
||||
* Allows the creation of phantom physics for an entity: a physics object that is generally invisible but can be
|
||||
@@ -35,6 +34,11 @@ public:
|
||||
void Update(float deltaTime) override;
|
||||
void Serialize(RakNet::BitStream& outBitStream, bool bIsInitialUpdate) override;
|
||||
|
||||
/**
|
||||
* Creates the physics shape for this entity based on LDF data
|
||||
*/
|
||||
void CreatePhysics();
|
||||
|
||||
/**
|
||||
* Sets the direction this physics object is pointed at
|
||||
* @param pos the direction to set
|
||||
@@ -105,7 +109,7 @@ public:
|
||||
/**
|
||||
* Spawns an object at each of the vertices for debugging purposes
|
||||
*/
|
||||
void SpawnVertices() const;
|
||||
void SpawnVertices();
|
||||
|
||||
/**
|
||||
* Legacy stuff no clue what this does
|
||||
@@ -162,6 +166,11 @@ private:
|
||||
*/
|
||||
dpEntity* m_dpEntity;
|
||||
|
||||
/**
|
||||
* Whether or not the physics object has been created yet
|
||||
*/
|
||||
bool m_HasCreatedPhysics = false;
|
||||
|
||||
/**
|
||||
* Whether or not this physics object represents an object that updates the respawn pos of an entity that crosses it
|
||||
*/
|
||||
|
||||
@@ -1,19 +1,5 @@
|
||||
#include "PhysicsComponent.h"
|
||||
|
||||
#include "eReplicaComponentType.h"
|
||||
#include "NiPoint3.h"
|
||||
#include "NiQuaternion.h"
|
||||
|
||||
#include "CDComponentsRegistryTable.h"
|
||||
#include "CDPhysicsComponentTable.h"
|
||||
|
||||
#include "dpEntity.h"
|
||||
#include "dpWorld.h"
|
||||
#include "dpShapeBox.h"
|
||||
#include "dpShapeSphere.h"
|
||||
|
||||
#include "EntityInfo.h"
|
||||
|
||||
PhysicsComponent::PhysicsComponent(Entity* parent) : Component(parent) {
|
||||
m_Position = NiPoint3Constant::ZERO;
|
||||
m_Rotation = NiQuaternionConstant::IDENTITY;
|
||||
@@ -33,190 +19,3 @@ void PhysicsComponent::Serialize(RakNet::BitStream& outBitStream, bool bIsInitia
|
||||
if (!bIsInitialUpdate) m_DirtyPosition = false;
|
||||
}
|
||||
}
|
||||
|
||||
dpEntity* PhysicsComponent::CreatePhysicsEntity(eReplicaComponentType type) {
|
||||
CDComponentsRegistryTable* compRegistryTable = CDClientManager::GetTable<CDComponentsRegistryTable>();
|
||||
auto componentID = compRegistryTable->GetByIDAndType(m_Parent->GetLOT(), type);
|
||||
|
||||
CDPhysicsComponentTable* physComp = CDClientManager::GetTable<CDPhysicsComponentTable>();
|
||||
|
||||
if (physComp == nullptr) return nullptr;
|
||||
|
||||
auto* info = physComp->GetByID(componentID);
|
||||
if (info == nullptr || info->physicsAsset == "" || info->physicsAsset == "NO_PHYSICS") return nullptr;
|
||||
|
||||
dpEntity* toReturn;
|
||||
if (info->physicsAsset == "miscellaneous\\misc_phys_10x1x5.hkx") {
|
||||
toReturn = new dpEntity(m_Parent->GetObjectID(), 10.0f, 5.0f, 1.0f);
|
||||
} else if (info->physicsAsset == "miscellaneous\\misc_phys_640x640.hkx") {
|
||||
// TODO Fix physics simulation to do simulation at high velocities due to bullet through paper problem...
|
||||
toReturn = new dpEntity(m_Parent->GetObjectID(), 1638.4f, 13.521004f * 2.0f, 1638.4f);
|
||||
|
||||
// Move this down by 13.521004 units so it is still effectively at the same height as before
|
||||
m_Position = m_Position - NiPoint3Constant::UNIT_Y * 13.521004f;
|
||||
} else if (info->physicsAsset == "env\\trigger_wall_tall.hkx") {
|
||||
toReturn = new dpEntity(m_Parent->GetObjectID(), 10.0f, 25.0f, 1.0f);
|
||||
} else if (info->physicsAsset == "env\\env_gen_placeholderphysics.hkx") {
|
||||
toReturn = new dpEntity(m_Parent->GetObjectID(), 20.0f, 20.0f, 20.0f);
|
||||
} else if (info->physicsAsset == "env\\POI_trigger_wall.hkx") {
|
||||
toReturn = new dpEntity(m_Parent->GetObjectID(), 1.0f, 12.5f, 20.0f); // Not sure what the real size is
|
||||
} else if (info->physicsAsset == "env\\NG_NinjaGo\\env_ng_gen_gate_chamber_puzzle_ceiling_tile_falling_phantom.hkx") {
|
||||
toReturn = new dpEntity(m_Parent->GetObjectID(), 18.0f, 5.0f, 15.0f);
|
||||
m_Position += m_Rotation.GetForwardVector() * 7.5f;
|
||||
} else if (info->physicsAsset == "env\\NG_NinjaGo\\ng_flamejet_brick_phantom.HKX") {
|
||||
toReturn = new dpEntity(m_Parent->GetObjectID(), 1.0f, 1.0f, 12.0f);
|
||||
m_Position += m_Rotation.GetForwardVector() * 6.0f;
|
||||
} else if (info->physicsAsset == "env\\Ring_Trigger.hkx") {
|
||||
toReturn = new dpEntity(m_Parent->GetObjectID(), 6.0f, 6.0f, 6.0f);
|
||||
} else if (info->physicsAsset == "env\\vfx_propertyImaginationBall.hkx") {
|
||||
toReturn = new dpEntity(m_Parent->GetObjectID(), 4.5f);
|
||||
} else if (info->physicsAsset == "env\\env_won_fv_gas-blocking-volume.hkx") {
|
||||
toReturn = new dpEntity(m_Parent->GetObjectID(), 390.496826f, 111.467964f, 600.821534f, true);
|
||||
m_Position.y -= (111.467964f * m_Parent->GetDefaultScale()) / 2;
|
||||
} else {
|
||||
// LOG_DEBUG("This one is supposed to have %s", info->physicsAsset.c_str());
|
||||
|
||||
//add fallback cube:
|
||||
toReturn = new dpEntity(m_Parent->GetObjectID(), 2.0f, 2.0f, 2.0f);
|
||||
}
|
||||
return toReturn;
|
||||
}
|
||||
|
||||
dpEntity* PhysicsComponent::CreatePhysicsLnv(const float scale, const eReplicaComponentType type) const {
|
||||
int pcShapeType = -1;
|
||||
float x = 0.0f;
|
||||
float y = 0.0f;
|
||||
float z = 0.0f;
|
||||
float width = 0.0f; //aka "radius"
|
||||
float height = 0.0f;
|
||||
dpEntity* toReturn = nullptr;
|
||||
|
||||
if (m_Parent->HasVar(u"primitiveModelType")) {
|
||||
pcShapeType = m_Parent->GetVar<int32_t>(u"primitiveModelType");
|
||||
x = m_Parent->GetVar<float>(u"primitiveModelValueX");
|
||||
y = m_Parent->GetVar<float>(u"primitiveModelValueY");
|
||||
z = m_Parent->GetVar<float>(u"primitiveModelValueZ");
|
||||
} else {
|
||||
CDComponentsRegistryTable* compRegistryTable = CDClientManager::GetTable<CDComponentsRegistryTable>();
|
||||
auto componentID = compRegistryTable->GetByIDAndType(m_Parent->GetLOT(), type);
|
||||
|
||||
CDPhysicsComponentTable* physComp = CDClientManager::GetTable<CDPhysicsComponentTable>();
|
||||
|
||||
if (physComp == nullptr) return nullptr;
|
||||
|
||||
auto info = physComp->GetByID(componentID);
|
||||
|
||||
if (info == nullptr) return nullptr;
|
||||
|
||||
pcShapeType = info->pcShapeType;
|
||||
width = info->playerRadius;
|
||||
height = info->playerHeight;
|
||||
}
|
||||
|
||||
switch (pcShapeType) {
|
||||
case 0: { // HKX type
|
||||
break;
|
||||
}
|
||||
case 1: { //Make a new box shape
|
||||
NiPoint3 boxSize(x, y, z);
|
||||
if (x == 0.0f) {
|
||||
//LU has some weird values, so I think it's best to scale them down a bit
|
||||
if (height < 0.5f) height = 2.0f;
|
||||
if (width < 0.5f) width = 2.0f;
|
||||
|
||||
//Scale them:
|
||||
width = width * scale;
|
||||
height = height * scale;
|
||||
|
||||
boxSize = NiPoint3(width, height, width);
|
||||
}
|
||||
|
||||
toReturn = new dpEntity(m_Parent->GetObjectID(), boxSize);
|
||||
|
||||
toReturn->SetPosition({ m_Position.x, m_Position.y - (height / 2), m_Position.z });
|
||||
break;
|
||||
}
|
||||
case 2: { //Make a new cylinder shape
|
||||
break;
|
||||
}
|
||||
case 3: { //Make a new sphere shape
|
||||
auto [x, y, z] = m_Position;
|
||||
toReturn = new dpEntity(m_Parent->GetObjectID(), width);
|
||||
toReturn->SetPosition({ x, y, z });
|
||||
break;
|
||||
}
|
||||
case 4: { //Make a new capsule shape
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (toReturn) dpWorld::AddEntity(toReturn);
|
||||
|
||||
return toReturn;
|
||||
}
|
||||
|
||||
void PhysicsComponent::SpawnVertices(dpEntity* entity) const {
|
||||
if (!entity) return;
|
||||
|
||||
LOG("Spawning vertices for %llu", m_Parent->GetObjectID());
|
||||
EntityInfo info;
|
||||
info.lot = 33;
|
||||
info.spawner = nullptr;
|
||||
info.spawnerID = m_Parent->GetObjectID();
|
||||
info.spawnerNodeID = 0;
|
||||
|
||||
// These don't use overloaded methods as dPhysics does not link with dGame at the moment.
|
||||
auto box = dynamic_cast<dpShapeBox*>(entity->GetShape());
|
||||
if (box) {
|
||||
for (auto vert : box->GetVertices()) {
|
||||
LOG("Vertex at %f, %f, %f", vert.x, vert.y, vert.z);
|
||||
|
||||
info.pos = vert;
|
||||
Entity* newEntity = Game::entityManager->CreateEntity(info);
|
||||
Game::entityManager->ConstructEntity(newEntity);
|
||||
}
|
||||
}
|
||||
auto sphere = dynamic_cast<dpShapeSphere*>(entity->GetShape());
|
||||
if (sphere) {
|
||||
auto [x, y, z] = entity->GetPosition(); // Use shapes position instead of the parent's position in case it's different
|
||||
float plusX = x + sphere->GetRadius();
|
||||
float minusX = x - sphere->GetRadius();
|
||||
float plusY = y + sphere->GetRadius();
|
||||
float minusY = y - sphere->GetRadius();
|
||||
float plusZ = z + sphere->GetRadius();
|
||||
float minusZ = z - sphere->GetRadius();
|
||||
|
||||
auto radius = sphere->GetRadius();
|
||||
LOG("Radius: %f", radius);
|
||||
LOG("Plus Vertices %f %f %f", plusX, plusY, plusZ);
|
||||
LOG("Minus Vertices %f %f %f", minusX, minusY, minusZ);
|
||||
|
||||
info.pos = NiPoint3{ x, plusY, z };
|
||||
Entity* newEntity = Game::entityManager->CreateEntity(info);
|
||||
Game::entityManager->ConstructEntity(newEntity);
|
||||
|
||||
info.pos = NiPoint3{ x, minusY, z };
|
||||
newEntity = Game::entityManager->CreateEntity(info);
|
||||
Game::entityManager->ConstructEntity(newEntity);
|
||||
|
||||
info.pos = NiPoint3{ plusX, y, z };
|
||||
newEntity = Game::entityManager->CreateEntity(info);
|
||||
Game::entityManager->ConstructEntity(newEntity);
|
||||
|
||||
info.pos = NiPoint3{ minusX, y, z };
|
||||
newEntity = Game::entityManager->CreateEntity(info);
|
||||
Game::entityManager->ConstructEntity(newEntity);
|
||||
|
||||
info.pos = NiPoint3{ x, y, plusZ };
|
||||
newEntity = Game::entityManager->CreateEntity(info);
|
||||
Game::entityManager->ConstructEntity(newEntity);
|
||||
|
||||
info.pos = NiPoint3{ x, y, minusZ };
|
||||
newEntity = Game::entityManager->CreateEntity(info);
|
||||
Game::entityManager->ConstructEntity(newEntity);
|
||||
|
||||
info.pos = NiPoint3{ x, y, z };
|
||||
newEntity = Game::entityManager->CreateEntity(info);
|
||||
Game::entityManager->ConstructEntity(newEntity);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9,10 +9,6 @@ namespace Raknet {
|
||||
class BitStream;
|
||||
};
|
||||
|
||||
enum class eReplicaComponentType : uint32_t;
|
||||
|
||||
class dpEntity;
|
||||
|
||||
class PhysicsComponent : public Component {
|
||||
public:
|
||||
PhysicsComponent(Entity* parent);
|
||||
@@ -26,12 +22,6 @@ public:
|
||||
const NiQuaternion& GetRotation() const { return m_Rotation; }
|
||||
virtual void SetRotation(const NiQuaternion& rot) { if (m_Rotation == rot) return; m_Rotation = rot; m_DirtyPosition = true; }
|
||||
protected:
|
||||
dpEntity* CreatePhysicsEntity(eReplicaComponentType type);
|
||||
|
||||
dpEntity* CreatePhysicsLnv(const float scale, const eReplicaComponentType type) const;
|
||||
|
||||
void SpawnVertices(dpEntity* entity) const;
|
||||
|
||||
NiPoint3 m_Position;
|
||||
|
||||
NiQuaternion m_Rotation;
|
||||
|
||||
@@ -817,10 +817,8 @@ void RacingControlComponent::Update(float deltaTime) {
|
||||
|
||||
// Some offset up to make they don't fall through the terrain on a
|
||||
// respawn, seems to fix itself to the track anyhow
|
||||
if (waypoint.racing.isResetNode) {
|
||||
player.respawnPosition = position + NiPoint3Constant::UNIT_Y * 5;
|
||||
player.respawnRotation = vehicle->GetRotation();
|
||||
}
|
||||
player.respawnPosition = position + NiPoint3Constant::UNIT_Y * 5;
|
||||
player.respawnRotation = vehicle->GetRotation();
|
||||
player.respawnIndex = respawnIndex;
|
||||
|
||||
// Reached the start point, lapped
|
||||
|
||||
@@ -1,57 +1,16 @@
|
||||
// Darkflame Universe
|
||||
// Copyright 2024
|
||||
/*
|
||||
* Darkflame Universe
|
||||
* Copyright 2023
|
||||
*/
|
||||
|
||||
#include "RigidbodyPhantomPhysicsComponent.h"
|
||||
#include "Entity.h"
|
||||
|
||||
#include "dpEntity.h"
|
||||
#include "CDComponentsRegistryTable.h"
|
||||
#include "CDPhysicsComponentTable.h"
|
||||
#include "dpWorld.h"
|
||||
#include "dpShapeBox.h"
|
||||
#include "dpShapeSphere.h"
|
||||
#include"EntityInfo.h"
|
||||
|
||||
RigidbodyPhantomPhysicsComponent::RigidbodyPhantomPhysicsComponent(Entity* parent) : PhysicsComponent(parent) {
|
||||
m_Position = m_Parent->GetDefaultPosition();
|
||||
m_Rotation = m_Parent->GetDefaultRotation();
|
||||
m_Scale = m_Parent->GetDefaultScale();
|
||||
|
||||
if (m_Parent->GetVar<bool>(u"create_physics")) {
|
||||
m_dpEntity = CreatePhysicsLnv(m_Scale, ComponentType);
|
||||
if (!m_dpEntity) {
|
||||
m_dpEntity = CreatePhysicsEntity(ComponentType);
|
||||
if (!m_dpEntity) return;
|
||||
m_dpEntity->SetScale(m_Scale);
|
||||
m_dpEntity->SetRotation(m_Rotation);
|
||||
m_dpEntity->SetPosition(m_Position);
|
||||
dpWorld::AddEntity(m_dpEntity);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void RigidbodyPhantomPhysicsComponent::Serialize(RakNet::BitStream& outBitStream, bool bIsInitialUpdate) {
|
||||
PhysicsComponent::Serialize(outBitStream, bIsInitialUpdate);
|
||||
}
|
||||
|
||||
void RigidbodyPhantomPhysicsComponent::Update(const float deltaTime) {
|
||||
if (!m_dpEntity) return;
|
||||
|
||||
//Process enter events
|
||||
for (const auto id : m_dpEntity->GetNewObjects()) {
|
||||
m_Parent->OnCollisionPhantom(id);
|
||||
}
|
||||
|
||||
//Process exit events
|
||||
for (const auto id : m_dpEntity->GetRemovedObjects()) {
|
||||
m_Parent->OnCollisionLeavePhantom(id);
|
||||
}
|
||||
}
|
||||
|
||||
void RigidbodyPhantomPhysicsComponent::SpawnVertices() const {
|
||||
if (!m_dpEntity) {
|
||||
LOG("No dpEntity to spawn vertices for %llu:%i", m_Parent->GetObjectID(), m_Parent->GetLOT());
|
||||
return;
|
||||
}
|
||||
PhysicsComponent::SpawnVertices(m_dpEntity);
|
||||
}
|
||||
|
||||
@@ -1,8 +1,10 @@
|
||||
// Darkflame Universe
|
||||
// Copyright 2024
|
||||
/*
|
||||
* Darkflame Universe
|
||||
* Copyright 2023
|
||||
*/
|
||||
|
||||
#ifndef RIGIDBODYPHANTOMPHYSICS_H
|
||||
#define RIGIDBODYPHANTOMPHYSICS_H
|
||||
#ifndef __RIGIDBODYPHANTOMPHYSICS_H__
|
||||
#define __RIGIDBODYPHANTOMPHYSICS_H__
|
||||
|
||||
#include "BitStream.h"
|
||||
#include "dCommonVars.h"
|
||||
@@ -11,8 +13,6 @@
|
||||
#include "PhysicsComponent.h"
|
||||
#include "eReplicaComponentType.h"
|
||||
|
||||
class dpEntity;
|
||||
|
||||
/**
|
||||
* Component that handles rigid bodies that can be interacted with, mostly client-side rendered. An example is the
|
||||
* bananas that fall from trees in GF.
|
||||
@@ -23,15 +23,7 @@ public:
|
||||
|
||||
RigidbodyPhantomPhysicsComponent(Entity* parent);
|
||||
|
||||
void Update(const float deltaTime) override;
|
||||
|
||||
void Serialize(RakNet::BitStream& outBitStream, bool bIsInitialUpdate) override;
|
||||
|
||||
void SpawnVertices() const;
|
||||
private:
|
||||
float m_Scale{};
|
||||
|
||||
dpEntity* m_dpEntity{};
|
||||
};
|
||||
|
||||
#endif // RIGIDBODYPHANTOMPHYSICS_H
|
||||
#endif // __RIGIDBODYPHANTOMPHYSICS_H__
|
||||
|
||||
@@ -369,8 +369,8 @@ void GameMessages::SendPlatformResync(Entity* entity, const SystemAddress& sysAd
|
||||
|
||||
const auto lot = entity->GetLOT();
|
||||
|
||||
if (lot == 12341 || lot == 5027 || lot == 5028 || lot == 14335 || lot == 14447 || lot == 14449 || lot == 11306 || lot == 11308) {
|
||||
iDesiredWaypointIndex = (lot == 11306 || lot == 11308) ? 1 : 0;
|
||||
if (lot == 12341 || lot == 5027 || lot == 5028 || lot == 14335 || lot == 14447 || lot == 14449) {
|
||||
iDesiredWaypointIndex = 0;
|
||||
iIndex = 0;
|
||||
nextIndex = 0;
|
||||
bStopAtDesiredWaypoint = true;
|
||||
@@ -5354,14 +5354,14 @@ void GameMessages::HandleRemoveItemFromInventory(RakNet::BitStream& inStream, En
|
||||
if (eInvType == eInventoryType::MODELS) {
|
||||
item->DisassembleModel(iStackCount);
|
||||
}
|
||||
auto lot = item->GetLot();
|
||||
|
||||
item->SetCount(item->GetCount() - iStackCount, true);
|
||||
Game::entityManager->SerializeEntity(entity);
|
||||
|
||||
auto* missionComponent = entity->GetComponent<MissionComponent>();
|
||||
|
||||
if (missionComponent != nullptr) {
|
||||
missionComponent->Progress(eMissionTaskType::GATHER, lot, LWOOBJID_EMPTY, "", -iStackCount);
|
||||
missionComponent->Progress(eMissionTaskType::GATHER, item->GetLot(), LWOOBJID_EMPTY, "", -iStackCount);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -130,6 +130,12 @@ bool CheatDetection::VerifyLwoobjidIsSender(const LWOOBJID& id, const SystemAddr
|
||||
|
||||
// This will be true if the player does not possess the entity they are trying to send a packet as.
|
||||
// or if the user does not own the character they are trying to send a packet as.
|
||||
if (invalidPacket) {
|
||||
va_list args;
|
||||
va_start(args, messageIfNotSender);
|
||||
LogAndSaveFailedAntiCheatCheck(id, sysAddr, checkType, messageIfNotSender, args);
|
||||
va_end(args);
|
||||
}
|
||||
|
||||
return !invalidPacket;
|
||||
}
|
||||
|
||||
@@ -41,7 +41,6 @@
|
||||
#include "ScriptedActivityComponent.h"
|
||||
#include "SkillComponent.h"
|
||||
#include "TriggerComponent.h"
|
||||
#include "RigidbodyPhantomPhysicsComponent.h"
|
||||
|
||||
// Enums
|
||||
#include "eGameMasterLevel.h"
|
||||
@@ -1130,13 +1129,8 @@ namespace DEVGMCommands {
|
||||
void SpawnPhysicsVerts(Entity* entity, const SystemAddress& sysAddr, const std::string args) {
|
||||
//Go tell physics to spawn all the vertices:
|
||||
auto entities = Game::entityManager->GetEntitiesByComponent(eReplicaComponentType::PHANTOM_PHYSICS);
|
||||
for (const auto* en : entities) {
|
||||
const auto* phys = static_cast<PhantomPhysicsComponent*>(en->GetComponent(eReplicaComponentType::PHANTOM_PHYSICS));
|
||||
if (phys)
|
||||
phys->SpawnVertices();
|
||||
}
|
||||
for (const auto* en : Game::entityManager->GetEntitiesByComponent(eReplicaComponentType::RIGID_BODY_PHANTOM_PHYSICS)) {
|
||||
const auto* phys = en->GetComponent<RigidbodyPhantomPhysicsComponent>();
|
||||
for (auto en : entities) {
|
||||
auto phys = static_cast<PhantomPhysicsComponent*>(en->GetComponent(eReplicaComponentType::PHANTOM_PHYSICS));
|
||||
if (phys)
|
||||
phys->SpawnVertices();
|
||||
}
|
||||
|
||||
@@ -82,7 +82,7 @@ void AuthPackets::SendHandshake(dServer* server, const SystemAddress& sysAddr, c
|
||||
if (serverType == ServerType::Auth) bitStream.Write(ServiceId::Auth);
|
||||
else if (serverType == ServerType::World) bitStream.Write(ServiceId::World);
|
||||
else bitStream.Write(ServiceId::General);
|
||||
bitStream.Write<uint64_t>(215523470896);
|
||||
bitStream.Write<uint64_t>(215523405360);
|
||||
|
||||
server->Send(bitStream, sysAddr, false);
|
||||
}
|
||||
|
||||
@@ -1,6 +1,3 @@
|
||||
set(DSCRIPTS_SOURCES_02_SERVER_MAP_FV_RACING
|
||||
"RaceFireballs.cpp"
|
||||
"RaceMaelstromGeiser.cpp"
|
||||
"RaceShipLapColumnsServer.cpp"
|
||||
"FvRacingColumns.cpp"
|
||||
PARENT_SCOPE)
|
||||
|
||||
@@ -1,15 +0,0 @@
|
||||
#include "FvRacingColumns.h"
|
||||
#include "MovingPlatformComponent.h"
|
||||
|
||||
void FvRacingColumns::OnStartup(Entity* self) {
|
||||
auto* movingPlatformComponent = self->GetComponent<MovingPlatformComponent>();
|
||||
if (!movingPlatformComponent) return;
|
||||
|
||||
movingPlatformComponent->StopPathing();
|
||||
movingPlatformComponent->SetSerialized(true);
|
||||
int32_t pathStart = 0;
|
||||
if (self->HasVar(u"attached_path_start")) {
|
||||
pathStart = self->GetVar<uint32_t>(u"attached_path_start");
|
||||
}
|
||||
movingPlatformComponent->WarpToWaypoint(pathStart);
|
||||
}
|
||||
@@ -1,6 +0,0 @@
|
||||
#include "CppScripts.h"
|
||||
|
||||
class FvRacingColumns : public CppScripts::Script {
|
||||
public:
|
||||
void OnStartup(Entity* self) override;
|
||||
};
|
||||
@@ -1,15 +0,0 @@
|
||||
#include "RaceFireballs.h"
|
||||
#include "SkillComponent.h"
|
||||
|
||||
void RaceFireballs::OnStartup(Entity* self) {
|
||||
self->AddTimer("fire", GeneralUtils::GenerateRandomNumber<float>(3.0f, 10.0f));
|
||||
}
|
||||
|
||||
void RaceFireballs::OnTimerDone(Entity* self, std::string timerName) {
|
||||
if (timerName == "fire") {
|
||||
auto* skillComponent = self->GetComponent<SkillComponent>();
|
||||
if (skillComponent) skillComponent->CastSkill(894);
|
||||
self->AddTimer("fire", GeneralUtils::GenerateRandomNumber<float>(3.0f, 10.0f));
|
||||
|
||||
}
|
||||
}
|
||||
@@ -1,9 +0,0 @@
|
||||
#pragma once
|
||||
#include "CppScripts.h"
|
||||
|
||||
class RaceFireballs : public CppScripts::Script
|
||||
{
|
||||
public:
|
||||
void OnStartup(Entity* self) override;
|
||||
void OnTimerDone(Entity* self, std::string timerName) override;
|
||||
};
|
||||
@@ -1,47 +0,0 @@
|
||||
#include "RaceShipLapColumnsServer.h"
|
||||
|
||||
#include "RacingControlComponent.h"
|
||||
#include "MovingPlatformComponent.h"
|
||||
|
||||
void RaceShipLapColumnsServer::OnStartup(Entity* self) {
|
||||
self->SetVar(u"Lap2Complete", false);
|
||||
self->SetVar(u"Lap3Complete", false);
|
||||
}
|
||||
|
||||
void SetMovingToWaypoint(const int32_t waypointIndex, const std::string group) {
|
||||
const auto entities = Game::entityManager->GetEntitiesInGroup(group);
|
||||
if (entities.empty()) return;
|
||||
|
||||
auto* entity = entities[0];
|
||||
entity->SetIsGhostingCandidate(false);
|
||||
|
||||
auto* movingPlatfromComponent = entity->GetComponent<MovingPlatformComponent>();
|
||||
if (!movingPlatfromComponent) return;
|
||||
|
||||
movingPlatfromComponent->SetSerialized(true);
|
||||
movingPlatfromComponent->GotoWaypoint(waypointIndex);
|
||||
Game::entityManager->SerializeEntity(entity);
|
||||
}
|
||||
|
||||
void RaceShipLapColumnsServer::OnCollisionPhantom(Entity* self, Entity* target) {
|
||||
if (!target) return;
|
||||
|
||||
const auto racingControllers = Game::entityManager->GetEntitiesByComponent(eReplicaComponentType::RACING_CONTROL);
|
||||
if (racingControllers.empty()) return;
|
||||
|
||||
auto* racingControlComponent = racingControllers[0]->GetComponent<RacingControlComponent>();
|
||||
if (!racingControlComponent) return;
|
||||
|
||||
const auto* player = racingControlComponent->GetPlayerData(target->GetObjectID());
|
||||
if (!player) return;
|
||||
|
||||
if (player->lap == 1 && !self->GetVar<bool>(u"Lap2Complete")) {
|
||||
self->SetVar(u"Lap2Complete", true);
|
||||
SetMovingToWaypoint(1, "Lap2Column");
|
||||
SetMovingToWaypoint(0, "Lap2Ramp");
|
||||
} else if (player->lap == 2 && !self->GetVar<bool>(u"Lap3Complete")) {
|
||||
self->SetVar(u"Lap3Complete", true);
|
||||
SetMovingToWaypoint(1, "Lap3Column");
|
||||
SetMovingToWaypoint(0, "Lap3Ramp");
|
||||
}
|
||||
}
|
||||
@@ -1,8 +0,0 @@
|
||||
#pragma once
|
||||
#include "CppScripts.h"
|
||||
|
||||
class RaceShipLapColumnsServer : public CppScripts::Script {
|
||||
public:
|
||||
void OnStartup(Entity* self) override;
|
||||
void OnCollisionPhantom(Entity* self, Entity* target) override;
|
||||
};
|
||||
@@ -154,11 +154,6 @@
|
||||
#include "FvBounceOverWall.h"
|
||||
#include "FvFong.h"
|
||||
#include "FvMaelstromGeyser.h"
|
||||
#include "FvRaceDragon.h"
|
||||
#include "FvRacePillarABCServer.h"
|
||||
#include "FvRacePillarDServer.h"
|
||||
#include "RaceFireballs.h"
|
||||
#include "RaceShipLapColumnsServer.h"
|
||||
|
||||
// FB Scripts
|
||||
#include "AgJetEffectServer.h"
|
||||
@@ -184,7 +179,6 @@
|
||||
#include "RaceMaelstromGeiser.h"
|
||||
#include "FvRaceSmashEggImagineServer.h"
|
||||
#include "RaceSmashServer.h"
|
||||
#include "FvRacingColumns.h"
|
||||
|
||||
// NT Scripts
|
||||
#include "NtSentinelWalkwayServer.h"
|
||||
@@ -628,25 +622,9 @@ CppScripts::Script* const CppScripts::GetScript(Entity* parent, const std::strin
|
||||
script = new FvBounceOverWall();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\FV\\L_NPC_FONG.lua")
|
||||
script = new FvFong();
|
||||
else if (scriptName == "scripts\\ai\\FV\\L_FV_MAELSTROM_GEYSER.lua")
|
||||
else if (scriptName == "scripts\\ai\\FV\\L_FV_MAELSTROM_GEYSER.lua") {
|
||||
script = new FvMaelstromGeyser();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\FV\\Racing\\RACE_SHIP_LAP_COLUMNS_SERVER.lua")
|
||||
script = new RaceShipLapColumnsServer();
|
||||
|
||||
// yes we know the lap numbers dont match the file name or anim. thats what they desgined it as.
|
||||
else if (scriptName == "scripts\\ai\\RACING\\OBJECTS\\FV_RACE_DRAGON_LAP1_SERVER.lua")
|
||||
script = new FvRaceDragon("lap_01", 2);
|
||||
else if (scriptName == "scripts\\ai\\RACING\\OBJECTS\\FV_RACE_DRAGON_LAP2_SERVER.lua")
|
||||
script = new FvRaceDragon("lap_02", 0);
|
||||
else if (scriptName == "scripts\\ai\\RACING\\OBJECTS\\FV_RACE_DRAGON_LAP3_SERVER.lua")
|
||||
script = new FvRaceDragon("lap_03", 1);
|
||||
else if (scriptName == "scripts\\ai\\RACING\\OBJECTS\\FV_RACE_PILLAR_ABC_SERVER.lua")
|
||||
script = new FvRacePillarABCServer();
|
||||
else if (scriptName == "scripts\\ai\\RACING\\OBJECTS\\FV_RACE_PILLAR_D_SERVER.lua")
|
||||
script = new FvRacePillarDServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\FV\\Racing\\RACE_FIREBALLS.lua")
|
||||
script = new RaceFireballs();
|
||||
|
||||
}
|
||||
|
||||
//Misc:
|
||||
if (scriptName == "scripts\\02_server\\Map\\General\\L_EXPLODING_ASSET.lua")
|
||||
@@ -683,8 +661,6 @@ CppScripts::Script* const CppScripts::GetScript(Entity* parent, const std::strin
|
||||
script = new RaceMaelstromGeiser();
|
||||
else if (scriptName == "scripts\\ai\\RACING\\OBJECTS\\FV_RACE_SMASH_EGG_IMAGINE_SERVER.lua")
|
||||
script = new FvRaceSmashEggImagineServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\FV\\Racing\\FV_RACING_COLUMNS.lua")
|
||||
script = new FvRacingColumns();
|
||||
else if (scriptName == "scripts\\ai\\RACING\\OBJECTS\\RACE_SMASH_SERVER.lua")
|
||||
script = new RaceSmashServer();
|
||||
|
||||
|
||||
@@ -1,10 +1,6 @@
|
||||
set(DSCRIPTS_SOURCES_AI_RACING_OBJECTS
|
||||
"RaceImagineCrateServer.cpp"
|
||||
"RaceImaginePowerup.cpp"
|
||||
"FvRaceDragon.cpp"
|
||||
"FvRacePillarServer.cpp"
|
||||
"FvRacePillarABCServer.cpp"
|
||||
"FvRacePillarDServer.cpp"
|
||||
"FvRaceSmashEggImagineServer.cpp"
|
||||
"RaceSmashServer.cpp"
|
||||
PARENT_SCOPE)
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
#include "FvRaceDragon.h"
|
||||
#include "RenderComponent.h"
|
||||
#include "RacingControlComponent.h"
|
||||
|
||||
void FvRaceDragon::OnCollisionPhantom(Entity* self, Entity* target) {
|
||||
if (!target) return;
|
||||
|
||||
const auto racingControllers = Game::entityManager->GetEntitiesByComponent(eReplicaComponentType::RACING_CONTROL);
|
||||
if (racingControllers.empty()) return;
|
||||
|
||||
auto* racingControlComponent = racingControllers[0]->GetComponent<RacingControlComponent>();
|
||||
if (!racingControlComponent) return;
|
||||
|
||||
const auto* player = racingControlComponent->GetPlayerData(target->GetObjectID());
|
||||
if (!player) return;
|
||||
|
||||
if (player->lap != m_Lap) return;
|
||||
|
||||
const auto dragons = Game::entityManager->GetEntitiesInGroup("dragon");
|
||||
for (const auto& dragon : dragons) {
|
||||
if (!dragon || dragon->GetLOT() != this->m_Dragon) continue;
|
||||
|
||||
auto* renderComponent = dragon->GetComponent<RenderComponent>();
|
||||
if (!renderComponent) continue;
|
||||
|
||||
renderComponent->PlayAnimation(dragon, m_LapAnimName);
|
||||
|
||||
}
|
||||
Game::entityManager->DestroyEntity(self);
|
||||
}
|
||||
@@ -1,15 +0,0 @@
|
||||
#pragma once
|
||||
#include "CppScripts.h"
|
||||
|
||||
#include <string>
|
||||
#include <string_view>
|
||||
|
||||
class FvRaceDragon : public CppScripts::Script {
|
||||
public:
|
||||
FvRaceDragon(const std::string_view lapAnimName, const int32_t lap) : m_LapAnimName(lapAnimName), m_Lap(lap) {}
|
||||
private:
|
||||
void OnCollisionPhantom(Entity* self, Entity* target) override;
|
||||
const std::string m_LapAnimName;
|
||||
const int32_t m_Lap;
|
||||
const LOT m_Dragon = 11898;
|
||||
};
|
||||
@@ -1,34 +0,0 @@
|
||||
#include "FvRacePillarABCServer.h"
|
||||
#include "RenderComponent.h"
|
||||
#include "RacingControlComponent.h"
|
||||
|
||||
void FvRacePillarABCServer::OnCollisionPhantom(Entity* self, Entity* target) {
|
||||
if (!target) return;
|
||||
|
||||
const auto racingControllers = Game::entityManager->GetEntitiesByComponent(eReplicaComponentType::RACING_CONTROL);
|
||||
if (racingControllers.empty()) return;
|
||||
|
||||
auto* racingControlComponent = racingControllers[0]->GetComponent<RacingControlComponent>();
|
||||
if (!racingControlComponent) return;
|
||||
|
||||
const auto* player = racingControlComponent->GetPlayerData(target->GetObjectID());
|
||||
if (!player || player->lap != 1) return;
|
||||
|
||||
PlayAnimation("crumble", "pillars", m_PillarA);
|
||||
PlayAnimation("roar", "dragon", m_Dragon);
|
||||
|
||||
self->AddTimer("PillarBFall", 2.5f);
|
||||
self->AddTimer("PillarCFall", 3.7f);
|
||||
self->AddTimer("DeleteObject", 3.8f);
|
||||
}
|
||||
|
||||
void FvRacePillarABCServer::OnTimerDone(Entity* self, std::string timerName) {
|
||||
if (timerName == "PillarBFall") {
|
||||
PlayAnimation("crumble", "pillars", m_PillarB);
|
||||
} else if (timerName == "PillarCFall") {
|
||||
PlayAnimation("crumble", "pillars", m_PillarC);
|
||||
} else if (timerName == "DeleteObject") {
|
||||
Game::entityManager->DestroyEntity(self);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,13 +0,0 @@
|
||||
#pragma once
|
||||
#include "CppScripts.h"
|
||||
#include "FvRacePillarServer.h"
|
||||
|
||||
class FvRacePillarABCServer : public FvRacePillarServer {
|
||||
void OnCollisionPhantom(Entity* self, Entity* target) override;
|
||||
void OnTimerDone(Entity* self, std::string timerName) override;
|
||||
private:
|
||||
const LOT m_PillarA = 11946;
|
||||
const LOT m_PillarB = 11947;
|
||||
const LOT m_PillarC = 11948;
|
||||
const LOT m_Dragon = 11898;
|
||||
};
|
||||
@@ -1,21 +0,0 @@
|
||||
#include "FvRacePillarDServer.h"
|
||||
#include "RenderComponent.h"
|
||||
#include "RacingControlComponent.h"
|
||||
|
||||
void FvRacePillarDServer::OnCollisionPhantom(Entity* self, Entity* target) {
|
||||
if (!target) return;
|
||||
|
||||
const auto racingControllers = Game::entityManager->GetEntitiesByComponent(eReplicaComponentType::RACING_CONTROL);
|
||||
if (racingControllers.empty()) return;
|
||||
|
||||
auto* racingControlComponent = racingControllers[0]->GetComponent<RacingControlComponent>();
|
||||
if (!racingControlComponent) return;
|
||||
|
||||
const auto* player = racingControlComponent->GetPlayerData(target->GetObjectID());
|
||||
if (!player) return;
|
||||
|
||||
if (player->lap == 2) {
|
||||
PlayAnimation("crumble", "pillars", m_PillarD);
|
||||
PlayAnimation("roar", "dragon", m_Dragon);
|
||||
}
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
#pragma once
|
||||
#include "CppScripts.h"
|
||||
#include "FvRacePillarServer.h"
|
||||
|
||||
class FvRacePillarDServer : public FvRacePillarServer {
|
||||
void OnCollisionPhantom(Entity* self, Entity* target) override;
|
||||
private:
|
||||
const LOT m_PillarD = 11949;
|
||||
const LOT m_Dragon = 11898;
|
||||
};
|
||||
@@ -1,15 +0,0 @@
|
||||
#include "FvRacePillarServer.h"
|
||||
|
||||
#include "Game.h"
|
||||
#include "EntityManager.h"
|
||||
#include "RenderComponent.h"
|
||||
|
||||
void FvRacePillarServer::PlayAnimation(const std::string animName, const std::string group, const LOT lot) {
|
||||
const auto entities = Game::entityManager->GetEntitiesInGroup(group);
|
||||
for (const auto& entity : entities) {
|
||||
if (!entity || entity->GetLOT() != lot) continue;
|
||||
auto* renderComponent = entity->GetComponent<RenderComponent>();
|
||||
if (!renderComponent) continue;
|
||||
renderComponent->PlayAnimation(entity, animName);
|
||||
}
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
#ifndef FVRACEPILLARSERVER__H
|
||||
#define FVRACEPILLARSERVER__H
|
||||
|
||||
#include "CppScripts.h"
|
||||
|
||||
class FvRacePillarServer : public virtual CppScripts::Script {
|
||||
protected:
|
||||
// Plays an animation on all entities in a group with a specific LOT
|
||||
void PlayAnimation(const std::string animName, const std::string group, const LOT lot);
|
||||
};
|
||||
|
||||
#endif // FVRACEPILLARSERVER__H
|
||||
@@ -386,14 +386,14 @@ int main(int argc, char** argv) {
|
||||
//In world we'd update our other systems here.
|
||||
|
||||
if (zoneID != 0 && deltaTime > 0.0f) {
|
||||
Metrics::StartMeasurement(MetricVariable::UpdateEntities);
|
||||
Game::entityManager->UpdateEntities(deltaTime);
|
||||
Metrics::EndMeasurement(MetricVariable::UpdateEntities);
|
||||
|
||||
Metrics::StartMeasurement(MetricVariable::Physics);
|
||||
dpWorld::StepWorld(deltaTime);
|
||||
Metrics::EndMeasurement(MetricVariable::Physics);
|
||||
|
||||
Metrics::StartMeasurement(MetricVariable::UpdateEntities);
|
||||
Game::entityManager->UpdateEntities(deltaTime);
|
||||
Metrics::EndMeasurement(MetricVariable::UpdateEntities);
|
||||
|
||||
Metrics::StartMeasurement(MetricVariable::Ghosting);
|
||||
if (std::chrono::duration<float>(currentTime - ghostingLastTime).count() >= 1.0f) {
|
||||
Game::entityManager->UpdateGhosting();
|
||||
|
||||
@@ -8,33 +8,18 @@ list(APPEND DGAMETEST_SOURCES ${DCOMPONENTS_TESTS})
|
||||
add_subdirectory(dGameMessagesTests)
|
||||
list(APPEND DGAMETEST_SOURCES ${DGAMEMESSAGES_TESTS})
|
||||
|
||||
add_subdirectory(dScriptsTests)
|
||||
list(APPEND DGAMETEST_SOURCES ${DSCRIPTS_TESTS})
|
||||
|
||||
include_directories(${CMAKE_SOURCE_DIR}/dScripts)
|
||||
|
||||
file(COPY ${GAMEMESSAGE_TESTBITSTREAMS} DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
|
||||
|
||||
# Add the executable. Remember to add all tests above this!
|
||||
add_executable(dGameTests ${DGAMETEST_SOURCES})
|
||||
add_dependencies(dGameTests conncpp_tests)
|
||||
|
||||
target_include_directories(dGameTests PRIVATE
|
||||
$<TARGET_PROPERTY:dScriptsBase,INTERFACE_INCLUDE_DIRECTORIES>
|
||||
$<TARGET_PROPERTY:dScriptsServer,INTERFACE_INCLUDE_DIRECTORIES>
|
||||
$<TARGET_PROPERTY:dScriptsAI,INTERFACE_INCLUDE_DIRECTORIES>
|
||||
$<TARGET_PROPERTY:dScriptsClient,INTERFACE_INCLUDE_DIRECTORIES>
|
||||
$<TARGET_PROPERTY:dScriptsEquipmentScripts,INTERFACE_INCLUDE_DIRECTORIES>
|
||||
$<TARGET_PROPERTY:dScriptsEquipmentTriggers,INTERFACE_INCLUDE_DIRECTORIES>
|
||||
$<TARGET_PROPERTY:dScriptsZone,INTERFACE_INCLUDE_DIRECTORIES>
|
||||
)
|
||||
|
||||
# Apple needs some special linkage for the mariadb connector for tests.
|
||||
if(APPLE)
|
||||
add_custom_command(TARGET dGameTests POST_BUILD
|
||||
COMMAND install_name_tool ARGS -change libmariadbcpp.dylib @rpath/libmariadbcpp.dylib dGameTests
|
||||
COMMAND otool ARGS -L dGameTests
|
||||
WORKING_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
|
||||
add_custom_command(TARGET dGameTests POST_BUILD
|
||||
COMMAND install_name_tool ARGS -change libmariadbcpp.dylib @rpath/libmariadbcpp.dylib dGameTests
|
||||
COMMAND otool ARGS -L dGameTests
|
||||
WORKING_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
|
||||
endif()
|
||||
|
||||
target_link_libraries(dGameTests ${COMMON_LIBRARIES} GTest::gtest_main
|
||||
|
||||
@@ -1,11 +0,0 @@
|
||||
set(DSCRIPTS_TESTS
|
||||
"dScriptsTests.cpp"
|
||||
"CppScriptsOld.cpp"
|
||||
)
|
||||
|
||||
# Get the folder name and prepend it to the files above
|
||||
get_filename_component(thisFolderName ${CMAKE_CURRENT_SOURCE_DIR} NAME)
|
||||
list(TRANSFORM DSCRIPTS_TESTS PREPEND "${thisFolderName}/")
|
||||
|
||||
# Export to parent scope
|
||||
set(DSCRIPTS_TESTS ${DSCRIPTS_TESTS} PARENT_SCOPE)
|
||||
@@ -1,991 +0,0 @@
|
||||
#include "CppScriptsOld.h"
|
||||
//I can feel my soul being torn apart with every script added to this monstrosity.
|
||||
// skate fast eat trash
|
||||
// do you think god stays in heaven because he too lives in fear of what he's created?
|
||||
|
||||
#include "GameMessages.h"
|
||||
#include "Entity.h"
|
||||
#include "ScriptComponent.h"
|
||||
#include "Game.h"
|
||||
#include "Logger.h"
|
||||
#include "InvalidScript.h"
|
||||
|
||||
//VE / AG scripts:
|
||||
#include "AgShipPlayerDeathTrigger.h"
|
||||
#include "AgShipPlayerShockServer.h"
|
||||
#include "AgSpaceStuff.h"
|
||||
#include "AgImagSmashable.h"
|
||||
#include "NpcNpSpacemanBob.h"
|
||||
#include "StoryBoxInteractServer.h"
|
||||
#include "Binoculars.h"
|
||||
#include "AllCrateChicken.h"
|
||||
#include "SsModularBuildServer.h"
|
||||
#include "ZoneAgProperty.h"
|
||||
#include "TouchMissionUpdateServer.h"
|
||||
#include "ActSharkPlayerDeathTrigger.h"
|
||||
#include "BaseEnemyMech.h"
|
||||
#include "ZoneAgSurvival.h"
|
||||
#include "AgBusDoor.h"
|
||||
#include "MaestromExtracticatorServer.h"
|
||||
#include "NpcWispServer.h"
|
||||
#include "AgCagedBricksServer.h"
|
||||
#include "NpcEpsilonServer.h"
|
||||
#include "AgTurret.h"
|
||||
#include "AgMonumentBirds.h"
|
||||
#include "AgLaserSensorServer.h"
|
||||
#include "AgMonumentLaserServer.h"
|
||||
#include "AgFans.h"
|
||||
#include "RemoveRentalGear.h"
|
||||
#include "NpcNjAssistantServer.h"
|
||||
#include "EnemySpiderSpawner.h"
|
||||
#include "AgQbElevator.h"
|
||||
#include "AgPropGuard.h"
|
||||
#include "AgBugsprayer.h"
|
||||
#include "WishingWellServer.h"
|
||||
#include "NpcAgCourseStarter.h"
|
||||
#include "AgMonumentRaceGoal.h"
|
||||
#include "ZoneAgSpiderQueen.h"
|
||||
#include "SpiderBossTreasureChestServer.h"
|
||||
#include "NpcCowboyServer.h"
|
||||
#include "ZoneAgMedProperty.h"
|
||||
#include "AgStromlingProperty.h"
|
||||
#include "AgDarkSpiderling.h"
|
||||
#include "PropertyFXDamage.h"
|
||||
#include "AgPropguards.h"
|
||||
#include "NpcPirateServer.h"
|
||||
#include "AgPicnicBlanket.h"
|
||||
#include "AgMonumentRaceCancel.h"
|
||||
#include "VeBricksampleServer.h"
|
||||
#include "PropertyBankInteract.h"
|
||||
#include "VeMech.h"
|
||||
#include "VeMissionConsole.h"
|
||||
#include "VeEpsilonServer.h"
|
||||
#include "AgSurvivalBuffStation.h"
|
||||
#include "QbSpawner.h"
|
||||
#include "AgQbWall.h"
|
||||
|
||||
// NS Scripts
|
||||
#include "NsModularBuild.h"
|
||||
#include "NsGetFactionMissionServer.h"
|
||||
#include "NsQbImaginationStatue.h"
|
||||
#include "NsConcertChoiceBuildManager.h"
|
||||
#include "NsConcertChoiceBuild.h"
|
||||
#include "NsConcertQuickBuild.h"
|
||||
#include "AgStagePlatforms.h"
|
||||
#include "NsConcertInstrument.h"
|
||||
#include "NsJohnnyMissionServer.h"
|
||||
#include "StinkyFishTarget.h"
|
||||
#include "ZoneNsProperty.h"
|
||||
#include "ZoneNsMedProperty.h"
|
||||
#include "NsTokenConsoleServer.h"
|
||||
#include "NsLupTeleport.h"
|
||||
#include "ZoneNsWaves.h"
|
||||
#include "WaveBossHammerling.h"
|
||||
#include "WaveBossApe.h"
|
||||
#include "WaveBossSpiderling.h"
|
||||
#include "WaveBossHorsemen.h"
|
||||
#include "MinigameTreasureChestServer.h"
|
||||
#include "NsLegoClubDoor.h"
|
||||
#include "ClRing.h"
|
||||
#include "WildAmbients.h"
|
||||
#include "PropertyDeathPlane.h"
|
||||
|
||||
// PR Scripts
|
||||
#include "PrWhistle.h"
|
||||
#include "PrSeagullFly.h"
|
||||
#include "HydrantBroken.h"
|
||||
#include "HydrantSmashable.h"
|
||||
#include "PetDigServer.h"
|
||||
#include "PetFromDigServer.h"
|
||||
#include "PetFromObjectServer.h"
|
||||
#include "DamagingPets.h"
|
||||
#include "SpawnGryphonServer.h"
|
||||
|
||||
// GF Scripts
|
||||
#include "GfTikiTorch.h"
|
||||
#include "GfCampfire.h"
|
||||
#include "GfOrgan.h"
|
||||
#include "GfBanana.h"
|
||||
#include "GfBananaCluster.h"
|
||||
#include "GfJailkeepMission.h"
|
||||
#include "TriggerAmbush.h"
|
||||
#include "GfCaptainsCannon.h"
|
||||
#include "MastTeleport.h"
|
||||
#include "GfJailWalls.h"
|
||||
#include "QbEnemyStunner.h"
|
||||
#include "PetDigBuild.h"
|
||||
#include "SpawnLionServer.h"
|
||||
#include "BaseEnemyApe.h"
|
||||
#include "GfApeSmashingQB.h"
|
||||
#include "ZoneGfProperty.h"
|
||||
#include "GfArchway.h"
|
||||
#include "GfMaelstromGeyser.h"
|
||||
#include "PirateRep.h"
|
||||
#include "GfParrotCrash.h"
|
||||
|
||||
// SG Scripts
|
||||
#include "SGCannon.h"
|
||||
#include "ZoneSGServer.h"
|
||||
|
||||
// FV Scripts
|
||||
#include "FvCandle.h"
|
||||
#include "EnemyRoninSpawner.h"
|
||||
#include "ActNinjaTurret.h"
|
||||
#include "FvMaelstromCavalry.h"
|
||||
#include "FvHorsemenTrigger.h"
|
||||
#include "FvFlyingCreviceDragon.h"
|
||||
#include "FvMaelstromDragon.h"
|
||||
#include "FvDragonSmashingGolemQb.h"
|
||||
#include "TreasureChestDragonServer.h"
|
||||
#include "InstanceExitTransferPlayerToLastNonInstance.h"
|
||||
#include "FvFreeGfNinjas.h"
|
||||
#include "FvPandaServer.h"
|
||||
#include "FvPandaSpawnerServer.h"
|
||||
#include "ZoneFvProperty.h"
|
||||
#include "FvBrickPuzzleServer.h"
|
||||
#include "FvConsoleLeftQuickbuild.h"
|
||||
#include "FvConsoleRightQuickbuild.h"
|
||||
#include "FvFacilityBrick.h"
|
||||
#include "FvFacilityPipes.h"
|
||||
#include "ImgBrickConsoleQB.h"
|
||||
#include "ActParadoxPipeFix.h"
|
||||
#include "FvNinjaGuard.h"
|
||||
#include "FvPassThroughWall.h"
|
||||
#include "FvBounceOverWall.h"
|
||||
#include "FvFong.h"
|
||||
#include "FvMaelstromGeyser.h"
|
||||
#include "FvRaceDragon.h"
|
||||
#include "FvRacePillarABCServer.h"
|
||||
#include "FvRacePillarDServer.h"
|
||||
#include "RaceFireballs.h"
|
||||
#include "RaceShipLapColumnsServer.h"
|
||||
|
||||
// FB Scripts
|
||||
#include "AgJetEffectServer.h"
|
||||
#include "AgSalutingNpcs.h"
|
||||
#include "BossSpiderQueenEnemyServer.h"
|
||||
#include "RockHydrantSmashable.h"
|
||||
|
||||
// Misc Scripts
|
||||
#include "ExplodingAsset.h"
|
||||
#include "ActPlayerDeathTrigger.h"
|
||||
#include "CrabServer.h"
|
||||
#include "GrowingFlower.h"
|
||||
#include "BaseFootRaceManager.h"
|
||||
#include "PropertyPlatform.h"
|
||||
#include "MailBoxServer.h"
|
||||
#include "ActMine.h"
|
||||
#include "FireFirstSkillonStartup.h"
|
||||
|
||||
// Racing Scripts
|
||||
#include "RaceImagineCrateServer.h"
|
||||
#include "ActVehicleDeathTrigger.h"
|
||||
#include "RaceImaginePowerup.h"
|
||||
#include "RaceMaelstromGeiser.h"
|
||||
#include "FvRaceSmashEggImagineServer.h"
|
||||
#include "RaceSmashServer.h"
|
||||
#include "FvRacingColumns.h"
|
||||
|
||||
// NT Scripts
|
||||
#include "NtSentinelWalkwayServer.h"
|
||||
#include "NtParadoxTeleServer.h"
|
||||
#include "NtDarkitectRevealServer.h"
|
||||
#include "BankInteractServer.h"
|
||||
#include "NtVentureSpeedPadServer.h"
|
||||
#include "NtVentureCannonServer.h"
|
||||
#include "NtCombatChallengeServer.h"
|
||||
#include "NtCombatChallengeDummy.h"
|
||||
#include "NtCombatChallengeExplodingDummy.h"
|
||||
#include "BaseInteractDropLootServer.h"
|
||||
#include "NtAssemblyTubeServer.h"
|
||||
#include "NtParadoxPanelServer.h"
|
||||
#include "TokenConsoleServer.h"
|
||||
#include "NtImagBeamBuffer.h"
|
||||
#include "NtBeamImaginationCollectors.h"
|
||||
#include "NtDirtCloudServer.h"
|
||||
#include "NtConsoleTeleportServer.h"
|
||||
#include "SpawnShrakeServer.h"
|
||||
#include "SpawnSaberCatServer.h"
|
||||
#include "SpawnStegoServer.h"
|
||||
#include "NtDukeServer.h"
|
||||
#include "NtHaelServer.h"
|
||||
#include "NtOverbuildServer.h"
|
||||
#include "NtVandaServer.h"
|
||||
#include "ForceVolumeServer.h"
|
||||
#include "NtXRayServer.h"
|
||||
#include "NtSleepingGuard.h"
|
||||
#include "NtImagimeterVisibility.h"
|
||||
#include "FrictionVolumeServer.h"
|
||||
#include "NTPipeVisibilityServer.h"
|
||||
#include "NTNaomiDirtServer.h"
|
||||
#include "MinigameBlueMark.h"
|
||||
#include "NtNaomiBreadcrumbServer.h"
|
||||
|
||||
// DLU Scripts
|
||||
#include "DLUVanityTeleportingObject.h"
|
||||
|
||||
// AM Scripts
|
||||
#include "AmConsoleTeleportServer.h"
|
||||
#include "RandomSpawnerFin.h"
|
||||
#include "RandomSpawnerPit.h"
|
||||
#include "RandomSpawnerStr.h"
|
||||
#include "RandomSpawnerZip.h"
|
||||
#include "AmDarklingMech.h"
|
||||
#include "AmBridge.h"
|
||||
#include "AmDrawBridge.h"
|
||||
#include "AmShieldGenerator.h"
|
||||
#include "AmShieldGeneratorQuickbuild.h"
|
||||
#include "AmDropshipComputer.h"
|
||||
#include "AmScrollReaderServer.h"
|
||||
#include "AmTemplateSkillVolume.h"
|
||||
#include "EnemyNjBuff.h"
|
||||
#include "AmSkeletonEngineer.h"
|
||||
#include "AmSkullkinDrill.h"
|
||||
#include "AmSkullkinDrillStand.h"
|
||||
#include "AmSkullkinTower.h"
|
||||
#include "AmDarklingDragon.h"
|
||||
#include "AmBlueX.h"
|
||||
#include "AmTeapotServer.h"
|
||||
#include "WanderingVendor.h"
|
||||
|
||||
// NJ Scripts
|
||||
#include "NjGarmadonCelebration.h"
|
||||
#include "NjWuNPC.h"
|
||||
#include "NjScrollChestServer.h"
|
||||
#include "EnemySkeletonSpawner.h"
|
||||
#include "NjRailSwitch.h"
|
||||
#include "NjRailPostServer.h"
|
||||
#include "NjRailActivatorsServer.h"
|
||||
#include "NjColeNPC.h"
|
||||
#include "NjNPCMissionSpinjitzuServer.h"
|
||||
#include "NjJayMissionItems.h"
|
||||
#include "FallingTile.h"
|
||||
#include "ImaginationShrineServer.h"
|
||||
#include "Lieutenant.h"
|
||||
#include "RainOfArrows.h"
|
||||
#include "NjIceRailActivator.h"
|
||||
#include "CavePrisonCage.h"
|
||||
#include "NjMonastryBossInstance.h"
|
||||
#include "CatapultBouncerServer.h"
|
||||
#include "CatapultBaseServer.h"
|
||||
#include "NjhubLavaPlayerDeathTrigger.h"
|
||||
#include "MonCoreNookDoors.h"
|
||||
#include "MonCoreSmashableDoors.h"
|
||||
#include "FlameJetServer.h"
|
||||
#include "BurningTile.h"
|
||||
#include "NjEarthDragonPetServer.h"
|
||||
#include "NjEarthPetServer.h"
|
||||
#include "NjDragonEmblemChestServer.h"
|
||||
#include "NjNyaMissionitems.h"
|
||||
|
||||
// Scripted equipment
|
||||
#include "AnvilOfArmor.h"
|
||||
#include "CauldronOfLife.h"
|
||||
#include "FountainOfImagination.h"
|
||||
#include "Sunflower.h"
|
||||
#include "BootyDigServer.h"
|
||||
#include "PersonalFortress.h"
|
||||
#include "PropertyDevice.h"
|
||||
#include "ImaginationBackpackHealServer.h"
|
||||
#include "LegoDieRoll.h"
|
||||
#include "BuccaneerValiantShip.h"
|
||||
#include "GemPack.h"
|
||||
#include "ShardArmor.h"
|
||||
#include "TeslaPack.h"
|
||||
#include "StunImmunity.h"
|
||||
|
||||
// Survival scripts
|
||||
#include "AgSurvivalStromling.h"
|
||||
#include "AgSurvivalMech.h"
|
||||
#include "AgSurvivalSpiderling.h"
|
||||
|
||||
// Frostburgh Scripts
|
||||
#include "RockHydrantBroken.h"
|
||||
#include "WhFans.h"
|
||||
|
||||
// WBL scripts
|
||||
#include "WblGenericZone.h"
|
||||
|
||||
// Alpha Scripts
|
||||
#include "TriggerGas.h"
|
||||
#include "ActNinjaSensei.h"
|
||||
|
||||
// pickups
|
||||
#include "SpecialCoinSpawner.h"
|
||||
#include "SpecialPowerupSpawner.h"
|
||||
#include "SpecialSpeedBuffSpawner.h"
|
||||
|
||||
// Wild Scripts
|
||||
#include "WildAndScared.h"
|
||||
#include "WildGfGlowbug.h"
|
||||
#include "WildAmbientCrab.h"
|
||||
#include "WildPants.h"
|
||||
#include "WildNinjaStudent.h"
|
||||
#include "WildNinjaSensei.h"
|
||||
#include "WildNinjaBricks.h"
|
||||
#include "VisToggleNotifierServer.h"
|
||||
#include "LupGenericInteract.h"
|
||||
#include "WblRobotCitizen.h"
|
||||
#include "CppScripts.h"
|
||||
|
||||
namespace {
|
||||
// This is in the translation unit instead of the header to prevent wierd linker errors
|
||||
InvalidScript* const InvalidToReturn = new InvalidScript();
|
||||
std::map<std::string, CppScripts::Script*> m_Scripts;
|
||||
};
|
||||
|
||||
CppScripts::Script* const CppScriptsOld::GetScript(Entity* parent, const std::string& scriptName) {
|
||||
auto itr = m_Scripts.find(scriptName);
|
||||
if (itr != m_Scripts.end()) {
|
||||
return itr->second;
|
||||
}
|
||||
|
||||
CppScripts::Script* script = InvalidToReturn;
|
||||
|
||||
//VE / AG:
|
||||
if (scriptName == "scripts\\ai\\AG\\L_AG_SHIP_PLAYER_DEATH_TRIGGER.lua")
|
||||
script = new AgShipPlayerDeathTrigger();
|
||||
else if (scriptName == "scripts\\ai\\NP\\L_NPC_NP_SPACEMAN_BOB.lua")
|
||||
script = new NpcNpSpacemanBob();
|
||||
else if (scriptName == "scripts\\ai\\AG\\L_AG_SPACE_STUFF.lua") // Broken, will (sometimes) display all animations at once on initial login
|
||||
script = new AgSpaceStuff();
|
||||
else if (scriptName == "scripts\\ai\\AG\\L_AG_SHIP_PLAYER_SHOCK_SERVER.lua")
|
||||
script = new AgShipPlayerShockServer();
|
||||
else if (scriptName == "scripts\\ai\\AG\\L_AG_IMAG_SMASHABLE.lua")
|
||||
script = new AgImagSmashable();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\General\\L_STORY_BOX_INTERACT_SERVER.lua")
|
||||
script = new StoryBoxInteractServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\General\\L_BINOCULARS.lua")
|
||||
script = new Binoculars();
|
||||
else if (scriptName == "scripts\\ai\\WILD\\L_ALL_CRATE_CHICKEN.lua")
|
||||
script = new AllCrateChicken();
|
||||
else if (scriptName == "scripts\\ai\\NS\\WH\\L_ROCKHYDRANT_SMASHABLE.lua")
|
||||
script = new RockHydrantSmashable(); // Broken?
|
||||
else if (scriptName == "scripts\\02_server\\Map\\SS\\L_SS_MODULAR_BUILD_SERVER.lua")
|
||||
script = new SsModularBuildServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\Property\\AG_Small\\L_ZONE_AG_PROPERTY.lua")
|
||||
script = new ZoneAgProperty();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\General\\L_POI_MISSION.lua")
|
||||
script = new InvalidScript(); // this is done in Entity.cpp, not needed for our implementation
|
||||
else if (scriptName == "scripts\\02_server\\Map\\General\\L_TOUCH_MISSION_UPDATE_SERVER.lua")
|
||||
script = new TouchMissionUpdateServer();
|
||||
else if (scriptName == "scripts\\ai\\AG\\L_ACT_SHARK_PLAYER_DEATH_TRIGGER.lua")
|
||||
script = new ActSharkPlayerDeathTrigger();
|
||||
else if (scriptName == "scripts\\02_server\\Enemy\\General\\L_BASE_ENEMY_MECH.lua")
|
||||
script = new BaseEnemyMech();
|
||||
else if (scriptName == "scripts\\zone\\AG\\L_ZONE_AG_SURVIVAL.lua")
|
||||
script = new ZoneAgSurvival();
|
||||
else if (scriptName == "scripts\\02_server\\Objects\\L_BUFF_STATION_SERVER.lua")
|
||||
script = new AgSurvivalBuffStation();
|
||||
else if (scriptName == "scripts\\ai\\AG\\L_AG_BUS_DOOR.lua")
|
||||
script = new AgBusDoor();
|
||||
else if (scriptName == "scripts\\02_server\\Equipment\\L_MAESTROM_EXTRACTICATOR_SERVER.lua")
|
||||
script = new MaestromExtracticatorServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AG\\L_AG_CAGED_BRICKS_SERVER.lua")
|
||||
script = new AgCagedBricksServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AG\\L_NPC_WISP_SERVER.lua")
|
||||
script = new NpcWispServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AG\\L_NPC_EPSILON_SERVER.lua")
|
||||
script = new NpcEpsilonServer();
|
||||
else if (scriptName == "scripts\\ai\\AG\\L_AG_TURRET.lua" || scriptName == "scripts\\ai\\AG\\L_AG_TURRET_FOR_SHIP.lua")
|
||||
script = new AgTurret();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AG\\L_AG_LASER_SENSOR_SERVER.lua")
|
||||
script = new AgLaserSensorServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AG\\L_AG_MONUMENT_LASER_SERVER.lua")
|
||||
script = new AgMonumentLaserServer();
|
||||
else if (scriptName == "scripts\\ai\\AG\\L_AG_FANS.lua")
|
||||
script = new AgFans();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AG\\L_AG_MONUMENT_BIRDS.lua")
|
||||
script = new AgMonumentBirds();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AG\\L_REMOVE_RENTAL_GEAR.lua")
|
||||
script = new RemoveRentalGear();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AG\\L_NPC_NJ_ASSISTANT_SERVER.lua")
|
||||
script = new NpcNjAssistantServer();
|
||||
else if (scriptName == "scripts\\ai\\AG\\L_AG_SALUTING_NPCS.lua")
|
||||
script = new AgSalutingNpcs();
|
||||
else if (scriptName == "scripts\\ai\\AG\\L_AG_JET_EFFECT_SERVER.lua")
|
||||
script = new AgJetEffectServer();
|
||||
else if (scriptName == "scripts\\02_server\\Enemy\\AG\\L_BOSS_SPIDER_QUEEN_ENEMY_SERVER.lua")
|
||||
script = new BossSpiderQueenEnemyServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\Property\\AG_Small\\L_ENEMY_SPIDER_SPAWNER.lua")
|
||||
script = new EnemySpiderSpawner();
|
||||
else if (scriptName == "scripts/02_server/Map/Property/AG_Small/L_ENEMY_SPIDER_SPAWNER.lua")
|
||||
script = new EnemySpiderSpawner();
|
||||
else if (scriptName == "scripts\\ai\\AG\\L_AG_QB_Elevator.lua")
|
||||
script = new AgQbElevator();
|
||||
else if (scriptName == "scripts\\ai\\PROPERTY\\AG\\L_AG_PROP_GUARD.lua")
|
||||
script = new AgPropGuard();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AG\\L_AG_BUGSPRAYER.lua")
|
||||
script = new AgBugsprayer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AG\\L_NPC_AG_COURSE_STARTER.lua")
|
||||
script = new NpcAgCourseStarter();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AG\\L__AG_MONUMENT_RACE_GOAL.lua")
|
||||
script = new AgMonumentRaceGoal();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AG\\L__AG_MONUMENT_RACE_CANCEL.lua")
|
||||
script = new AgMonumentRaceCancel();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AG_Spider_Queen\\L_ZONE_AG_SPIDER_QUEEN.lua")
|
||||
script = new ZoneAgSpiderQueen();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AG_Spider_Queen\\L_SPIDER_BOSS_TREASURE_CHEST_SERVER.lua")
|
||||
script = new SpiderBossTreasureChestServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AG\\L_NPC_COWBOY_SERVER.lua")
|
||||
script = new NpcCowboyServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\Property\\AG_Med\\L_ZONE_AG_MED_PROPERTY.lua")
|
||||
script = new ZoneAgMedProperty();
|
||||
else if (scriptName == "scripts\\ai\\AG\\L_AG_STROMBIE_PROPERTY.lua")
|
||||
script = new AgStromlingProperty();
|
||||
else if (scriptName == "scripts\\ai\\AG\\L_AG_DARKLING_MECH.lua")
|
||||
script = new BaseEnemyMech();
|
||||
else if (scriptName == "scripts\\ai\\AG\\L_AG_DARK_SPIDERLING.lua")
|
||||
script = new AgDarkSpiderling();
|
||||
else if (scriptName == "scripts\\ai\\PROPERTY\\L_PROP_GUARDS.lua")
|
||||
script = new AgPropguards();
|
||||
else if (scriptName == "scripts\\ai\\PROPERTY\\L_PROPERTY_FX_DAMAGE.lua")
|
||||
script = new PropertyFXDamage();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AG\\L_NPC_PIRATE_SERVER.lua")
|
||||
script = new NpcPirateServer();
|
||||
else if (scriptName == "scripts\\ai\\AG\\L_AG_PICNIC_BLANKET.lua")
|
||||
script = new AgPicnicBlanket();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\Property\\L_PROPERTY_BANK_INTERACT_SERVER.lua")
|
||||
script = new PropertyBankInteract();
|
||||
else if (scriptName == "scripts\\02_server\\Enemy\\VE\\L_VE_MECH.lua")
|
||||
script = new VeMech();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\VE\\L_MISSION_CONSOLE_SERVER.lua")
|
||||
script = new VeMissionConsole();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\VE\\L_EPSILON_SERVER.lua")
|
||||
script = new VeEpsilonServer();
|
||||
// Win32 thinks this if chain is too long, let's cut it up and serve it as a three course meal
|
||||
//NS:
|
||||
if (scriptName == "scripts\\ai\\NS\\L_NS_MODULAR_BUILD.lua")
|
||||
script = new NsModularBuild();
|
||||
else if (scriptName == "scripts\\ai\\NS\\L_NS_GET_FACTION_MISSION_SERVER.lua")
|
||||
script = new NsGetFactionMissionServer();
|
||||
else if (scriptName == "scripts\\ai\\NS\\L_NS_QB_IMAGINATION_STATUE.lua")
|
||||
script = new NsQbImaginationStatue();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NS\\CONCERT_CHOICEBUILD_MANAGER_SERVER.lua")
|
||||
script = new NsConcertChoiceBuildManager();
|
||||
else if (scriptName == "scripts\\ai\\NS\\L_NS_CONCERT_CHOICEBUILD.lua")
|
||||
script = new NsConcertChoiceBuild();
|
||||
else if (scriptName == "scripts\\ai\\NS\\L_NS_CONCERT_QUICKBUILD.lua")
|
||||
script = new NsConcertQuickBuild();
|
||||
else if (scriptName == "scripts\\ai\\AG\\L_AG_STAGE_PLATFORMS.lua")
|
||||
script = new AgStagePlatforms();
|
||||
else if (scriptName == "scripts\\ai\\NS\\L_NS_CONCERT_INSTRUMENT_QB.lua")
|
||||
script = new NsConcertInstrument();
|
||||
else if (scriptName == "scripts\\ai\\NS\\L_NS_JONNY_FLAG_MISSION_SERVER.lua")
|
||||
script = new NsJohnnyMissionServer();
|
||||
else if (scriptName == "scripts\\02_server\\Objects\\L_STINKY_FISH_TARGET.lua")
|
||||
script = new StinkyFishTarget();
|
||||
else if (scriptName == "scripts\\zone\\PROPERTY\\NS\\L_ZONE_NS_PROPERTY.lua")
|
||||
script = new ZoneNsProperty();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\Property\\NS_Med\\L_ZONE_NS_MED_PROPERTY.lua")
|
||||
script = new ZoneNsMedProperty();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NS\\L_NS_TOKEN_CONSOLE_SERVER.lua")
|
||||
script = new NsTokenConsoleServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NS\\L_NS_LUP_TELEPORT.lua")
|
||||
script = new NsLupTeleport();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NS\\Waves\\L_ZONE_NS_WAVES.lua")
|
||||
script = new ZoneNsWaves();
|
||||
else if (scriptName == "scripts\\02_server\\Enemy\\Waves\\L_WAVES_BOSS_HAMMERLING_ENEMY_SERVER.lua")
|
||||
script = new WaveBossHammerling();
|
||||
else if (scriptName == "scripts\\02_server\\Enemy\\Waves\\L_WAVES_BOSS_APE_ENEMY_SERVER.lua")
|
||||
script = new WaveBossApe();
|
||||
else if (scriptName == "scripts\\02_server\\Enemy\\Waves\\L_WAVES_BOSS_DARK_SPIDERLING_ENEMY_SERVER.lua")
|
||||
script = new WaveBossSpiderling();
|
||||
else if (scriptName == "scripts\\02_server\\Enemy\\Waves\\L_WAVES_BOSS_HORESEMEN_ENEMY_SERVER.lua")
|
||||
script = new WaveBossHorsemen();
|
||||
else if (scriptName == "scripts\\02_server\\Minigame\\General\\L_MINIGAME_TREASURE_CHEST_SERVER.lua")
|
||||
script = new MinigameTreasureChestServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NS\\L_NS_LEGO_CLUB_DOOR.lua")
|
||||
script = new NsLegoClubDoor();
|
||||
else if (scriptName == "scripts/ai/NS/L_CL_RING.lua")
|
||||
script = new ClRing();
|
||||
else if (scriptName == "scripts\\ai\\WILD\\L_WILD_AMBIENTS.lua")
|
||||
script = new WildAmbients();
|
||||
else if (scriptName == "scripts\\ai\\NS\\NS_PP_01\\L_NS_PP_01_TELEPORT.lua")
|
||||
script = new PropertyDeathPlane();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\General\\L_QB_SPAWNER.lua")
|
||||
script = new QbSpawner();
|
||||
else if (scriptName == "scripts\\ai\\AG\\L_AG_QB_Wall.lua")
|
||||
script = new AgQbWall();
|
||||
|
||||
//GF:
|
||||
else if (scriptName == "scripts\\02_server\\Map\\GF\\L_GF_TORCH.lua")
|
||||
script = new GfTikiTorch();
|
||||
else if (scriptName == "scripts\\ai\\GF\\L_SPECIAL_FIREPIT.lua")
|
||||
script = new GfCampfire();
|
||||
else if (scriptName == "scripts\\ai\\GF\\L_GF_ORGAN.lua")
|
||||
script = new GfOrgan();
|
||||
else if (scriptName == "scripts\\ai\\GF\\L_GF_BANANA.lua")
|
||||
script = new GfBanana();
|
||||
else if (scriptName == "scripts\\ai\\GF\\L_GF_BANANA_CLUSTER.lua")
|
||||
script = new GfBananaCluster();
|
||||
else if (scriptName == "scripts/ai/GF/L_GF_JAILKEEP_MISSION.lua")
|
||||
script = new GfJailkeepMission();
|
||||
else if (scriptName == "scripts\\ai\\GF\\L_TRIGGER_AMBUSH.lua")
|
||||
script = new TriggerAmbush();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\GF\\L_GF_CAPTAINS_CANNON.lua")
|
||||
script = new GfCaptainsCannon();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\GF\\L_MAST_TELEPORT.lua")
|
||||
script = new MastTeleport();
|
||||
else if (scriptName == "scripts\\ai\\GF\\L_GF_JAIL_WALLS.lua")
|
||||
script = new GfJailWalls();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\General\\L_QB_ENEMY_STUNNER.lua")
|
||||
script = new QbEnemyStunner();
|
||||
else if (scriptName == "scripts\\ai\\GF\\L_GF_PET_DIG_BUILD.lua")
|
||||
script = new PetDigBuild(); // Technically also used once in AG
|
||||
else if (scriptName == "scripts\\02_server\\Map\\GF\\L_SPAWN_LION_SERVER.lua")
|
||||
script = new SpawnLionServer();
|
||||
else if (scriptName == "scripts\\02_server\\Enemy\\General\\L_BASE_ENEMY_APE.lua")
|
||||
script = new BaseEnemyApe();
|
||||
else if (scriptName == "scripts\\02_server\\Enemy\\General\\L_GF_APE_SMASHING_QB.lua")
|
||||
script = new GfApeSmashingQB();
|
||||
else if (scriptName == "scripts\\zone\\PROPERTY\\GF\\L_ZONE_GF_PROPERTY.lua")
|
||||
script = new ZoneGfProperty();
|
||||
else if (scriptName == "scripts\\ai\\GF\\L_GF_ARCHWAY.lua")
|
||||
script = new GfArchway();
|
||||
else if (scriptName == "scripts\\ai\\GF\\L_GF_MAELSTROM_GEYSER.lua")
|
||||
script = new GfMaelstromGeyser();
|
||||
else if (scriptName == "scripts\\ai\\GF\\L_PIRATE_REP.lua")
|
||||
script = new PirateRep();
|
||||
else if (scriptName == "scripts\\ai\\GF\\L_GF_PARROT_CRASH.lua")
|
||||
script = new GfParrotCrash();
|
||||
|
||||
// SG
|
||||
else if (scriptName == "scripts\\ai\\MINIGAME\\SG_GF\\SERVER\\SG_CANNON.lua")
|
||||
script = new SGCannon();
|
||||
else if (scriptName == "scripts\\ai\\MINIGAME\\SG_GF\\L_ZONE_SG_SERVER.lua")
|
||||
script = new ZoneSGServer();
|
||||
|
||||
//PR:
|
||||
else if (scriptName == "scripts\\client\\ai\\PR\\L_PR_WHISTLE.lua")
|
||||
script = new PrWhistle();
|
||||
if (scriptName == "scripts\\02_server\\Map\\PR\\L_PR_SEAGULL_FLY.lua")
|
||||
script = new PrSeagullFly();
|
||||
else if (scriptName == "scripts\\ai\\PETS\\L_HYDRANT_SMASHABLE.lua")
|
||||
script = new HydrantSmashable();
|
||||
else if (scriptName == "scripts\\02_server\\map\\PR\\L_HYDRANT_BROKEN.lua")
|
||||
script = new HydrantBroken();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\General\\PET_DIG_SERVER.lua" || scriptName == "scripts\\02_server\\Map\\AM\\L_SKELETON_DRAGON_PET_DIG_SERVER.lua")
|
||||
script = new PetDigServer();
|
||||
else if (scriptName == "scripts\\client\\ai\\PR\\L_CRAB_SERVER.lua")
|
||||
script = new CrabServer();
|
||||
else if (scriptName == "scripts\\02_server\\Pets\\L_PET_FROM_DIG_SERVER.lua")
|
||||
script = new PetFromDigServer();
|
||||
else if (scriptName == "scripts\\02_server\\Pets\\L_PET_FROM_OBJECT_SERVER.lua")
|
||||
script = new PetFromObjectServer();
|
||||
else if (scriptName == "scripts\\02_server\\Pets\\L_DAMAGING_PET.lua")
|
||||
script = new DamagingPets();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\PR\\L_SPAWN_GRYPHON_SERVER.lua")
|
||||
script = new SpawnGryphonServer();
|
||||
|
||||
//FV Scripts:
|
||||
else if (scriptName == "scripts\\02_server\\Map\\FV\\L_ACT_CANDLE.lua")
|
||||
script = new FvCandle();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\FV\\L_ENEMY_RONIN_SPAWNER.lua")
|
||||
script = new EnemyRoninSpawner();
|
||||
else if (scriptName == "scripts\\02_server\\Enemy\\FV\\L_FV_MAELSTROM_CAVALRY.lua")
|
||||
script = new FvMaelstromCavalry();
|
||||
else if (scriptName == "scripts\\ai\\FV\\L_ACT_NINJA_TURRET_1.lua")
|
||||
script = new ActNinjaTurret();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\FV\\L_FV_HORSEMEN_TRIGGER.lua")
|
||||
script = new FvHorsemenTrigger();
|
||||
else if (scriptName == "scripts\\ai\\FV\\L_FV_FLYING_CREVICE_DRAGON.lua")
|
||||
script = new FvFlyingCreviceDragon();
|
||||
else if (scriptName == "scripts\\02_server\\Enemy\\FV\\L_FV_MAELSTROM_DRAGON.lua")
|
||||
script = new FvMaelstromDragon();
|
||||
else if (scriptName == "scripts\\ai\\FV\\L_FV_DRAGON_SMASHING_GOLEM_QB.lua")
|
||||
script = new FvDragonSmashingGolemQb();
|
||||
else if (scriptName == "scripts\\02_server\\Enemy\\General\\L_TREASURE_CHEST_DRAGON_SERVER.lua")
|
||||
script = new TreasureChestDragonServer();
|
||||
else if (scriptName == "scripts\\ai\\GENERAL\\L_INSTANCE_EXIT_TRANSFER_PLAYER_TO_LAST_NON_INSTANCE.lua")
|
||||
script = new InstanceExitTransferPlayerToLastNonInstance();
|
||||
else if (scriptName == "scripts\\ai\\FV\\L_NPC_FREE_GF_NINJAS.lua")
|
||||
script = new FvFreeGfNinjas();
|
||||
else if (scriptName == "scripts\\ai\\FV\\L_FV_PANDA_SPAWNER_SERVER.lua")
|
||||
script = new FvPandaSpawnerServer();
|
||||
else if (scriptName == "scripts\\ai\\FV\\L_FV_PANDA_SERVER.lua")
|
||||
script = new FvPandaServer();
|
||||
else if (scriptName == "scripts\\zone\\PROPERTY\\FV\\L_ZONE_FV_PROPERTY.lua")
|
||||
script = new ZoneFvProperty();
|
||||
else if (scriptName == "scripts\\ai\\FV\\L_FV_BRICK_PUZZLE_SERVER.lua")
|
||||
script = new FvBrickPuzzleServer();
|
||||
else if (scriptName == "scripts\\ai\\FV\\L_FV_CONSOLE_LEFT_QUICKBUILD.lua")
|
||||
script = new FvConsoleLeftQuickbuild();
|
||||
else if (scriptName == "scripts\\ai\\FV\\L_FV_CONSOLE_RIGHT_QUICKBUILD.lua")
|
||||
script = new FvConsoleRightQuickbuild();
|
||||
else if (scriptName == "scripts\\ai\\FV\\L_FV_FACILITY_BRICK.lua")
|
||||
script = new FvFacilityBrick();
|
||||
else if (scriptName == "scripts\\ai\\FV\\L_FV_FACILITY_PIPES.lua")
|
||||
script = new FvFacilityPipes();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\FV\\L_IMG_BRICK_CONSOLE_QB.lua")
|
||||
script = new ImgBrickConsoleQB();
|
||||
else if (scriptName == "scripts\\ai\\FV\\L_ACT_PARADOX_PIPE_FIX.lua")
|
||||
script = new ActParadoxPipeFix();
|
||||
else if (scriptName == "scripts\\ai\\FV\\L_FV_NINJA_GUARDS.lua")
|
||||
script = new FvNinjaGuard();
|
||||
else if (scriptName == "scripts\\ai\\FV\\L_ACT_PASS_THROUGH_WALL.lua")
|
||||
script = new FvPassThroughWall();
|
||||
else if (scriptName == "scripts\\ai\\FV\\L_ACT_BOUNCE_OVER_WALL.lua")
|
||||
script = new FvBounceOverWall();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\FV\\L_NPC_FONG.lua")
|
||||
script = new FvFong();
|
||||
else if (scriptName == "scripts\\ai\\FV\\L_FV_MAELSTROM_GEYSER.lua")
|
||||
script = new FvMaelstromGeyser();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\FV\\Racing\\RACE_SHIP_LAP_COLUMNS_SERVER.lua")
|
||||
script = new RaceShipLapColumnsServer();
|
||||
|
||||
// yes we know the lap numbers dont match the file name or anim. thats what they desgined it as.
|
||||
else if (scriptName == "scripts\\ai\\RACING\\OBJECTS\\FV_RACE_DRAGON_LAP1_SERVER.lua")
|
||||
script = new FvRaceDragon("lap_01", 2);
|
||||
else if (scriptName == "scripts\\ai\\RACING\\OBJECTS\\FV_RACE_DRAGON_LAP2_SERVER.lua")
|
||||
script = new FvRaceDragon("lap_02", 0);
|
||||
else if (scriptName == "scripts\\ai\\RACING\\OBJECTS\\FV_RACE_DRAGON_LAP3_SERVER.lua")
|
||||
script = new FvRaceDragon("lap_03", 1);
|
||||
else if (scriptName == "scripts\\ai\\RACING\\OBJECTS\\FV_RACE_PILLAR_ABC_SERVER.lua")
|
||||
script = new FvRacePillarABCServer();
|
||||
else if (scriptName == "scripts\\ai\\RACING\\OBJECTS\\FV_RACE_PILLAR_D_SERVER.lua")
|
||||
script = new FvRacePillarDServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\FV\\Racing\\RACE_FIREBALLS.lua")
|
||||
script = new RaceFireballs();
|
||||
|
||||
|
||||
//Misc:
|
||||
if (scriptName == "scripts\\02_server\\Map\\General\\L_EXPLODING_ASSET.lua")
|
||||
script = new ExplodingAsset();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\General\\L_WISHING_WELL_SERVER.lua")
|
||||
script = new WishingWellServer();
|
||||
else if (scriptName == "scripts\\ai\\ACT\\L_ACT_PLAYER_DEATH_TRIGGER.lua")
|
||||
script = new ActPlayerDeathTrigger();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\General\\L_GROWING_FLOWER_SERVER.lua")
|
||||
script = new GrowingFlower();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\General\\L_TOKEN_CONSOLE_SERVER.lua")
|
||||
script = new TokenConsoleServer();
|
||||
else if (scriptName == "scripts\\ai\\ACT\\FootRace\\L_ACT_BASE_FOOT_RACE.lua")
|
||||
script = new BaseFootRaceManager();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\General\\L_PROP_PLATFORM.lua")
|
||||
script = new PropertyPlatform();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\VE\\L_VE_BRICKSAMPLE_SERVER.lua")
|
||||
script = new VeBricksampleServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\General\\L_MAIL_BOX_SERVER.lua")
|
||||
script = new MailBoxServer();
|
||||
else if (scriptName == "scripts\\ai\\ACT\\L_ACT_MINE.lua")
|
||||
script = new ActMine();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AM\\L_WANDERING_VENDOR.lua")
|
||||
script = new WanderingVendor();
|
||||
|
||||
//Racing:
|
||||
else if (scriptName == "scripts\\ai\\RACING\\OBJECTS\\RACE_IMAGINE_CRATE_SERVER.lua")
|
||||
script = new RaceImagineCrateServer();
|
||||
else if (scriptName == "scripts\\ai\\ACT\\L_ACT_VEHICLE_DEATH_TRIGGER.lua")
|
||||
script = new ActVehicleDeathTrigger();
|
||||
else if (scriptName == "scripts\\ai\\RACING\\OBJECTS\\RACE_IMAGINE_POWERUP.lua")
|
||||
script = new RaceImaginePowerup();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\FV\\Racing\\RACE_MAELSTROM_GEISER.lua")
|
||||
script = new RaceMaelstromGeiser();
|
||||
else if (scriptName == "scripts\\ai\\RACING\\OBJECTS\\FV_RACE_SMASH_EGG_IMAGINE_SERVER.lua")
|
||||
script = new FvRaceSmashEggImagineServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\FV\\Racing\\FV_RACING_COLUMNS.lua")
|
||||
script = new FvRacingColumns();
|
||||
else if (scriptName == "scripts\\ai\\RACING\\OBJECTS\\RACE_SMASH_SERVER.lua")
|
||||
script = new RaceSmashServer();
|
||||
|
||||
//NT:
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NT\\L_NT_SENTINELWALKWAY_SERVER.lua")
|
||||
script = new NtSentinelWalkwayServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NT\\L_NT_PARADOXTELE_SERVER.lua")
|
||||
script = new NtParadoxTeleServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NT\\L_NT_DARKITECT_REVEAL_SERVER.lua")
|
||||
script = new NtDarkitectRevealServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\General\\L_BANK_INTERACT_SERVER.lua")
|
||||
script = new BankInteractServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NT\\L_NT_VENTURESPEEDPAD_SERVER.lua")
|
||||
script = new NtVentureSpeedPadServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NT\\L_NT_VENTURE_CANNON_SERVER.lua")
|
||||
script = new NtVentureCannonServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NT\\L_NT_COMBAT_CHALLENGE_SERVER.lua")
|
||||
script = new NtCombatChallengeServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NT\\L_NT_COMBAT_CHALLENGE_DUMMY.lua")
|
||||
script = new NtCombatChallengeDummy();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NT\\\\L_NT_COMBAT_EXPLODING_TARGET.lua")
|
||||
script = new NtCombatChallengeExplodingDummy();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\General\\L_BASE_INTERACT_DROP_LOOT_SERVER.lua")
|
||||
script = new BaseInteractDropLootServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NT\\L_NT_ASSEMBLYTUBE_SERVER.lua")
|
||||
script = new NtAssemblyTubeServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NT\\L_NT_PARADOX_PANEL_SERVER.lua")
|
||||
script = new NtParadoxPanelServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NT\\L_NT_IMAG_BEAM_BUFFER.lua")
|
||||
script = new NtImagBeamBuffer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NT\\L_NT_BEAM_IMAGINATION_COLLECTORS.lua")
|
||||
script = new NtBeamImaginationCollectors();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NT\\L_NT_DIRT_CLOUD_SERVER.lua")
|
||||
script = new NtDirtCloudServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NT\\L_NT_CONSOLE_TELEPORT_SERVER.lua")
|
||||
script = new NtConsoleTeleportServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NT\\L_SPAWN_STEGO_SERVER.lua")
|
||||
script = new SpawnStegoServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NT\\L_SPAWN_SABERCAT_SERVER.lua")
|
||||
script = new SpawnSaberCatServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NT\\L_SPAWN_SHRAKE_SERVER.lua")
|
||||
script = new SpawnShrakeServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NT\\L_NT_DUKE_SERVER.lua")
|
||||
script = new NtDukeServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NT\\L_NT_HAEL_SERVER.lua")
|
||||
script = new NtHaelServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NT\\L_NT_FACTION_SPY_SERVER.lua")
|
||||
script = new NtFactionSpyServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NT\\L_NT_OVERBUILD_SERVER.lua")
|
||||
script = new NtOverbuildServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NT\\L_NT_VANDA_SERVER.lua")
|
||||
script = new NtVandaServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\General\\L_FORCE_VOLUME_SERVER.lua")
|
||||
script = new ForceVolumeServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\General\\L_FRICTION_VOLUME_SERVER.lua")
|
||||
script = new FrictionVolumeServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NT\\L_NT_XRAY_SERVER.lua")
|
||||
script = new NtXRayServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NT\\L_NT_SLEEPING_GUARD.lua")
|
||||
script = new NtSleepingGuard();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NT\\L_NT_IMAGIMETER_VISIBILITY_SERVER.lua")
|
||||
script = new NTImagimeterVisibility();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NT\\L_NT_PIPE_VISIBILITY_SERVER.lua")
|
||||
script = new NTPipeVisibilityServer();
|
||||
else if (scriptName == "scripts\\ai\\MINIGAME\\Objects\\MINIGAME_BLUE_MARK.lua")
|
||||
script = new MinigameBlueMark();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NT\\L_NT_NAOMI_BREADCRUMB_SERVER.lua")
|
||||
script = new NtNaomiBreadcrumbServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\NT\\L_NT_NAOMI_DIRT_SERVER.lua")
|
||||
script = new NTNaomiDirtServer();
|
||||
|
||||
//AM:
|
||||
if (scriptName == "scripts\\02_server\\Map\\AM\\L_AM_CONSOLE_TELEPORT_SERVER.lua")
|
||||
script = new AmConsoleTeleportServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AM\\L_RANDOM_SPAWNER_FIN.lua")
|
||||
script = new RandomSpawnerFin();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AM\\L_RANDOM_SPAWNER_PIT.lua")
|
||||
script = new RandomSpawnerPit();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AM\\L_RANDOM_SPAWNER_STR.lua")
|
||||
script = new RandomSpawnerStr();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AM\\L_RANDOM_SPAWNER_ZIP.lua")
|
||||
script = new RandomSpawnerZip();
|
||||
else if (scriptName == "scripts\\02_server\\Enemy\\AM\\L_AM_DARKLING_MECH.lua")
|
||||
script = new AmDarklingMech();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AM\\L_BRIDGE.lua")
|
||||
script = new AmBridge();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AM\\L_DRAW_BRIDGE.lua")
|
||||
script = new AmDrawBridge();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AM\\L_SHIELD_GENERATOR.lua")
|
||||
script = new AmShieldGenerator();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AM\\L_SHIELD_GENERATOR_QUICKBUILD.lua")
|
||||
script = new AmShieldGeneratorQuickbuild();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AM\\L_DROPSHIP_COMPUTER.lua")
|
||||
script = new AmDropshipComputer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AM\\L_SCROLL_READER_SERVER.lua")
|
||||
script = new AmScrollReaderServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AM\\L_TEMPLE_SKILL_VOLUME.lua")
|
||||
script = new AmTemplateSkillVolume();
|
||||
else if (scriptName == "scripts\\02_server\\Enemy\\General\\L_ENEMY_NJ_BUFF.lua")
|
||||
script = new EnemyNjBuff();
|
||||
else if (scriptName == "scripts\\02_server\\Enemy\\AM\\L_AM_SKELETON_ENGINEER.lua")
|
||||
script = new AmSkeletonEngineer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AM\\L_SKULLKIN_DRILL.lua")
|
||||
script = new AmSkullkinDrill();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AM\\L_SKULLKIN_DRILL_STAND.lua")
|
||||
script = new AmSkullkinDrillStand();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AM\\L_SKULLKIN_TOWER.lua")
|
||||
script = new AmSkullkinTower();
|
||||
else if (scriptName == "scripts\\02_server\\Enemy\\AM\\L_AM_NAMED_DARKLING_DRAGON.lua")
|
||||
script = new AmDarklingDragon();
|
||||
else if (scriptName == "scripts\\02_server\\Enemy\\AM\\L_AM_DARKLING_DRAGON.lua")
|
||||
script = new AmDarklingDragon();
|
||||
else if (scriptName == "scripts\\02_server\\Enemy\\AM\\L_AM_DARKLING_APE.lua")
|
||||
script = new BaseEnemyApe();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AM\\L_BLUE_X.lua")
|
||||
script = new AmBlueX();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\AM\\L_TEAPOT_SERVER.lua")
|
||||
script = new AmTeapotServer();
|
||||
|
||||
// Ninjago
|
||||
else if (scriptName == "scripts\\02_server\\Map\\njhub\\L_GARMADON_CELEBRATION_SERVER.lua")
|
||||
script = new NjGarmadonCelebration();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\njhub\\L_WU_NPC.lua")
|
||||
script = new NjWuNPC();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\njhub\\L_SCROLL_CHEST_SERVER.lua")
|
||||
script = new NjScrollChestServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\njhub\\L_COLE_NPC.lua")
|
||||
script = new NjColeNPC();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\njhub\\L_JAY_MISSION_ITEMS.lua")
|
||||
script = new NjJayMissionItems();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\njhub\\L_NPC_MISSION_SPINJITZU_SERVER.lua")
|
||||
script = new NjNPCMissionSpinjitzuServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\njhub\\L_ENEMY_SKELETON_SPAWNER.lua")
|
||||
script = new EnemySkeletonSpawner();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\General\\L_NJ_RAIL_SWITCH.lua")
|
||||
script = new NjRailSwitch();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\General\\Ninjago\\L_RAIL_ACTIVATORS_SERVER.lua")
|
||||
script = new NjRailActivatorsServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\General\\Ninjago\\L_RAIL_POST_SERVER.lua")
|
||||
script = new NjRailPostServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\General\\Ninjago\\L_ICE_RAIL_ACTIVATOR_SERVER.lua")
|
||||
script = new NjIceRailActivator();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\njhub\\L_FALLING_TILE.lua")
|
||||
script = new FallingTile();
|
||||
else if (scriptName == "scripts\\02_server\\Enemy\\General\\L_ENEMY_NJ_BUFF_STUN_IMMUNITY.lua")
|
||||
script = new EnemyNjBuff();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\njhub\\L_IMAGINATION_SHRINE_SERVER.lua")
|
||||
script = new ImaginationShrineServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\njhub\\L_LIEUTENANT.lua")
|
||||
script = new Lieutenant();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\njhub\\L_RAIN_OF_ARROWS.lua")
|
||||
script = new RainOfArrows();
|
||||
if (scriptName == "scripts\\02_server\\Map\\njhub\\L_CAVE_PRISON_CAGE.lua")
|
||||
script = new CavePrisonCage();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\njhub\\boss_instance\\L_MONASTERY_BOSS_INSTANCE_SERVER.lua")
|
||||
script = new NjMonastryBossInstance();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\njhub\\L_CATAPULT_BOUNCER_SERVER.lua")
|
||||
script = new CatapultBouncerServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\njhub\\L_CATAPULT_BASE_SERVER.lua")
|
||||
script = new CatapultBaseServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\General\\Ninjago\\L_NJHUB_LAVA_PLAYER_DEATH_TRIGGER.lua")
|
||||
script = new NjhubLavaPlayerDeathTrigger();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\njhub\\L_MON_CORE_NOOK_DOORS.lua")
|
||||
script = new MonCoreNookDoors();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\njhub\\L_MON_CORE_SMASHABLE_DOORS.lua")
|
||||
script = new MonCoreSmashableDoors();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\njhub\\L_FLAME_JET_SERVER.lua")
|
||||
script = new FlameJetServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\njhub\\L_BURNING_TILE.lua")
|
||||
script = new BurningTile();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\njhub\\L_SPAWN_EARTH_PET_SERVER.lua")
|
||||
script = new NjEarthDragonPetServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\njhub\\L_EARTH_PET_SERVER.lua")
|
||||
script = new NjEarthPetServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\njhub\\L_DRAGON_EMBLEM_CHEST_SERVER.lua")
|
||||
script = new NjDragonEmblemChestServer();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\njhub\\L_NYA_MISSION_ITEMS.lua")
|
||||
script = new NjNyaMissionitems();
|
||||
|
||||
//DLU:
|
||||
else if (scriptName == "scripts\\02_server\\DLU\\DLUVanityTeleportingObject.lua")
|
||||
script = new DLUVanityTeleportingObject();
|
||||
|
||||
// Survival minigame
|
||||
else if (scriptName == "scripts\\02_server\\Enemy\\Survival\\L_AG_SURVIVAL_STROMBIE.lua")
|
||||
script = new AgSurvivalStromling();
|
||||
else if (scriptName == "scripts\\02_server\\Enemy\\Survival\\L_AG_SURVIVAL_DARKLING_MECH.lua")
|
||||
script = new AgSurvivalMech();
|
||||
else if (scriptName == "scripts\\02_server\\Enemy\\Survival\\L_AG_SURVIVAL_DARK_SPIDERLING.lua")
|
||||
script = new AgSurvivalSpiderling();
|
||||
|
||||
// Scripted equipment
|
||||
else if (scriptName == "scripts\\EquipmentScripts\\Sunflower.lua")
|
||||
script = new Sunflower();
|
||||
else if (scriptName == "scripts/EquipmentScripts/AnvilOfArmor.lua")
|
||||
script = new AnvilOfArmor();
|
||||
else if (scriptName == "scripts/EquipmentScripts/FountainOfImagination.lua")
|
||||
script = new FountainOfImagination();
|
||||
else if (scriptName == "scripts/EquipmentScripts/CauldronOfLife.lua")
|
||||
script = new CauldronOfLife();
|
||||
else if (scriptName == "scripts\\02_server\\Equipment\\L_BOOTYDIG_SERVER.lua")
|
||||
script = new BootyDigServer();
|
||||
else if (scriptName == "scripts\\EquipmentScripts\\PersonalFortress.lua")
|
||||
script = new PersonalFortress();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\General\\L_PROPERTY_DEVICE.lua")
|
||||
script = new PropertyDevice();
|
||||
else if (scriptName == "scripts\\02_server\\Map\\General\\L_IMAG_BACKPACK_HEALS_SERVER.lua")
|
||||
script = new ImaginationBackpackHealServer();
|
||||
else if (scriptName == "scripts\\ai\\GENERAL\\L_LEGO_DIE_ROLL.lua")
|
||||
script = new LegoDieRoll();
|
||||
else if (scriptName == "scripts\\EquipmentScripts\\BuccaneerValiantShip.lua")
|
||||
script = new BuccaneerValiantShip();
|
||||
else if (scriptName == "scripts\\EquipmentScripts\\FireFirstSkillonStartup.lua")
|
||||
script = new FireFirstSkillonStartup();
|
||||
else if (scriptName == "scripts\\equipmenttriggers\\gempack.lua")
|
||||
script = new GemPack();
|
||||
else if (scriptName == "scripts\\equipmenttriggers\\shardarmor.lua")
|
||||
script = new ShardArmor();
|
||||
else if (scriptName == "scripts\\equipmenttriggers\\coilbackpack.lua")
|
||||
script = new TeslaPack();
|
||||
else if (scriptName == "scripts\\EquipmentScripts\\stunImmunity.lua")
|
||||
script = new StunImmunity();
|
||||
|
||||
// FB
|
||||
else if (scriptName == "scripts\\ai\\NS\\WH\\L_ROCKHYDRANT_BROKEN.lua")
|
||||
script = new RockHydrantBroken();
|
||||
else if (scriptName == "scripts\\ai\\NS\\L_NS_WH_FANS.lua")
|
||||
script = new WhFans();
|
||||
|
||||
// WBL
|
||||
else if (scriptName == "scripts\\zone\\LUPs\\WBL_generic_zone.lua")
|
||||
script = new WblGenericZone();
|
||||
|
||||
// Alpha
|
||||
if (scriptName == "scripts\\ai\\FV\\L_TRIGGER_GAS.lua")
|
||||
script = new TriggerGas();
|
||||
else if (scriptName == "scripts\\ai\\FV\\L_ACT_NINJA_SENSEI.lua")
|
||||
script = new ActNinjaSensei();
|
||||
|
||||
// pickups
|
||||
if (scriptName == "scripts\\ai\\SPEC\\L_SPECIAL_1_BRONZE-COIN-SPAWNER.lua")
|
||||
script = new SpecialCoinSpawner(1);
|
||||
else if (scriptName == "scripts\\ai\\SPEC\\L_SPECIAL_1_GOLD-COIN-SPAWNER.lua")
|
||||
script = new SpecialCoinSpawner(10000);
|
||||
else if (scriptName == "scripts\\ai\\SPEC\\L_SPECIAL_1_SILVER-COIN-SPAWNER.lua")
|
||||
script = new SpecialCoinSpawner(100);
|
||||
else if (scriptName == "scripts\\ai\\SPEC\\L_SPECIAL_10_BRONZE-COIN-SPAWNER.lua")
|
||||
script = new SpecialCoinSpawner(10);
|
||||
else if (scriptName == "scripts\\ai\\SPEC\\L_SPECIAL_10_GOLD-COIN-SPAWNER.lua")
|
||||
script = new SpecialCoinSpawner(100000);
|
||||
else if (scriptName == "scripts\\ai\\SPEC\\L_SPECIAL_10_SILVER-COIN-SPAWNER.lua")
|
||||
script = new SpecialCoinSpawner(1000);
|
||||
else if (scriptName == "scripts\\ai\\SPEC\\L_SPECIAL_25_BRONZE-COIN-SPAWNER.lua")
|
||||
script = new SpecialCoinSpawner(25);
|
||||
else if (scriptName == "scripts\\ai\\SPEC\\L_SPECIAL_25_GOLD-COIN-SPAWNER.lua")
|
||||
script = new SpecialCoinSpawner(250000);
|
||||
else if (scriptName == "scripts\\ai\\SPEC\\L_SPECIAL_25_SILVER-COIN-SPAWNER.lua")
|
||||
script = new SpecialCoinSpawner(2500);
|
||||
else if (scriptName == "scripts\\ai\\SPEC\\L_SPECIAL_IMAGINE-POWERUP-SPAWNER.lua")
|
||||
script = new SpecialPowerupSpawner(13);
|
||||
else if (scriptName == "scripts\\ai\\SPEC\\L_SPECIAL_IMAGINE-POWERUP-SPAWNER-2PT.lua")
|
||||
script = new SpecialPowerupSpawner(129);
|
||||
else if (scriptName == "scripts\\ai\\SPEC\\L_SPECIAL_LIFE-POWERUP-SPAWNER.lua")
|
||||
script = new SpecialPowerupSpawner(5);
|
||||
else if (scriptName == "scripts\\ai\\SPEC\\L_SPECIAL_ARMOR-POWERUP-SPAWNER.lua")
|
||||
script = new SpecialPowerupSpawner(747);
|
||||
else if (scriptName == "scripts\\ai\\SPEC\\L_SPECIAL_SPEED_BUFF_SPAWNER.lua")
|
||||
script = new SpecialSpeedBuffSpawner();
|
||||
|
||||
// Wild
|
||||
if (scriptName == "scripts\\ai\\WILD\\L_WILD_GF_RAT.lua" || scriptName == "scripts\\ai\\WILD\\L_WILD_GF_SNAIL.lua")
|
||||
script = new WildAndScared();
|
||||
else if (scriptName == "scripts\\ai\\WILD\\L_WILD_GF_GLOWBUG.lua")
|
||||
script = new WildGfGlowbug();
|
||||
else if (scriptName == "scripts\\ai\\WILD\\L_WILD_AMBIENT_CRAB.lua")
|
||||
script = new WildAmbientCrab();
|
||||
else if (scriptName == "scripts\\ai\\WILD\\L_WILD_PANTS.lua")
|
||||
script = new WildPants();
|
||||
else if (scriptName == "scripts\\ai\\WILD\\L_WILD_NINJA_BRICKS.lua")
|
||||
script = new WildNinjaBricks();
|
||||
else if (scriptName == "scripts\\ai\\WILD\\L_WILD_NINJA_STUDENT.lua")
|
||||
script = new WildNinjaStudent();
|
||||
else if (scriptName == "scripts\\ai\\WILD\\L_WILD_NINJA_SENSEI.lua")
|
||||
script = new WildNinjaSensei();
|
||||
else if (scriptName == "scripts\\ai\\WILD\\L_LUP_generic_interact.lua")
|
||||
script = new LupGenericInteract();
|
||||
else if (scriptName.rfind("scripts\\zone\\LUPs\\RobotCity Intro\\WBL_RCIntro_RobotCitizen", 0) == 0)
|
||||
script = new WblRobotCitizen();
|
||||
|
||||
// handle invalid script reporting if the path is greater than zero and it's not an ignored script
|
||||
// information not really needed for sys admins but is for developers
|
||||
else if (script == InvalidToReturn) {
|
||||
if ((scriptName.length() > 0) && !((scriptName == "scripts\\02_server\\Enemy\\General\\L_SUSPEND_LUA_AI.lua") ||
|
||||
(scriptName == "scripts\\02_server\\Enemy\\General\\L_BASE_ENEMY_SPIDERLING.lua") ||
|
||||
(scriptName =="scripts\\ai\\FV\\L_ACT_NINJA_STUDENT.lua") ||
|
||||
(scriptName == "scripts\\ai\\WILD\\L_WILD_GF_FROG.lua") ||
|
||||
(scriptName == "scripts\\empty.lua")
|
||||
)) LOG_DEBUG("LOT %i attempted to load CppScript for '%s', but returned InvalidScript.", parent->GetLOT(), scriptName.c_str());
|
||||
}
|
||||
|
||||
m_Scripts[scriptName] = script;
|
||||
return script;
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
#ifndef CPPSCRIPTSOLD_H
|
||||
#define CPPSCRIPTSOLD_H
|
||||
|
||||
#include <string>
|
||||
|
||||
class Entity;
|
||||
|
||||
namespace CppScripts {
|
||||
class Script;
|
||||
};
|
||||
|
||||
namespace CppScriptsOld {
|
||||
CppScripts::Script* const GetScript(Entity* entity, const std::string& scriptName);
|
||||
};
|
||||
|
||||
#endif //!CPPSCRIPTSOLD_H
|
||||
@@ -1,941 +0,0 @@
|
||||
#include <gtest/gtest.h>
|
||||
#include "dCommonVars.h"
|
||||
#include "eCinematicEvent.h"
|
||||
#include "CppScripts.h"
|
||||
#include "CppScriptsOld.h"
|
||||
#include "Entity.h"
|
||||
#include "EntityInfo.h"
|
||||
#include "LupGenericInteract.h"
|
||||
#include "InvalidScript.h"
|
||||
|
||||
//VE / AG scripts:
|
||||
#include "AgShipPlayerDeathTrigger.h"
|
||||
#include "AgShipPlayerShockServer.h"
|
||||
#include "AgSpaceStuff.h"
|
||||
#include "AgImagSmashable.h"
|
||||
#include "NpcNpSpacemanBob.h"
|
||||
#include "StoryBoxInteractServer.h"
|
||||
#include "Binoculars.h"
|
||||
#include "AllCrateChicken.h"
|
||||
#include "SsModularBuildServer.h"
|
||||
#include "ZoneAgProperty.h"
|
||||
#include "TouchMissionUpdateServer.h"
|
||||
#include "ActSharkPlayerDeathTrigger.h"
|
||||
#include "BaseEnemyMech.h"
|
||||
#include "ZoneAgSurvival.h"
|
||||
#include "AgBusDoor.h"
|
||||
#include "MaestromExtracticatorServer.h"
|
||||
#include "NpcWispServer.h"
|
||||
#include "AgCagedBricksServer.h"
|
||||
#include "NpcEpsilonServer.h"
|
||||
#include "AgTurret.h"
|
||||
#include "AgMonumentBirds.h"
|
||||
#include "AgLaserSensorServer.h"
|
||||
#include "AgMonumentLaserServer.h"
|
||||
#include "AgFans.h"
|
||||
#include "RemoveRentalGear.h"
|
||||
#include "NpcNjAssistantServer.h"
|
||||
#include "EnemySpiderSpawner.h"
|
||||
#include "AgQbElevator.h"
|
||||
#include "AgPropGuard.h"
|
||||
#include "AgBugsprayer.h"
|
||||
#include "WishingWellServer.h"
|
||||
#include "NpcAgCourseStarter.h"
|
||||
#include "AgMonumentRaceGoal.h"
|
||||
#include "ZoneAgSpiderQueen.h"
|
||||
#include "SpiderBossTreasureChestServer.h"
|
||||
#include "NpcCowboyServer.h"
|
||||
#include "ZoneAgMedProperty.h"
|
||||
#include "AgStromlingProperty.h"
|
||||
#include "AgDarkSpiderling.h"
|
||||
#include "PropertyFXDamage.h"
|
||||
#include "AgPropguards.h"
|
||||
#include "NpcPirateServer.h"
|
||||
#include "AgPicnicBlanket.h"
|
||||
#include "AgMonumentRaceCancel.h"
|
||||
#include "VeBricksampleServer.h"
|
||||
#include "PropertyBankInteract.h"
|
||||
#include "VeMech.h"
|
||||
#include "VeMissionConsole.h"
|
||||
#include "VeEpsilonServer.h"
|
||||
#include "AgSurvivalBuffStation.h"
|
||||
#include "QbSpawner.h"
|
||||
#include "AgQbWall.h"
|
||||
|
||||
// NS Scripts
|
||||
#include "NsModularBuild.h"
|
||||
#include "NsGetFactionMissionServer.h"
|
||||
#include "NsQbImaginationStatue.h"
|
||||
#include "NsConcertChoiceBuildManager.h"
|
||||
#include "NsConcertChoiceBuild.h"
|
||||
#include "NsConcertQuickBuild.h"
|
||||
#include "AgStagePlatforms.h"
|
||||
#include "NsConcertInstrument.h"
|
||||
#include "NsJohnnyMissionServer.h"
|
||||
#include "StinkyFishTarget.h"
|
||||
#include "ZoneNsProperty.h"
|
||||
#include "ZoneNsMedProperty.h"
|
||||
#include "NsTokenConsoleServer.h"
|
||||
#include "NsLupTeleport.h"
|
||||
#include "ZoneNsWaves.h"
|
||||
#include "WaveBossHammerling.h"
|
||||
#include "WaveBossApe.h"
|
||||
#include "WaveBossSpiderling.h"
|
||||
#include "WaveBossHorsemen.h"
|
||||
#include "MinigameTreasureChestServer.h"
|
||||
#include "NsLegoClubDoor.h"
|
||||
#include "ClRing.h"
|
||||
#include "WildAmbients.h"
|
||||
#include "PropertyDeathPlane.h"
|
||||
|
||||
// PR Scripts
|
||||
#include "PrWhistle.h"
|
||||
#include "PrSeagullFly.h"
|
||||
#include "HydrantBroken.h"
|
||||
#include "HydrantSmashable.h"
|
||||
#include "PetDigServer.h"
|
||||
#include "PetFromDigServer.h"
|
||||
#include "PetFromObjectServer.h"
|
||||
#include "DamagingPets.h"
|
||||
#include "SpawnGryphonServer.h"
|
||||
|
||||
// GF Scripts
|
||||
#include "GfTikiTorch.h"
|
||||
#include "GfCampfire.h"
|
||||
#include "GfOrgan.h"
|
||||
#include "GfBanana.h"
|
||||
#include "GfBananaCluster.h"
|
||||
#include "GfJailkeepMission.h"
|
||||
#include "TriggerAmbush.h"
|
||||
#include "GfCaptainsCannon.h"
|
||||
#include "MastTeleport.h"
|
||||
#include "GfJailWalls.h"
|
||||
#include "QbEnemyStunner.h"
|
||||
#include "PetDigBuild.h"
|
||||
#include "SpawnLionServer.h"
|
||||
#include "BaseEnemyApe.h"
|
||||
#include "GfApeSmashingQB.h"
|
||||
#include "ZoneGfProperty.h"
|
||||
#include "GfArchway.h"
|
||||
#include "GfMaelstromGeyser.h"
|
||||
#include "PirateRep.h"
|
||||
#include "GfParrotCrash.h"
|
||||
|
||||
// SG Scripts
|
||||
#include "SGCannon.h"
|
||||
#include "ZoneSGServer.h"
|
||||
|
||||
// FV Scripts
|
||||
#include "FvCandle.h"
|
||||
#include "EnemyRoninSpawner.h"
|
||||
#include "ActNinjaTurret.h"
|
||||
#include "FvMaelstromCavalry.h"
|
||||
#include "FvHorsemenTrigger.h"
|
||||
#include "FvFlyingCreviceDragon.h"
|
||||
#include "FvMaelstromDragon.h"
|
||||
#include "FvDragonSmashingGolemQb.h"
|
||||
#include "TreasureChestDragonServer.h"
|
||||
#include "InstanceExitTransferPlayerToLastNonInstance.h"
|
||||
#include "FvFreeGfNinjas.h"
|
||||
#include "FvPandaServer.h"
|
||||
#include "FvPandaSpawnerServer.h"
|
||||
#include "ZoneFvProperty.h"
|
||||
#include "FvBrickPuzzleServer.h"
|
||||
#include "FvConsoleLeftQuickbuild.h"
|
||||
#include "FvConsoleRightQuickbuild.h"
|
||||
#include "FvFacilityBrick.h"
|
||||
#include "FvFacilityPipes.h"
|
||||
#include "ImgBrickConsoleQB.h"
|
||||
#include "ActParadoxPipeFix.h"
|
||||
#include "FvNinjaGuard.h"
|
||||
#include "FvPassThroughWall.h"
|
||||
#include "FvBounceOverWall.h"
|
||||
#include "FvFong.h"
|
||||
#include "FvMaelstromGeyser.h"
|
||||
#include "FvRaceDragon.h"
|
||||
#include "FvRacePillarABCServer.h"
|
||||
#include "FvRacePillarDServer.h"
|
||||
#include "RaceFireballs.h"
|
||||
#include "RaceShipLapColumnsServer.h"
|
||||
|
||||
// FB Scripts
|
||||
#include "AgJetEffectServer.h"
|
||||
#include "AgSalutingNpcs.h"
|
||||
#include "BossSpiderQueenEnemyServer.h"
|
||||
#include "RockHydrantSmashable.h"
|
||||
|
||||
// Misc Scripts
|
||||
#include "ExplodingAsset.h"
|
||||
#include "ActPlayerDeathTrigger.h"
|
||||
#include "CrabServer.h"
|
||||
#include "GrowingFlower.h"
|
||||
#include "BaseFootRaceManager.h"
|
||||
#include "PropertyPlatform.h"
|
||||
#include "MailBoxServer.h"
|
||||
#include "ActMine.h"
|
||||
#include "FireFirstSkillonStartup.h"
|
||||
|
||||
// Racing Scripts
|
||||
#include "RaceImagineCrateServer.h"
|
||||
#include "ActVehicleDeathTrigger.h"
|
||||
#include "RaceImaginePowerup.h"
|
||||
#include "RaceMaelstromGeiser.h"
|
||||
#include "FvRaceSmashEggImagineServer.h"
|
||||
#include "RaceSmashServer.h"
|
||||
#include "FvRacingColumns.h"
|
||||
|
||||
// NT Scripts
|
||||
#include "NtSentinelWalkwayServer.h"
|
||||
#include "NtParadoxTeleServer.h"
|
||||
#include "NtDarkitectRevealServer.h"
|
||||
#include "BankInteractServer.h"
|
||||
#include "NtVentureSpeedPadServer.h"
|
||||
#include "NtVentureCannonServer.h"
|
||||
#include "NtCombatChallengeServer.h"
|
||||
#include "NtCombatChallengeDummy.h"
|
||||
#include "NtCombatChallengeExplodingDummy.h"
|
||||
#include "BaseInteractDropLootServer.h"
|
||||
#include "NtAssemblyTubeServer.h"
|
||||
#include "NtParadoxPanelServer.h"
|
||||
#include "TokenConsoleServer.h"
|
||||
#include "NtImagBeamBuffer.h"
|
||||
#include "NtBeamImaginationCollectors.h"
|
||||
#include "NtDirtCloudServer.h"
|
||||
#include "NtConsoleTeleportServer.h"
|
||||
#include "SpawnShrakeServer.h"
|
||||
#include "SpawnSaberCatServer.h"
|
||||
#include "SpawnStegoServer.h"
|
||||
#include "NtDukeServer.h"
|
||||
#include "NtHaelServer.h"
|
||||
#include "NtOverbuildServer.h"
|
||||
#include "NtVandaServer.h"
|
||||
#include "ForceVolumeServer.h"
|
||||
#include "NtXRayServer.h"
|
||||
#include "NtSleepingGuard.h"
|
||||
#include "NtImagimeterVisibility.h"
|
||||
#include "FrictionVolumeServer.h"
|
||||
#include "NTPipeVisibilityServer.h"
|
||||
#include "NTNaomiDirtServer.h"
|
||||
#include "MinigameBlueMark.h"
|
||||
#include "NtNaomiBreadcrumbServer.h"
|
||||
|
||||
// DLU Scripts
|
||||
#include "DLUVanityTeleportingObject.h"
|
||||
|
||||
// AM Scripts
|
||||
#include "AmConsoleTeleportServer.h"
|
||||
#include "RandomSpawnerFin.h"
|
||||
#include "RandomSpawnerPit.h"
|
||||
#include "RandomSpawnerStr.h"
|
||||
#include "RandomSpawnerZip.h"
|
||||
#include "AmDarklingMech.h"
|
||||
#include "AmBridge.h"
|
||||
#include "AmDrawBridge.h"
|
||||
#include "AmShieldGenerator.h"
|
||||
#include "AmShieldGeneratorQuickbuild.h"
|
||||
#include "AmDropshipComputer.h"
|
||||
#include "AmScrollReaderServer.h"
|
||||
#include "AmTemplateSkillVolume.h"
|
||||
#include "EnemyNjBuff.h"
|
||||
#include "AmSkeletonEngineer.h"
|
||||
#include "AmSkullkinDrill.h"
|
||||
#include "AmSkullkinDrillStand.h"
|
||||
#include "AmSkullkinTower.h"
|
||||
#include "AmDarklingDragon.h"
|
||||
#include "AmBlueX.h"
|
||||
#include "AmTeapotServer.h"
|
||||
#include "WanderingVendor.h"
|
||||
|
||||
// NJ Scripts
|
||||
#include "NjGarmadonCelebration.h"
|
||||
#include "NjWuNPC.h"
|
||||
#include "NjScrollChestServer.h"
|
||||
#include "EnemySkeletonSpawner.h"
|
||||
#include "NjRailSwitch.h"
|
||||
#include "NjRailPostServer.h"
|
||||
#include "NjRailActivatorsServer.h"
|
||||
#include "NjColeNPC.h"
|
||||
#include "NjNPCMissionSpinjitzuServer.h"
|
||||
#include "NjJayMissionItems.h"
|
||||
#include "FallingTile.h"
|
||||
#include "ImaginationShrineServer.h"
|
||||
#include "Lieutenant.h"
|
||||
#include "RainOfArrows.h"
|
||||
#include "NjIceRailActivator.h"
|
||||
#include "CavePrisonCage.h"
|
||||
#include "NjMonastryBossInstance.h"
|
||||
#include "CatapultBouncerServer.h"
|
||||
#include "CatapultBaseServer.h"
|
||||
#include "NjhubLavaPlayerDeathTrigger.h"
|
||||
#include "MonCoreNookDoors.h"
|
||||
#include "MonCoreSmashableDoors.h"
|
||||
#include "FlameJetServer.h"
|
||||
#include "BurningTile.h"
|
||||
#include "NjEarthDragonPetServer.h"
|
||||
#include "NjEarthPetServer.h"
|
||||
#include "NjDragonEmblemChestServer.h"
|
||||
#include "NjNyaMissionitems.h"
|
||||
|
||||
// Scripted equipment
|
||||
#include "AnvilOfArmor.h"
|
||||
#include "CauldronOfLife.h"
|
||||
#include "FountainOfImagination.h"
|
||||
#include "Sunflower.h"
|
||||
#include "BootyDigServer.h"
|
||||
#include "PersonalFortress.h"
|
||||
#include "PropertyDevice.h"
|
||||
#include "ImaginationBackpackHealServer.h"
|
||||
#include "LegoDieRoll.h"
|
||||
#include "BuccaneerValiantShip.h"
|
||||
#include "GemPack.h"
|
||||
#include "ShardArmor.h"
|
||||
#include "TeslaPack.h"
|
||||
#include "StunImmunity.h"
|
||||
|
||||
// Survival scripts
|
||||
#include "AgSurvivalStromling.h"
|
||||
#include "AgSurvivalMech.h"
|
||||
#include "AgSurvivalSpiderling.h"
|
||||
|
||||
// Frostburgh Scripts
|
||||
#include "RockHydrantBroken.h"
|
||||
#include "WhFans.h"
|
||||
|
||||
// WBL scripts
|
||||
#include "WblGenericZone.h"
|
||||
|
||||
// Alpha Scripts
|
||||
#include "TriggerGas.h"
|
||||
#include "ActNinjaSensei.h"
|
||||
|
||||
// pickups
|
||||
#include "SpecialCoinSpawner.h"
|
||||
#include "SpecialPowerupSpawner.h"
|
||||
#include "SpecialSpeedBuffSpawner.h"
|
||||
|
||||
// Wild Scripts
|
||||
#include "WildAndScared.h"
|
||||
#include "WildGfGlowbug.h"
|
||||
#include "WildAmbientCrab.h"
|
||||
#include "WildPants.h"
|
||||
#include "WildNinjaStudent.h"
|
||||
#include "WildNinjaSensei.h"
|
||||
#include "WildNinjaBricks.h"
|
||||
#include "VisToggleNotifierServer.h"
|
||||
#include "LupGenericInteract.h"
|
||||
#include "WblRobotCitizen.h"
|
||||
|
||||
#define CHECK_SCRIPT(scriptName, scriptType) do { \
|
||||
auto* script = dynamic_cast<scriptType*>(CppScripts::GetScript(&entity, scriptName)); \
|
||||
auto* oldScript = dynamic_cast<scriptType*>(CppScriptsOld::GetScript(&entity, scriptName)); \
|
||||
ASSERT_NE(script, nullptr); \
|
||||
ASSERT_NE(oldScript, nullptr); \
|
||||
} while (0)
|
||||
|
||||
#define CHECK_CACHE(scriptName) do { \
|
||||
ASSERT_EQ(CppScripts::GetScript(&entity, scriptName), CppScripts::GetScript(&entity, scriptName)); \
|
||||
} while (0)
|
||||
|
||||
TEST(dScriptsTests, OldCppScriptsCheck) {
|
||||
Entity entity(LWOOBJID_EMPTY, EntityInfo{});
|
||||
CHECK_SCRIPT("scripts\\ai\\WILD\\L_LUP_generic_interact.lua", LupGenericInteract);
|
||||
CHECK_SCRIPT("scripts\\ai\\AG\\L_AG_SHIP_PLAYER_DEATH_TRIGGER.lua", AgShipPlayerDeathTrigger);
|
||||
CHECK_SCRIPT("scripts\\ai\\NP\\L_NPC_NP_SPACEMAN_BOB.lua", NpcNpSpacemanBob);
|
||||
CHECK_SCRIPT("scripts\\ai\\AG\\L_AG_SPACE_STUFF.lua", AgSpaceStuff);
|
||||
CHECK_SCRIPT("scripts\\ai\\AG\\L_AG_SHIP_PLAYER_SHOCK_SERVER.lua", AgShipPlayerShockServer);
|
||||
CHECK_SCRIPT("scripts\\ai\\AG\\L_AG_IMAG_SMASHABLE.lua", AgImagSmashable);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\General\\L_STORY_BOX_INTERACT_SERVER.lua", StoryBoxInteractServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\General\\L_BINOCULARS.lua", Binoculars);
|
||||
CHECK_SCRIPT("scripts\\ai\\WILD\\L_ALL_CRATE_CHICKEN.lua", AllCrateChicken);
|
||||
CHECK_SCRIPT("scripts\\ai\\NS\\WH\\L_ROCKHYDRANT_SMASHABLE.lua", RockHydrantSmashable);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\SS\\L_SS_MODULAR_BUILD_SERVER.lua", SsModularBuildServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\Property\\AG_Small\\L_ZONE_AG_PROPERTY.lua", ZoneAgProperty);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\General\\L_POI_MISSION.lua", InvalidScript);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\General\\L_TOUCH_MISSION_UPDATE_SERVER.lua", TouchMissionUpdateServer);
|
||||
CHECK_SCRIPT("scripts\\ai\\AG\\L_ACT_SHARK_PLAYER_DEATH_TRIGGER.lua", ActSharkPlayerDeathTrigger);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Enemy\\General\\L_BASE_ENEMY_MECH.lua", BaseEnemyMech);
|
||||
CHECK_SCRIPT("scripts\\zone\\AG\\L_ZONE_AG_SURVIVAL.lua", ZoneAgSurvival);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Objects\\L_BUFF_STATION_SERVER.lua", AgSurvivalBuffStation);
|
||||
CHECK_SCRIPT("scripts\\ai\\AG\\L_AG_BUS_DOOR.lua", AgBusDoor);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Equipment\\L_MAESTROM_EXTRACTICATOR_SERVER.lua", MaestromExtracticatorServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AG\\L_AG_CAGED_BRICKS_SERVER.lua", AgCagedBricksServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AG\\L_NPC_WISP_SERVER.lua", NpcWispServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AG\\L_NPC_EPSILON_SERVER.lua", NpcEpsilonServer);
|
||||
CHECK_SCRIPT("scripts\\ai\\AG\\L_AG_TURRET.lua", AgTurret);
|
||||
CHECK_SCRIPT("scripts\\ai\\AG\\L_AG_TURRET_FOR_SHIP.lua", AgTurret);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AG\\L_AG_LASER_SENSOR_SERVER.lua", AgLaserSensorServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AG\\L_AG_MONUMENT_LASER_SERVER.lua", AgMonumentLaserServer);
|
||||
CHECK_SCRIPT("scripts\\ai\\AG\\L_AG_FANS.lua", AgFans);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AG\\L_AG_MONUMENT_BIRDS.lua", AgMonumentBirds);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AG\\L_REMOVE_RENTAL_GEAR.lua", RemoveRentalGear);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AG\\L_NPC_NJ_ASSISTANT_SERVER.lua", NpcNjAssistantServer);
|
||||
CHECK_SCRIPT("scripts\\ai\\AG\\L_AG_SALUTING_NPCS.lua", AgSalutingNpcs);
|
||||
CHECK_SCRIPT("scripts\\ai\\AG\\L_AG_JET_EFFECT_SERVER.lua", AgJetEffectServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Enemy\\AG\\L_BOSS_SPIDER_QUEEN_ENEMY_SERVER.lua", BossSpiderQueenEnemyServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\Property\\AG_Small\\L_ENEMY_SPIDER_SPAWNER.lua", EnemySpiderSpawner);
|
||||
CHECK_SCRIPT("scripts/02_server/Map/Property/AG_Small/L_ENEMY_SPIDER_SPAWNER.lua", EnemySpiderSpawner);
|
||||
CHECK_SCRIPT("scripts\\ai\\AG\\L_AG_QB_Elevator.lua", AgQbElevator);
|
||||
CHECK_SCRIPT("scripts\\ai\\PROPERTY\\AG\\L_AG_PROP_GUARD.lua", AgPropGuard);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AG\\L_AG_BUGSPRAYER.lua", AgBugsprayer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AG\\L_NPC_AG_COURSE_STARTER.lua", NpcAgCourseStarter);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AG\\L__AG_MONUMENT_RACE_GOAL.lua", AgMonumentRaceGoal);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AG\\L__AG_MONUMENT_RACE_CANCEL.lua", AgMonumentRaceCancel);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AG_Spider_Queen\\L_ZONE_AG_SPIDER_QUEEN.lua", ZoneAgSpiderQueen);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AG_Spider_Queen\\L_SPIDER_BOSS_TREASURE_CHEST_SERVER.lua", SpiderBossTreasureChestServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AG\\L_NPC_COWBOY_SERVER.lua", NpcCowboyServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\Property\\AG_Med\\L_ZONE_AG_MED_PROPERTY.lua", ZoneAgMedProperty);
|
||||
CHECK_SCRIPT("scripts\\ai\\AG\\L_AG_STROMBIE_PROPERTY.lua", AgStromlingProperty);
|
||||
CHECK_SCRIPT("scripts\\ai\\AG\\L_AG_DARKLING_MECH.lua", BaseEnemyMech);
|
||||
CHECK_SCRIPT("scripts\\ai\\AG\\L_AG_DARK_SPIDERLING.lua", AgDarkSpiderling);
|
||||
CHECK_SCRIPT("scripts\\ai\\PROPERTY\\L_PROP_GUARDS.lua", AgPropguards);
|
||||
CHECK_SCRIPT("scripts\\ai\\PROPERTY\\L_PROPERTY_FX_DAMAGE.lua", PropertyFXDamage);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AG\\L_NPC_PIRATE_SERVER.lua", NpcPirateServer);
|
||||
CHECK_SCRIPT("scripts\\ai\\AG\\L_AG_PICNIC_BLANKET.lua", AgPicnicBlanket);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\Property\\L_PROPERTY_BANK_INTERACT_SERVER.lua", PropertyBankInteract);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Enemy\\VE\\L_VE_MECH.lua", VeMech);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\VE\\L_MISSION_CONSOLE_SERVER.lua", VeMissionConsole);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\VE\\L_EPSILON_SERVER.lua", VeEpsilonServer);
|
||||
CHECK_SCRIPT("scripts\\ai\\NS\\L_NS_MODULAR_BUILD.lua", NsModularBuild);
|
||||
CHECK_SCRIPT("scripts\\ai\\NS\\L_NS_GET_FACTION_MISSION_SERVER.lua", NsGetFactionMissionServer);
|
||||
CHECK_SCRIPT("scripts\\ai\\NS\\L_NS_QB_IMAGINATION_STATUE.lua", NsQbImaginationStatue);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NS\\CONCERT_CHOICEBUILD_MANAGER_SERVER.lua", NsConcertChoiceBuildManager);
|
||||
CHECK_SCRIPT("scripts\\ai\\NS\\L_NS_CONCERT_CHOICEBUILD.lua", NsConcertChoiceBuild);
|
||||
CHECK_SCRIPT("scripts\\ai\\NS\\L_NS_CONCERT_QUICKBUILD.lua", NsConcertQuickBuild);
|
||||
CHECK_SCRIPT("scripts\\ai\\AG\\L_AG_STAGE_PLATFORMS.lua", AgStagePlatforms);
|
||||
CHECK_SCRIPT("scripts\\ai\\NS\\L_NS_CONCERT_INSTRUMENT_QB.lua", NsConcertInstrument);
|
||||
CHECK_SCRIPT("scripts\\ai\\NS\\L_NS_JONNY_FLAG_MISSION_SERVER.lua", NsJohnnyMissionServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Objects\\L_STINKY_FISH_TARGET.lua", StinkyFishTarget);
|
||||
CHECK_SCRIPT("scripts\\zone\\PROPERTY\\NS\\L_ZONE_NS_PROPERTY.lua", ZoneNsProperty);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\Property\\NS_Med\\L_ZONE_NS_MED_PROPERTY.lua", ZoneNsMedProperty);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NS\\L_NS_TOKEN_CONSOLE_SERVER.lua", NsTokenConsoleServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NS\\L_NS_LUP_TELEPORT.lua", NsLupTeleport);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NS\\Waves\\L_ZONE_NS_WAVES.lua", ZoneNsWaves);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Enemy\\Waves\\L_WAVES_BOSS_HAMMERLING_ENEMY_SERVER.lua", WaveBossHammerling);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Enemy\\Waves\\L_WAVES_BOSS_APE_ENEMY_SERVER.lua", WaveBossApe);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Enemy\\Waves\\L_WAVES_BOSS_DARK_SPIDERLING_ENEMY_SERVER.lua", WaveBossSpiderling);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Enemy\\Waves\\L_WAVES_BOSS_HORESEMEN_ENEMY_SERVER.lua", WaveBossHorsemen);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Minigame\\General\\L_MINIGAME_TREASURE_CHEST_SERVER.lua", MinigameTreasureChestServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NS\\L_NS_LEGO_CLUB_DOOR.lua", NsLegoClubDoor);
|
||||
CHECK_SCRIPT("scripts/ai/NS/L_CL_RING.lua", ClRing);
|
||||
CHECK_SCRIPT("scripts\\ai\\WILD\\L_WILD_AMBIENTS.lua", WildAmbients);
|
||||
CHECK_SCRIPT("scripts\\ai\\NS\\NS_PP_01\\L_NS_PP_01_TELEPORT.lua", PropertyDeathPlane);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\General\\L_QB_SPAWNER.lua", QbSpawner);
|
||||
CHECK_SCRIPT("scripts\\ai\\AG\\L_AG_QB_Wall.lua", AgQbWall);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\GF\\L_GF_TORCH.lua", GfTikiTorch);
|
||||
CHECK_SCRIPT("scripts\\ai\\GF\\L_SPECIAL_FIREPIT.lua", GfCampfire);
|
||||
CHECK_SCRIPT("scripts\\ai\\GF\\L_GF_ORGAN.lua", GfOrgan);
|
||||
CHECK_SCRIPT("scripts\\ai\\GF\\L_GF_BANANA.lua", GfBanana);
|
||||
CHECK_SCRIPT("scripts\\ai\\GF\\L_GF_BANANA_CLUSTER.lua", GfBananaCluster);
|
||||
CHECK_SCRIPT("scripts/ai/GF/L_GF_JAILKEEP_MISSION.lua", GfJailkeepMission);
|
||||
CHECK_SCRIPT("scripts\\ai\\GF\\L_TRIGGER_AMBUSH.lua", TriggerAmbush);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\GF\\L_GF_CAPTAINS_CANNON.lua", GfCaptainsCannon);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\GF\\L_MAST_TELEPORT.lua", MastTeleport);
|
||||
CHECK_SCRIPT("scripts\\ai\\GF\\L_GF_JAIL_WALLS.lua", GfJailWalls);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\General\\L_QB_ENEMY_STUNNER.lua", QbEnemyStunner);
|
||||
CHECK_SCRIPT("scripts\\ai\\GF\\L_GF_PET_DIG_BUILD.lua", PetDigBuild);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\GF\\L_SPAWN_LION_SERVER.lua", SpawnLionServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Enemy\\General\\L_BASE_ENEMY_APE.lua", BaseEnemyApe);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Enemy\\General\\L_GF_APE_SMASHING_QB.lua", GfApeSmashingQB);
|
||||
CHECK_SCRIPT("scripts\\zone\\PROPERTY\\GF\\L_ZONE_GF_PROPERTY.lua", ZoneGfProperty);
|
||||
CHECK_SCRIPT("scripts\\ai\\GF\\L_GF_ARCHWAY.lua", GfArchway);
|
||||
CHECK_SCRIPT("scripts\\ai\\GF\\L_GF_MAELSTROM_GEYSER.lua", GfMaelstromGeyser);
|
||||
CHECK_SCRIPT("scripts\\ai\\GF\\L_PIRATE_REP.lua", PirateRep);
|
||||
CHECK_SCRIPT("scripts\\ai\\GF\\L_GF_PARROT_CRASH.lua", GfParrotCrash);
|
||||
CHECK_SCRIPT("scripts\\ai\\MINIGAME\\SG_GF\\SERVER\\SG_CANNON.lua", SGCannon);
|
||||
CHECK_SCRIPT("scripts\\ai\\MINIGAME\\SG_GF\\L_ZONE_SG_SERVER.lua", ZoneSGServer);
|
||||
CHECK_SCRIPT("scripts\\client\\ai\\PR\\L_PR_WHISTLE.lua", PrWhistle);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\PR\\L_PR_SEAGULL_FLY.lua", PrSeagullFly);
|
||||
CHECK_SCRIPT("scripts\\ai\\PETS\\L_HYDRANT_SMASHABLE.lua", HydrantSmashable);
|
||||
CHECK_SCRIPT("scripts\\02_server\\map\\PR\\L_HYDRANT_BROKEN.lua", HydrantBroken);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\General\\PET_DIG_SERVER.lua", PetDigServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AM\\L_SKELETON_DRAGON_PET_DIG_SERVER.lua", PetDigServer);
|
||||
CHECK_SCRIPT("scripts\\client\\ai\\PR\\L_CRAB_SERVER.lua", CrabServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Pets\\L_PET_FROM_DIG_SERVER.lua", PetFromDigServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Pets\\L_PET_FROM_OBJECT_SERVER.lua", PetFromObjectServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Pets\\L_DAMAGING_PET.lua", DamagingPets);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\PR\\L_SPAWN_GRYPHON_SERVER.lua", SpawnGryphonServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\FV\\L_ACT_CANDLE.lua", FvCandle);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\FV\\L_ENEMY_RONIN_SPAWNER.lua", EnemyRoninSpawner);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Enemy\\FV\\L_FV_MAELSTROM_CAVALRY.lua", FvMaelstromCavalry);
|
||||
CHECK_SCRIPT("scripts\\ai\\FV\\L_ACT_NINJA_TURRET_1.lua", ActNinjaTurret);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\FV\\L_FV_HORSEMEN_TRIGGER.lua", FvHorsemenTrigger);
|
||||
CHECK_SCRIPT("scripts\\ai\\FV\\L_FV_FLYING_CREVICE_DRAGON.lua", FvFlyingCreviceDragon);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Enemy\\FV\\L_FV_MAELSTROM_DRAGON.lua", FvMaelstromDragon);
|
||||
CHECK_SCRIPT("scripts\\ai\\FV\\L_FV_DRAGON_SMASHING_GOLEM_QB.lua", FvDragonSmashingGolemQb);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Enemy\\General\\L_TREASURE_CHEST_DRAGON_SERVER.lua", TreasureChestDragonServer);
|
||||
CHECK_SCRIPT("scripts\\ai\\GENERAL\\L_INSTANCE_EXIT_TRANSFER_PLAYER_TO_LAST_NON_INSTANCE.lua", InstanceExitTransferPlayerToLastNonInstance);
|
||||
CHECK_SCRIPT("scripts\\ai\\FV\\L_NPC_FREE_GF_NINJAS.lua", FvFreeGfNinjas);
|
||||
CHECK_SCRIPT("scripts\\ai\\FV\\L_FV_PANDA_SPAWNER_SERVER.lua", FvPandaSpawnerServer);
|
||||
CHECK_SCRIPT("scripts\\ai\\FV\\L_FV_PANDA_SERVER.lua", FvPandaServer);
|
||||
CHECK_SCRIPT("scripts\\zone\\PROPERTY\\FV\\L_ZONE_FV_PROPERTY.lua", ZoneFvProperty);
|
||||
CHECK_SCRIPT("scripts\\ai\\FV\\L_FV_BRICK_PUZZLE_SERVER.lua", FvBrickPuzzleServer);
|
||||
CHECK_SCRIPT("scripts\\ai\\FV\\L_FV_CONSOLE_LEFT_QUICKBUILD.lua", FvConsoleLeftQuickbuild);
|
||||
CHECK_SCRIPT("scripts\\ai\\FV\\L_FV_CONSOLE_RIGHT_QUICKBUILD.lua", FvConsoleRightQuickbuild);
|
||||
CHECK_SCRIPT("scripts\\ai\\FV\\L_FV_FACILITY_BRICK.lua", FvFacilityBrick);
|
||||
CHECK_SCRIPT("scripts\\ai\\FV\\L_FV_FACILITY_PIPES.lua", FvFacilityPipes);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\FV\\L_IMG_BRICK_CONSOLE_QB.lua", ImgBrickConsoleQB);
|
||||
CHECK_SCRIPT("scripts\\ai\\FV\\L_ACT_PARADOX_PIPE_FIX.lua", ActParadoxPipeFix);
|
||||
CHECK_SCRIPT("scripts\\ai\\FV\\L_FV_NINJA_GUARDS.lua", FvNinjaGuard);
|
||||
CHECK_SCRIPT("scripts\\ai\\FV\\L_ACT_PASS_THROUGH_WALL.lua", FvPassThroughWall);
|
||||
CHECK_SCRIPT("scripts\\ai\\FV\\L_ACT_BOUNCE_OVER_WALL.lua", FvBounceOverWall);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\FV\\L_NPC_FONG.lua", FvFong);
|
||||
CHECK_SCRIPT("scripts\\ai\\FV\\L_FV_MAELSTROM_GEYSER.lua", FvMaelstromGeyser);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\FV\\Racing\\RACE_SHIP_LAP_COLUMNS_SERVER.lua", RaceShipLapColumnsServer);
|
||||
CHECK_SCRIPT("scripts\\ai\\RACING\\OBJECTS\\FV_RACE_DRAGON_LAP1_SERVER.lua", FvRaceDragon);
|
||||
CHECK_SCRIPT("scripts\\ai\\RACING\\OBJECTS\\FV_RACE_DRAGON_LAP2_SERVER.lua", FvRaceDragon);
|
||||
CHECK_SCRIPT("scripts\\ai\\RACING\\OBJECTS\\FV_RACE_DRAGON_LAP3_SERVER.lua", FvRaceDragon);
|
||||
CHECK_SCRIPT("scripts\\ai\\RACING\\OBJECTS\\FV_RACE_PILLAR_ABC_SERVER.lua", FvRacePillarABCServer);
|
||||
CHECK_SCRIPT("scripts\\ai\\RACING\\OBJECTS\\FV_RACE_PILLAR_D_SERVER.lua", FvRacePillarDServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\FV\\Racing\\RACE_FIREBALLS.lua", RaceFireballs);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\General\\L_EXPLODING_ASSET.lua", ExplodingAsset);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\General\\L_WISHING_WELL_SERVER.lua", WishingWellServer);
|
||||
CHECK_SCRIPT("scripts\\ai\\ACT\\L_ACT_PLAYER_DEATH_TRIGGER.lua", ActPlayerDeathTrigger);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\General\\L_GROWING_FLOWER_SERVER.lua", GrowingFlower);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\General\\L_TOKEN_CONSOLE_SERVER.lua", TokenConsoleServer);
|
||||
CHECK_SCRIPT("scripts\\ai\\ACT\\FootRace\\L_ACT_BASE_FOOT_RACE.lua", BaseFootRaceManager);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\General\\L_PROP_PLATFORM.lua", PropertyPlatform);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\VE\\L_VE_BRICKSAMPLE_SERVER.lua", VeBricksampleServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\General\\L_MAIL_BOX_SERVER.lua", MailBoxServer);
|
||||
CHECK_SCRIPT("scripts\\ai\\ACT\\L_ACT_MINE.lua", ActMine);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AM\\L_WANDERING_VENDOR.lua", WanderingVendor);
|
||||
CHECK_SCRIPT("scripts\\ai\\RACING\\OBJECTS\\RACE_IMAGINE_CRATE_SERVER.lua", RaceImagineCrateServer);
|
||||
CHECK_SCRIPT("scripts\\ai\\ACT\\L_ACT_VEHICLE_DEATH_TRIGGER.lua", ActVehicleDeathTrigger);
|
||||
CHECK_SCRIPT("scripts\\ai\\RACING\\OBJECTS\\RACE_IMAGINE_POWERUP.lua", RaceImaginePowerup);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\FV\\Racing\\RACE_MAELSTROM_GEISER.lua", RaceMaelstromGeiser);
|
||||
CHECK_SCRIPT("scripts\\ai\\RACING\\OBJECTS\\FV_RACE_SMASH_EGG_IMAGINE_SERVER.lua", FvRaceSmashEggImagineServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\FV\\Racing\\FV_RACING_COLUMNS.lua", FvRacingColumns);
|
||||
CHECK_SCRIPT("scripts\\ai\\RACING\\OBJECTS\\RACE_SMASH_SERVER.lua", RaceSmashServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NT\\L_NT_SENTINELWALKWAY_SERVER.lua", NtSentinelWalkwayServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NT\\L_NT_PARADOXTELE_SERVER.lua", NtParadoxTeleServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NT\\L_NT_DARKITECT_REVEAL_SERVER.lua", NtDarkitectRevealServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\General\\L_BANK_INTERACT_SERVER.lua", BankInteractServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NT\\L_NT_VENTURESPEEDPAD_SERVER.lua", NtVentureSpeedPadServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NT\\L_NT_VENTURE_CANNON_SERVER.lua", NtVentureCannonServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NT\\L_NT_COMBAT_CHALLENGE_SERVER.lua", NtCombatChallengeServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NT\\L_NT_COMBAT_CHALLENGE_DUMMY.lua", NtCombatChallengeDummy);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NT\\\\L_NT_COMBAT_EXPLODING_TARGET.lua", NtCombatChallengeExplodingDummy);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\General\\L_BASE_INTERACT_DROP_LOOT_SERVER.lua", BaseInteractDropLootServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NT\\L_NT_ASSEMBLYTUBE_SERVER.lua", NtAssemblyTubeServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NT\\L_NT_PARADOX_PANEL_SERVER.lua", NtParadoxPanelServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NT\\L_NT_IMAG_BEAM_BUFFER.lua", NtImagBeamBuffer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NT\\L_NT_BEAM_IMAGINATION_COLLECTORS.lua", NtBeamImaginationCollectors);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NT\\L_NT_DIRT_CLOUD_SERVER.lua", NtDirtCloudServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NT\\L_NT_CONSOLE_TELEPORT_SERVER.lua", NtConsoleTeleportServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NT\\L_SPAWN_STEGO_SERVER.lua", SpawnStegoServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NT\\L_SPAWN_SABERCAT_SERVER.lua", SpawnSaberCatServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NT\\L_SPAWN_SHRAKE_SERVER.lua", SpawnShrakeServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NT\\L_NT_DUKE_SERVER.lua", NtDukeServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NT\\L_NT_HAEL_SERVER.lua", NtHaelServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NT\\L_NT_FACTION_SPY_SERVER.lua", NtFactionSpyServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NT\\L_NT_OVERBUILD_SERVER.lua", NtOverbuildServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NT\\L_NT_VANDA_SERVER.lua", NtVandaServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\General\\L_FORCE_VOLUME_SERVER.lua", ForceVolumeServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\General\\L_FRICTION_VOLUME_SERVER.lua", FrictionVolumeServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NT\\L_NT_XRAY_SERVER.lua", NtXRayServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NT\\L_NT_SLEEPING_GUARD.lua", NtSleepingGuard);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NT\\L_NT_IMAGIMETER_VISIBILITY_SERVER.lua", NTImagimeterVisibility);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NT\\L_NT_PIPE_VISIBILITY_SERVER.lua", NTPipeVisibilityServer);
|
||||
CHECK_SCRIPT("scripts\\ai\\MINIGAME\\Objects\\MINIGAME_BLUE_MARK.lua", MinigameBlueMark);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NT\\L_NT_NAOMI_BREADCRUMB_SERVER.lua", NtNaomiBreadcrumbServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\NT\\L_NT_NAOMI_DIRT_SERVER.lua", NTNaomiDirtServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AM\\L_AM_CONSOLE_TELEPORT_SERVER.lua", AmConsoleTeleportServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AM\\L_RANDOM_SPAWNER_FIN.lua", RandomSpawnerFin);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AM\\L_RANDOM_SPAWNER_PIT.lua", RandomSpawnerPit);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AM\\L_RANDOM_SPAWNER_STR.lua", RandomSpawnerStr);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AM\\L_RANDOM_SPAWNER_ZIP.lua", RandomSpawnerZip);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Enemy\\AM\\L_AM_DARKLING_MECH.lua", AmDarklingMech);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AM\\L_BRIDGE.lua", AmBridge);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AM\\L_DRAW_BRIDGE.lua", AmDrawBridge);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AM\\L_SHIELD_GENERATOR.lua", AmShieldGenerator);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AM\\L_SHIELD_GENERATOR_QUICKBUILD.lua", AmShieldGeneratorQuickbuild);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AM\\L_DROPSHIP_COMPUTER.lua", AmDropshipComputer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AM\\L_SCROLL_READER_SERVER.lua", AmScrollReaderServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AM\\L_TEMPLE_SKILL_VOLUME.lua", AmTemplateSkillVolume);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Enemy\\General\\L_ENEMY_NJ_BUFF.lua", EnemyNjBuff);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Enemy\\AM\\L_AM_SKELETON_ENGINEER.lua", AmSkeletonEngineer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AM\\L_SKULLKIN_DRILL.lua", AmSkullkinDrill);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AM\\L_SKULLKIN_DRILL_STAND.lua", AmSkullkinDrillStand);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AM\\L_SKULLKIN_TOWER.lua", AmSkullkinTower);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Enemy\\AM\\L_AM_NAMED_DARKLING_DRAGON.lua", AmDarklingDragon);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Enemy\\AM\\L_AM_DARKLING_APE.lua", BaseEnemyApe);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AM\\L_BLUE_X.lua", AmBlueX);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\AM\\L_TEAPOT_SERVER.lua", AmTeapotServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\njhub\\L_GARMADON_CELEBRATION_SERVER.lua", NjGarmadonCelebration);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\njhub\\L_WU_NPC.lua", NjWuNPC);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\njhub\\L_SCROLL_CHEST_SERVER.lua", NjScrollChestServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\njhub\\L_COLE_NPC.lua", NjColeNPC);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\njhub\\L_JAY_MISSION_ITEMS.lua", NjJayMissionItems);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\njhub\\L_NPC_MISSION_SPINJITZU_SERVER.lua", NjNPCMissionSpinjitzuServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\njhub\\L_ENEMY_SKELETON_SPAWNER.lua", EnemySkeletonSpawner);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\General\\L_NJ_RAIL_SWITCH.lua", NjRailSwitch);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\General\\Ninjago\\L_RAIL_ACTIVATORS_SERVER.lua", NjRailActivatorsServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\General\\Ninjago\\L_RAIL_POST_SERVER.lua", NjRailPostServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\General\\Ninjago\\L_ICE_RAIL_ACTIVATOR_SERVER.lua", NjIceRailActivator);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\njhub\\L_FALLING_TILE.lua", FallingTile);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Enemy\\General\\L_ENEMY_NJ_BUFF_STUN_IMMUNITY.lua", EnemyNjBuff);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\njhub\\L_IMAGINATION_SHRINE_SERVER.lua", ImaginationShrineServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\njhub\\L_LIEUTENANT.lua", Lieutenant);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\njhub\\L_RAIN_OF_ARROWS.lua", RainOfArrows);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\njhub\\L_CAVE_PRISON_CAGE.lua", CavePrisonCage);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\njhub\\boss_instance\\L_MONASTERY_BOSS_INSTANCE_SERVER.lua", NjMonastryBossInstance);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\njhub\\L_CATAPULT_BOUNCER_SERVER.lua", CatapultBouncerServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\njhub\\L_CATAPULT_BASE_SERVER.lua", CatapultBaseServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\General\\Ninjago\\L_NJHUB_LAVA_PLAYER_DEATH_TRIGGER.lua", NjhubLavaPlayerDeathTrigger);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\njhub\\L_MON_CORE_NOOK_DOORS.lua", MonCoreNookDoors);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\njhub\\L_MON_CORE_SMASHABLE_DOORS.lua", MonCoreSmashableDoors);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\njhub\\L_MON_CORE_SMASHABLE_DOORS.lua", MonCoreSmashableDoors);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\njhub\\L_FLAME_JET_SERVER.lua", FlameJetServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\njhub\\L_BURNING_TILE.lua", BurningTile);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\njhub\\L_SPAWN_EARTH_PET_SERVER.lua", NjEarthDragonPetServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\njhub\\L_EARTH_PET_SERVER.lua", NjEarthPetServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\njhub\\L_DRAGON_EMBLEM_CHEST_SERVER.lua", NjDragonEmblemChestServer);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\njhub\\L_NYA_MISSION_ITEMS.lua", NjNyaMissionitems);
|
||||
CHECK_SCRIPT("scripts\\02_server\\DLU\\DLUVanityTeleportingObject.lua", DLUVanityTeleportingObject);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Enemy\\Survival\\L_AG_SURVIVAL_STROMBIE.lua", AgSurvivalStromling);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Enemy\\Survival\\L_AG_SURVIVAL_DARKLING_MECH.lua", AgSurvivalMech);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Enemy\\Survival\\L_AG_SURVIVAL_DARK_SPIDERLING.lua", AgSurvivalSpiderling);
|
||||
CHECK_SCRIPT("scripts\\EquipmentScripts\\Sunflower.lua", Sunflower);
|
||||
CHECK_SCRIPT("scripts/EquipmentScripts/AnvilOfArmor.lua", AnvilOfArmor);
|
||||
CHECK_SCRIPT("scripts/EquipmentScripts/FountainOfImagination.lua", FountainOfImagination);
|
||||
CHECK_SCRIPT("scripts/EquipmentScripts/CauldronOfLife.lua", CauldronOfLife);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Equipment\\L_BOOTYDIG_SERVER.lua", BootyDigServer);
|
||||
CHECK_SCRIPT("scripts\\EquipmentScripts\\PersonalFortress.lua", PersonalFortress);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\General\\L_PROPERTY_DEVICE.lua", PropertyDevice);
|
||||
CHECK_SCRIPT("scripts\\02_server\\Map\\General\\L_IMAG_BACKPACK_HEALS_SERVER.lua", ImaginationBackpackHealServer);
|
||||
CHECK_SCRIPT("scripts\\ai\\GENERAL\\L_LEGO_DIE_ROLL.lua", LegoDieRoll);
|
||||
CHECK_SCRIPT("scripts\\EquipmentScripts\\BuccaneerValiantShip.lua", BuccaneerValiantShip);
|
||||
CHECK_SCRIPT("scripts\\EquipmentScripts\\FireFirstSkillonStartup.lua", FireFirstSkillonStartup);
|
||||
CHECK_SCRIPT("scripts\\equipmenttriggers\\gempack.lua", GemPack);
|
||||
CHECK_SCRIPT("scripts\\equipmenttriggers\\shardarmor.lua", ShardArmor);
|
||||
CHECK_SCRIPT("scripts\\equipmenttriggers\\coilbackpack.lua", TeslaPack);
|
||||
CHECK_SCRIPT("scripts\\EquipmentScripts\\stunImmunity.lua", StunImmunity);
|
||||
CHECK_SCRIPT("scripts\\ai\\NS\\WH\\L_ROCKHYDRANT_BROKEN.lua", RockHydrantBroken);
|
||||
CHECK_SCRIPT("scripts\\ai\\NS\\L_NS_WH_FANS.lua", WhFans);
|
||||
CHECK_SCRIPT("scripts\\zone\\LUPs\\WBL_generic_zone.lua", WblGenericZone);
|
||||
CHECK_SCRIPT("scripts\\ai\\FV\\L_TRIGGER_GAS.lua", TriggerGas);
|
||||
CHECK_SCRIPT("scripts\\ai\\FV\\L_ACT_NINJA_SENSEI.lua", ActNinjaSensei);
|
||||
CHECK_SCRIPT("scripts\\ai\\SPEC\\L_SPECIAL_1_BRONZE-COIN-SPAWNER.lua", SpecialCoinSpawner);
|
||||
CHECK_SCRIPT("scripts\\ai\\SPEC\\L_SPECIAL_1_SILVER-COIN-SPAWNER.lua", SpecialCoinSpawner);
|
||||
CHECK_SCRIPT("scripts\\ai\\SPEC\\L_SPECIAL_10_BRONZE-COIN-SPAWNER.lua", SpecialCoinSpawner);
|
||||
CHECK_SCRIPT("scripts\\ai\\SPEC\\L_SPECIAL_10_GOLD-COIN-SPAWNER.lua", SpecialCoinSpawner);
|
||||
CHECK_SCRIPT("scripts\\ai\\SPEC\\L_SPECIAL_10_SILVER-COIN-SPAWNER.lua", SpecialCoinSpawner);
|
||||
CHECK_SCRIPT("scripts\\ai\\SPEC\\L_SPECIAL_25_BRONZE-COIN-SPAWNER.lua", SpecialCoinSpawner);
|
||||
CHECK_SCRIPT("scripts\\ai\\SPEC\\L_SPECIAL_25_GOLD-COIN-SPAWNER.lua", SpecialCoinSpawner);
|
||||
CHECK_SCRIPT("scripts\\ai\\SPEC\\L_SPECIAL_25_SILVER-COIN-SPAWNER.lua", SpecialCoinSpawner);
|
||||
CHECK_SCRIPT("scripts\\ai\\SPEC\\L_SPECIAL_IMAGINE-POWERUP-SPAWNER.lua", SpecialPowerupSpawner);
|
||||
CHECK_SCRIPT("scripts\\ai\\SPEC\\L_SPECIAL_IMAGINE-POWERUP-SPAWNER-2PT.lua", SpecialPowerupSpawner);
|
||||
CHECK_SCRIPT("scripts\\ai\\SPEC\\L_SPECIAL_LIFE-POWERUP-SPAWNER.lua", SpecialPowerupSpawner);
|
||||
CHECK_SCRIPT("scripts\\ai\\SPEC\\L_SPECIAL_ARMOR-POWERUP-SPAWNER.lua", SpecialPowerupSpawner);
|
||||
CHECK_SCRIPT("scripts\\ai\\SPEC\\L_SPECIAL_SPEED_BUFF_SPAWNER.lua", SpecialSpeedBuffSpawner);
|
||||
CHECK_SCRIPT("scripts\\ai\\WILD\\L_WILD_GF_RAT.lua", WildAndScared);
|
||||
CHECK_SCRIPT("scripts\\ai\\WILD\\L_WILD_GF_SNAIL.lua", WildAndScared);
|
||||
CHECK_SCRIPT("scripts\\ai\\WILD\\L_WILD_GF_GLOWBUG.lua", WildGfGlowbug);
|
||||
CHECK_SCRIPT("scripts\\ai\\WILD\\L_WILD_AMBIENT_CRAB.lua", WildAmbientCrab);
|
||||
CHECK_SCRIPT("scripts\\ai\\WILD\\L_WILD_PANTS.lua", WildPants);
|
||||
CHECK_SCRIPT("scripts\\ai\\WILD\\L_WILD_NINJA_BRICKS.lua", WildNinjaBricks);
|
||||
CHECK_SCRIPT("scripts\\ai\\WILD\\L_WILD_NINJA_STUDENT.lua", WildNinjaStudent);
|
||||
CHECK_SCRIPT("scripts\\ai\\WILD\\L_WILD_NINJA_SENSEI.lua", WildNinjaSensei);
|
||||
CHECK_SCRIPT("scripts\\ai\\WILD\\L_LUP_generic_interact.lua", LupGenericInteract);
|
||||
}
|
||||
|
||||
TEST(dScriptsTests, CacheCheck) {
|
||||
Entity entity(LWOOBJID_EMPTY, EntityInfo{});
|
||||
CHECK_CACHE("scripts\\ai\\WILD\\L_LUP_generic_interact.lua");
|
||||
CHECK_CACHE("scripts\\ai\\AG\\L_AG_SHIP_PLAYER_DEATH_TRIGGER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\NP\\L_NPC_NP_SPACEMAN_BOB.lua");
|
||||
CHECK_CACHE("scripts\\ai\\AG\\L_AG_SPACE_STUFF.lua");
|
||||
CHECK_CACHE("scripts\\ai\\AG\\L_AG_SHIP_PLAYER_SHOCK_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\AG\\L_AG_IMAG_SMASHABLE.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\General\\L_STORY_BOX_INTERACT_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\General\\L_BINOCULARS.lua");
|
||||
CHECK_CACHE("scripts\\ai\\WILD\\L_ALL_CRATE_CHICKEN.lua");
|
||||
CHECK_CACHE("scripts\\ai\\NS\\WH\\L_ROCKHYDRANT_SMASHABLE.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\SS\\L_SS_MODULAR_BUILD_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\Property\\AG_Small\\L_ZONE_AG_PROPERTY.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\General\\L_POI_MISSION.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\General\\L_TOUCH_MISSION_UPDATE_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\AG\\L_ACT_SHARK_PLAYER_DEATH_TRIGGER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Enemy\\General\\L_BASE_ENEMY_MECH.lua");
|
||||
CHECK_CACHE("scripts\\zone\\AG\\L_ZONE_AG_SURVIVAL.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Objects\\L_BUFF_STATION_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\AG\\L_AG_BUS_DOOR.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Equipment\\L_MAESTROM_EXTRACTICATOR_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AG\\L_AG_CAGED_BRICKS_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AG\\L_NPC_WISP_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AG\\L_NPC_EPSILON_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\AG\\L_AG_TURRET.lua");
|
||||
CHECK_CACHE("scripts\\ai\\AG\\L_AG_TURRET_FOR_SHIP.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AG\\L_AG_LASER_SENSOR_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AG\\L_AG_MONUMENT_LASER_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\AG\\L_AG_FANS.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AG\\L_AG_MONUMENT_BIRDS.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AG\\L_REMOVE_RENTAL_GEAR.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AG\\L_NPC_NJ_ASSISTANT_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\AG\\L_AG_SALUTING_NPCS.lua");
|
||||
CHECK_CACHE("scripts\\ai\\AG\\L_AG_JET_EFFECT_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Enemy\\AG\\L_BOSS_SPIDER_QUEEN_ENEMY_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\Property\\AG_Small\\L_ENEMY_SPIDER_SPAWNER.lua");
|
||||
CHECK_CACHE("scripts/02_server/Map/Property/AG_Small/L_ENEMY_SPIDER_SPAWNER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\AG\\L_AG_QB_Elevator.lua");
|
||||
CHECK_CACHE("scripts\\ai\\PROPERTY\\AG\\L_AG_PROP_GUARD.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AG\\L_AG_BUGSPRAYER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AG\\L_NPC_AG_COURSE_STARTER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AG\\L__AG_MONUMENT_RACE_GOAL.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AG\\L__AG_MONUMENT_RACE_CANCEL.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AG_Spider_Queen\\L_ZONE_AG_SPIDER_QUEEN.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AG_Spider_Queen\\L_SPIDER_BOSS_TREASURE_CHEST_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AG\\L_NPC_COWBOY_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\Property\\AG_Med\\L_ZONE_AG_MED_PROPERTY.lua");
|
||||
CHECK_CACHE("scripts\\ai\\AG\\L_AG_STROMBIE_PROPERTY.lua");
|
||||
CHECK_CACHE("scripts\\ai\\AG\\L_AG_DARKLING_MECH.lua");
|
||||
CHECK_CACHE("scripts\\ai\\AG\\L_AG_DARK_SPIDERLING.lua");
|
||||
CHECK_CACHE("scripts\\ai\\PROPERTY\\L_PROP_GUARDS.lua");
|
||||
CHECK_CACHE("scripts\\ai\\PROPERTY\\L_PROPERTY_FX_DAMAGE.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AG\\L_NPC_PIRATE_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\AG\\L_AG_PICNIC_BLANKET.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\Property\\L_PROPERTY_BANK_INTERACT_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Enemy\\VE\\L_VE_MECH.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\VE\\L_MISSION_CONSOLE_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\VE\\L_EPSILON_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\NS\\L_NS_MODULAR_BUILD.lua");
|
||||
CHECK_CACHE("scripts\\ai\\NS\\L_NS_GET_FACTION_MISSION_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\NS\\L_NS_QB_IMAGINATION_STATUE.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NS\\CONCERT_CHOICEBUILD_MANAGER_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\NS\\L_NS_CONCERT_CHOICEBUILD.lua");
|
||||
CHECK_CACHE("scripts\\ai\\NS\\L_NS_CONCERT_QUICKBUILD.lua");
|
||||
CHECK_CACHE("scripts\\ai\\AG\\L_AG_STAGE_PLATFORMS.lua");
|
||||
CHECK_CACHE("scripts\\ai\\NS\\L_NS_CONCERT_INSTRUMENT_QB.lua");
|
||||
CHECK_CACHE("scripts\\ai\\NS\\L_NS_JONNY_FLAG_MISSION_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Objects\\L_STINKY_FISH_TARGET.lua");
|
||||
CHECK_CACHE("scripts\\zone\\PROPERTY\\NS\\L_ZONE_NS_PROPERTY.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\Property\\NS_Med\\L_ZONE_NS_MED_PROPERTY.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NS\\L_NS_TOKEN_CONSOLE_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NS\\L_NS_LUP_TELEPORT.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NS\\Waves\\L_ZONE_NS_WAVES.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Enemy\\Waves\\L_WAVES_BOSS_HAMMERLING_ENEMY_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Enemy\\Waves\\L_WAVES_BOSS_APE_ENEMY_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Enemy\\Waves\\L_WAVES_BOSS_DARK_SPIDERLING_ENEMY_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Enemy\\Waves\\L_WAVES_BOSS_HORESEMEN_ENEMY_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Minigame\\General\\L_MINIGAME_TREASURE_CHEST_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NS\\L_NS_LEGO_CLUB_DOOR.lua");
|
||||
CHECK_CACHE("scripts/ai/NS/L_CL_RING.lua");
|
||||
CHECK_CACHE("scripts\\ai\\WILD\\L_WILD_AMBIENTS.lua");
|
||||
CHECK_CACHE("scripts\\ai\\NS\\NS_PP_01\\L_NS_PP_01_TELEPORT.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\General\\L_QB_SPAWNER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\AG\\L_AG_QB_Wall.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\GF\\L_GF_TORCH.lua");
|
||||
CHECK_CACHE("scripts\\ai\\GF\\L_SPECIAL_FIREPIT.lua");
|
||||
CHECK_CACHE("scripts\\ai\\GF\\L_GF_ORGAN.lua");
|
||||
CHECK_CACHE("scripts\\ai\\GF\\L_GF_BANANA.lua");
|
||||
CHECK_CACHE("scripts\\ai\\GF\\L_GF_BANANA_CLUSTER.lua");
|
||||
CHECK_CACHE("scripts/ai/GF/L_GF_JAILKEEP_MISSION.lua");
|
||||
CHECK_CACHE("scripts\\ai\\GF\\L_TRIGGER_AMBUSH.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\GF\\L_GF_CAPTAINS_CANNON.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\GF\\L_MAST_TELEPORT.lua");
|
||||
CHECK_CACHE("scripts\\ai\\GF\\L_GF_JAIL_WALLS.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\General\\L_QB_ENEMY_STUNNER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\GF\\L_GF_PET_DIG_BUILD.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\GF\\L_SPAWN_LION_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Enemy\\General\\L_BASE_ENEMY_APE.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Enemy\\General\\L_GF_APE_SMASHING_QB.lua");
|
||||
CHECK_CACHE("scripts\\zone\\PROPERTY\\GF\\L_ZONE_GF_PROPERTY.lua");
|
||||
CHECK_CACHE("scripts\\ai\\GF\\L_GF_ARCHWAY.lua");
|
||||
CHECK_CACHE("scripts\\ai\\GF\\L_GF_MAELSTROM_GEYSER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\GF\\L_PIRATE_REP.lua");
|
||||
CHECK_CACHE("scripts\\ai\\GF\\L_GF_PARROT_CRASH.lua");
|
||||
CHECK_CACHE("scripts\\ai\\MINIGAME\\SG_GF\\SERVER\\SG_CANNON.lua");
|
||||
CHECK_CACHE("scripts\\ai\\MINIGAME\\SG_GF\\L_ZONE_SG_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\client\\ai\\PR\\L_PR_WHISTLE.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\PR\\L_PR_SEAGULL_FLY.lua");
|
||||
CHECK_CACHE("scripts\\ai\\PETS\\L_HYDRANT_SMASHABLE.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\map\\PR\\L_HYDRANT_BROKEN.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\General\\PET_DIG_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AM\\L_SKELETON_DRAGON_PET_DIG_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\client\\ai\\PR\\L_CRAB_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Pets\\L_PET_FROM_DIG_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Pets\\L_PET_FROM_OBJECT_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Pets\\L_DAMAGING_PET.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\PR\\L_SPAWN_GRYPHON_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\FV\\L_ACT_CANDLE.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\FV\\L_ENEMY_RONIN_SPAWNER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Enemy\\FV\\L_FV_MAELSTROM_CAVALRY.lua");
|
||||
CHECK_CACHE("scripts\\ai\\FV\\L_ACT_NINJA_TURRET_1.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\FV\\L_FV_HORSEMEN_TRIGGER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\FV\\L_FV_FLYING_CREVICE_DRAGON.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Enemy\\FV\\L_FV_MAELSTROM_DRAGON.lua");
|
||||
CHECK_CACHE("scripts\\ai\\FV\\L_FV_DRAGON_SMASHING_GOLEM_QB.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Enemy\\General\\L_TREASURE_CHEST_DRAGON_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\GENERAL\\L_INSTANCE_EXIT_TRANSFER_PLAYER_TO_LAST_NON_INSTANCE.lua");
|
||||
CHECK_CACHE("scripts\\ai\\FV\\L_NPC_FREE_GF_NINJAS.lua");
|
||||
CHECK_CACHE("scripts\\ai\\FV\\L_FV_PANDA_SPAWNER_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\FV\\L_FV_PANDA_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\zone\\PROPERTY\\FV\\L_ZONE_FV_PROPERTY.lua");
|
||||
CHECK_CACHE("scripts\\ai\\FV\\L_FV_BRICK_PUZZLE_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\FV\\L_FV_CONSOLE_LEFT_QUICKBUILD.lua");
|
||||
CHECK_CACHE("scripts\\ai\\FV\\L_FV_CONSOLE_RIGHT_QUICKBUILD.lua");
|
||||
CHECK_CACHE("scripts\\ai\\FV\\L_FV_FACILITY_BRICK.lua");
|
||||
CHECK_CACHE("scripts\\ai\\FV\\L_FV_FACILITY_PIPES.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\FV\\L_IMG_BRICK_CONSOLE_QB.lua");
|
||||
CHECK_CACHE("scripts\\ai\\FV\\L_ACT_PARADOX_PIPE_FIX.lua");
|
||||
CHECK_CACHE("scripts\\ai\\FV\\L_FV_NINJA_GUARDS.lua");
|
||||
CHECK_CACHE("scripts\\ai\\FV\\L_ACT_PASS_THROUGH_WALL.lua");
|
||||
CHECK_CACHE("scripts\\ai\\FV\\L_ACT_BOUNCE_OVER_WALL.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\FV\\L_NPC_FONG.lua");
|
||||
CHECK_CACHE("scripts\\ai\\FV\\L_FV_MAELSTROM_GEYSER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\FV\\Racing\\RACE_SHIP_LAP_COLUMNS_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\RACING\\OBJECTS\\FV_RACE_DRAGON_LAP1_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\RACING\\OBJECTS\\FV_RACE_DRAGON_LAP2_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\RACING\\OBJECTS\\FV_RACE_DRAGON_LAP3_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\RACING\\OBJECTS\\FV_RACE_PILLAR_ABC_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\RACING\\OBJECTS\\FV_RACE_PILLAR_D_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\FV\\Racing\\RACE_FIREBALLS.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\General\\L_EXPLODING_ASSET.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\General\\L_WISHING_WELL_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\ACT\\L_ACT_PLAYER_DEATH_TRIGGER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\General\\L_GROWING_FLOWER_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\General\\L_TOKEN_CONSOLE_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\ACT\\FootRace\\L_ACT_BASE_FOOT_RACE.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\General\\L_PROP_PLATFORM.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\VE\\L_VE_BRICKSAMPLE_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\General\\L_MAIL_BOX_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\ACT\\L_ACT_MINE.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AM\\L_WANDERING_VENDOR.lua");
|
||||
CHECK_CACHE("scripts\\ai\\RACING\\OBJECTS\\RACE_IMAGINE_CRATE_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\ACT\\L_ACT_VEHICLE_DEATH_TRIGGER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\RACING\\OBJECTS\\RACE_IMAGINE_POWERUP.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\FV\\Racing\\RACE_MAELSTROM_GEISER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\RACING\\OBJECTS\\FV_RACE_SMASH_EGG_IMAGINE_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\FV\\Racing\\FV_RACING_COLUMNS.lua");
|
||||
CHECK_CACHE("scripts\\ai\\RACING\\OBJECTS\\RACE_SMASH_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NT\\L_NT_SENTINELWALKWAY_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NT\\L_NT_PARADOXTELE_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NT\\L_NT_DARKITECT_REVEAL_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\General\\L_BANK_INTERACT_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NT\\L_NT_VENTURESPEEDPAD_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NT\\L_NT_VENTURE_CANNON_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NT\\L_NT_COMBAT_CHALLENGE_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NT\\L_NT_COMBAT_CHALLENGE_DUMMY.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NT\\\\L_NT_COMBAT_EXPLODING_TARGET.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\General\\L_BASE_INTERACT_DROP_LOOT_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NT\\L_NT_ASSEMBLYTUBE_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NT\\L_NT_PARADOX_PANEL_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NT\\L_NT_IMAG_BEAM_BUFFER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NT\\L_NT_BEAM_IMAGINATION_COLLECTORS.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NT\\L_NT_DIRT_CLOUD_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NT\\L_NT_CONSOLE_TELEPORT_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NT\\L_SPAWN_STEGO_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NT\\L_SPAWN_SABERCAT_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NT\\L_SPAWN_SHRAKE_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NT\\L_NT_DUKE_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NT\\L_NT_HAEL_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NT\\L_NT_FACTION_SPY_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NT\\L_NT_OVERBUILD_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NT\\L_NT_VANDA_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\General\\L_FORCE_VOLUME_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\General\\L_FRICTION_VOLUME_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NT\\L_NT_XRAY_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NT\\L_NT_SLEEPING_GUARD.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NT\\L_NT_IMAGIMETER_VISIBILITY_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NT\\L_NT_PIPE_VISIBILITY_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\MINIGAME\\Objects\\MINIGAME_BLUE_MARK.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NT\\L_NT_NAOMI_BREADCRUMB_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\NT\\L_NT_NAOMI_DIRT_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AM\\L_AM_CONSOLE_TELEPORT_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AM\\L_RANDOM_SPAWNER_FIN.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AM\\L_RANDOM_SPAWNER_PIT.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AM\\L_RANDOM_SPAWNER_STR.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AM\\L_RANDOM_SPAWNER_ZIP.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Enemy\\AM\\L_AM_DARKLING_MECH.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AM\\L_BRIDGE.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AM\\L_DRAW_BRIDGE.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AM\\L_SHIELD_GENERATOR.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AM\\L_SHIELD_GENERATOR_QUICKBUILD.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AM\\L_DROPSHIP_COMPUTER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AM\\L_SCROLL_READER_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AM\\L_TEMPLE_SKILL_VOLUME.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Enemy\\General\\L_ENEMY_NJ_BUFF.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Enemy\\AM\\L_AM_SKELETON_ENGINEER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AM\\L_SKULLKIN_DRILL.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AM\\L_SKULLKIN_DRILL_STAND.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AM\\L_SKULLKIN_TOWER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Enemy\\AM\\L_AM_NAMED_DARKLING_DRAGON.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Enemy\\AM\\L_AM_DARKLING_APE.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AM\\L_BLUE_X.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\AM\\L_TEAPOT_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\njhub\\L_GARMADON_CELEBRATION_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\njhub\\L_WU_NPC.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\njhub\\L_SCROLL_CHEST_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\njhub\\L_COLE_NPC.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\njhub\\L_JAY_MISSION_ITEMS.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\njhub\\L_NPC_MISSION_SPINJITZU_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\njhub\\L_ENEMY_SKELETON_SPAWNER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\General\\L_NJ_RAIL_SWITCH.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\General\\Ninjago\\L_RAIL_ACTIVATORS_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\General\\Ninjago\\L_RAIL_POST_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\General\\Ninjago\\L_ICE_RAIL_ACTIVATOR_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\njhub\\L_FALLING_TILE.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Enemy\\General\\L_ENEMY_NJ_BUFF_STUN_IMMUNITY.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\njhub\\L_IMAGINATION_SHRINE_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\njhub\\L_LIEUTENANT.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\njhub\\L_RAIN_OF_ARROWS.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\njhub\\L_CAVE_PRISON_CAGE.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\njhub\\boss_instance\\L_MONASTERY_BOSS_INSTANCE_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\njhub\\L_CATAPULT_BOUNCER_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\njhub\\L_CATAPULT_BASE_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\General\\Ninjago\\L_NJHUB_LAVA_PLAYER_DEATH_TRIGGER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\njhub\\L_MON_CORE_NOOK_DOORS.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\njhub\\L_MON_CORE_SMASHABLE_DOORS.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\njhub\\L_MON_CORE_SMASHABLE_DOORS.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\njhub\\L_FLAME_JET_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\njhub\\L_BURNING_TILE.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\njhub\\L_SPAWN_EARTH_PET_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\njhub\\L_EARTH_PET_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\njhub\\L_DRAGON_EMBLEM_CHEST_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\njhub\\L_NYA_MISSION_ITEMS.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\DLU\\DLUVanityTeleportingObject.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Enemy\\Survival\\L_AG_SURVIVAL_STROMBIE.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Enemy\\Survival\\L_AG_SURVIVAL_DARKLING_MECH.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Enemy\\Survival\\L_AG_SURVIVAL_DARK_SPIDERLING.lua");
|
||||
CHECK_CACHE("scripts\\EquipmentScripts\\Sunflower.lua");
|
||||
CHECK_CACHE("scripts/EquipmentScripts/AnvilOfArmor.lua");
|
||||
CHECK_CACHE("scripts/EquipmentScripts/FountainOfImagination.lua");
|
||||
CHECK_CACHE("scripts/EquipmentScripts/CauldronOfLife.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Equipment\\L_BOOTYDIG_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\EquipmentScripts\\PersonalFortress.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\General\\L_PROPERTY_DEVICE.lua");
|
||||
CHECK_CACHE("scripts\\02_server\\Map\\General\\L_IMAG_BACKPACK_HEALS_SERVER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\GENERAL\\L_LEGO_DIE_ROLL.lua");
|
||||
CHECK_CACHE("scripts\\EquipmentScripts\\BuccaneerValiantShip.lua");
|
||||
CHECK_CACHE("scripts\\EquipmentScripts\\FireFirstSkillonStartup.lua");
|
||||
CHECK_CACHE("scripts\\equipmenttriggers\\gempack.lua");
|
||||
CHECK_CACHE("scripts\\equipmenttriggers\\shardarmor.lua");
|
||||
CHECK_CACHE("scripts\\equipmenttriggers\\coilbackpack.lua");
|
||||
CHECK_CACHE("scripts\\EquipmentScripts\\stunImmunity.lua");
|
||||
CHECK_CACHE("scripts\\ai\\NS\\WH\\L_ROCKHYDRANT_BROKEN.lua");
|
||||
CHECK_CACHE("scripts\\ai\\NS\\L_NS_WH_FANS.lua");
|
||||
CHECK_CACHE("scripts\\zone\\LUPs\\WBL_generic_zone.lua");
|
||||
CHECK_CACHE("scripts\\ai\\FV\\L_TRIGGER_GAS.lua");
|
||||
CHECK_CACHE("scripts\\ai\\FV\\L_ACT_NINJA_SENSEI.lua");
|
||||
CHECK_CACHE("scripts\\ai\\SPEC\\L_SPECIAL_1_BRONZE-COIN-SPAWNER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\SPEC\\L_SPECIAL_1_SILVER-COIN-SPAWNER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\SPEC\\L_SPECIAL_10_BRONZE-COIN-SPAWNER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\SPEC\\L_SPECIAL_10_GOLD-COIN-SPAWNER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\SPEC\\L_SPECIAL_10_SILVER-COIN-SPAWNER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\SPEC\\L_SPECIAL_25_BRONZE-COIN-SPAWNER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\SPEC\\L_SPECIAL_25_GOLD-COIN-SPAWNER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\SPEC\\L_SPECIAL_25_SILVER-COIN-SPAWNER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\SPEC\\L_SPECIAL_IMAGINE-POWERUP-SPAWNER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\SPEC\\L_SPECIAL_IMAGINE-POWERUP-SPAWNER-2PT.lua");
|
||||
CHECK_CACHE("scripts\\ai\\SPEC\\L_SPECIAL_LIFE-POWERUP-SPAWNER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\SPEC\\L_SPECIAL_ARMOR-POWERUP-SPAWNER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\SPEC\\L_SPECIAL_SPEED_BUFF_SPAWNER.lua");
|
||||
CHECK_CACHE("scripts\\ai\\WILD\\L_WILD_GF_RAT.lua");
|
||||
CHECK_CACHE("scripts\\ai\\WILD\\L_WILD_GF_SNAIL.lua");
|
||||
CHECK_CACHE("scripts\\ai\\WILD\\L_WILD_GF_GLOWBUG.lua");
|
||||
CHECK_CACHE("scripts\\ai\\WILD\\L_WILD_AMBIENT_CRAB.lua");
|
||||
CHECK_CACHE("scripts\\ai\\WILD\\L_WILD_PANTS.lua");
|
||||
CHECK_CACHE("scripts\\ai\\WILD\\L_WILD_NINJA_BRICKS.lua");
|
||||
CHECK_CACHE("scripts\\ai\\WILD\\L_WILD_NINJA_STUDENT.lua");
|
||||
CHECK_CACHE("scripts\\ai\\WILD\\L_WILD_NINJA_SENSEI.lua");
|
||||
CHECK_CACHE("scripts\\ai\\WILD\\L_LUP_generic_interact.lua");
|
||||
}
|
||||
@@ -1,7 +1,3 @@
|
||||
2.3 - Dragonmaw functional, new slash command system, vanity system overhaul
|
||||
2.2 - Code cleanup and QoL fixes
|
||||
2.1 - Bug and crash fixes
|
||||
2.0 - Whole lot of fixed bugs and implemented features
|
||||
1.0 - Final cleanup and bug fixing for public release
|
||||
0.9 - Includes BBB without the need for a UGC server, cannon cove minigame, and bug fixes.
|
||||
0.8 - Added Ninjago! and it's various features + frakjaw minigame. AG survival now works.
|
||||
@@ -11,4 +7,4 @@
|
||||
0.4 - Added Havok to replace Bullet, Instancing, Quickbuilds, rockets, and a ton more fixes and additions.
|
||||
0.3 - FrostBurgh, Snowdrift and Snowman's Land testing version. Includes bodged systems.
|
||||
0.2 - Transfer to VS2019 & Bullet
|
||||
0.1 - Initial transfer from NixLU, up until BehaviorManager inclusion
|
||||
0.1 - Initial transfer from NixLU, up until BehaviorManager inclusion
|
||||
Reference in New Issue
Block a user