summaryrefslogtreecommitdiffstats
path: root/src/object/auto
diff options
context:
space:
mode:
authorPiotr Dziwinski <piotrdz@gmail.com>2012-06-13 22:48:35 +0200
committerPiotr Dziwinski <piotrdz@gmail.com>2012-06-13 22:48:35 +0200
commitb735913debff93c1a6444ec731cd4bf99ae2a5c2 (patch)
treeefa532d3b4231e5ffd6df8eddcb0ec8cf5d4b28b /src/object/auto
parentb5d16ef340208bbe1a76f33f7498fb168f6405b6 (diff)
downloadcolobot-b735913debff93c1a6444ec731cd4bf99ae2a5c2.tar.gz
colobot-b735913debff93c1a6444ec731cd4bf99ae2a5c2.tar.bz2
colobot-b735913debff93c1a6444ec731cd4bf99ae2a5c2.zip
FPOINT -> Math::Point & other math functions
- changed FPOINT to Math::Point and some functions from math module to the new implementation - moved old function and FPOINT struct declarations to math3d.cpp - removed some unused functions in math module - fixed some #include dependencies - moved #define STRICT and #define D3D_OVERLOADS to compile options
Diffstat (limited to 'src/object/auto')
-rw-r--r--src/object/auto/auto.cpp4
-rw-r--r--src/object/auto/auto.h1
-rw-r--r--src/object/auto/autobase.cpp217
-rw-r--r--src/object/auto/autoconvert.cpp47
-rw-r--r--src/object/auto/autoconvert.h2
-rw-r--r--src/object/auto/autoderrick.cpp60
-rw-r--r--src/object/auto/autodestroyer.cpp10
-rw-r--r--src/object/auto/autodestroyer.h1
-rw-r--r--src/object/auto/autoegg.cpp2
-rw-r--r--src/object/auto/autoenergy.cpp53
-rw-r--r--src/object/auto/autofactory.cpp50
-rw-r--r--src/object/auto/autoflag.cpp9
-rw-r--r--src/object/auto/autohuston.cpp8
-rw-r--r--src/object/auto/autohuston.h1
-rw-r--r--src/object/auto/autoinfo.cpp78
-rw-r--r--src/object/auto/autojostle.cpp6
-rw-r--r--src/object/auto/autokid.cpp20
-rw-r--r--src/object/auto/autolabo.cpp59
-rw-r--r--src/object/auto/automush.cpp26
-rw-r--r--src/object/auto/autonest.cpp2
-rw-r--r--src/object/auto/autonuclear.cpp42
-rw-r--r--src/object/auto/autopara.cpp24
-rw-r--r--src/object/auto/autoportico.cpp16
-rw-r--r--src/object/auto/autoradar.cpp27
-rw-r--r--src/object/auto/autorepair.cpp26
-rw-r--r--src/object/auto/autoresearch.cpp26
-rw-r--r--src/object/auto/autoroot.cpp18
-rw-r--r--src/object/auto/autosafe.cpp81
-rw-r--r--src/object/auto/autostation.cpp34
-rw-r--r--src/object/auto/autotower.cpp31
30 files changed, 470 insertions, 511 deletions
diff --git a/src/object/auto/auto.cpp b/src/object/auto/auto.cpp
index 94a8afa..7440584 100644
--- a/src/object/auto/auto.cpp
+++ b/src/object/auto/auto.cpp
@@ -14,8 +14,6 @@
// * You should have received a copy of the GNU General Public License
// * along with this program. If not, see http://www.gnu.org/licenses/.
-#define STRICT
-#define D3D_OVERLOADS
#include <windows.h>
#include <stdio.h>
@@ -176,7 +174,7 @@ bool CAuto::Abort()
bool CAuto::CreateInterface(bool bSelect)
{
CWindow* pw;
- FPOINT pos, dim, ddim;
+ Math::Point pos, dim, ddim;
float ox, oy, sx, sy;
char name[100];
diff --git a/src/object/auto/auto.h b/src/object/auto/auto.h
index 5a631ec..68fcacb 100644
--- a/src/object/auto/auto.h
+++ b/src/object/auto/auto.h
@@ -19,6 +19,7 @@
#pragma once
+#include "common/misc.h"
#include "object/object.h"
diff --git a/src/object/auto/autobase.cpp b/src/object/auto/autobase.cpp
index 54bf96f..2091091 100644
--- a/src/object/auto/autobase.cpp
+++ b/src/object/auto/autobase.cpp
@@ -14,14 +14,13 @@
// * You should have received a copy of the GNU General Public License
// * along with this program. If not, see http://www.gnu.org/licenses/.
-#define STRICT
-#define D3D_OVERLOADS
#include <windows.h>
#include <stdio.h>
#include <d3d.h>
#include "common/struct.h"
+#include "math/geometry.h"
#include "graphics/d3d/d3dengine.h"
#include "math/old/d3dmath.h"
#include "common/language.h"
@@ -132,7 +131,7 @@ bool CAutoBase::EventProcess(const Event &event)
Event newEvent;
CObject* pObj;
D3DVECTOR pos, speed, vibCir, iPos;
- FPOINT dim, p;
+ Math::Point dim, p;
Error err;
float angle, dist, time, h, len, vSpeed;
int i, max;
@@ -160,9 +159,9 @@ begin:
for ( i=0 ; i<8 ; i++ )
{
- m_object->SetAngleZ(1+i, PI/2.0f-124.0f*PI/180.0f);
- m_object->SetAngleX(10+i, -10.0f*PI/180.0f);
- m_object->SetAngleX(18+i, 10.0f*PI/180.0f);
+ m_object->SetAngleZ(1+i, Math::PI/2.0f-124.0f*Math::PI/180.0f);
+ m_object->SetAngleX(10+i, -10.0f*Math::PI/180.0f);
+ m_object->SetAngleX(18+i, 10.0f*Math::PI/180.0f);
m_object->SetPosition(10+i, D3DVECTOR(23.5f, 0.0f, -11.5f));
m_object->SetPosition(18+i, D3DVECTOR(23.5f, 0.0f, 11.5f));
}
@@ -191,9 +190,9 @@ begin:
for ( i=0 ; i<8 ; i++ )
{
- m_object->SetAngleZ(1+i, PI/2.0f-124.0f*PI/180.0f);
- m_object->SetAngleX(10+i, -10.0f*PI/180.0f);
- m_object->SetAngleX(18+i, 10.0f*PI/180.0f);
+ m_object->SetAngleZ(1+i, Math::PI/2.0f-124.0f*Math::PI/180.0f);
+ m_object->SetAngleX(10+i, -10.0f*Math::PI/180.0f);
+ m_object->SetAngleX(18+i, 10.0f*Math::PI/180.0f);
m_object->SetPosition(10+i, D3DVECTOR(23.5f, 0.0f, -11.5f));
m_object->SetPosition(18+i, D3DVECTOR(23.5f, 0.0f, 11.5f));
}
@@ -260,7 +259,7 @@ begin:
m_progress = 0.0f;
m_speed = 1.0f/BASE_TRANSIT_TIME;
- m_object->SetAngleZ(0, -PI/2.0f);
+ m_object->SetAngleZ(0, -Math::PI/2.0f);
pos = m_object->RetPosition(0);
pos.y += 10000.0f; // in space
m_finalPos = pos;
@@ -385,14 +384,14 @@ begin:
m_object->SetPosition(0, pos);
MoveCargo(); // all cargo moves
- vibCir.z = sinf(m_time*PI* 2.01f)*(PI/150.0f)+
- sinf(m_time*PI* 2.51f)*(PI/200.0f)+
- sinf(m_time*PI*19.01f)*(PI/400.0f);
- vibCir.x = sinf(m_time*PI* 2.03f)*(PI/150.0f)+
- sinf(m_time*PI* 2.52f)*(PI/200.0f)+
- sinf(m_time*PI*19.53f)*(PI/400.0f);
+ vibCir.z = sinf(m_time*Math::PI* 2.01f)*(Math::PI/150.0f)+
+ sinf(m_time*Math::PI* 2.51f)*(Math::PI/200.0f)+
+ sinf(m_time*Math::PI*19.01f)*(Math::PI/400.0f);
+ vibCir.x = sinf(m_time*Math::PI* 2.03f)*(Math::PI/150.0f)+
+ sinf(m_time*Math::PI* 2.52f)*(Math::PI/200.0f)+
+ sinf(m_time*Math::PI*19.53f)*(Math::PI/400.0f);
vibCir.y = 0.0f;
- vibCir *= Min(1.0f, (1.0f-m_progress)*3.0f);
+ vibCir *= Math::Min(1.0f, (1.0f-m_progress)*3.0f);
m_object->SetCirVibration(vibCir);
pos = m_pos;
@@ -413,15 +412,15 @@ begin:
// Dust thrown to the ground.
pos = m_pos;
- pos.x += (Rand()-0.5f)*10.0f;
- pos.z += (Rand()-0.5f)*10.0f;
- angle = Rand()*(PI*2.0f);
+ pos.x += (Math::Rand()-0.5f)*10.0f;
+ pos.z += (Math::Rand()-0.5f)*10.0f;
+ angle = Math::Rand()*(Math::PI*2.0f);
dist = m_progress*50.0f;
- p = RotatePoint(angle, dist);
+ p = Math::RotatePoint(angle, dist);
speed.x = p.x;
speed.z = p.y;
speed.y = 0.0f;
- dim.x = (Rand()*15.0f+15.0f)*m_progress;
+ dim.x = (Math::Rand()*15.0f+15.0f)*m_progress;
dim.y = dim.x;
if ( dim.x >= 1.0f )
{
@@ -432,10 +431,10 @@ begin:
pos = m_object->RetPosition(0);
pos.y += 6.0f;
h = m_terrain->RetFloorHeight(pos)/300.0f;
- speed.x = (Rand()-0.5f)*(80.0f-50.0f*h);
- speed.z = (Rand()-0.5f)*(80.0f-50.0f*h);
- speed.y = -(Rand()*(h+1.0f)*40.0f+(h+1.0f)*40.0f);
- dim.x = Rand()*2.0f+2.0f;
+ speed.x = (Math::Rand()-0.5f)*(80.0f-50.0f*h);
+ speed.z = (Math::Rand()-0.5f)*(80.0f-50.0f*h);
+ speed.y = -(Math::Rand()*(h+1.0f)*40.0f+(h+1.0f)*40.0f);
+ dim.x = Math::Rand()*2.0f+2.0f;
dim.y = dim.x;
m_particule->CreateParticule(pos, speed, dim, PARTIGAS, 2.0f, 10.0f, 2.0f);
@@ -443,13 +442,13 @@ begin:
if ( m_progress > 0.8f )
{
pos = m_pos;
- pos.x += (Rand()-0.5f)*8.0f;
- pos.z += (Rand()-0.5f)*8.0f;
+ pos.x += (Math::Rand()-0.5f)*8.0f;
+ pos.z += (Math::Rand()-0.5f)*8.0f;
pos.y += 3.0f;
- speed.x = (Rand()-0.5f)*8.0f;
- speed.z = (Rand()-0.5f)*8.0f;
+ speed.x = (Math::Rand()-0.5f)*8.0f;
+ speed.z = (Math::Rand()-0.5f)*8.0f;
speed.y = 0.0f;
- dim.x = Rand()*4.0f+4.0f;
+ dim.x = Math::Rand()*4.0f+4.0f;
dim.y = dim.x;
m_particule->CreateParticule(pos, speed, dim, PARTISMOKE3, 4.0f, 0.0f, 2.0f);
}
@@ -467,15 +466,15 @@ begin:
max = (int)(50.0f*m_engine->RetParticuleDensity());
for ( i=0 ; i<max ; i++ )
{
- angle = Rand()*(PI*2.0f);
- p = RotatePoint(angle, 46.0f);
+ angle = Math::Rand()*(Math::PI*2.0f);
+ p = Math::RotatePoint(angle, 46.0f);
pos = m_pos;
pos.x += p.x;
pos.z += p.y;
speed = D3DVECTOR(0.0f, 0.0f, 0.0f);
- dim.x = Rand()*10.0f+10.0f;
+ dim.x = Math::Rand()*10.0f+10.0f;
dim.y = dim.x;
- time = Rand()*2.0f+1.5f;
+ time = Math::Rand()*2.0f+1.5f;
m_particule->CreateParticule(pos, speed, dim, PARTICRASH, time, 0.0f, 2.0f);
}
@@ -500,13 +499,13 @@ begin:
// Black smoke from the reactor.
pos = m_pos;
- pos.x += (Rand()-0.5f)*8.0f;
- pos.z += (Rand()-0.5f)*8.0f;
+ pos.x += (Math::Rand()-0.5f)*8.0f;
+ pos.z += (Math::Rand()-0.5f)*8.0f;
pos.y += 3.0f;
- speed.x = (Rand()-0.5f)*8.0f;
- speed.z = (Rand()-0.5f)*8.0f;
+ speed.x = (Math::Rand()-0.5f)*8.0f;
+ speed.z = (Math::Rand()-0.5f)*8.0f;
speed.y = 0.0f;
- dim.x = Rand()*4.0f+4.0f;
+ dim.x = Math::Rand()*4.0f+4.0f;
dim.y = dim.x;
m_particule->CreateParticule(pos, speed, dim, PARTISMOKE3, 4.0f, 0.0f, 2.0f);
}
@@ -528,16 +527,16 @@ begin:
{
if ( m_progress < 1.0f )
{
- angle = -m_progress*124.0f*PI/180.0f;
+ angle = -m_progress*124.0f*Math::PI/180.0f;
for ( i=0 ; i<8 ; i++ )
{
- m_object->SetAngleZ(1+i, PI/2.0f+angle);
+ m_object->SetAngleZ(1+i, Math::PI/2.0f+angle);
}
if ( m_param != PARAM_PORTICO )
{
- angle = m_progress*PI*2.0f;
- p = RotatePoint(angle, -150.0f);
+ angle = m_progress*Math::PI*2.0f;
+ p = Math::RotatePoint(angle, -150.0f);
pos = m_pos;
pos.x += p.x;
pos.z += p.y;
@@ -553,23 +552,23 @@ begin:
{
for ( i=0 ; i<8 ; i++ )
{
- m_object->SetAngleZ(1+i, PI/2.0f-124.0f*PI/180.0f);
+ m_object->SetAngleZ(1+i, Math::PI/2.0f-124.0f*Math::PI/180.0f);
}
// Clash the doors with the ground.
max = (int)(20.0f*m_engine->RetParticuleDensity());
for ( i=0 ; i<max ; i++ )
{
- angle = Rand()*(20.0f*PI/180.0f)-(10.0f*PI/180.0f);
- angle += (PI/4.0f)*(rand()%8);
- p = RotatePoint(angle, 74.0f);
+ angle = Math::Rand()*(20.0f*Math::PI/180.0f)-(10.0f*Math::PI/180.0f);
+ angle += (Math::PI/4.0f)*(rand()%8);
+ p = Math::RotatePoint(angle, 74.0f);
pos = m_pos;
pos.x += p.x;
pos.z += p.y;
speed = D3DVECTOR(0.0f, 0.0f, 0.0f);
- dim.x = Rand()*8.0f+8.0f;
+ dim.x = Math::Rand()*8.0f+8.0f;
dim.y = dim.x;
- time = Rand()*2.0f+1.5f;
+ time = Math::Rand()*2.0f+1.5f;
m_particule->CreateParticule(pos, speed, dim, PARTICRASH, time, 0.0f, 2.0f);
}
@@ -592,14 +591,14 @@ begin:
{
m_object->SetPosition(10+i, D3DVECTOR(23.5f, 0.0f, len));
m_object->SetPosition(18+i, D3DVECTOR(23.5f, 0.0f, -len));
- m_object->SetAngleX(10+i, -10.0f*PI/180.0f*m_progress);
- m_object->SetAngleX(18+i, 10.0f*PI/180.0f*m_progress);
+ m_object->SetAngleX(10+i, -10.0f*Math::PI/180.0f*m_progress);
+ m_object->SetAngleX(18+i, 10.0f*Math::PI/180.0f*m_progress);
}
if ( m_param != PARAM_PORTICO )
{
- angle = m_progress*PI/2.0f;
- p = RotatePoint(angle, -150.0f);
+ angle = m_progress*Math::PI/2.0f;
+ p = Math::RotatePoint(angle, -150.0f);
pos = m_pos;
pos.x += p.x;
pos.z += p.y;
@@ -617,8 +616,8 @@ begin:
{
m_object->SetPosition(10+i, D3DVECTOR(23.5f, 0.0f, -11.5f));
m_object->SetPosition(18+i, D3DVECTOR(23.5f, 0.0f, 11.5f));
- m_object->SetAngleX(10+i, -10.0f*PI/180.0f);
- m_object->SetAngleX(18+i, 10.0f*PI/180.0f);
+ m_object->SetAngleX(10+i, -10.0f*Math::PI/180.0f);
+ m_object->SetAngleX(18+i, 10.0f*Math::PI/180.0f);
}
m_phase = ABP_LDWAIT;
@@ -671,8 +670,8 @@ begin:
{
m_object->SetPosition(10+i, D3DVECTOR(23.5f, 0.0f, len));
m_object->SetPosition(18+i, D3DVECTOR(23.5f, 0.0f, -len));
- m_object->SetAngleX(10+i, -10.0f*PI/180.0f*(1.0f-m_progress));
- m_object->SetAngleX(18+i, 10.0f*PI/180.0f*(1.0f-m_progress));
+ m_object->SetAngleX(10+i, -10.0f*Math::PI/180.0f*(1.0f-m_progress));
+ m_object->SetAngleX(18+i, 10.0f*Math::PI/180.0f*(1.0f-m_progress));
}
}
else
@@ -700,17 +699,17 @@ begin:
{
if ( m_progress < 1.0f )
{
- angle = -(1.0f-m_progress)*124.0f*PI/180.0f;
+ angle = -(1.0f-m_progress)*124.0f*Math::PI/180.0f;
for ( i=0 ; i<8 ; i++ )
{
- m_object->SetAngleZ(1+i, PI/2.0f+angle);
+ m_object->SetAngleZ(1+i, Math::PI/2.0f+angle);
}
}
else
{
for ( i=0 ; i<8 ; i++ )
{
- m_object->SetAngleZ(1+i, PI/2.0f);
+ m_object->SetAngleZ(1+i, Math::PI/2.0f);
}
m_bMotor = true; // lights the jet engine
@@ -718,16 +717,16 @@ begin:
max = (int)(20.0f*m_engine->RetParticuleDensity());
for ( i=0 ; i<max ; i++ )
{
- angle = Rand()*PI*2.0f;
- p = RotatePoint(angle, 32.0f);
+ angle = Math::Rand()*Math::PI*2.0f;
+ p = Math::RotatePoint(angle, 32.0f);
pos = m_pos;
pos.x += p.x;
pos.z += p.y;
pos.y += 85.0f;
speed = D3DVECTOR(0.0f, 0.0f, 0.0f);
- dim.x = Rand()*3.0f+3.0f;
+ dim.x = Math::Rand()*3.0f+3.0f;
dim.y = dim.x;
- time = Rand()*1.0f+1.0f;
+ time = Math::Rand()*1.0f+1.0f;
m_particule->CreateParticule(pos, speed, dim, PARTICRASH, time);
}
m_sound->Play(SOUND_BOUM, m_object->RetPosition(0));
@@ -751,8 +750,8 @@ begin:
m_sound->AddEnvelope(m_soundChannel, 0.3f, 2.0f, BASE_TAKO_TIME, SOPER_STOP);
}
- vibCir.z = sinf(m_time*PI*19.01f)*(PI/400.0f);
- vibCir.x = sinf(m_time*PI*19.53f)*(PI/400.0f);
+ vibCir.z = sinf(m_time*Math::PI*19.01f)*(Math::PI/400.0f);
+ vibCir.x = sinf(m_time*Math::PI*19.53f)*(Math::PI/400.0f);
vibCir.y = 0.0f;
vibCir *= m_progress*1.0f;
m_object->SetCirVibration(vibCir);
@@ -764,10 +763,10 @@ begin:
// Particles are ejected from the reactor.
pos = m_object->RetPosition(0);
pos.y += 6.0f;
- speed.x = (Rand()-0.5f)*160.0f;
- speed.z = (Rand()-0.5f)*160.0f;
- speed.y = -(Rand()*10.0f+10.0f);
- dim.x = Rand()*2.0f+2.0f;
+ speed.x = (Math::Rand()-0.5f)*160.0f;
+ speed.z = (Math::Rand()-0.5f)*160.0f;
+ speed.y = -(Math::Rand()*10.0f+10.0f);
+ dim.x = Math::Rand()*2.0f+2.0f;
dim.y = dim.x;
m_particule->CreateParticule(pos, speed, dim, PARTIGAS, 2.0f, 10.0f, 2.0f);
}
@@ -793,8 +792,8 @@ begin:
m_object->SetPosition(0, pos);
MoveCargo(); // all cargo moves
- vibCir.z = sinf(m_time*PI*19.01f)*(PI/400.0f);
- vibCir.x = sinf(m_time*PI*19.53f)*(PI/400.0f);
+ vibCir.z = sinf(m_time*Math::PI*19.01f)*(Math::PI/400.0f);
+ vibCir.x = sinf(m_time*Math::PI*19.53f)*(Math::PI/400.0f);
vibCir.y = 0.0f;
m_object->SetCirVibration(vibCir);
@@ -816,15 +815,15 @@ begin:
// Dust thrown to the ground.
pos = m_pos;
- pos.x += (Rand()-0.5f)*10.0f;
- pos.z += (Rand()-0.5f)*10.0f;
- angle = Rand()*(PI*2.0f);
+ pos.x += (Math::Rand()-0.5f)*10.0f;
+ pos.z += (Math::Rand()-0.5f)*10.0f;
+ angle = Math::Rand()*(Math::PI*2.0f);
dist = (1.0f-m_progress)*50.0f;
- p = RotatePoint(angle, dist);
+ p = Math::RotatePoint(angle, dist);
speed.x = p.x;
speed.z = p.y;
speed.y = 0.0f;
- dim.x = (Rand()*10.0f+10.0f)*(1.0f-m_progress);
+ dim.x = (Math::Rand()*10.0f+10.0f)*(1.0f-m_progress);
dim.y = dim.x;
if ( dim.x >= 1.0f )
{
@@ -834,22 +833,22 @@ begin:
// Particles are ejected from the reactor.
pos = m_object->RetPosition(0);
pos.y += 6.0f;
- speed.x = (Rand()-0.5f)*40.0f;
- speed.z = (Rand()-0.5f)*40.0f;
+ speed.x = (Math::Rand()-0.5f)*40.0f;
+ speed.z = (Math::Rand()-0.5f)*40.0f;
time = 5.0f+150.0f*m_progress;
- speed.y = -(Rand()*time+time);
+ speed.y = -(Math::Rand()*time+time);
time = 2.0f+m_progress*12.0f;
- dim.x = Rand()*time+time;
+ dim.x = Math::Rand()*time+time;
dim.y = dim.x;
m_particule->CreateParticule(pos, speed, dim, PARTIGAS, 2.0f, 10.0f, 2.0f);
// Black smoke from the reactor.
pos = m_object->RetPosition(0);
pos.y += 3.0f;
- speed.x = (Rand()-0.5f)*10.0f*(4.0f-m_progress*3.0f);
- speed.z = (Rand()-0.5f)*10.0f*(4.0f-m_progress*3.0f);
+ speed.x = (Math::Rand()-0.5f)*10.0f*(4.0f-m_progress*3.0f);
+ speed.z = (Math::Rand()-0.5f)*10.0f*(4.0f-m_progress*3.0f);
speed.y = 0.0f;
- dim.x = Rand()*20.0f+20.0f;
+ dim.x = Math::Rand()*20.0f+20.0f;
dim.y = dim.x;
m_particule->CreateParticule(pos, speed, dim, PARTISMOKE3, 10.0f, 0.0f, 2.0f);
}
@@ -908,15 +907,15 @@ begin:
max = (int)(50.0f*m_engine->RetParticuleDensity());
for ( i=0 ; i<max ; i++ )
{
- angle = Rand()*(PI*2.0f);
- p = RotatePoint(angle, 46.0f);
+ angle = Math::Rand()*(Math::PI*2.0f);
+ p = Math::RotatePoint(angle, 46.0f);
pos = m_pos;
pos.x += p.x;
pos.z += p.y;
speed = D3DVECTOR(0.0f, 0.0f, 0.0f);
- dim.x = Rand()*10.0f+10.0f;
+ dim.x = Math::Rand()*10.0f+10.0f;
dim.y = dim.x;
- time = Rand()*2.0f+1.5f;
+ time = Math::Rand()*2.0f+1.5f;
m_particule->CreateParticule(pos, speed, dim, PARTICRASH, time, 0.0f, 2.0f);
}
@@ -1007,15 +1006,15 @@ begin:
}
pos = D3DVECTOR(0.0f, 6.0f, 0.0f);
- speed.x = (Rand()-0.5f)*4.0f;
- speed.z = (Rand()-0.5f)*4.0f;
- speed.y = vSpeed*0.8f-(8.0f+Rand()*6.0f);
+ speed.x = (Math::Rand()-0.5f)*4.0f;
+ speed.z = (Math::Rand()-0.5f)*4.0f;
+ speed.y = vSpeed*0.8f-(8.0f+Math::Rand()*6.0f);
speed += pos;
pos = Transform(*mat, pos);
speed = Transform(*mat, speed);
speed -= pos;
- dim.x = 4.0f+Rand()*4.0f;
+ dim.x = 4.0f+Math::Rand()*4.0f;
dim.y = dim.x;
m_particule->CreateParticule(pos, speed, dim, PARTIBASE, 3.0f, 0.0f, 0.0f);
@@ -1026,7 +1025,7 @@ begin:
dim.x = 12.0f;
dim.y = dim.x;
pos = D3DVECTOR(0.0f, 7.0f, 0.0f);
- pos.x += (Rand()-0.5f)*2.0f; pos.z += (Rand()-0.5f)*2.0f;
+ pos.x += (Math::Rand()-0.5f)*2.0f; pos.z += (Math::Rand()-0.5f)*2.0f;
pos = Transform(*mat, pos);
m_particule->CreateParticule(pos, speed, dim, PARTIGAS, 1.0f, 0.0f, 0.0f);
@@ -1034,35 +1033,35 @@ begin:
dim.x = 4.0f;
dim.y = dim.x;
pos = D3DVECTOR(42.0f, 0.0f, 17.0f);
- pos.x += (Rand()-0.5f)*2.0f; pos.z += (Rand()-0.5f)*2.0f;
+ pos.x += (Math::Rand()-0.5f)*2.0f; pos.z += (Math::Rand()-0.5f)*2.0f;
pos = Transform(*mat, pos);
m_particule->CreateParticule(pos, speed, dim, PARTIGAS, 0.5f, 0.0f, 0.0f);
pos = D3DVECTOR(17.0f, 0.0f, 42.0f);
- pos.x += (Rand()-0.5f)*2.0f; pos.z += (Rand()-0.5f)*2.0f;
+ pos.x += (Math::Rand()-0.5f)*2.0f; pos.z += (Math::Rand()-0.5f)*2.0f;
pos = Transform(*mat, pos);
m_particule->CreateParticule(pos, speed, dim, PARTIGAS, 0.5f, 0.0f, 0.0f);
pos = D3DVECTOR(42.0f, 0.0f, -17.0f);
- pos.x += (Rand()-0.5f)*2.0f; pos.z += (Rand()-0.5f)*2.0f;
+ pos.x += (Math::Rand()-0.5f)*2.0f; pos.z += (Math::Rand()-0.5f)*2.0f;
pos = Transform(*mat, pos);
m_particule->CreateParticule(pos, speed, dim, PARTIGAS, 0.5f, 0.0f, 0.0f);
pos = D3DVECTOR(17.0f, 0.0f, -42.0f);
- pos.x += (Rand()-0.5f)*2.0f; pos.z += (Rand()-0.5f)*2.0f;
+ pos.x += (Math::Rand()-0.5f)*2.0f; pos.z += (Math::Rand()-0.5f)*2.0f;
pos = Transform(*mat, pos);
m_particule->CreateParticule(pos, speed, dim, PARTIGAS, 0.5f, 0.0f, 0.0f);
pos = D3DVECTOR(-42.0f, 0.0f, 17.0f);
- pos.x += (Rand()-0.5f)*2.0f; pos.z += (Rand()-0.5f)*2.0f;
+ pos.x += (Math::Rand()-0.5f)*2.0f; pos.z += (Math::Rand()-0.5f)*2.0f;
pos = Transform(*mat, pos);
m_particule->CreateParticule(pos, speed, dim, PARTIGAS, 0.5f, 0.0f, 0.0f);
pos = D3DVECTOR(-17.0f, 0.0f, 42.0f);
- pos.x += (Rand()-0.5f)*2.0f; pos.z += (Rand()-0.5f)*2.0f;
+ pos.x += (Math::Rand()-0.5f)*2.0f; pos.z += (Math::Rand()-0.5f)*2.0f;
pos = Transform(*mat, pos);
m_particule->CreateParticule(pos, speed, dim, PARTIGAS, 0.5f, 0.0f, 0.0f);
pos = D3DVECTOR(-42.0f, 0.0f, -17.0f);
- pos.x += (Rand()-0.5f)*2.0f; pos.z += (Rand()-0.5f)*2.0f;
+ pos.x += (Math::Rand()-0.5f)*2.0f; pos.z += (Math::Rand()-0.5f)*2.0f;
pos = Transform(*mat, pos);
m_particule->CreateParticule(pos, speed, dim, PARTIGAS, 0.5f, 0.0f, 0.0f);
pos = D3DVECTOR(-17.0f, 0.0f, -42.0f);
- pos.x += (Rand()-0.5f)*2.0f; pos.z += (Rand()-0.5f)*2.0f;
+ pos.x += (Math::Rand()-0.5f)*2.0f; pos.z += (Math::Rand()-0.5f)*2.0f;
pos = Transform(*mat, pos);
m_particule->CreateParticule(pos, speed, dim, PARTIGAS, 0.5f, 0.0f, 0.0f);
@@ -1138,9 +1137,9 @@ bool CAutoBase::Abort()
for ( i=0 ; i<8 ; i++ )
{
- m_object->SetAngleZ(1+i, PI/2.0f-124.0f*PI/180.0f);
- m_object->SetAngleX(10+i, -10.0f*PI/180.0f);
- m_object->SetAngleX(18+i, 10.0f*PI/180.0f);
+ m_object->SetAngleZ(1+i, Math::PI/2.0f-124.0f*Math::PI/180.0f);
+ m_object->SetAngleX(10+i, -10.0f*Math::PI/180.0f);
+ m_object->SetAngleX(18+i, 10.0f*Math::PI/180.0f);
m_object->SetPosition(10+i, D3DVECTOR(23.5f, 0.0f, -11.5f));
m_object->SetPosition(18+i, D3DVECTOR(23.5f, 0.0f, 11.5f));
}
@@ -1160,9 +1159,9 @@ bool CAutoBase::Abort()
MoveCargo(); // all cargo moves
for ( i=0 ; i<8 ; i++ )
{
- m_object->SetAngleZ(1+i, PI/2.0f-124.0f*PI/180.0f);
- m_object->SetAngleX(10+i, -10.0f*PI/180.0f);
- m_object->SetAngleX(18+i, 10.0f*PI/180.0f);
+ m_object->SetAngleZ(1+i, Math::PI/2.0f-124.0f*Math::PI/180.0f);
+ m_object->SetAngleX(10+i, -10.0f*Math::PI/180.0f);
+ m_object->SetAngleX(18+i, 10.0f*Math::PI/180.0f);
m_object->SetPosition(10+i, D3DVECTOR(23.5f, 0.0f, -11.5f));
m_object->SetPosition(18+i, D3DVECTOR(23.5f, 0.0f, 11.5f));
}
@@ -1226,7 +1225,7 @@ Error CAutoBase::RetError()
bool CAutoBase::CreateInterface(bool bSelect)
{
CWindow* pw;
- FPOINT pos, dim, ddim;
+ Math::Point pos, dim, ddim;
float ox, oy, sx, sy;
float sleep, delay, magnetic, progress;
diff --git a/src/object/auto/autoconvert.cpp b/src/object/auto/autoconvert.cpp
index 6cc94e5..75dcc9c 100644
--- a/src/object/auto/autoconvert.cpp
+++ b/src/object/auto/autoconvert.cpp
@@ -14,14 +14,13 @@
// * You should have received a copy of the GNU General Public License
// * along with this program. If not, see http://www.gnu.org/licenses/.
-#define STRICT
-#define D3D_OVERLOADS
#include <windows.h>
#include <stdio.h>
#include <d3d.h>
#include "common/struct.h"
+#include "math/geometry.h"
#include "graphics/d3d/d3dengine.h"
#include "math/old/d3dmath.h"
#include "common/event.h"
@@ -111,7 +110,7 @@ bool CAutoConvert::EventProcess(const Event &event)
{
CObject* fret;
D3DVECTOR pos, speed;
- FPOINT dim, c, p;
+ Math::Point dim, c, p;
float angle;
CAuto::EventProcess(event);
@@ -126,15 +125,15 @@ bool CAutoConvert::EventProcess(const Event &event)
{
if ( m_timeVirus <= 0.0f )
{
- m_timeVirus = 0.1f+Rand()*0.3f;
+ m_timeVirus = 0.1f+Math::Rand()*0.3f;
- angle = (Rand()-0.5f)*0.3f;
+ angle = (Math::Rand()-0.5f)*0.3f;
m_object->SetAngleY(1, angle);
m_object->SetAngleY(2, angle);
- m_object->SetAngleY(3, angle+PI);
+ m_object->SetAngleY(3, angle+Math::PI);
- m_object->SetAngleX(2, -PI*0.35f*(0.8f+Rand()*0.2f));
- m_object->SetAngleX(3, -PI*0.35f*(0.8f+Rand()*0.2f));
+ m_object->SetAngleX(2, -Math::PI*0.35f*(0.8f+Math::Rand()*0.2f));
+ m_object->SetAngleX(3, -Math::PI*0.35f*(0.8f+Math::Rand()*0.2f));
}
return true;
}
@@ -181,7 +180,7 @@ bool CAutoConvert::EventProcess(const Event &event)
m_bSoundClose = true;
m_sound->Play(SOUND_CLOSE, m_object->RetPosition(0), 1.0f, 0.8f);
}
- angle = -PI*0.35f*(1.0f-Bounce(m_progress, 0.85f, 0.05f));
+ angle = -Math::PI*0.35f*(1.0f-Math::Bounce(m_progress, 0.85f, 0.05f));
m_object->SetAngleX(2, angle);
m_object->SetAngleX(3, angle);
}
@@ -216,7 +215,7 @@ bool CAutoConvert::EventProcess(const Event &event)
}
m_object->SetAngleY(1, angle);
m_object->SetAngleY(2, angle);
- m_object->SetAngleY(3, angle+PI);
+ m_object->SetAngleY(3, angle+Math::PI);
if ( m_lastParticule+m_engine->ParticuleAdapt(0.05f) <= m_time )
{
@@ -227,12 +226,12 @@ bool CAutoConvert::EventProcess(const Event &event)
c.y = pos.z;
p.x = c.x;
p.y = c.y+6.0f;
- p = RotatePoint(c, Rand()*PI*2.0f, p);
+ p = Math::RotatePoint(c, Math::Rand()*Math::PI*2.0f, p);
pos.x = p.x;
pos.z = p.y;
pos.y += 1.0f;
speed = D3DVECTOR(0.0f, 0.0f, 0.0f);
- dim.x = Rand()*2.0f+1.0f;
+ dim.x = Math::Rand()*2.0f+1.0f;
dim.y = dim.x;
m_particule->CreateParticule(pos, speed, dim, PARTIGAS, 1.0f, 0.0f, 0.0f);
}
@@ -241,7 +240,7 @@ bool CAutoConvert::EventProcess(const Event &event)
{
m_object->SetAngleY(1, 0.0f);
m_object->SetAngleY(2, 0.0f);
- m_object->SetAngleY(3, PI);
+ m_object->SetAngleY(3, Math::PI);
fret = SearchStone(OBJECT_STONE);
if ( fret != 0 )
@@ -264,7 +263,7 @@ bool CAutoConvert::EventProcess(const Event &event)
{
if ( m_progress < 1.0f )
{
- angle = -PI*0.35f*Bounce(m_progress, 0.7f, 0.2f);
+ angle = -Math::PI*0.35f*Math::Bounce(m_progress, 0.7f, 0.2f);
m_object->SetAngleX(2, angle);
m_object->SetAngleX(3, angle);
@@ -274,11 +273,11 @@ bool CAutoConvert::EventProcess(const Event &event)
m_lastParticule = m_time;
pos = m_object->RetPosition(0);
- pos.x += (Rand()-0.5f)*6.0f;
- pos.z += (Rand()-0.5f)*6.0f;
- pos.y += Rand()*4.0f;
+ pos.x += (Math::Rand()-0.5f)*6.0f;
+ pos.z += (Math::Rand()-0.5f)*6.0f;
+ pos.y += Math::Rand()*4.0f;
speed = D3DVECTOR(0.0f, 0.0f, 0.0f);
- dim.x = Rand()*4.0f+3.0f;
+ dim.x = Math::Rand()*4.0f+3.0f;
dim.y = dim.x;
m_particule->CreateParticule(pos, speed, dim, PARTIBLUE, 1.0f, 0.0f, 0.0f);
}
@@ -286,8 +285,8 @@ bool CAutoConvert::EventProcess(const Event &event)
else
{
m_soundChannel = -1;
- m_object->SetAngleX(2, -PI*0.35f);
- m_object->SetAngleX(3, -PI*0.35f);
+ m_object->SetAngleX(2, -Math::PI*0.35f);
+ m_object->SetAngleX(3, -Math::PI*0.35f);
SetBusy(false);
UpdateInterface();
@@ -327,9 +326,9 @@ bool CAutoConvert::Abort()
m_object->SetAngleY(1, 0.0f);
m_object->SetAngleY(2, 0.0f);
- m_object->SetAngleY(3, PI);
- m_object->SetAngleX(2, -PI*0.35f);
- m_object->SetAngleX(3, -PI*0.35f);
+ m_object->SetAngleY(3, Math::PI);
+ m_object->SetAngleX(2, -Math::PI*0.35f);
+ m_object->SetAngleX(3, -Math::PI*0.35f);
m_phase = ACP_WAIT;
m_progress = 0.0f;
@@ -347,7 +346,7 @@ bool CAutoConvert::Abort()
bool CAutoConvert::CreateInterface(bool bSelect)
{
CWindow* pw;
- FPOINT pos, ddim;
+ Math::Point pos, ddim;
float ox, oy, sx, sy;
CAuto::CreateInterface(bSelect);
diff --git a/src/object/auto/autoconvert.h b/src/object/auto/autoconvert.h
index 5d610eb..10d829c 100644
--- a/src/object/auto/autoconvert.h
+++ b/src/object/auto/autoconvert.h
@@ -16,7 +16,7 @@
// autoconvert.h
-#pragma once_
+#pragma once
#include "object/auto/auto.h"
diff --git a/src/object/auto/autoderrick.cpp b/src/object/auto/autoderrick.cpp
index a7d0b5e..7f40da0 100644
--- a/src/object/auto/autoderrick.cpp
+++ b/src/object/auto/autoderrick.cpp
@@ -14,8 +14,6 @@
// * You should have received a copy of the GNU General Public License
// * along with this program. If not, see http://www.gnu.org/licenses/.
-#define STRICT
-#define D3D_OVERLOADS
#include <windows.h>
#include <stdio.h>
@@ -149,7 +147,7 @@ bool CAutoDerrick::EventProcess(const Event &event)
{
CObject* fret;
D3DVECTOR pos, speed;
- FPOINT dim;
+ Math::Point dim;
float angle, duration, factor;
CAuto::EventProcess(event);
@@ -165,14 +163,14 @@ bool CAutoDerrick::EventProcess(const Event &event)
{
if ( m_timeVirus <= 0.0f )
{
- m_timeVirus = 0.1f+Rand()*0.3f;
+ m_timeVirus = 0.1f+Math::Rand()*0.3f;
pos.x = 0.0f;
pos.z = 0.0f;
- pos.y = -2.0f*Rand();
+ pos.y = -2.0f*Math::Rand();
m_object->SetPosition(1, pos); // up / down the drill
- m_object->SetAngleY(1, Rand()*0.5f); // rotates the drill
+ m_object->SetAngleY(1, Math::Rand()*0.5f); // rotates the drill
}
return true;
}
@@ -202,10 +200,10 @@ bool CAutoDerrick::EventProcess(const Event &event)
m_lastParticule = m_time;
pos = m_object->RetPosition(0);
- speed.x = (Rand()-0.5f)*10.0f;
- speed.z = (Rand()-0.5f)*10.0f;
- speed.y = Rand()*5.0f;
- dim.x = Rand()*3.0f+2.0f;
+ speed.x = (Math::Rand()-0.5f)*10.0f;
+ speed.z = (Math::Rand()-0.5f)*10.0f;
+ speed.y = Math::Rand()*5.0f;
+ dim.x = Math::Rand()*3.0f+2.0f;
dim.y = dim.x;
m_particule->CreateParticule(pos, speed, dim, PARTICRASH, 2.0f);
}
@@ -216,15 +214,15 @@ bool CAutoDerrick::EventProcess(const Event &event)
m_lastTrack = m_time;
pos = m_object->RetPosition(0);
- speed.x = (Rand()-0.5f)*12.0f;
- speed.z = (Rand()-0.5f)*12.0f;
- speed.y = Rand()*10.0f+10.0f;
+ speed.x = (Math::Rand()-0.5f)*12.0f;
+ speed.z = (Math::Rand()-0.5f)*12.0f;
+ speed.y = Math::Rand()*10.0f+10.0f;
dim.x = 0.6f;
dim.y = dim.x;
pos.y += dim.y;
- duration = Rand()*2.0f+2.0f;
+ duration = Math::Rand()*2.0f+2.0f;
m_particule->CreateTrack(pos, speed, dim, PARTITRACK5,
- duration, Rand()*10.0f+15.0f,
+ duration, Math::Rand()*10.0f+15.0f,
duration*0.2f, 1.0f);
}
@@ -255,10 +253,10 @@ bool CAutoDerrick::EventProcess(const Event &event)
m_lastParticule = m_time;
pos = m_object->RetPosition(0);
- speed.x = (Rand()-0.5f)*10.0f;
- speed.z = (Rand()-0.5f)*10.0f;
- speed.y = Rand()*5.0f;
- dim.x = Rand()*3.0f+2.0f;
+ speed.x = (Math::Rand()-0.5f)*10.0f;
+ speed.z = (Math::Rand()-0.5f)*10.0f;
+ speed.y = Math::Rand()*5.0f;
+ dim.x = Math::Rand()*3.0f+2.0f;
dim.y = dim.x;
m_particule->CreateParticule(pos, speed, dim, PARTICRASH, 2.0f);
}
@@ -269,15 +267,15 @@ bool CAutoDerrick::EventProcess(const Event &event)
m_lastTrack = m_time;
pos = m_object->RetPosition(0);
- speed.x = (Rand()-0.5f)*12.0f;
- speed.z = (Rand()-0.5f)*12.0f;
- speed.y = Rand()*10.0f+10.0f;
+ speed.x = (Math::Rand()-0.5f)*12.0f;
+ speed.z = (Math::Rand()-0.5f)*12.0f;
+ speed.y = Math::Rand()*10.0f+10.0f;
dim.x = 0.6f;
dim.y = dim.x;
pos.y += dim.y;
- duration = Rand()*2.0f+2.0f;
+ duration = Math::Rand()*2.0f+2.0f;
m_particule->CreateTrack(pos, speed, dim, PARTITRACK5,
- duration, Rand()*10.0f+15.0f,
+ duration, Math::Rand()*10.0f+15.0f,
duration*0.2f, 1.0f);
}
@@ -344,9 +342,9 @@ bool CAutoDerrick::EventProcess(const Event &event)
if ( m_progress < 0.3f )
{
pos = fret->RetPosition(0);
- pos.x += (Rand()-0.5f)*5.0f;
- pos.z += (Rand()-0.5f)*5.0f;
- pos.y += (Rand()-0.5f)*5.0f;
+ pos.x += (Math::Rand()-0.5f)*5.0f;
+ pos.z += (Math::Rand()-0.5f)*5.0f;
+ pos.y += (Math::Rand()-0.5f)*5.0f;
speed = D3DVECTOR(0.0f, 0.0f, 0.0f);
dim.x = 3.0f;
dim.y = dim.x;
@@ -355,9 +353,9 @@ bool CAutoDerrick::EventProcess(const Event &event)
else
{
pos = fret->RetPosition(0);
- pos.x += (Rand()-0.5f)*5.0f;
- pos.z += (Rand()-0.5f)*5.0f;
- pos.y += Rand()*2.5f;
+ pos.x += (Math::Rand()-0.5f)*5.0f;
+ pos.z += (Math::Rand()-0.5f)*5.0f;
+ pos.y += Math::Rand()*2.5f;
speed = D3DVECTOR(0.0f, 0.0f, 0.0f);
dim.x = 1.0f;
dim.y = dim.x;
@@ -410,7 +408,7 @@ bool CAutoDerrick::EventProcess(const Event &event)
bool CAutoDerrick::CreateInterface(bool bSelect)
{
CWindow* pw;
- FPOINT pos, ddim;
+ Math::Point pos, ddim;
float ox, oy, sx, sy;
CAuto::CreateInterface(bSelect);
diff --git a/src/object/auto/autodestroyer.cpp b/src/object/auto/autodestroyer.cpp
index 2f999fc..b7c1221 100644
--- a/src/object/auto/autodestroyer.cpp
+++ b/src/object/auto/autodestroyer.cpp
@@ -14,8 +14,6 @@
// * You should have received a copy of the GNU General Public License
// * along with this program. If not, see http://www.gnu.org/licenses/.
-#define STRICT
-#define D3D_OVERLOADS
#include <windows.h>
#include <stdio.h>
@@ -94,7 +92,7 @@ bool CAutoDestroyer::EventProcess(const Event &event)
CObject* scrap;
CPyro* pyro;
D3DVECTOR pos, speed;
- FPOINT dim;
+ Math::Point dim;
CAuto::EventProcess(event);
@@ -108,7 +106,7 @@ bool CAutoDestroyer::EventProcess(const Event &event)
{
if ( m_timeVirus <= 0.0f )
{
- m_timeVirus = 0.1f+Rand()*0.3f;
+ m_timeVirus = 0.1f+Math::Rand()*0.3f;
}
return true;
}
@@ -164,7 +162,7 @@ bool CAutoDestroyer::EventProcess(const Event &event)
if ( m_progress < 1.0f )
{
pos = D3DVECTOR(0.0f, -10.0f, 0.0f);
- pos.y = -Bounce(m_progress, 0.3f)*10.0f;
+ pos.y = -Math::Bounce(m_progress, 0.3f)*10.0f;
m_object->SetPosition(1, pos);
}
else
@@ -220,7 +218,7 @@ bool CAutoDestroyer::EventProcess(const Event &event)
bool CAutoDestroyer::CreateInterface(bool bSelect)
{
CWindow* pw;
- FPOINT pos, ddim;
+ Math::Point pos, ddim;
float ox, oy, sx, sy;
CAuto::CreateInterface(bSelect);
diff --git a/src/object/auto/autodestroyer.h b/src/object/auto/autodestroyer.h
index ececb32..521273f 100644
--- a/src/object/auto/autodestroyer.h
+++ b/src/object/auto/autodestroyer.h
@@ -20,6 +20,7 @@
#include "common/misc.h"
+#include "object/auto/auto.h"
class CInstanceManager;
diff --git a/src/object/auto/autoegg.cpp b/src/object/auto/autoegg.cpp
index d8620ba..c6400f8 100644
--- a/src/object/auto/autoegg.cpp
+++ b/src/object/auto/autoegg.cpp
@@ -14,8 +14,6 @@
// * You should have received a copy of the GNU General Public License
// * along with this program. If not, see http://www.gnu.org/licenses/.
-#define STRICT
-#define D3D_OVERLOADS
#include <windows.h>
#include <stdio.h>
diff --git a/src/object/auto/autoenergy.cpp b/src/object/auto/autoenergy.cpp
index 75ab92a..d4f4ce9 100644
--- a/src/object/auto/autoenergy.cpp
+++ b/src/object/auto/autoenergy.cpp
@@ -14,14 +14,13 @@
// * You should have received a copy of the GNU General Public License
// * along with this program. If not, see http://www.gnu.org/licenses/.
-#define STRICT
-#define D3D_OVERLOADS
#include <windows.h>
#include <stdio.h>
#include <d3d.h>
#include "math/const.h"
+#include "math/geometry.h"
#include "common/struct.h"
#include "graphics/d3d/d3dengine.h"
#include "math/old/d3dmath.h"
@@ -124,7 +123,7 @@ bool CAutoEnergy::EventProcess(const Event &event)
{
CObject* fret;
D3DVECTOR pos, ppos, speed;
- FPOINT dim, c, p;
+ Math::Point dim, c, p;
TerrainRes res;
float big;
bool bGO;
@@ -141,17 +140,17 @@ bool CAutoEnergy::EventProcess(const Event &event)
{
if ( m_timeVirus <= 0.0f )
{
- m_timeVirus = 0.1f+Rand()*0.3f;
+ m_timeVirus = 0.1f+Math::Rand()*0.3f;
if ( m_lastParticule+m_engine->ParticuleAdapt(0.05f) <= m_time )
{
m_lastParticule = m_time;
pos = m_object->RetPosition(0);
pos.y += 10.0f;
- speed.x = (Rand()-0.5f)*10.0f;
- speed.z = (Rand()-0.5f)*10.0f;
+ speed.x = (Math::Rand()-0.5f)*10.0f;
+ speed.z = (Math::Rand()-0.5f)*10.0f;
speed.y = -7.0f;
- dim.x = Rand()*0.5f+0.5f;
+ dim.x = Math::Rand()*0.5f+0.5f;
dim.y = dim.x;
m_particule->CreateParticule(pos, speed, dim, PARTIFIREZ, 1.0f, 0.0f, 0.0f);
}
@@ -217,7 +216,7 @@ bool CAutoEnergy::EventProcess(const Event &event)
{
m_phase = AENP_BLITZ;
m_progress = 0.0f;
- m_speed = 1.0f/Rand()*1.0f+1.0f;
+ m_speed = 1.0f/Math::Rand()*1.0f+1.0f;
}
else
{
@@ -238,10 +237,10 @@ bool CAutoEnergy::EventProcess(const Event &event)
m_lastParticule = m_time;
pos = m_object->RetPosition(0);
pos.y += 10.0f;
- speed.x = (Rand()-0.5f)*1.0f;
- speed.z = (Rand()-0.5f)*1.0f;
+ speed.x = (Math::Rand()-0.5f)*1.0f;
+ speed.z = (Math::Rand()-0.5f)*1.0f;
speed.y = -7.0f;
- dim.x = Rand()*0.5f+0.5f;
+ dim.x = Math::Rand()*0.5f+0.5f;
dim.y = dim.x;
m_particule->CreateParticule(pos, speed, dim, PARTIFIREZ, 1.0f, 0.0f, 0.0f);
}
@@ -287,35 +286,35 @@ bool CAutoEnergy::EventProcess(const Event &event)
c.y = pos.z;
p.x = c.x;
p.y = c.y+2.0f;
- p = RotatePoint(c, Rand()*PI*2.0f, p);
+ p = Math::RotatePoint(c, Math::Rand()*Math::PI*2.0f, p);
pos.x = p.x;
pos.z = p.y;
- pos.y += 2.5f+Rand()*3.0f;
+ pos.y += 2.5f+Math::Rand()*3.0f;
speed = D3DVECTOR(0.0f, 0.0f, 0.0f);
- dim.x = Rand()*2.0f+1.0f;
+ dim.x = Math::Rand()*2.0f+1.0f;
dim.y = dim.x;
m_particule->CreateParticule(pos, speed, dim, PARTIGLINT, 1.0f, 0.0f, 0.0f);
pos = m_object->RetPosition(0);
pos.y += 3.0f;
- speed.x = (Rand()-0.5f)*30.0f;
- speed.z = (Rand()-0.5f)*30.0f;
- speed.y = Rand()*20.0f+10.0f;
- dim.x = Rand()*0.4f+0.4f;
+ speed.x = (Math::Rand()-0.5f)*30.0f;
+ speed.z = (Math::Rand()-0.5f)*30.0f;
+ speed.y = Math::Rand()*20.0f+10.0f;
+ dim.x = Math::Rand()*0.4f+0.4f;
dim.y = dim.x;
m_particule->CreateTrack(pos, speed, dim, PARTITRACK2, 2.0f, 50.0f, 1.2f, 1.2f);
pos = m_object->RetPosition(0);
pos.y += 10.0f;
- speed.x = (Rand()-0.5f)*1.5f;
- speed.z = (Rand()-0.5f)*1.5f;
+ speed.x = (Math::Rand()-0.5f)*1.5f;
+ speed.z = (Math::Rand()-0.5f)*1.5f;
speed.y = -6.0f;
- dim.x = Rand()*1.0f+1.0f;
+ dim.x = Math::Rand()*1.0f+1.0f;
dim.y = dim.x;
m_particule->CreateParticule(pos, speed, dim, PARTIFIREZ, 1.0f, 0.0f, 0.0f);
m_sound->Play(SOUND_ENERGY, m_object->RetPosition(0),
- 1.0f, 1.0f+Rand()*1.5f);
+ 1.0f, 1.0f+Math::Rand()*1.5f);
}
}
else
@@ -359,12 +358,12 @@ bool CAutoEnergy::EventProcess(const Event &event)
pos = m_object->RetPosition(0);
pos.y += 17.0f;
- pos.x += (Rand()-0.5f)*3.0f;
- pos.z += (Rand()-0.5f)*3.0f;
+ pos.x += (Math::Rand()-0.5f)*3.0f;
+ pos.z += (Math::Rand()-0.5f)*3.0f;
speed.x = 0.0f;
speed.z = 0.0f;
- speed.y = 6.0f+Rand()*6.0f;
- dim.x = Rand()*1.5f+1.0f;
+ speed.y = 6.0f+Math::Rand()*6.0f;
+ dim.x = Math::Rand()*1.5f+1.0f;
dim.y = dim.x;
m_particule->CreateParticule(pos, speed, dim, PARTISMOKE3, 4.0f);
}
@@ -562,7 +561,7 @@ Error CAutoEnergy::RetError()
bool CAutoEnergy::CreateInterface(bool bSelect)
{
CWindow* pw;
- FPOINT pos, ddim;
+ Math::Point pos, ddim;
float ox, oy, sx, sy;
CAuto::CreateInterface(bSelect);
diff --git a/src/object/auto/autofactory.cpp b/src/object/auto/autofactory.cpp
index 89bc399..1fc669f 100644
--- a/src/object/auto/autofactory.cpp
+++ b/src/object/auto/autofactory.cpp
@@ -14,8 +14,6 @@
// * You should have received a copy of the GNU General Public License
// * along with this program. If not, see http://www.gnu.org/licenses/.
-#define STRICT
-#define D3D_OVERLOADS
#include <windows.h>
#include <stdio.h>
@@ -130,7 +128,7 @@ bool CAutoFactory::EventProcess(const Event &event)
D3DMATRIX* mat;
CPhysics* physics;
D3DVECTOR pos, speed;
- FPOINT dim;
+ Math::Point dim;
ObjectType type;
float zoom, angle, prog;
int i;
@@ -254,7 +252,7 @@ bool CAutoFactory::EventProcess(const Event &event)
{
for ( i=0 ; i<9 ; i++ )
{
- angle = -m_progress*(PI/2.0f)+PI/2.0f;
+ angle = -m_progress*(Math::PI/2.0f)+Math::PI/2.0f;
m_object->SetAngleZ( 1+i, angle);
m_object->SetAngleZ(10+i, -angle);
}
@@ -323,7 +321,7 @@ bool CAutoFactory::EventProcess(const Event &event)
vehicle = SearchVehicle();
if ( vehicle != 0 )
{
- vehicle->SetAngleY(0, angle+PI);
+ vehicle->SetAngleY(0, angle+Math::PI);
vehicle->SetZoom(0, m_progress);
}
@@ -339,13 +337,13 @@ bool CAutoFactory::EventProcess(const Event &event)
#if 0
pos = m_fretPos;
- pos.x += (Rand()-0.5f)*20.0f;
- pos.z += (Rand()-0.5f)*20.0f;
+ pos.x += (Math::Rand()-0.5f)*20.0f;
+ pos.z += (Math::Rand()-0.5f)*20.0f;
pos.y += 1.0f;
- speed.x = (Rand()-0.5f)*12.0f;
- speed.z = (Rand()-0.5f)*12.0f;
- speed.y = Rand()*12.0f;
- dim.x = Rand()*12.0f+10.0f;
+ speed.x = (Math::Rand()-0.5f)*12.0f;
+ speed.z = (Math::Rand()-0.5f)*12.0f;
+ speed.y = Math::Rand()*12.0f;
+ dim.x = Math::Rand()*12.0f+10.0f;
dim.y = dim.x;
m_particule->CreateParticule(pos, speed, dim, PARTIBLUE, 1.0f, 0.0f, 0.0f);
#else
@@ -353,12 +351,12 @@ bool CAutoFactory::EventProcess(const Event &event)
pos = D3DVECTOR(-12.0f, 20.0f, -4.0f); // position of chimney
pos = Transform(*mat, pos);
pos.y += 2.0f;
- pos.x += (Rand()-0.5f)*2.0f;
- pos.z += (Rand()-0.5f)*2.0f;
+ pos.x += (Math::Rand()-0.5f)*2.0f;
+ pos.z += (Math::Rand()-0.5f)*2.0f;
speed.x = 0.0f;
speed.z = 0.0f;
- speed.y = 6.0f+Rand()*6.0f;
- dim.x = Rand()*1.5f+1.0f;
+ speed.y = 6.0f+Math::Rand()*6.0f;
+ dim.x = Math::Rand()*1.5f+1.0f;
dim.y = dim.x;
m_particule->CreateParticule(pos, speed, dim, PARTISMOKE3, 4.0f);
#endif
@@ -387,7 +385,7 @@ bool CAutoFactory::EventProcess(const Event &event)
vehicle->SetLock(false); // vehicle useable
//? vehicle->RetPhysics()->RetBrain()->StartTaskAdvance(16.0f);
- vehicle->SetAngleY(0, m_object->RetAngleY(0)+PI);
+ vehicle->SetAngleY(0, m_object->RetAngleY(0)+Math::PI);
vehicle->SetZoom(0, 1.0f);
}
@@ -405,7 +403,7 @@ bool CAutoFactory::EventProcess(const Event &event)
{
for ( i=0 ; i<9 ; i++ )
{
- angle = -(1.0f-m_progress)*(PI/2.0f)+PI/2.0f;
+ angle = -(1.0f-m_progress)*(Math::PI/2.0f)+Math::PI/2.0f;
m_object->SetAngleZ( 1+i, angle);
m_object->SetAngleZ(10+i, -angle);
}
@@ -415,9 +413,9 @@ bool CAutoFactory::EventProcess(const Event &event)
m_lastParticule = m_time;
pos = m_fretPos;
- pos.x += (Rand()-0.5f)*10.0f;
- pos.z += (Rand()-0.5f)*10.0f;
- pos.y += Rand()*10.0f;
+ pos.x += (Math::Rand()-0.5f)*10.0f;
+ pos.z += (Math::Rand()-0.5f)*10.0f;
+ pos.y += Math::Rand()*10.0f;
speed = D3DVECTOR(0.0f, 0.0f, 0.0f);
dim.x = 2.0f;
dim.y = dim.x;
@@ -428,8 +426,8 @@ bool CAutoFactory::EventProcess(const Event &event)
{
for ( i=0 ; i<9 ; i++ )
{
- m_object->SetAngleZ( 1+i, PI/2.0f);
- m_object->SetAngleZ(10+i, -PI/2.0f);
+ m_object->SetAngleZ( 1+i, Math::PI/2.0f);
+ m_object->SetAngleZ(10+i, -Math::PI/2.0f);
}
SoundManip(3.0f, 1.0f, 0.5f);
@@ -458,9 +456,9 @@ bool CAutoFactory::EventProcess(const Event &event)
m_lastParticule = m_time;
pos = m_fretPos;
- pos.x += (Rand()-0.5f)*10.0f;
- pos.z += (Rand()-0.5f)*10.0f;
- pos.y += Rand()*10.0f;
+ pos.x += (Math::Rand()-0.5f)*10.0f;
+ pos.z += (Math::Rand()-0.5f)*10.0f;
+ pos.y += Math::Rand()*10.0f;
speed = D3DVECTOR(0.0f, 0.0f, 0.0f);
dim.x = 2.0f;
dim.y = dim.x;
@@ -713,7 +711,7 @@ CObject* CAutoFactory::SearchVehicle()
bool CAutoFactory::CreateInterface(bool bSelect)
{
CWindow* pw;
- FPOINT pos, dim, ddim;
+ Math::Point pos, dim, ddim;
float ox, oy, sx, sy;
CAuto::CreateInterface(bSelect);
diff --git a/src/object/auto/autoflag.cpp b/src/object/auto/autoflag.cpp
index 53792cb..c75f914 100644
--- a/src/object/auto/autoflag.cpp
+++ b/src/object/auto/autoflag.cpp
@@ -14,14 +14,13 @@
// * You should have received a copy of the GNU General Public License
// * along with this program. If not, see http://www.gnu.org/licenses/.
-#define STRICT
-#define D3D_OVERLOADS
#include <windows.h>
#include <stdio.h>
#include <d3d.h>
#include "common/struct.h"
+#include "math/geometry.h"
#include "graphics/d3d/d3dengine.h"
#include "math/old/d3dmath.h"
#include "common/event.h"
@@ -82,7 +81,7 @@ void CAutoFlag::Init()
m_progress = 0.0f;
wind = m_terrain->RetWind();
- angle = RotateAngle(wind.x, -wind.z);
+ angle = Math::RotateAngle(wind.x, -wind.z);
m_object->SetAngleY(0, angle); // directs the flag in the wind
m_strong = Length(wind);
@@ -130,9 +129,9 @@ bool CAutoFlag::EventProcess(const Event &event)
m_progress += event.rTime*(1.0f/2.0f);
if ( m_progress < 1.0f )
{
- angle = sinf(m_progress*PI*8.0f)*0.3f*(1.0f-m_progress);
+ angle = sinf(m_progress*Math::PI*8.0f)*0.3f*(1.0f-m_progress);
m_object->SetAngleX(0, angle);
- angle = sinf(m_progress*PI*4.0f)*0.3f*(1.0f-m_progress);
+ angle = sinf(m_progress*Math::PI*4.0f)*0.3f*(1.0f-m_progress);
m_object->SetAngleZ(0, angle);
}
else
diff --git a/src/object/auto/autohuston.cpp b/src/object/auto/autohuston.cpp
index 6a3202b..9ff5197 100644
--- a/src/object/auto/autohuston.cpp
+++ b/src/object/auto/autohuston.cpp
@@ -14,8 +14,6 @@
// * You should have received a copy of the GNU General Public License
// * along with this program. If not, see http://www.gnu.org/licenses/.
-#define STRICT
-#define D3D_OVERLOADS
#include <windows.h>
#include <stdio.h>
@@ -221,7 +219,7 @@ void CAutoHuston::Start(int param)
bool CAutoHuston::EventProcess(const Event &event)
{
D3DVECTOR speed;
- FPOINT dim;
+ Math::Point dim;
float angle;
int i;
@@ -243,7 +241,7 @@ bool CAutoHuston::EventProcess(const Event &event)
for ( i=0 ; i<m_lensTotal ; i++ )
{
if ( m_lens[i].total != 0.0f &&
- Mod(m_time, m_lens[i].total) < m_lens[i].off )
+ Math::Mod(m_time, m_lens[i].total) < m_lens[i].off )
{
if ( m_lens[i].parti != -1 )
{
@@ -278,7 +276,7 @@ bool CAutoHuston::Abort()
bool CAutoHuston::CreateInterface(bool bSelect)
{
CWindow* pw;
- FPOINT pos, ddim;
+ Math::Point pos, ddim;
float ox, oy, sx, sy;
CAuto::CreateInterface(bSelect);
diff --git a/src/object/auto/autohuston.h b/src/object/auto/autohuston.h
index e17d04e..552def8 100644
--- a/src/object/auto/autohuston.h
+++ b/src/object/auto/autohuston.h
@@ -21,6 +21,7 @@
#include "object/auto/auto.h"
#include "common/misc.h"
+#include "graphics/common/particule.h"
class CInstanceManager;
diff --git a/src/object/auto/autoinfo.cpp b/src/object/auto/autoinfo.cpp
index 12dc2de..f96808c 100644
--- a/src/object/auto/autoinfo.cpp
+++ b/src/object/auto/autoinfo.cpp
@@ -14,8 +14,6 @@
// * You should have received a copy of the GNU General Public License
// * along with this program. If not, see http://www.gnu.org/licenses/.
-#define STRICT
-#define D3D_OVERLOADS
#include <windows.h>
#include <stdio.h>
@@ -86,7 +84,7 @@ void CAutoInfo::Init()
void CAutoInfo::Start(int param)
{
D3DVECTOR pos, speed;
- FPOINT dim;
+ Math::Point dim;
if ( param == 0 ) // instruction "receive" ?
{
@@ -144,7 +142,7 @@ void CAutoInfo::Start(int param)
bool CAutoInfo::EventProcess(const Event &event)
{
D3DVECTOR pos, speed;
- FPOINT dim;
+ Math::Point dim;
float duration, angle, rTime;
int i;
@@ -159,19 +157,19 @@ bool CAutoInfo::EventProcess(const Event &event)
{
if ( m_timeVirus <= 0.0f )
{
- m_timeVirus = 0.1f+Rand()*0.3f;
+ m_timeVirus = 0.1f+Math::Rand()*0.3f;
angle = m_object->RetAngleY(1);
- angle += Rand()*0.3f;
+ angle += Math::Rand()*0.3f;
m_object->SetAngleY(1, angle);
- m_object->SetAngleX(2, (Rand()-0.5f)*0.3f);
- m_object->SetAngleX(4, (Rand()-0.5f)*0.3f);
- m_object->SetAngleX(6, (Rand()-0.5f)*0.3f);
+ m_object->SetAngleX(2, (Math::Rand()-0.5f)*0.3f);
+ m_object->SetAngleX(4, (Math::Rand()-0.5f)*0.3f);
+ m_object->SetAngleX(6, (Math::Rand()-0.5f)*0.3f);
- m_object->SetAngleZ(2, (Rand()-0.5f)*0.3f);
- m_object->SetAngleZ(4, (Rand()-0.5f)*0.3f);
- m_object->SetAngleZ(6, (Rand()-0.5f)*0.3f);
+ m_object->SetAngleZ(2, (Math::Rand()-0.5f)*0.3f);
+ m_object->SetAngleZ(4, (Math::Rand()-0.5f)*0.3f);
+ m_object->SetAngleZ(6, (Math::Rand()-0.5f)*0.3f);
UpdateListVirus();
}
@@ -209,13 +207,13 @@ bool CAutoInfo::EventProcess(const Event &event)
{
pos = m_goal;
pos.y += 9.5f;
- speed.x = (Rand()-0.5f)*50.0f;
- speed.z = (Rand()-0.5f)*50.0f;
- speed.y = (Rand()-0.5f)*50.0f;
+ speed.x = (Math::Rand()-0.5f)*50.0f;
+ speed.z = (Math::Rand()-0.5f)*50.0f;
+ speed.y = (Math::Rand()-0.5f)*50.0f;
speed *= 0.5f+m_progress*0.5f;
dim.x = 0.6f;
dim.y = dim.x;
- duration = Rand()*0.5f+0.5f;
+ duration = Math::Rand()*0.5f+0.5f;
m_particule->CreateTrack(pos, speed, dim, PARTITRACK6,
duration, 0.0f,
duration*0.9f, 0.7f);
@@ -226,9 +224,9 @@ bool CAutoInfo::EventProcess(const Event &event)
{
m_progress += rTime*m_speed;
- m_object->SetAngleZ(2, m_progress*2.0f*PI);
- m_object->SetAngleZ(4, m_progress*2.0f*PI);
- m_object->SetAngleZ(6, m_progress*2.0f*PI);
+ m_object->SetAngleZ(2, m_progress*2.0f*Math::PI);
+ m_object->SetAngleZ(4, m_progress*2.0f*Math::PI);
+ m_object->SetAngleZ(6, m_progress*2.0f*Math::PI);
}
else
{
@@ -256,14 +254,14 @@ bool CAutoInfo::EventProcess(const Event &event)
pos = m_goal;
pos.y += 9.5f;
speed = pos;
- pos.x += (Rand()-0.5f)*40.0f;
- pos.y += (Rand()-0.5f)*40.0f;
- pos.z += (Rand()-0.5f)*40.0f;
+ pos.x += (Math::Rand()-0.5f)*40.0f;
+ pos.y += (Math::Rand()-0.5f)*40.0f;
+ pos.z += (Math::Rand()-0.5f)*40.0f;
speed = (speed-pos)*1.0f;
//? speed *= 0.5f+m_progress*0.5f;
dim.x = 0.6f;
dim.y = dim.x;
- duration = Rand()*0.5f+0.5f;
+ duration = Math::Rand()*0.5f+0.5f;
m_particule->CreateTrack(pos, speed, dim, PARTITRACK6,
duration, 0.0f,
duration*0.9f, 0.7f);
@@ -274,9 +272,9 @@ bool CAutoInfo::EventProcess(const Event &event)
{
m_progress += rTime*m_speed;
- m_object->SetAngleZ(2, m_progress*2.0f*PI);
- m_object->SetAngleZ(4, m_progress*2.0f*PI);
- m_object->SetAngleZ(6, m_progress*2.0f*PI);
+ m_object->SetAngleZ(2, m_progress*2.0f*Math::PI);
+ m_object->SetAngleZ(4, m_progress*2.0f*Math::PI);
+ m_object->SetAngleZ(6, m_progress*2.0f*Math::PI);
}
else
{
@@ -300,12 +298,12 @@ bool CAutoInfo::EventProcess(const Event &event)
m_lastParticule = m_time;
pos = m_goal;
- speed.x = (Rand()-0.5f)*5.0f;
- speed.z = (Rand()-0.5f)*5.0f;
- speed.y = 5.0f+Rand()*5.0f;
- dim.x = 5.0f+Rand()*5.0f;
+ speed.x = (Math::Rand()-0.5f)*5.0f;
+ speed.z = (Math::Rand()-0.5f)*5.0f;
+ speed.y = 5.0f+Math::Rand()*5.0f;
+ dim.x = 5.0f+Math::Rand()*5.0f;
dim.y = dim.x;
- duration = Rand()*0.5f+0.5f;
+ duration = Math::Rand()*0.5f+0.5f;
m_particule->CreateParticule(pos, speed, dim, PARTISMOKE1, 4.0f);
}
@@ -326,9 +324,9 @@ bool CAutoInfo::EventProcess(const Event &event)
m_object->SetAngleX(4, angle*0.5f);
m_object->SetAngleX(6, angle*0.5f);
- m_object->SetAngleZ(2, (Rand()-0.5f)*0.2f);
- m_object->SetAngleZ(4, (Rand()-0.5f)*0.2f);
- m_object->SetAngleZ(6, (Rand()-0.5f)*0.2f);
+ m_object->SetAngleZ(2, (Math::Rand()-0.5f)*0.2f);
+ m_object->SetAngleZ(4, (Math::Rand()-0.5f)*0.2f);
+ m_object->SetAngleZ(6, (Math::Rand()-0.5f)*0.2f);
}
else
{
@@ -348,9 +346,9 @@ bool CAutoInfo::EventProcess(const Event &event)
angle += rTime*0.5f;
m_object->SetAngleY(1, angle);
- m_object->SetAngleX(3, sinf(m_time*6.0f+PI*0.0f/3.0f)*0.3f);
- m_object->SetAngleX(5, sinf(m_time*6.0f+PI*2.0f/3.0f)*0.3f);
- m_object->SetAngleX(7, sinf(m_time*6.0f+PI*4.0f/3.0f)*0.3f);
+ m_object->SetAngleX(3, sinf(m_time*6.0f+Math::PI*0.0f/3.0f)*0.3f);
+ m_object->SetAngleX(5, sinf(m_time*6.0f+Math::PI*2.0f/3.0f)*0.3f);
+ m_object->SetAngleX(7, sinf(m_time*6.0f+Math::PI*4.0f/3.0f)*0.3f);
return true;
}
@@ -375,7 +373,7 @@ bool CAutoInfo::CreateInterface(bool bSelect)
{
CWindow* pw;
CList* pl;
- FPOINT pos, ddim;
+ Math::Point pos, ddim;
float ox, oy, sx, sy;
CAuto::CreateInterface(bSelect);
@@ -473,12 +471,12 @@ void CAutoInfo::UpdateListVirus()
pl->Flush();
for ( i=0 ; i<4 ; i++ )
{
- max = (int)(2.0f+Rand()*10.0f);
+ max = (int)(2.0f+Math::Rand()*10.0f);
for ( j=0 ; j<max ; j++ )
{
do
{
- text[j] = ' '+(int)(Rand()*94.0f);
+ text[j] = ' '+(int)(Math::Rand()*94.0f);
}
while ( text[j] == '\\' );
}
diff --git a/src/object/auto/autojostle.cpp b/src/object/auto/autojostle.cpp
index 93bdd6b..ee09d93 100644
--- a/src/object/auto/autojostle.cpp
+++ b/src/object/auto/autojostle.cpp
@@ -14,8 +14,6 @@
// * You should have received a copy of the GNU General Public License
// * along with this program. If not, see http://www.gnu.org/licenses/.
-#define STRICT
-#define D3D_OVERLOADS
#include <windows.h>
#include <stdio.h>
@@ -129,8 +127,8 @@ bool CAutoJostle::EventProcess(const Event &event)
}
factor *= m_force;
- dir.x = sinf(m_progress*PI*4.0f);
- dir.z = cosf(m_progress*PI*4.0f);
+ dir.x = sinf(m_progress*Math::PI*4.0f);
+ dir.z = cosf(m_progress*Math::PI*4.0f);
angle = sinf(m_time*10.0f)*factor*0.04f;
m_object->SetAngleX(0, angle*dir.z);
diff --git a/src/object/auto/autokid.cpp b/src/object/auto/autokid.cpp
index 99d4c81..5507d0f 100644
--- a/src/object/auto/autokid.cpp
+++ b/src/object/auto/autokid.cpp
@@ -14,8 +14,6 @@
// * You should have received a copy of the GNU General Public License
// * along with this program. If not, see http://www.gnu.org/licenses/.
-#define STRICT
-#define D3D_OVERLOADS
#include <windows.h>
#include <stdio.h>
@@ -84,15 +82,15 @@ void CAutoKid::Init()
if ( m_type == OBJECT_TEEN36 ) // trunk ?
{
pos = m_object->RetPosition(0);
- m_speed = 1.0f/(1.0f+(Mod(pos.x/10.0f-0.5f, 1.0f)*0.2f));
- m_progress = Mod(pos.x/10.0f, 1.0f);
+ m_speed = 1.0f/(1.0f+(Math::Mod(pos.x/10.0f-0.5f, 1.0f)*0.2f));
+ m_progress = Math::Mod(pos.x/10.0f, 1.0f);
}
if ( m_type == OBJECT_TEEN37 ) // boat?
{
pos = m_object->RetPosition(0);
- m_speed = 1.0f/(1.0f+(Mod(pos.x/10.0f-0.5f, 1.0f)*0.2f))*2.5f;
- m_progress = Mod(pos.x/10.0f, 1.0f);
+ m_speed = 1.0f/(1.0f+(Math::Mod(pos.x/10.0f-0.5f, 1.0f)*0.2f))*2.5f;
+ m_progress = Math::Mod(pos.x/10.0f, 1.0f);
}
if ( m_type == OBJECT_TEEN38 ) // fan?
@@ -111,7 +109,7 @@ void CAutoKid::Init()
bool CAutoKid::EventProcess(const Event &event)
{
D3DVECTOR vib, pos, speed;
- FPOINT dim;
+ Math::Point dim;
CAuto::EventProcess(event);
@@ -158,8 +156,8 @@ bool CAutoKid::EventProcess(const Event &event)
pos = m_object->RetPosition(0);
pos.y = m_water->RetLevel()+1.0f;
- pos.x += (Rand()-0.5f)*50.0f;
- pos.z += (Rand()-0.5f)*50.0f;
+ pos.x += (Math::Rand()-0.5f)*50.0f;
+ pos.z += (Math::Rand()-0.5f)*50.0f;
speed.y = 0.0f;
speed.x = 0.0f;
speed.z = 0.0f;
@@ -187,8 +185,8 @@ bool CAutoKid::EventProcess(const Event &event)
pos = m_object->RetPosition(0);
pos.y = m_water->RetLevel()+1.0f;
- pos.x += (Rand()-0.5f)*20.0f;
- pos.z += (Rand()-0.5f)*20.0f;
+ pos.x += (Math::Rand()-0.5f)*20.0f;
+ pos.z += (Math::Rand()-0.5f)*20.0f;
speed.y = 0.0f;
speed.x = 0.0f;
speed.z = 0.0f;
diff --git a/src/object/auto/autolabo.cpp b/src/object/auto/autolabo.cpp
index 7d5c576..7033318 100644
--- a/src/object/auto/autolabo.cpp
+++ b/src/object/auto/autolabo.cpp
@@ -14,15 +14,14 @@
// * You should have received a copy of the GNU General Public License
// * along with this program. If not, see http://www.gnu.org/licenses/.
-#define STRICT
-#define D3D_OVERLOADS
#include <windows.h>
#include <stdio.h>
#include <d3d.h>
-#include "math/const.h"
#include "common/struct.h"
+#include "math/const.h"
+#include "math/geometry.h"
#include "graphics/d3d/d3dengine.h"
#include "math/old/d3dmath.h"
#include "common/global.h"
@@ -130,7 +129,7 @@ bool CAutoLabo::EventProcess(const Event &event)
{
CObject* power;
D3DVECTOR pos, goal, speed;
- FPOINT dim, rot;
+ Math::Point dim, rot;
float angle;
int i;
@@ -194,7 +193,7 @@ bool CAutoLabo::EventProcess(const Event &event)
{
if ( m_timeVirus <= 0.0f )
{
- m_timeVirus = 0.1f+Rand()*0.3f;
+ m_timeVirus = 0.1f+Math::Rand()*0.3f;
}
return true;
}
@@ -216,15 +215,15 @@ bool CAutoLabo::EventProcess(const Event &event)
if ( m_progress < 1.0f )
{
angle = 80.0f-(35.0f*m_progress);
- m_object->SetAngleZ(3, angle*PI/180.0f);
- m_object->SetAngleZ(4, angle*PI/180.0f);
- m_object->SetAngleZ(5, angle*PI/180.0f);
+ m_object->SetAngleZ(3, angle*Math::PI/180.0f);
+ m_object->SetAngleZ(4, angle*Math::PI/180.0f);
+ m_object->SetAngleZ(5, angle*Math::PI/180.0f);
}
else
{
- m_object->SetAngleZ(3, 45.0f*PI/180.0f);
- m_object->SetAngleZ(4, 45.0f*PI/180.0f);
- m_object->SetAngleZ(5, 45.0f*PI/180.0f);
+ m_object->SetAngleZ(3, 45.0f*Math::PI/180.0f);
+ m_object->SetAngleZ(4, 45.0f*Math::PI/180.0f);
+ m_object->SetAngleZ(5, 45.0f*Math::PI/180.0f);
SoundManip(1.5f, 1.0f, 0.7f);
m_phase = ALAP_OPEN2;
@@ -257,7 +256,7 @@ bool CAutoLabo::EventProcess(const Event &event)
{
if ( m_progress < 1.0f )
{
- angle = (1.0f-m_progress)*PI/2.0f;
+ angle = (1.0f-m_progress)*Math::PI/2.0f;
m_object->SetAngleZ(1, angle);
}
else
@@ -273,7 +272,7 @@ bool CAutoLabo::EventProcess(const Event &event)
{
m_partiRank[i] = m_particule->CreateRay(pos, goal,
PARTIRAY2,
- FPOINT(2.9f, 2.9f),
+ Math::Point(2.9f, 2.9f),
LABO_DELAY);
}
@@ -320,14 +319,14 @@ bool CAutoLabo::EventProcess(const Event &event)
angle += m_object->RetAngleY(0);
for ( i=0 ; i<3 ; i++ )
{
- rot = RotatePoint(-angle, -4.0f);
+ rot = Math::RotatePoint(-angle, -4.0f);
pos = m_object->RetPosition(0);
pos.x += rot.x;
pos.z += rot.y;
pos.y += 3.0f+4.0f;;
m_particule->SetPosition(m_partiRank[i], pos); // adjusts ray
- angle += PI*2.0f/3.0f;
+ angle += Math::PI*2.0f/3.0f;
}
if ( m_lastParticule+m_engine->ParticuleAdapt(0.05f) <= m_time )
@@ -339,12 +338,12 @@ bool CAutoLabo::EventProcess(const Event &event)
{
pos = m_object->RetPosition(0);
pos.y += 3.0f;
- pos.x += (Rand()-0.5f)*2.0f;
- pos.z += (Rand()-0.5f)*2.0f;
- speed.y = Rand()*5.0f+5.0f;
- speed.x = (Rand()-0.5f)*10.0f;
- speed.z = (Rand()-0.5f)*10.0f;
- dim.x = Rand()*0.4f*m_progress+1.0f;
+ pos.x += (Math::Rand()-0.5f)*2.0f;
+ pos.z += (Math::Rand()-0.5f)*2.0f;
+ speed.y = Math::Rand()*5.0f+5.0f;
+ speed.x = (Math::Rand()-0.5f)*10.0f;
+ speed.z = (Math::Rand()-0.5f)*10.0f;
+ dim.x = Math::Rand()*0.4f*m_progress+1.0f;
dim.y = dim.x;
m_particule->CreateTrack(pos, speed, dim, PARTITRACK2,
2.0f+2.0f*m_progress, 10.0f, 1.5f, 1.4f);
@@ -376,12 +375,12 @@ bool CAutoLabo::EventProcess(const Event &event)
{
if ( m_progress < 1.0f )
{
- angle = m_progress*PI/2.0f;
+ angle = m_progress*Math::PI/2.0f;
m_object->SetAngleZ(1, angle);
}
else
{
- m_object->SetAngleZ(1, PI/2.0f);
+ m_object->SetAngleZ(1, Math::PI/2.0f);
SoundManip(1.5f, 1.0f, 0.7f);
m_phase = ALAP_CLOSE2;
@@ -415,15 +414,15 @@ bool CAutoLabo::EventProcess(const Event &event)
if ( m_progress < 1.0f )
{
angle = 45.0f+(35.0f*m_progress);
- m_object->SetAngleZ(3, angle*PI/180.0f);
- m_object->SetAngleZ(4, angle*PI/180.0f);
- m_object->SetAngleZ(5, angle*PI/180.0f);
+ m_object->SetAngleZ(3, angle*Math::PI/180.0f);
+ m_object->SetAngleZ(4, angle*Math::PI/180.0f);
+ m_object->SetAngleZ(5, angle*Math::PI/180.0f);
}
else
{
- m_object->SetAngleZ(3, 80.0f*PI/180.0f);
- m_object->SetAngleZ(4, 80.0f*PI/180.0f);
- m_object->SetAngleZ(5, 80.0f*PI/180.0f);
+ m_object->SetAngleZ(3, 80.0f*Math::PI/180.0f);
+ m_object->SetAngleZ(4, 80.0f*Math::PI/180.0f);
+ m_object->SetAngleZ(5, 80.0f*Math::PI/180.0f);
SetBusy(false);
UpdateInterface();
@@ -464,7 +463,7 @@ Error CAutoLabo::RetError()
bool CAutoLabo::CreateInterface(bool bSelect)
{
CWindow* pw;
- FPOINT pos, dim, ddim;
+ Math::Point pos, dim, ddim;
float ox, oy, sx, sy;
CAuto::CreateInterface(bSelect);
diff --git a/src/object/auto/automush.cpp b/src/object/auto/automush.cpp
index 45aa019..44272d0 100644
--- a/src/object/auto/automush.cpp
+++ b/src/object/auto/automush.cpp
@@ -14,8 +14,6 @@
// * You should have received a copy of the GNU General Public License
// * along with this program. If not, see http://www.gnu.org/licenses/.
-#define STRICT
-#define D3D_OVERLOADS
#include <windows.h>
#include <stdio.h>
@@ -82,7 +80,7 @@ void CAutoMush::Init()
bool CAutoMush::EventProcess(const Event &event)
{
D3DVECTOR pos, speed, dir;
- FPOINT dim;
+ Math::Point dim;
float factor, zoom, size, angle;
int i, channel;
@@ -104,7 +102,7 @@ bool CAutoMush::EventProcess(const Event &event)
{
m_phase = AMP_WAIT;
m_progress = 0.0f;
- m_speed = 1.0f/(2.0f+Rand()*2.0f);
+ m_speed = 1.0f/(2.0f+Math::Rand()*2.0f);
}
else
{
@@ -161,9 +159,9 @@ bool CAutoMush::EventProcess(const Event &event)
{
pos = m_object->RetPosition(0);
pos.y += 5.0f;
- speed.x = (Rand()-0.5f)*200.0f;
- speed.z = (Rand()-0.5f)*200.0f;
- speed.y = -(20.0f+Rand()*20.0f);
+ speed.x = (Math::Rand()-0.5f)*200.0f;
+ speed.z = (Math::Rand()-0.5f)*200.0f;
+ speed.y = -(20.0f+Math::Rand()*20.0f);
dim.x = 1.0f;
dim.y = dim.x;
channel = m_particule->CreateParticule(pos, speed, dim, PARTIGUN2, 2.0f, 100.0f, 0.0f);
@@ -189,10 +187,10 @@ bool CAutoMush::EventProcess(const Event &event)
pos = m_object->RetPosition(0);
pos.y += 5.0f;
- speed.x = (Rand()-0.5f)*4.0f;
- speed.z = (Rand()-0.5f)*4.0f;
- speed.y = -(0.5f+Rand()*0.5f);
- dim.x = Rand()*2.5f+2.0f;
+ speed.x = (Math::Rand()-0.5f)*4.0f;
+ speed.z = (Math::Rand()-0.5f)*4.0f;
+ speed.y = -(0.5f+Math::Rand()*0.5f);
+ dim.x = Math::Rand()*2.5f+2.0f;
dim.y = dim.x;
m_particule->CreateParticule(pos, speed, dim, PARTISMOKE3, 4.0f, 0.0f, 0.0f);
}
@@ -201,14 +199,14 @@ bool CAutoMush::EventProcess(const Event &event)
{
m_phase = AMP_WAIT;
m_progress = 0.0f;
- m_speed = 1.0f/(2.0f+Rand()*2.0f);
+ m_speed = 1.0f/(2.0f+Math::Rand()*2.0f);
}
}
if ( factor != 0.0f || size != 1.0f )
{
- dir.x = sinf(m_time*PI*4.0f);
- dir.z = cosf(m_time*PI*4.0f);
+ dir.x = sinf(m_time*Math::PI*4.0f);
+ dir.z = cosf(m_time*Math::PI*4.0f);
angle = sinf(m_time*10.0f)*factor*0.04f;
m_object->SetAngleX(0, angle*dir.z);
diff --git a/src/object/auto/autonest.cpp b/src/object/auto/autonest.cpp
index a9226ac..a566444 100644
--- a/src/object/auto/autonest.cpp
+++ b/src/object/auto/autonest.cpp
@@ -14,8 +14,6 @@
// * You should have received a copy of the GNU General Public License
// * along with this program. If not, see http://www.gnu.org/licenses/.
-#define STRICT
-#define D3D_OVERLOADS
#include <windows.h>
#include <stdio.h>
diff --git a/src/object/auto/autonuclear.cpp b/src/object/auto/autonuclear.cpp
index 5139b9b..49ae0bd 100644
--- a/src/object/auto/autonuclear.cpp
+++ b/src/object/auto/autonuclear.cpp
@@ -14,8 +14,6 @@
// * You should have received a copy of the GNU General Public License
// * along with this program. If not, see http://www.gnu.org/licenses/.
-#define STRICT
-#define D3D_OVERLOADS
#include <windows.h>
#include <stdio.h>
@@ -121,7 +119,7 @@ bool CAutoNuclear::EventProcess(const Event &event)
CObject* fret;
D3DMATRIX* mat;
D3DVECTOR pos, goal, speed;
- FPOINT dim, rot;
+ Math::Point dim, rot;
float angle;
int i, max;
@@ -137,7 +135,7 @@ bool CAutoNuclear::EventProcess(const Event &event)
{
if ( m_timeVirus <= 0.0f )
{
- m_timeVirus = 0.1f+Rand()*0.3f;
+ m_timeVirus = 0.1f+Math::Rand()*0.3f;
}
return true;
}
@@ -176,7 +174,7 @@ bool CAutoNuclear::EventProcess(const Event &event)
{
if ( m_progress < 1.0f )
{
- angle = (1.0f-m_progress)*(135.0f*PI/180.0f);
+ angle = (1.0f-m_progress)*(135.0f*Math::PI/180.0f);
m_object->SetAngleZ(1, angle);
}
else
@@ -189,12 +187,12 @@ bool CAutoNuclear::EventProcess(const Event &event)
{
pos.x = 27.0f;
pos.y = 0.0f;
- pos.z = (Rand()-0.5f)*8.0f;
+ pos.z = (Math::Rand()-0.5f)*8.0f;
pos = Transform(*mat, pos);
speed.y = 0.0f;
speed.x = 0.0f;
speed.z = 0.0f;
- dim.x = Rand()*1.0f+1.0f;
+ dim.x = Math::Rand()*1.0f+1.0f;
dim.y = dim.x;
m_particule->CreateParticule(pos, speed, dim, PARTICRASH);
}
@@ -221,19 +219,19 @@ bool CAutoNuclear::EventProcess(const Event &event)
pos = m_object->RetPosition(0);
pos.y += 30.0f;
- pos.x += (Rand()-0.5f)*6.0f;
- pos.z += (Rand()-0.5f)*6.0f;
- speed.y = Rand()*15.0f+15.0f;
+ pos.x += (Math::Rand()-0.5f)*6.0f;
+ pos.z += (Math::Rand()-0.5f)*6.0f;
+ speed.y = Math::Rand()*15.0f+15.0f;
speed.x = 0.0f;
speed.z = 0.0f;
- dim.x = Rand()*8.0f+8.0f;
+ dim.x = Math::Rand()*8.0f+8.0f;
dim.y = dim.x;
m_particule->CreateParticule(pos, speed, dim, PARTICRASH);
pos = m_pos;
- speed.x = (Rand()-0.5f)*20.0f;
- speed.y = (Rand()-0.5f)*20.0f;
- speed.z = (Rand()-0.5f)*20.0f;
+ speed.x = (Math::Rand()-0.5f)*20.0f;
+ speed.y = (Math::Rand()-0.5f)*20.0f;
+ speed.z = (Math::Rand()-0.5f)*20.0f;
dim.x = 2.0f;
dim.y = dim.x;
m_particule->CreateParticule(pos, speed, dim, PARTIBLITZ, 1.0f, 0.0f, 0.0f);
@@ -255,15 +253,15 @@ bool CAutoNuclear::EventProcess(const Event &event)
for ( i=0 ; i<max ; i++ )
{
pos = m_pos;
- pos.x += (Rand()-0.5f)*3.0f;
- pos.y += (Rand()-0.5f)*3.0f;
- pos.z += (Rand()-0.5f)*3.0f;
+ pos.x += (Math::Rand()-0.5f)*3.0f;
+ pos.y += (Math::Rand()-0.5f)*3.0f;
+ pos.z += (Math::Rand()-0.5f)*3.0f;
speed.y = 0.0f;
speed.x = 0.0f;
speed.z = 0.0f;
- dim.x = Rand()*2.0f+2.0f;
+ dim.x = Math::Rand()*2.0f+2.0f;
dim.y = dim.x;
- m_particule->CreateParticule(pos, speed, dim, PARTIBLUE, Rand()*5.0f+5.0f, 0.0f, 0.0f);
+ m_particule->CreateParticule(pos, speed, dim, PARTIBLUE, Math::Rand()*5.0f+5.0f, 0.0f, 0.0f);
}
m_sound->Play(SOUND_OPEN, m_object->RetPosition(0), 1.0f, 1.4f);
@@ -278,12 +276,12 @@ bool CAutoNuclear::EventProcess(const Event &event)
{
if ( m_progress < 1.0f )
{
- angle = m_progress*(135.0f*PI/180.0f);
+ angle = m_progress*(135.0f*Math::PI/180.0f);
m_object->SetAngleZ(1, angle);
}
else
{
- m_object->SetAngleZ(1, 135.0f*PI/180.0f);
+ m_object->SetAngleZ(1, 135.0f*Math::PI/180.0f);
SetBusy(false);
UpdateInterface();
@@ -305,7 +303,7 @@ bool CAutoNuclear::EventProcess(const Event &event)
bool CAutoNuclear::CreateInterface(bool bSelect)
{
CWindow* pw;
- FPOINT pos, ddim;
+ Math::Point pos, ddim;
float ox, oy, sx, sy;
CAuto::CreateInterface(bSelect);
diff --git a/src/object/auto/autopara.cpp b/src/object/auto/autopara.cpp
index 1bc79ac..46a34f9 100644
--- a/src/object/auto/autopara.cpp
+++ b/src/object/auto/autopara.cpp
@@ -14,8 +14,6 @@
// * You should have received a copy of the GNU General Public License
// * along with this program. If not, see http://www.gnu.org/licenses/.
-#define STRICT
-#define D3D_OVERLOADS
#include <windows.h>
#include <stdio.h>
@@ -113,7 +111,7 @@ void CAutoPara::StartBlitz()
bool CAutoPara::EventProcess(const Event &event)
{
D3DVECTOR pos, speed;
- FPOINT dim;
+ Math::Point dim;
int i;
CAuto::EventProcess(event);
@@ -128,7 +126,7 @@ bool CAutoPara::EventProcess(const Event &event)
{
if ( m_timeVirus <= 0.0f )
{
- m_timeVirus = 0.1f+Rand()*0.3f;
+ m_timeVirus = 0.1f+Math::Rand()*0.3f;
}
return true;
}
@@ -146,12 +144,12 @@ bool CAutoPara::EventProcess(const Event &event)
for ( i=0 ; i<10 ; i++ )
{
pos = m_object->RetPosition(0);
- pos.x += (Rand()-0.5f)*m_progress*40.0f;
- pos.z += (Rand()-0.5f)*m_progress*40.0f;
+ pos.x += (Math::Rand()-0.5f)*m_progress*40.0f;
+ pos.z += (Math::Rand()-0.5f)*m_progress*40.0f;
pos.y += 50.0f-m_progress*50.0f;
- speed.x = (Rand()-0.5f)*20.0f;
- speed.z = (Rand()-0.5f)*20.0f;
- speed.y = 5.0f+Rand()*5.0f;
+ speed.x = (Math::Rand()-0.5f)*20.0f;
+ speed.z = (Math::Rand()-0.5f)*20.0f;
+ speed.y = 5.0f+Math::Rand()*5.0f;
dim.x = 2.0f;
dim.y = dim.x;
m_particule->CreateParticule(pos, speed, dim, PARTIBLITZ, 1.0f, 20.0f, 0.5f);
@@ -178,9 +176,9 @@ bool CAutoPara::EventProcess(const Event &event)
{
pos = m_object->RetPosition(0);
pos.y += 16.0f;
- speed.x = (Rand()-0.5f)*10.0f;
- speed.z = (Rand()-0.5f)*10.0f;
- speed.y = -Rand()*30.0f;
+ speed.x = (Math::Rand()-0.5f)*10.0f;
+ speed.z = (Math::Rand()-0.5f)*10.0f;
+ speed.y = -Math::Rand()*30.0f;
dim.x = 1.0f;
dim.y = dim.x;
m_particule->CreateParticule(pos, speed, dim, PARTIBLITZ, 1.0f, 0.0f, 0.0f);
@@ -206,7 +204,7 @@ bool CAutoPara::EventProcess(const Event &event)
bool CAutoPara::CreateInterface(bool bSelect)
{
CWindow* pw;
- FPOINT pos, ddim;
+ Math::Point pos, ddim;
float ox, oy, sx, sy;
CAuto::CreateInterface(bSelect);
diff --git a/src/object/auto/autoportico.cpp b/src/object/auto/autoportico.cpp
index 5c4a09c..cedb1d7 100644
--- a/src/object/auto/autoportico.cpp
+++ b/src/object/auto/autoportico.cpp
@@ -14,8 +14,6 @@
// * You should have received a copy of the GNU General Public License
// * along with this program. If not, see http://www.gnu.org/licenses/.
-#define STRICT
-#define D3D_OVERLOADS
#include <windows.h>
#include <stdio.h>
@@ -48,12 +46,12 @@ const int PARAM_DEPOSE = 2; // run=2 -> deposits the spaceship
const float PORTICO_POSa = 75.0f;
const float PORTICO_POSb = 65.0f;
-const float PORTICO_ANGLE1a = ( 25.0f*PI/180.0f);
-const float PORTICO_ANGLE1b = ( 70.0f*PI/180.0f);
-const float PORTICO_ANGLE2a = (-37.5f*PI/180.0f);
-const float PORTICO_ANGLE2b = (-62.5f*PI/180.0f);
-const float PORTICO_ANGLE3a = (-77.5f*PI/180.0f);
-const float PORTICO_ANGLE3b = (-30.0f*PI/180.0f);
+const float PORTICO_ANGLE1a = ( 25.0f*Math::PI/180.0f);
+const float PORTICO_ANGLE1b = ( 70.0f*Math::PI/180.0f);
+const float PORTICO_ANGLE2a = (-37.5f*Math::PI/180.0f);
+const float PORTICO_ANGLE2b = (-62.5f*Math::PI/180.0f);
+const float PORTICO_ANGLE3a = (-77.5f*Math::PI/180.0f);
+const float PORTICO_ANGLE3b = (-30.0f*Math::PI/180.0f);
const float PORTICO_TIME_MOVE = 16.0f;
const float PORTICO_TIME_DOWN = 4.0f;
@@ -201,7 +199,7 @@ bool CAutoPortico::EventProcess(const Event &event)
angle = sinf(m_time*4.0f)*0.3f;
m_object->SetAngleX(9, angle);
- angle = -m_time*1.0f+PI/2.3f;
+ angle = -m_time*1.0f+Math::PI/2.3f;
m_object->SetAngleY(10, angle); // turns the left side radar
angle = sinf(m_time*4.0f)*0.3f;
m_object->SetAngleX(11, angle);
diff --git a/src/object/auto/autoradar.cpp b/src/object/auto/autoradar.cpp
index e0567fc..535bfee 100644
--- a/src/object/auto/autoradar.cpp
+++ b/src/object/auto/autoradar.cpp
@@ -14,14 +14,13 @@
// * You should have received a copy of the GNU General Public License
// * along with this program. If not, see http://www.gnu.org/licenses/.
-#define STRICT
-#define D3D_OVERLOADS
#include <windows.h>
#include <stdio.h>
#include <d3d.h>
#include "common/struct.h"
+#include "math/geometry.h"
#include "graphics/d3d/d3dengine.h"
#include "math/old/d3dmath.h"
#include "common/event.h"
@@ -103,19 +102,19 @@ bool CAutoRadar::EventProcess(const Event &event)
{
if ( m_timeVirus <= 0.0f )
{
- m_timeVirus = 0.1f+Rand()*0.3f;
+ m_timeVirus = 0.1f+Math::Rand()*0.3f;
angle = m_object->RetAngleY(1);
- angle += (Rand()-0.2f)*0.5f;
+ angle += (Math::Rand()-0.2f)*0.5f;
m_object->SetAngleY(1, angle);
angle = m_object->RetAngleY(2);
- angle += (Rand()-0.8f)*1.0f;
+ angle += (Math::Rand()-0.8f)*1.0f;
m_object->SetAngleY(2, angle);
- m_object->SetAngleX(3, (Rand()-0.5f)*0.3f);
+ m_object->SetAngleX(3, (Math::Rand()-0.5f)*0.3f);
- m_totalDetect = (int)(Rand()*10.0f);
+ m_totalDetect = (int)(Math::Rand()*10.0f);
UpdateInterface();
}
return true;
@@ -125,7 +124,7 @@ bool CAutoRadar::EventProcess(const Event &event)
{
if ( m_progress < 1.0f )
{
- speed = Min(10.0f, m_progress*50.0f);
+ speed = Math::Min(10.0f, m_progress*50.0f);
angle = m_object->RetAngleY(1);
angle += event.rTime*speed;
m_object->SetAngleY(1, angle);
@@ -142,13 +141,13 @@ bool CAutoRadar::EventProcess(const Event &event)
{
pos = m_object->RetPosition(0);
m_start = m_object->RetAngleY(1);
- m_angle = m_start-NormAngle(m_start)+PI*2.0f;
- m_angle += RotateAngle(pos.x-ePos.x, ePos.z-pos.z);
- m_angle += PI-m_object->RetAngleY(0);
+ m_angle = m_start-Math::NormAngle(m_start)+Math::PI*2.0f;
+ m_angle += Math::RotateAngle(pos.x-ePos.x, ePos.z-pos.z);
+ m_angle += Math::PI-m_object->RetAngleY(0);
m_phase = ARAP_SHOW;
m_progress = 0.0f;
- m_speed = 1.0f/(Abs(m_angle-m_start)/10.0f);
+ m_speed = 1.0f/(fabs(m_angle-m_start)/10.0f);
}
}
}
@@ -175,7 +174,7 @@ bool CAutoRadar::EventProcess(const Event &event)
{
if ( m_progress < 1.0f )
{
- prog = Min(1.0f, m_progress*2.0f);
+ prog = Math::Min(1.0f, m_progress*2.0f);
freq = 16.0f*(prog+1.0f);
ampl = 0.2f-prog*0.2f;
angle = m_angle + sinf(m_time*freq)*ampl;
@@ -217,7 +216,7 @@ Error CAutoRadar::RetError()
bool CAutoRadar::CreateInterface(bool bSelect)
{
CWindow* pw;
- FPOINT pos, dim, ddim;
+ Math::Point pos, dim, ddim;
float ox, oy, sx, sy;
CAuto::CreateInterface(bSelect);
diff --git a/src/object/auto/autorepair.cpp b/src/object/auto/autorepair.cpp
index 05469c4..79bccc8 100644
--- a/src/object/auto/autorepair.cpp
+++ b/src/object/auto/autorepair.cpp
@@ -14,8 +14,6 @@
// * You should have received a copy of the GNU General Public License
// * along with this program. If not, see http://www.gnu.org/licenses/.
-#define STRICT
-#define D3D_OVERLOADS
#include <windows.h>
#include <stdio.h>
@@ -93,7 +91,7 @@ bool CAutoRepair::EventProcess(const Event &event)
{
CObject* vehicule;
D3DVECTOR pos, speed;
- FPOINT dim;
+ Math::Point dim;
float angle, shield;
CAuto::EventProcess(event);
@@ -108,7 +106,7 @@ bool CAutoRepair::EventProcess(const Event &event)
{
if ( m_timeVirus <= 0.0f )
{
- m_timeVirus = 0.1f+Rand()*0.3f;
+ m_timeVirus = 0.1f+Math::Rand()*0.3f;
}
return true;
}
@@ -138,7 +136,7 @@ bool CAutoRepair::EventProcess(const Event &event)
{
if ( m_progress < 1.0f )
{
- angle = -m_progress*(PI/2.0f)+PI/2.0f;
+ angle = -m_progress*(Math::PI/2.0f)+Math::PI/2.0f;
m_object->SetAngleZ(1, angle);
}
else
@@ -171,13 +169,13 @@ bool CAutoRepair::EventProcess(const Event &event)
m_lastParticule = m_time;
pos = m_object->RetPosition(0);
- pos.x += (Rand()-0.5f)*5.0f;
- pos.z += (Rand()-0.5f)*5.0f;
+ pos.x += (Math::Rand()-0.5f)*5.0f;
+ pos.z += (Math::Rand()-0.5f)*5.0f;
pos.y += 1.0f;
- speed.x = (Rand()-0.5f)*12.0f;
- speed.z = (Rand()-0.5f)*12.0f;
- speed.y = Rand()*15.0f;
- dim.x = Rand()*6.0f+4.0f;
+ speed.x = (Math::Rand()-0.5f)*12.0f;
+ speed.z = (Math::Rand()-0.5f)*12.0f;
+ speed.y = Math::Rand()*15.0f;
+ dim.x = Math::Rand()*6.0f+4.0f;
dim.y = dim.x;
m_particule->CreateParticule(pos, speed, dim, PARTIBLUE, 1.0f, 0.0f, 0.0f);
}
@@ -196,12 +194,12 @@ bool CAutoRepair::EventProcess(const Event &event)
{
if ( m_progress < 1.0f )
{
- angle = -(1.0f-m_progress)*(PI/2.0f)+PI/2.0f;
+ angle = -(1.0f-m_progress)*(Math::PI/2.0f)+Math::PI/2.0f;
m_object->SetAngleZ(1, angle);
}
else
{
- m_object->SetAngleZ(1, PI/2.0f);
+ m_object->SetAngleZ(1, Math::PI/2.0f);
m_phase = ARP_WAIT;
m_progress = 0.0f;
@@ -218,7 +216,7 @@ bool CAutoRepair::EventProcess(const Event &event)
bool CAutoRepair::CreateInterface(bool bSelect)
{
CWindow* pw;
- FPOINT pos, ddim;
+ Math::Point pos, ddim;
float ox, oy, sx, sy;
CAuto::CreateInterface(bSelect);
diff --git a/src/object/auto/autoresearch.cpp b/src/object/auto/autoresearch.cpp
index e5305b5..f1602cf 100644
--- a/src/object/auto/autoresearch.cpp
+++ b/src/object/auto/autoresearch.cpp
@@ -14,8 +14,6 @@
// * You should have received a copy of the GNU General Public License
// * along with this program. If not, see http://www.gnu.org/licenses/.
-#define STRICT
-#define D3D_OVERLOADS
#include <windows.h>
#include <stdio.h>
@@ -112,7 +110,7 @@ bool CAutoResearch::EventProcess(const Event &event)
CObject* power;
D3DVECTOR pos, speed;
Error message;
- FPOINT dim;
+ Math::Point dim;
float angle, time;
CAuto::EventProcess(event);
@@ -193,7 +191,7 @@ bool CAutoResearch::EventProcess(const Event &event)
{
if ( m_timeVirus <= 0.0f )
{
- m_timeVirus = 0.1f+Rand()*0.3f;
+ m_timeVirus = 0.1f+Math::Rand()*0.3f;
}
return true;
}
@@ -204,7 +202,7 @@ bool CAutoResearch::EventProcess(const Event &event)
angle = m_time*0.1f;
m_object->SetAngleY(1, angle); // rotates the antenna
- angle = (30.0f+sinf(m_time*0.3f)*20.0f)*PI/180.0f;
+ angle = (30.0f+sinf(m_time*0.3f)*20.0f)*Math::PI/180.0f;
m_object->SetAngleZ(2, angle); // directs the antenna
if ( m_phase == ALP_WAIT )
@@ -236,13 +234,13 @@ bool CAutoResearch::EventProcess(const Event &event)
m_lastParticule = m_time;
pos = m_object->RetPosition(0);
- pos.x += (Rand()-0.5f)*6.0f;
- pos.z += (Rand()-0.5f)*6.0f;
+ pos.x += (Math::Rand()-0.5f)*6.0f;
+ pos.z += (Math::Rand()-0.5f)*6.0f;
pos.y += 11.0f;
- speed.x = (Rand()-0.5f)*2.0f;
- speed.z = (Rand()-0.5f)*2.0f;
- speed.y = Rand()*20.0f;
- dim.x = Rand()*1.0f+1.0f;
+ speed.x = (Math::Rand()-0.5f)*2.0f;
+ speed.z = (Math::Rand()-0.5f)*2.0f;
+ speed.y = Math::Rand()*20.0f;
+ dim.x = Math::Rand()*1.0f+1.0f;
dim.y = dim.x;
m_particule->CreateParticule(pos, speed, dim, PARTIVAPOR);
}
@@ -318,7 +316,7 @@ Error CAutoResearch::RetError()
bool CAutoResearch::CreateInterface(bool bSelect)
{
CWindow* pw;
- FPOINT pos, dim, ddim;
+ Math::Point pos, dim, ddim;
float ox, oy, sx, sy;
CAuto::CreateInterface(bSelect);
@@ -516,7 +514,7 @@ void CAutoResearch::FireStopUpdate(float progress, bool bLightOn)
{
D3DMATRIX* mat;
D3DVECTOR pos, speed;
- FPOINT dim;
+ Math::Point dim;
int i;
static float listpos[12] =
@@ -550,7 +548,7 @@ void CAutoResearch::FireStopUpdate(float progress, bool bLightOn)
for ( i=0 ; i<6 ; i++ )
{
- if ( Mod(progress, 0.025f) < 0.005f )
+ if ( Math::Mod(progress, 0.025f) < 0.005f )
{
if ( m_partiStop[i] != -1 )
{
diff --git a/src/object/auto/autoroot.cpp b/src/object/auto/autoroot.cpp
index 0ab12b8..8b16615 100644
--- a/src/object/auto/autoroot.cpp
+++ b/src/object/auto/autoroot.cpp
@@ -14,8 +14,6 @@
// * You should have received a copy of the GNU General Public License
// * along with this program. If not, see http://www.gnu.org/licenses/.
-#define STRICT
-#define D3D_OVERLOADS
#include <windows.h>
#include <stdio.h>
@@ -67,7 +65,7 @@ void CAutoRoot::Init()
{
D3DMATRIX* mat;
D3DVECTOR pos, speed;
- FPOINT dim;
+ Math::Point dim;
m_time = 0.0f;
m_lastParticule = 0.0f;
@@ -91,7 +89,7 @@ void CAutoRoot::Init()
bool CAutoRoot::EventProcess(const Event &event)
{
D3DVECTOR pos, speed;
- FPOINT dim;
+ Math::Point dim;
CAuto::EventProcess(event);
@@ -107,13 +105,13 @@ bool CAutoRoot::EventProcess(const Event &event)
m_lastParticule = m_time;
pos = m_center;
- pos.x += (Rand()-0.5f)*8.0f;
- pos.z += (Rand()-0.5f)*8.0f;
+ pos.x += (Math::Rand()-0.5f)*8.0f;
+ pos.z += (Math::Rand()-0.5f)*8.0f;
pos.y += 0.0f;
- speed.x = (Rand()-0.5f)*12.0f;
- speed.z = (Rand()-0.5f)*12.0f;
- speed.y = Rand()*12.0f;
- dim.x = Rand()*6.0f+4.0f;
+ speed.x = (Math::Rand()-0.5f)*12.0f;
+ speed.z = (Math::Rand()-0.5f)*12.0f;
+ speed.y = Math::Rand()*12.0f;
+ dim.x = Math::Rand()*6.0f+4.0f;
dim.y = dim.x;
m_particule->CreateParticule(pos, speed, dim, PARTIROOT, 1.0f, 0.0f, 0.0f);
}
diff --git a/src/object/auto/autosafe.cpp b/src/object/auto/autosafe.cpp
index 6565202..6cdccf5 100644
--- a/src/object/auto/autosafe.cpp
+++ b/src/object/auto/autosafe.cpp
@@ -14,14 +14,13 @@
// * You should have received a copy of the GNU General Public License
// * along with this program. If not, see http://www.gnu.org/licenses/.
-#define STRICT
-#define D3D_OVERLOADS
#include <windows.h>
#include <stdio.h>
#include <d3d.h>
#include "common/struct.h"
+#include "math/geometry.h"
#include "graphics/d3d/d3dengine.h"
#include "math/old/d3dmath.h"
#include "common/global.h"
@@ -127,7 +126,7 @@ bool CAutoSafe::EventProcess(const Event &event)
{
CObject* pObj;
D3DVECTOR pos, speed;
- FPOINT dim;
+ Math::Point dim;
int i, count;
CAuto::EventProcess(event);
@@ -142,7 +141,7 @@ bool CAutoSafe::EventProcess(const Event &event)
{
if ( m_timeVirus <= 0.0f )
{
- m_timeVirus = 0.1f+Rand()*0.3f;
+ m_timeVirus = 0.1f+Math::Rand()*0.3f;
}
return true;
}
@@ -169,11 +168,11 @@ bool CAutoSafe::EventProcess(const Event &event)
{
m_countKeys = count;
- if ( count == 0 ) m_finalAngle = 0.0f*PI/180.0f;
- if ( count == 1 ) m_finalAngle = 5.0f*PI/180.0f;
- if ( count == 2 ) m_finalAngle = 10.0f*PI/180.0f;
- if ( count == 3 ) m_finalAngle = 15.0f*PI/180.0f;
- if ( count == 4 ) m_finalAngle = 120.0f*PI/180.0f;
+ if ( count == 0 ) m_finalAngle = 0.0f*Math::PI/180.0f;
+ if ( count == 1 ) m_finalAngle = 5.0f*Math::PI/180.0f;
+ if ( count == 2 ) m_finalAngle = 10.0f*Math::PI/180.0f;
+ if ( count == 3 ) m_finalAngle = 15.0f*Math::PI/180.0f;
+ if ( count == 4 ) m_finalAngle = 120.0f*Math::PI/180.0f;
if ( count == 4 ) // all the keys?
{
@@ -213,33 +212,33 @@ bool CAutoSafe::EventProcess(const Event &event)
for ( i=0 ; i<10 ; i++ )
{
pos = m_object->RetPosition(0);
- pos.x += (Rand()-0.5f)*10.0f;
- pos.z += (Rand()-0.5f)*10.0f;
- speed.x = (Rand()-0.5f)*4.0f;
- speed.z = (Rand()-0.5f)*4.0f;
- speed.y = Rand()*15.0f;
- dim.x = Rand()*6.0f+4.0f;
+ pos.x += (Math::Rand()-0.5f)*10.0f;
+ pos.z += (Math::Rand()-0.5f)*10.0f;
+ speed.x = (Math::Rand()-0.5f)*4.0f;
+ speed.z = (Math::Rand()-0.5f)*4.0f;
+ speed.y = Math::Rand()*15.0f;
+ dim.x = Math::Rand()*6.0f+4.0f;
dim.y = dim.x;
m_particule->CreateParticule(pos, speed, dim, PARTIBLUE, 1.0f, 0.0f, 0.0f);
}
pos = m_object->RetPosition(0);
- pos.x += (Rand()-0.5f)*10.0f;
- pos.z += (Rand()-0.5f)*10.0f;
- speed.x = (Rand()-0.5f)*4.0f;
- speed.z = (Rand()-0.5f)*4.0f;
- speed.y = Rand()*10.0f;
- dim.x = Rand()*3.0f+2.0f;
+ pos.x += (Math::Rand()-0.5f)*10.0f;
+ pos.z += (Math::Rand()-0.5f)*10.0f;
+ speed.x = (Math::Rand()-0.5f)*4.0f;
+ speed.z = (Math::Rand()-0.5f)*4.0f;
+ speed.y = Math::Rand()*10.0f;
+ dim.x = Math::Rand()*3.0f+2.0f;
dim.y = dim.x;
m_particule->CreateParticule(pos, speed, dim, PARTIGLINT, 1.0f, 0.0f, 0.0f);
for ( i=0 ; i<4 ; i++ )
{
pos = m_keyPos[i];
- speed.x = (Rand()-0.5f)*2.0f;
- speed.z = (Rand()-0.5f)*2.0f;
- speed.y = 1.0f+Rand()*1.0f;
- dim.x = Rand()*1.5f+1.5f;
+ speed.x = (Math::Rand()-0.5f)*2.0f;
+ speed.z = (Math::Rand()-0.5f)*2.0f;
+ speed.y = 1.0f+Math::Rand()*1.0f;
+ dim.x = Math::Rand()*1.5f+1.5f;
dim.y = dim.x;
m_particule->CreateParticule(pos, speed, dim, PARTISMOKE3, 4.0f, 0.0f, 0.0f);
}
@@ -282,12 +281,12 @@ bool CAutoSafe::EventProcess(const Event &event)
{
if ( m_actualAngle < m_finalAngle )
{
- m_actualAngle += (105.0f*PI/180.0f)*event.rTime/OPEN_DELAY;
+ m_actualAngle += (105.0f*Math::PI/180.0f)*event.rTime/OPEN_DELAY;
if ( m_actualAngle > m_finalAngle ) m_actualAngle = m_finalAngle;
}
else
{
- m_actualAngle -= (105.0f*PI/180.0f)*event.rTime/OPEN_DELAY;
+ m_actualAngle -= (105.0f*Math::PI/180.0f)*event.rTime/OPEN_DELAY;
if ( m_actualAngle < m_finalAngle ) m_actualAngle = m_finalAngle;
}
m_object->SetAngleZ(1, m_actualAngle);
@@ -300,7 +299,7 @@ bool CAutoSafe::EventProcess(const Event &event)
dim.y = dim.x;
for ( i=0 ; i<4 ; i++ )
{
- if ( m_phase != ASAP_WAIT || !m_bKey[i] || Mod(m_time, 1.0f) < 0.4f )
+ if ( m_phase != ASAP_WAIT || !m_bKey[i] || Math::Mod(m_time, 1.0f) < 0.4f )
{
if ( m_keyParti[i] != -1 )
{
@@ -328,7 +327,7 @@ bool CAutoSafe::EventProcess(const Event &event)
bool CAutoSafe::CreateInterface(bool bSelect)
{
CWindow* pw;
- FPOINT pos, ddim;
+ Math::Point pos, ddim;
float ox, oy, sx, sy;
CAuto::CreateInterface(bSelect);
@@ -414,7 +413,7 @@ int CAutoSafe::CountKeys()
{
CObject* pObj;
D3DVECTOR cPos, oPos;
- FPOINT rot;
+ Math::Point rot;
ObjectType oType;
float dist, angle, limit, cAngle, oAngle;
int i, index;
@@ -447,34 +446,34 @@ int CAutoSafe::CountKeys()
if ( oType == OBJECT_KEYa )
{
- limit = PI*1.0f;
- oAngle = PI*0.0f;
+ limit = Math::PI*1.0f;
+ oAngle = Math::PI*0.0f;
index = 0;
}
if ( oType == OBJECT_KEYb )
{
- limit = PI*0.0f;
- oAngle = PI*1.0f;
+ limit = Math::PI*0.0f;
+ oAngle = Math::PI*1.0f;
index = 1;
}
if ( oType == OBJECT_KEYc )
{
- limit = PI*1.5f;
- oAngle = PI*0.5f;
+ limit = Math::PI*1.5f;
+ oAngle = Math::PI*0.5f;
index = 2;
}
if ( oType == OBJECT_KEYd )
{
- limit = PI*0.5f;
- oAngle = PI*0.0f;
+ limit = Math::PI*0.5f;
+ oAngle = Math::PI*0.0f;
index = 3;
}
- angle = RotateAngle(oPos.x-cPos.x, oPos.z-cPos.z)+cAngle;
- if ( !TestAngle(angle, limit-8.0f*PI/180.0f, limit+8.0f*PI/180.0f) ) continue;
+ angle = Math::RotateAngle(oPos.x-cPos.x, oPos.z-cPos.z)+cAngle;
+ if ( !Math::TestAngle(angle, limit-8.0f*Math::PI/180.0f, limit+8.0f*Math::PI/180.0f) ) continue;
// Key changes the shape of the base.
- rot = RotatePoint(FPOINT(cPos.x, cPos.z), limit-cAngle, FPOINT(cPos.x+16.0f, cPos.z));
+ rot = Math::RotatePoint(Math::Point(cPos.x, cPos.z), limit-cAngle, Math::Point(cPos.x+16.0f, cPos.z));
oPos.x = rot.x;
oPos.z = rot.y;
oPos.y = cPos.y+1.0f;
diff --git a/src/object/auto/autostation.cpp b/src/object/auto/autostation.cpp
index ab26b6d..cc93545 100644
--- a/src/object/auto/autostation.cpp
+++ b/src/object/auto/autostation.cpp
@@ -14,8 +14,6 @@
// * You should have received a copy of the GNU General Public License
// * along with this program. If not, see http://www.gnu.org/licenses/.
-#define STRICT
-#define D3D_OVERLOADS
#include <windows.h>
#include <stdio.h>
@@ -94,7 +92,7 @@ bool CAutoStation::EventProcess(const Event &event)
{
D3DMATRIX* mat;
D3DVECTOR pos, ppos, speed;
- FPOINT dim;
+ Math::Point dim;
CObject* vehicule;
CObject* power;
TerrainRes res;
@@ -117,9 +115,9 @@ bool CAutoStation::EventProcess(const Event &event)
if ( m_timeVirus <= 0.0f )
{
- m_timeVirus = 0.1f+Rand()*0.3f;
+ m_timeVirus = 0.1f+Math::Rand()*0.3f;
- m_object->SetEnergy(Rand());
+ m_object->SetEnergy(Math::Rand());
}
return true;
}
@@ -205,11 +203,11 @@ bool CAutoStation::EventProcess(const Event &event)
mat = m_object->RetWorldMatrix(0);
pos = D3DVECTOR(-15.0f, 7.0f, 0.0f); // battery position
pos = Transform(*mat, pos);
- speed.x = (Rand()-0.5f)*20.0f;
- speed.y = (Rand()-0.5f)*20.0f;
- speed.z = (Rand()-0.5f)*20.0f;
+ speed.x = (Math::Rand()-0.5f)*20.0f;
+ speed.y = (Math::Rand()-0.5f)*20.0f;
+ speed.z = (Math::Rand()-0.5f)*20.0f;
ppos.x = pos.x;
- ppos.y = pos.y+(Rand()-0.5f)*4.0f;
+ ppos.y = pos.y+(Math::Rand()-0.5f)*4.0f;
ppos.z = pos.z;
dim.x = 1.5f;
dim.y = 1.5f;
@@ -218,23 +216,23 @@ bool CAutoStation::EventProcess(const Event &event)
#if 0
ppos = pos;
ppos.y += 1.0f;
- ppos.x += (Rand()-0.5f)*3.0f;
- ppos.z += (Rand()-0.5f)*3.0f;
+ ppos.x += (Math::Rand()-0.5f)*3.0f;
+ ppos.z += (Math::Rand()-0.5f)*3.0f;
speed.x = 0.0f;
speed.z = 0.0f;
- speed.y = 2.5f+Rand()*6.0f;
- dim.x = Rand()*1.5f+1.0f;
+ speed.y = 2.5f+Math::Rand()*6.0f;
+ dim.x = Math::Rand()*1.5f+1.0f;
dim.y = dim.x;
m_particule->CreateParticule(ppos, speed, dim, PARTISMOKE3, 4.0f);
#else
ppos = pos;
ppos.y += 1.0f;
- ppos.x += (Rand()-0.5f)*3.0f;
- ppos.z += (Rand()-0.5f)*3.0f;
+ ppos.x += (Math::Rand()-0.5f)*3.0f;
+ ppos.z += (Math::Rand()-0.5f)*3.0f;
speed.x = 0.0f;
speed.z = 0.0f;
- speed.y = 2.5f+Rand()*5.0f;
- dim.x = Rand()*1.0f+0.6f;
+ speed.y = 2.5f+Math::Rand()*5.0f;
+ dim.x = Math::Rand()*1.0f+0.6f;
dim.y = dim.x;
m_particule->CreateParticule(ppos, speed, dim, PARTIVAPOR, 3.0f);
#endif
@@ -326,7 +324,7 @@ Error CAutoStation::RetError()
bool CAutoStation::CreateInterface(bool bSelect)
{
CWindow* pw;
- FPOINT pos, ddim;
+ Math::Point pos, ddim;
float ox, oy, sx, sy;
CAuto::CreateInterface(bSelect);
diff --git a/src/object/auto/autotower.cpp b/src/object/auto/autotower.cpp
index 74cc984..a76260e 100644
--- a/src/object/auto/autotower.cpp
+++ b/src/object/auto/autotower.cpp
@@ -14,15 +14,14 @@
// * You should have received a copy of the GNU General Public License
// * along with this program. If not, see http://www.gnu.org/licenses/.
-#define STRICT
-#define D3D_OVERLOADS
#include <windows.h>
#include <stdio.h>
#include <d3d.h>
-#include "math/const.h"
#include "common/struct.h"
+#include "math/const.h"
+#include "math/geometry.h"
#include "graphics/d3d/d3dengine.h"
#include "math/old/d3dmath.h"
#include "common/global.h"
@@ -120,13 +119,13 @@ bool CAutoTower::EventProcess(const Event &event)
{
if ( m_timeVirus <= 0.0f )
{
- m_timeVirus = 0.1f+Rand()*0.3f;
+ m_timeVirus = 0.1f+Math::Rand()*0.3f;
angle = m_object->RetAngleY(1);
- angle += Rand()*0.5f;
+ angle += Math::Rand()*0.5f;
m_object->SetAngleY(1, angle);
- m_object->SetAngleZ(2, Rand()*0.5f);
+ m_object->SetAngleZ(2, Math::Rand()*0.5f);
}
return true;
}
@@ -204,13 +203,13 @@ bool CAutoTower::EventProcess(const Event &event)
{
pos = m_object->RetPosition(0);
pos.y += 24.5f;
- m_angleYfinal = RotateAngle(m_targetPos.x-pos.x, pos.z-m_targetPos.z); // CW !
- m_angleYfinal += PI*2.0f;
+ m_angleYfinal = Math::RotateAngle(m_targetPos.x-pos.x, pos.z-m_targetPos.z); // CW !
+ m_angleYfinal += Math::PI*2.0f;
m_angleYfinal -= m_object->RetAngleY(0);
- m_angleYactual = NormAngle(m_object->RetAngleY(1));
+ m_angleYactual = Math::NormAngle(m_object->RetAngleY(1));
- m_angleZfinal = -PI/2.0f;
- m_angleZfinal -= RotateAngle(Length2d(m_targetPos, pos), pos.y-m_targetPos.y); // CW !
+ m_angleZfinal = -Math::PI/2.0f;
+ m_angleZfinal -= Math::RotateAngle(Length2d(m_targetPos, pos), pos.y-m_targetPos.y); // CW !
m_angleZactual = m_object->RetAngleZ(2);
m_phase = ATP_TURN;
@@ -259,7 +258,7 @@ bool CAutoTower::EventProcess(const Event &event)
pos = m_object->RetPosition(0);
pos.y += 24.5f;
m_particule->CreateRay(pos, m_targetPos, PARTIRAY1,
- FPOINT(5.0f, 5.0f), 1.5f);
+ Math::Point(5.0f, 5.0f), 1.5f);
}
if ( m_progress >= 1.0f )
{
@@ -308,7 +307,7 @@ CObject* CAutoTower::SearchTarget(D3DVECTOR &impact)
physics = pObj->RetPhysics();
if ( physics != 0 )
{
- speed = Abs(physics->RetLinMotionX(MO_REASPEED));
+ speed = fabs(physics->RetLinMotionX(MO_REASPEED));
if ( speed > 20.0f ) continue; // moving too fast?
}
}
@@ -362,7 +361,7 @@ void CAutoTower::FireStopUpdate(float progress, bool bLightOn)
{
D3DMATRIX* mat;
D3DVECTOR pos, speed;
- FPOINT dim;
+ Math::Point dim;
int i;
static float listpos[8] =
@@ -394,7 +393,7 @@ void CAutoTower::FireStopUpdate(float progress, bool bLightOn)
for ( i=0 ; i<4 ; i++ )
{
- if ( Mod(progress+i*0.125f, 0.5f) < 0.2f )
+ if ( Math::Mod(progress+i*0.125f, 0.5f) < 0.2f )
{
if ( m_partiStop[i] != -1 )
{
@@ -424,7 +423,7 @@ void CAutoTower::FireStopUpdate(float progress, bool bLightOn)
bool CAutoTower::CreateInterface(bool bSelect)
{
CWindow* pw;
- FPOINT pos, ddim;
+ Math::Point pos, ddim;
float ox, oy, sx, sy;
CAuto::CreateInterface(bSelect);