Added new Move Code

Added Move Code, TS callback, and commands to interface with Move code.
This commit is contained in:
Calvin Balke 2015-07-06 10:01:22 -07:00
parent 2ee8c36a90
commit 81a28fe3ba
7 changed files with 212 additions and 3 deletions

View file

@ -84,6 +84,7 @@
<ClInclude Include="include\DXAPI\GameBase.h" />
<ClInclude Include="include\DXAPI\GameConnection.h" />
<ClInclude Include="include\DXAPI\GrenadeProjectile.h" />
<ClInclude Include="include\DXAPI\Move.h" />
<ClInclude Include="include\DXAPI\NetConnection.h" />
<ClInclude Include="include\DXAPI\NetObject.h" />
<ClInclude Include="include\DXAPI\Player.h" />
@ -104,6 +105,7 @@
<ClCompile Include="source\DXAPI\GameBase.cpp" />
<ClCompile Include="source\DXAPI\GameConnection.cpp" />
<ClCompile Include="source\DXAPI\GrenadeProjectile.cpp" />
<ClCompile Include="source\DXAPI\Move.cpp" />
<ClCompile Include="source\DXAPI\NetConnection.cpp" />
<ClCompile Include="source\DXAPI\NetObject.cpp" />
<ClCompile Include="source\DXAPI\Player.cpp" />

View file

@ -69,6 +69,9 @@
<ClInclude Include="include\LinkerAPI.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="include\DXAPI\Move.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="source\DXAPI\DXAPI.cpp">
@ -125,5 +128,8 @@
<ClCompile Include="source\LinkerAPI.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="source\DXAPI\Move.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
</Project>

View file

@ -18,6 +18,7 @@
#include <DXAPI/Point3F.h>
#include <DXAPI/GameBase.h>
#include <DXAPI/Move.h>
#include <DXAPI/NetObject.h>
#include <DXAPI/Player.h>
#include <DXAPI/Projectile.h>
@ -31,7 +32,6 @@
#include <DXAPI/NetConnection.h>
#include <DXAPI/TCPObject.h>
#include <DXAPI/ScriptObject.h>
namespace DX
{
//! A typedef referring to some type of unresolved object in the game.

View file

@ -0,0 +1,38 @@
#pragma once
#include <DXAPI/Point3F.h>
#include <DXAPI/GameBase.h>
#include <LinkerAPI.h>
namespace DX
{
struct Move {
int px;
int py;
int pz;
int pyaw;
int ppitch;
int proll;
float x;
float y;
float z;
float yaw;
float pitch;
float roll;
int unused;
int count;
bool freelook;
bool triggers[6];
};
struct AIMove {
unsigned int id;
Move move;
bool used;
};
float clampFloat(float in);
float clampMove(float in);
void generateNullMove(Move * ret);
};

View file

@ -0,0 +1,55 @@
#include <DXAPI/Move.h>
#define M_PI 3.14159265358979323846
#define M_2PI 6.28318530717958647692528676655900576
namespace DX
{
void generateNullMove(Move * ret) {
DX::Move nullmove = {
16,
16,
16,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
false,false,false,false,false,false
};
ret = &nullmove;
}
float clamp(float in, float min, float max) {
if (in < min) {
return min;
} else if (in > max) {
return max;
}
return in;
}
float clip(float n, float lower, float upper) {
return std::max(lower, std::min(n, upper));
}
float clampFloat(float in){
return clip(in,-1.0f,1.0f);
}
float clampMove(float in) {
float tmpfloat = clamp(in,-M_PI,M_PI);
if (tmpfloat < 0.0) {
return tmpfloat + M_2PI;
} else {
return tmpfloat;
}
}
}