mirror of
https://github.com/TombEngine/TombEngine.git
synced 2025-05-02 09:47:58 +03:00
Establish constants; rename namespace
This commit is contained in:
parent
3e6f5e8ef2
commit
fed6acbd1f
15 changed files with 35 additions and 33 deletions
|
@ -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;
|
||||||
|
|
|
@ -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];
|
||||||
|
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
|
|
||||||
#include "Math/Math.h"
|
#include "Math/Math.h"
|
||||||
|
|
||||||
namespace TEN::Effects::Lightning
|
namespace TEN::Effects::ElectricArc
|
||||||
{
|
{
|
||||||
enum ElectricArcFlags
|
enum ElectricArcFlags
|
||||||
{
|
{
|
||||||
|
|
|
@ -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
|
||||||
{
|
{
|
||||||
|
|
|
@ -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
|
||||||
{
|
{
|
||||||
|
|
|
@ -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)
|
||||||
{
|
{
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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:
|
||||||
|
|
|
@ -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
|
||||||
{
|
{
|
||||||
|
|
|
@ -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
|
||||||
{
|
{
|
||||||
|
|
|
@ -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
|
||||||
{
|
{
|
||||||
|
|
|
@ -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];
|
||||||
|
|
|
@ -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.
|
||||||
|
|
|
@ -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.
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue