Establish constants; rename namespace

This commit is contained in:
Sezz 2023-01-25 17:38:58 +11:00
parent 3e6f5e8ef2
commit fed6acbd1f
15 changed files with 35 additions and 33 deletions

View file

@ -1,6 +1,7 @@
#include "framework.h" #include "framework.h"
#include "Game/control/control.h" #include "Game/control/control.h"
#include <chrono>
#include <process.h> #include <process.h>
#include "Game/camera.h" #include "Game/camera.h"
@ -51,14 +52,14 @@
#include "Specific/level.h" #include "Specific/level.h"
#include "Specific/setup.h" #include "Specific/setup.h"
#include "Specific/winmain.h" #include "Specific/winmain.h"
#include <chrono>
using namespace std::chrono;
using namespace TEN::Effects; using namespace TEN::Effects;
using namespace TEN::Effects::Drip; using namespace TEN::Effects::Drip;
using namespace TEN::Effects::ElectricArc;
using namespace TEN::Effects::Environment; using namespace TEN::Effects::Environment;
using namespace TEN::Effects::Explosion; using namespace TEN::Effects::Explosion;
using namespace TEN::Effects::Footprints; using namespace TEN::Effects::Footprints;
using namespace TEN::Effects::Lightning;
using namespace TEN::Effects::Smoke; using namespace TEN::Effects::Smoke;
using namespace TEN::Effects::Spark; using namespace TEN::Effects::Spark;
using namespace TEN::Entities::Generic; using namespace TEN::Entities::Generic;
@ -68,11 +69,6 @@ using namespace TEN::Floordata;
using namespace TEN::Input; using namespace TEN::Input;
using namespace TEN::Math; using namespace TEN::Math;
using namespace TEN::Renderer; using namespace TEN::Renderer;
using namespace std::chrono;
using std::string;
using std::unordered_map;
using std::vector;
int GameTimer = 0; int GameTimer = 0;
int GlobalCounter = 0; int GlobalCounter = 0;

View file

