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

View file

@ -8,7 +8,7 @@
using namespace TEN::Math;
namespace TEN::Effects::Lightning
namespace TEN::Effects::ElectricArc
{
std::vector<ElectricArc> ElectricArcs = {};
std::vector<HelicalLaser> HelicalLasers = {};
@ -92,6 +92,10 @@ namespace TEN::Effects::Lightning
void SpawnHelicalLaser(const Vector3& origin, const Vector3& target)
{
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;
auto laser = HelicalLaser();
@ -101,12 +105,12 @@ namespace TEN::Effects::Lightning
laser.Target = target;
laser.Orientation2D = Random::GenerateAngle();
laser.LightPosition = origin;
laser.Color = Vector4(0.0f, 1.0f, 0.375f, 1.0f); // TODO: Check start opacity.
laser.Life = 17.0f;
laser.Color = COLOR;
laser.Life = LIFE_MAX;
laser.Scale = 0.0f;
laser.Length = 0.0f;
laser.LengthEnd = BLOCK(4);
laser.FadeIn = 8.0f;
laser.LengthEnd = LENGTH_END;
laser.FadeIn = FADE_IN;
laser.Rotation = 0.0f;
laser.r = 0;
@ -119,7 +123,7 @@ namespace TEN::Effects::Lightning
auto target2 = Vector3i(target);
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(
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??
@ -284,13 +288,15 @@ namespace TEN::Effects::Lightning
// using passed alpha value. numKnots is always 6.
Vector3 ElectricArcSpline(int alpha, const Vector3* knots, int numKnots)
{
static const auto POW_2_TO_16 = pow(2, 16);
alpha *= numKnots - 3;
int span = alpha / pow(2, 16);
int span = alpha / POW_2_TO_16;
if (span >= (numKnots - 3))
span = numKnots - 4;
float alphaNorm = (alpha - (65536 * span)) / pow(2, 16);
float alphaNorm = (alpha - (65536 * span)) / POW_2_TO_16;
auto* knotPtr = &knots[span];

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

@ -26,9 +26,9 @@ Functions to generate effects.
@pragma nostrip
*/
using namespace TEN::Effects::ElectricArc;
using namespace TEN::Effects::Environment;
using namespace TEN::Effects::Explosion;
using namespace TEN::Effects::Lightning;
using namespace TEN::Effects::Spark;
namespace Effects
@ -95,7 +95,7 @@ namespace Effects
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.

View file

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