@ -8,7 +8,7 @@
using namespace TEN::Math; using namespace TEN::Math;
namespace TEN::Effects::Lightning namespace TEN::Effects::ElectricArc
{ {
std::vector<ElectricArc> ElectricArcs = {}; std::vector<ElectricArc> ElectricArcs = {};
std::vector<HelicalLaser> HelicalLasers = {}; std::vector<HelicalLaser> HelicalLasers = {};
@ -92,6 +92,10 @@ namespace TEN::Effects::Lightning
void SpawnHelicalLaser(const Vector3& origin, const Vector3& target) void SpawnHelicalLaser(const Vector3& origin, const Vector3& target)
{ {
static constexpr auto SEGMENTS_NUM_MAX = 56; static constexpr auto SEGMENTS_NUM_MAX = 56;
static constexpr auto COLOR = Vector4(0.0f, 1.0f, 0.375f, 1.0f);
static constexpr auto LIFE_MAX = 17.0f;
static constexpr auto LENGTH_END = BLOCK(4);
static constexpr auto FADE_IN = 8.0f;
static constexpr auto FLAGS = LI_THININ | LI_THINOUT; static constexpr auto FLAGS = LI_THININ | LI_THINOUT;
auto laser = HelicalLaser(); auto laser = HelicalLaser();
@ -101,12 +105,12 @@ namespace TEN::Effects::Lightning
laser.Target = target; laser.Target = target;
laser.Orientation2D = Random::GenerateAngle(); laser.Orientation2D = Random::GenerateAngle();
laser.LightPosition = origin; laser.LightPosition = origin;
laser.Color = Vector4(0.0f, 1.0f, 0.375f, 1.0f); // TODO: Check start opacity. laser.Color = COLOR;
laser.Life = 17.0f; laser.Life = LIFE_MAX;
laser.Scale = 0.0f; laser.Scale = 0.0f;
laser.Length = 0.0f; laser.Length = 0.0f;
laser.LengthEnd = BLOCK(4); laser.LengthEnd = LENGTH_END;
laser.FadeIn = 8.0f; laser.FadeIn = FADE_IN;
laser.Rotation = 0.0f; laser.Rotation = 0.0f;
laser.r = 0; laser.r = 0;
@ -119,7 +123,7 @@ namespace TEN::Effects::Lightning
auto target2 = Vector3i(target); auto target2 = Vector3i(target);
TriggerLightning(&origin2, &target2, 1, 0, laser.g, laser.b, 20, FLAGS, 19, 5); TriggerLightning(&origin2, &target2, 1, 0, laser.g, laser.b, 20, FLAGS, 19, 5);
TriggerLightning(&origin2, &target2, 1, 110, 255, 250, 20, flags, 4, 5); TriggerLightning(&origin2, &target2, 1, 110, 255, 250, 20, FLAGS, 4, 5);
TriggerLightningGlow( TriggerLightningGlow(
laser.LightPosition.x, laser.LightPosition.y, laser.LightPosition.z, laser.LightPosition.x, laser.LightPosition.y, laser.LightPosition.z,
Random::GenerateInt(64, 68) << 24, 0, laser.g / 2, laser.b / 2); // TODO: What's up with red?? Random::GenerateInt(64, 68) << 24, 0, laser.g / 2, laser.b / 2); // TODO: What's up with red??
@ -284,13 +288,15 @@ namespace TEN::Effects::Lightning
// using passed alpha value. numKnots is always 6. // using passed alpha value. numKnots is always 6.
Vector3 ElectricArcSpline(int alpha, const Vector3* knots, int numKnots) Vector3 ElectricArcSpline(int alpha, const Vector3* knots, int numKnots)
{ {
static const auto POW_2_TO_16 = pow(2, 16);
alpha *= numKnots - 3; alpha *= numKnots - 3;
int span = alpha / pow(2, 16); int span = alpha / POW_2_TO_16;
if (span >= (numKnots - 3)) if (span >= (numKnots - 3))
span = numKnots - 4; span = numKnots - 4;
float alphaNorm = (alpha - (65536 * span)) / pow(2, 16); float alphaNorm = (alpha - (65536 * span)) / POW_2_TO_16;
auto* knotPtr = &knots[span]; auto* knotPtr = &knots[span];

View file

@ -4,7 +4,7 @@
#include "Math/Math.h" #include "Math/Math.h"
namespace TEN::Effects::Lightning namespace TEN::Effects::ElectricArc
{ {
enum ElectricArcFlags enum ElectricArcFlags
{ {

View file

@ -20,10 +20,10 @@
#include "Specific/level.h" #include "Specific/level.h"
#include "Specific/setup.h" #include "Specific/setup.h"
using namespace TEN::Input; using namespace TEN::Effects::ElectricArc;
using namespace TEN::Effects::Items;
using namespace TEN::Effects::Lightning;
using namespace TEN::Effects::Environment; using namespace TEN::Effects::Environment;
using namespace TEN::Effects::Items;
using namespace TEN::Input;
namespace TEN::Entities::Effects namespace TEN::Entities::Effects
{ {

View file

@ -14,8 +14,8 @@
#include "Specific/setup.h" #include "Specific/setup.h"
using namespace TEN::Effects::Boss; using namespace TEN::Effects::Boss;
using namespace TEN::Effects::ElectricArc;
using namespace TEN::Effects::Items; using namespace TEN::Effects::Items;
using namespace TEN::Effects::Lightning;
namespace TEN::Entities::Creatures::TR3 namespace TEN::Entities::Creatures::TR3
{ {

View file

@ -12,8 +12,8 @@
#include "Game/effects/lightning.h" #include "Game/effects/lightning.h"
#include "Game/effects/debris.h" #include "Game/effects/debris.h"
using namespace TEN::Effects::ElectricArc;
using namespace TEN::Input; using namespace TEN::Input;
using namespace TEN::Effects::Lightning;
void InitialiseObelisk(short itemNumber) void InitialiseObelisk(short itemNumber)
{ {

View file

@ -25,8 +25,8 @@
#include "Specific/level.h" #include "Specific/level.h"
#include "Specific/setup.h" #include "Specific/setup.h"
using namespace TEN::Effects::ElectricArc;
using namespace TEN::Effects::Items; using namespace TEN::Effects::Items;
using namespace TEN::Effects::Lightning;
using namespace TEN::Effects::Spark; using namespace TEN::Effects::Spark;
namespace TEN::Entities::Creatures::TR5 namespace TEN::Entities::Creatures::TR5

View file

@ -19,8 +19,8 @@
#include "Specific/level.h" #include "Specific/level.h"
#include "Specific/setup.h" #include "Specific/setup.h"
using namespace TEN::Effects::ElectricArc;
using namespace TEN::Effects::Items; using namespace TEN::Effects::Items;
using namespace TEN::Effects::Lightning;
using namespace TEN::Effects::Spark; using namespace TEN::Effects::Spark;
namespace TEN::Entities::Creatures::TR5 namespace TEN::Entities::Creatures::TR5

View file

@ -21,8 +21,8 @@
#include "Specific/level.h" #include "Specific/level.h"
#include "Specific/setup.h" #include "Specific/setup.h"
using namespace TEN::Effects::ElectricArc;
using namespace TEN::Effects::Items; using namespace TEN::Effects::Items;
using namespace TEN::Effects::Lightning;
using namespace TEN::Math; using namespace TEN::Math;
// NOTES: // NOTES:

View file

@ -1,7 +1,7 @@
#pragma once #pragma once
#include "Game/effects/lightning.h" #include "Game/effects/lightning.h"
using namespace TEN::Effects::Lightning; using namespace TEN::Effects::ElectricArc;
namespace TEN::Entities::Creatures::TR5 namespace TEN::Entities::Creatures::TR5
{ {

View file

@ -18,9 +18,9 @@
#include "Specific/setup.h" #include "Specific/setup.h"
#include "Specific/level.h" #include "Specific/level.h"
using namespace TEN::Effects::Lightning; using namespace TEN::Effects::ElectricArc;
using namespace TEN::Math;
using namespace TEN::Effects::Spark; using namespace TEN::Effects::Spark;
using namespace TEN::Math;
namespace TEN::Entities::Creatures::TR5 namespace TEN::Entities::Creatures::TR5
{ {

View file

@ -51,8 +51,8 @@ class EulerAngles;
struct CAMERA_INFO; struct CAMERA_INFO;
struct RendererRectangle; struct RendererRectangle;
using namespace TEN::Effects::ElectricArc;
using namespace TEN::Gui; using namespace TEN::Gui;
using namespace TEN::Effects::Lightning;
namespace TEN::Renderer namespace TEN::Renderer
{ {

View file

@ -27,11 +27,11 @@
#include "Specific/level.h" #include "Specific/level.h"
#include "Specific/setup.h" #include "Specific/setup.h"
using namespace TEN::Effects::Lightning; using namespace TEN::Effects::ElectricArc;
using namespace TEN::Effects::Environment; using namespace TEN::Effects::Environment;
using namespace TEN::Effects::Footprints; using namespace TEN::Effects::Footprints;
using namespace TEN::Math;
using namespace TEN::Entities::Creatures::TR5; using namespace TEN::Entities::Creatures::TR5;
using namespace TEN::Math;
extern BLOOD_STRUCT Blood[MAX_SPARKS_BLOOD]; extern BLOOD_STRUCT Blood[MAX_SPARKS_BLOOD];
extern FIRE_SPARKS FireSparks[MAX_SPARKS_FIRE]; extern FIRE_SPARKS FireSparks[MAX_SPARKS_FIRE];

View file

@ -26,9 +26,9 @@ Functions to generate effects.
@pragma nostrip @pragma nostrip
*/ */
using namespace TEN::Effects::ElectricArc;
using namespace TEN::Effects::Environment; using namespace TEN::Effects::Environment;
using namespace TEN::Effects::Explosion; using namespace TEN::Effects::Explosion;
using namespace TEN::Effects::Lightning;
using namespace TEN::Effects::Spark; using namespace TEN::Effects::Spark;
namespace Effects namespace Effects
@ -95,7 +95,7 @@ namespace Effects
ScriptColor col = USE_IF_HAVE(ScriptColor, color, ScriptColor( 255, 255, 255 )); ScriptColor col = USE_IF_HAVE(ScriptColor, color, ScriptColor( 255, 255, 255 ));
TEN::Effects::Lightning::TriggerLightning(&p1, &p2, byteAmplitude, col.GetR(), col.GetG(), col.GetB(), byteLife, flags, width, segs); TriggerLightning(&p1, &p2, byteAmplitude, col.GetR(), col.GetG(), col.GetB(), byteLife, flags, width, segs);
} }
/*** Emit a particle. /*** Emit a particle.

View file

@ -12,7 +12,7 @@
#include "Vec3/Vec3.h" #include "Vec3/Vec3.h"
#include "LevelFunc.h" #include "LevelFunc.h"
using namespace TEN::Effects::Lightning; using namespace TEN::Effects::ElectricArc;
/*** /***
Saving data, triggering functions, and callbacks for level-specific scripts. Saving data, triggering functions, and callbacks for level-specific scripts.