GameServer - Added more gameplay protocols and structured the old mess
This commit is contained in:
parent
14bf3ede86
commit
3274727923
|
@ -37,14 +37,8 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "NetworkAPI", "Network\Netwo
|
||||||
EndProject
|
EndProject
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GameProtocols", "Game\GameProtocols\GameProtocols.vcxproj", "{DA2AA800-ED64-4649-8B3B-E7F1E3968B78}"
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GameProtocols", "Game\GameProtocols\GameProtocols.vcxproj", "{DA2AA800-ED64-4649-8B3B-E7F1E3968B78}"
|
||||||
EndProject
|
EndProject
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "DanBiasServerLauncher", "Game\DanBiasServerLauncher\DanBiasServerLauncher.vcxproj", "{060B1890-CBF3-4808-BA99-A4776222093B}"
|
|
||||||
EndProject
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Physics lab", "Physics lab\Physics lab.vcxproj", "{5128BD77-6472-4C4A-BE6F-724AD0E589C2}"
|
|
||||||
EndProject
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GameServer", "Game\GameServer\GameServer.vcxproj", "{143BD516-20A1-4890-A3E4-F8BFD02220E7}"
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GameServer", "Game\GameServer\GameServer.vcxproj", "{143BD516-20A1-4890-A3E4-F8BFD02220E7}"
|
||||||
EndProject
|
EndProject
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "aDanBiasGameLauncher", "Game\aDanBiasGameLauncher\aDanBiasGameLauncher.vcxproj", "{666FEA52-975F-41CD-B224-B19AF3C0ABBA}"
|
|
||||||
EndProject
|
|
||||||
Global
|
Global
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
Debug|Mixed Platforms = Debug|Mixed Platforms
|
Debug|Mixed Platforms = Debug|Mixed Platforms
|
||||||
|
@ -247,30 +241,6 @@ Global
|
||||||
{DA2AA800-ED64-4649-8B3B-E7F1E3968B78}.Release|Win32.Build.0 = Release|Win32
|
{DA2AA800-ED64-4649-8B3B-E7F1E3968B78}.Release|Win32.Build.0 = Release|Win32
|
||||||
{DA2AA800-ED64-4649-8B3B-E7F1E3968B78}.Release|x64.ActiveCfg = Release|x64
|
{DA2AA800-ED64-4649-8B3B-E7F1E3968B78}.Release|x64.ActiveCfg = Release|x64
|
||||||
{DA2AA800-ED64-4649-8B3B-E7F1E3968B78}.Release|x64.Build.0 = Release|x64
|
{DA2AA800-ED64-4649-8B3B-E7F1E3968B78}.Release|x64.Build.0 = Release|x64
|
||||||
{060B1890-CBF3-4808-BA99-A4776222093B}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32
|
|
||||||
{060B1890-CBF3-4808-BA99-A4776222093B}.Debug|Mixed Platforms.Build.0 = Debug|Win32
|
|
||||||
{060B1890-CBF3-4808-BA99-A4776222093B}.Debug|Win32.ActiveCfg = Debug|Win32
|
|
||||||
{060B1890-CBF3-4808-BA99-A4776222093B}.Debug|Win32.Build.0 = Debug|Win32
|
|
||||||
{060B1890-CBF3-4808-BA99-A4776222093B}.Debug|x64.ActiveCfg = Debug|x64
|
|
||||||
{060B1890-CBF3-4808-BA99-A4776222093B}.Debug|x64.Build.0 = Debug|x64
|
|
||||||
{060B1890-CBF3-4808-BA99-A4776222093B}.Release|Mixed Platforms.ActiveCfg = Release|Win32
|
|
||||||
{060B1890-CBF3-4808-BA99-A4776222093B}.Release|Mixed Platforms.Build.0 = Release|Win32
|
|
||||||
{060B1890-CBF3-4808-BA99-A4776222093B}.Release|Win32.ActiveCfg = Release|Win32
|
|
||||||
{060B1890-CBF3-4808-BA99-A4776222093B}.Release|Win32.Build.0 = Release|Win32
|
|
||||||
{060B1890-CBF3-4808-BA99-A4776222093B}.Release|x64.ActiveCfg = Release|x64
|
|
||||||
{060B1890-CBF3-4808-BA99-A4776222093B}.Release|x64.Build.0 = Release|x64
|
|
||||||
{5128BD77-6472-4C4A-BE6F-724AD0E589C2}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32
|
|
||||||
{5128BD77-6472-4C4A-BE6F-724AD0E589C2}.Debug|Mixed Platforms.Build.0 = Debug|Win32
|
|
||||||
{5128BD77-6472-4C4A-BE6F-724AD0E589C2}.Debug|Win32.ActiveCfg = Debug|Win32
|
|
||||||
{5128BD77-6472-4C4A-BE6F-724AD0E589C2}.Debug|Win32.Build.0 = Debug|Win32
|
|
||||||
{5128BD77-6472-4C4A-BE6F-724AD0E589C2}.Debug|x64.ActiveCfg = Debug|x64
|
|
||||||
{5128BD77-6472-4C4A-BE6F-724AD0E589C2}.Debug|x64.Build.0 = Debug|x64
|
|
||||||
{5128BD77-6472-4C4A-BE6F-724AD0E589C2}.Release|Mixed Platforms.ActiveCfg = Release|Win32
|
|
||||||
{5128BD77-6472-4C4A-BE6F-724AD0E589C2}.Release|Mixed Platforms.Build.0 = Release|Win32
|
|
||||||
{5128BD77-6472-4C4A-BE6F-724AD0E589C2}.Release|Win32.ActiveCfg = Release|Win32
|
|
||||||
{5128BD77-6472-4C4A-BE6F-724AD0E589C2}.Release|Win32.Build.0 = Release|Win32
|
|
||||||
{5128BD77-6472-4C4A-BE6F-724AD0E589C2}.Release|x64.ActiveCfg = Release|x64
|
|
||||||
{5128BD77-6472-4C4A-BE6F-724AD0E589C2}.Release|x64.Build.0 = Release|x64
|
|
||||||
{143BD516-20A1-4890-A3E4-F8BFD02220E7}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32
|
{143BD516-20A1-4890-A3E4-F8BFD02220E7}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32
|
||||||
{143BD516-20A1-4890-A3E4-F8BFD02220E7}.Debug|Mixed Platforms.Build.0 = Debug|Win32
|
{143BD516-20A1-4890-A3E4-F8BFD02220E7}.Debug|Mixed Platforms.Build.0 = Debug|Win32
|
||||||
{143BD516-20A1-4890-A3E4-F8BFD02220E7}.Debug|Win32.ActiveCfg = Debug|Win32
|
{143BD516-20A1-4890-A3E4-F8BFD02220E7}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
|
@ -283,18 +253,6 @@ Global
|
||||||
{143BD516-20A1-4890-A3E4-F8BFD02220E7}.Release|Win32.Build.0 = Release|Win32
|
{143BD516-20A1-4890-A3E4-F8BFD02220E7}.Release|Win32.Build.0 = Release|Win32
|
||||||
{143BD516-20A1-4890-A3E4-F8BFD02220E7}.Release|x64.ActiveCfg = Release|x64
|
{143BD516-20A1-4890-A3E4-F8BFD02220E7}.Release|x64.ActiveCfg = Release|x64
|
||||||
{143BD516-20A1-4890-A3E4-F8BFD02220E7}.Release|x64.Build.0 = Release|x64
|
{143BD516-20A1-4890-A3E4-F8BFD02220E7}.Release|x64.Build.0 = Release|x64
|
||||||
{666FEA52-975F-41CD-B224-B19AF3C0ABBA}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32
|
|
||||||
{666FEA52-975F-41CD-B224-B19AF3C0ABBA}.Debug|Mixed Platforms.Build.0 = Debug|Win32
|
|
||||||
{666FEA52-975F-41CD-B224-B19AF3C0ABBA}.Debug|Win32.ActiveCfg = Debug|Win32
|
|
||||||
{666FEA52-975F-41CD-B224-B19AF3C0ABBA}.Debug|Win32.Build.0 = Debug|Win32
|
|
||||||
{666FEA52-975F-41CD-B224-B19AF3C0ABBA}.Debug|x64.ActiveCfg = Debug|x64
|
|
||||||
{666FEA52-975F-41CD-B224-B19AF3C0ABBA}.Debug|x64.Build.0 = Debug|x64
|
|
||||||
{666FEA52-975F-41CD-B224-B19AF3C0ABBA}.Release|Mixed Platforms.ActiveCfg = Release|Win32
|
|
||||||
{666FEA52-975F-41CD-B224-B19AF3C0ABBA}.Release|Mixed Platforms.Build.0 = Release|Win32
|
|
||||||
{666FEA52-975F-41CD-B224-B19AF3C0ABBA}.Release|Win32.ActiveCfg = Release|Win32
|
|
||||||
{666FEA52-975F-41CD-B224-B19AF3C0ABBA}.Release|Win32.Build.0 = Release|Win32
|
|
||||||
{666FEA52-975F-41CD-B224-B19AF3C0ABBA}.Release|x64.ActiveCfg = Release|x64
|
|
||||||
{666FEA52-975F-41CD-B224-B19AF3C0ABBA}.Release|x64.Build.0 = Release|x64
|
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
GlobalSection(SolutionProperties) = preSolution
|
||||||
HideSolutionNode = FALSE
|
HideSolutionNode = FALSE
|
||||||
|
@ -308,8 +266,6 @@ Global
|
||||||
{B1195BB9-B3A5-47F0-906C-8DEA384D1520} = {20720CA7-795C-45AD-A302-9383A6DD503A}
|
{B1195BB9-B3A5-47F0-906C-8DEA384D1520} = {20720CA7-795C-45AD-A302-9383A6DD503A}
|
||||||
{8690FDDF-C5B7-4C42-A337-BD5243F29B85} = {20720CA7-795C-45AD-A302-9383A6DD503A}
|
{8690FDDF-C5B7-4C42-A337-BD5243F29B85} = {20720CA7-795C-45AD-A302-9383A6DD503A}
|
||||||
{DA2AA800-ED64-4649-8B3B-E7F1E3968B78} = {20720CA7-795C-45AD-A302-9383A6DD503A}
|
{DA2AA800-ED64-4649-8B3B-E7F1E3968B78} = {20720CA7-795C-45AD-A302-9383A6DD503A}
|
||||||
{060B1890-CBF3-4808-BA99-A4776222093B} = {20720CA7-795C-45AD-A302-9383A6DD503A}
|
|
||||||
{143BD516-20A1-4890-A3E4-F8BFD02220E7} = {20720CA7-795C-45AD-A302-9383A6DD503A}
|
{143BD516-20A1-4890-A3E4-F8BFD02220E7} = {20720CA7-795C-45AD-A302-9383A6DD503A}
|
||||||
{666FEA52-975F-41CD-B224-B19AF3C0ABBA} = {20720CA7-795C-45AD-A302-9383A6DD503A}
|
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
EndGlobal
|
EndGlobal
|
||||||
|
|
|
@ -38,34 +38,6 @@ namespace DanBias
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case protocol_Gameplay_PlayerMovement:
|
|
||||||
{
|
|
||||||
Client::GameClientState::KeyInput* protocolData = new Client::GameClientState::KeyInput;
|
|
||||||
for(int i = 0; i< 6; i++)
|
|
||||||
{
|
|
||||||
protocolData->key[i] = p[i+1].value.netBool;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(dynamic_cast<Client::GameState*>(gameClientState))
|
|
||||||
((Client::GameState*)gameClientState)->Protocol(protocolData);
|
|
||||||
delete protocolData;
|
|
||||||
protocolData = NULL;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
//case protocol_Gameplay_PlayerPosition:
|
|
||||||
// {
|
|
||||||
// Client::GameClientState::PlayerPos* protocolData = new Client::GameClientState::PlayerPos;
|
|
||||||
// for(int i = 0; i< 3; i++)
|
|
||||||
// {
|
|
||||||
// protocolData->playerPos[i] = p[i].value.netFloat;
|
|
||||||
// }
|
|
||||||
// if(dynamic_cast<Client::GameState*>(gameClientState))
|
|
||||||
// ((Client::GameState*)gameClientState)->Protocol(protocolData);
|
|
||||||
// delete protocolData;
|
|
||||||
// protocolData = NULL;
|
|
||||||
// }
|
|
||||||
// break;
|
|
||||||
|
|
||||||
case protocol_Gameplay_ObjectCreate:
|
case protocol_Gameplay_ObjectCreate:
|
||||||
{
|
{
|
||||||
Client::GameClientState::NewObj protocolData;// = new Client::GameClientState::NewObj;
|
Client::GameClientState::NewObj protocolData;// = new Client::GameClientState::NewObj;
|
||||||
|
@ -114,7 +86,6 @@ namespace DanBias
|
||||||
{
|
{
|
||||||
if(dynamic_cast<Client::LobbyState*>(gameClientState))
|
if(dynamic_cast<Client::LobbyState*>(gameClientState))
|
||||||
{
|
{
|
||||||
GameLogic::Protocol_LobbyCreateGame tp();
|
|
||||||
int id = p.Get(1).value.netInt;
|
int id = p.Get(1).value.netInt;
|
||||||
std::string name = p.Get(19).value.netCharPtr;
|
std::string name = p.Get(19).value.netCharPtr;
|
||||||
Oyster::Math::Float4x4 w;
|
Oyster::Math::Float4x4 w;
|
||||||
|
|
|
@ -35,6 +35,11 @@ public:
|
||||||
};
|
};
|
||||||
struct KeyInput :public ProtocolStruct
|
struct KeyInput :public ProtocolStruct
|
||||||
{
|
{
|
||||||
|
/*
|
||||||
|
* key[0] =
|
||||||
|
*
|
||||||
|
*
|
||||||
|
*/
|
||||||
bool key[6];
|
bool key[6];
|
||||||
};
|
};
|
||||||
struct PlayerPos :public ProtocolStruct
|
struct PlayerPos :public ProtocolStruct
|
||||||
|
|
|
@ -309,20 +309,11 @@ bool GameState::Release()
|
||||||
void GameState::readKeyInput(InputClass* KeyInput)
|
void GameState::readKeyInput(InputClass* KeyInput)
|
||||||
{
|
{
|
||||||
|
|
||||||
bool send = false;
|
|
||||||
GameLogic::Protocol_PlayerMovement movePlayer;
|
|
||||||
movePlayer.bForward = false;
|
|
||||||
movePlayer.bBackward = false;
|
|
||||||
movePlayer.bLeft = false;
|
|
||||||
movePlayer.bRight = false;
|
|
||||||
|
|
||||||
if(KeyInput->IsKeyPressed(DIK_W))
|
if(KeyInput->IsKeyPressed(DIK_W))
|
||||||
{
|
{
|
||||||
|
|
||||||
if(!key_forward)
|
if(!key_forward)
|
||||||
{
|
{
|
||||||
movePlayer.bForward = true;
|
privData->nwClient->Send(GameLogic::Protocol_PlayerMovementForward());
|
||||||
send = true;
|
|
||||||
key_forward = true;
|
key_forward = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -333,8 +324,7 @@ void GameState::readKeyInput(InputClass* KeyInput)
|
||||||
{
|
{
|
||||||
if(!key_backward)
|
if(!key_backward)
|
||||||
{
|
{
|
||||||
movePlayer.bBackward = true;
|
privData->nwClient->Send(GameLogic::Protocol_PlayerMovementBackward());
|
||||||
send = true;
|
|
||||||
key_backward = true;
|
key_backward = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -345,8 +335,7 @@ void GameState::readKeyInput(InputClass* KeyInput)
|
||||||
{
|
{
|
||||||
if(!key_strafeLeft)
|
if(!key_strafeLeft)
|
||||||
{
|
{
|
||||||
movePlayer.bLeft = true;
|
privData->nwClient->Send(GameLogic::Protocol_PlayerMovementLeft());
|
||||||
send = true;
|
|
||||||
key_strafeLeft = true;
|
key_strafeLeft = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -357,8 +346,7 @@ void GameState::readKeyInput(InputClass* KeyInput)
|
||||||
{
|
{
|
||||||
if(!key_strafeRight)
|
if(!key_strafeRight)
|
||||||
{
|
{
|
||||||
movePlayer.bRight = true;
|
privData->nwClient->Send(GameLogic::Protocol_PlayerMovementRight());
|
||||||
send = true;
|
|
||||||
key_strafeRight = true;
|
key_strafeRight = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -366,11 +354,6 @@ void GameState::readKeyInput(InputClass* KeyInput)
|
||||||
key_strafeRight = false;
|
key_strafeRight = false;
|
||||||
|
|
||||||
|
|
||||||
if (privData->nwClient->IsConnected() && send)
|
|
||||||
{
|
|
||||||
privData->nwClient->Send(movePlayer);
|
|
||||||
}
|
|
||||||
|
|
||||||
//send delta mouse movement
|
//send delta mouse movement
|
||||||
if (KeyInput->IsMousePressed())
|
if (KeyInput->IsMousePressed())
|
||||||
{
|
{
|
||||||
|
@ -437,9 +420,7 @@ void GameState::readKeyInput(InputClass* KeyInput)
|
||||||
{
|
{
|
||||||
if(!key_Jump)
|
if(!key_Jump)
|
||||||
{
|
{
|
||||||
GameLogic::Protocol_PlayerJump playerJump;
|
privData->nwClient->Send(GameLogic::Protocol_PlayerJump());
|
||||||
playerJump.hasJumped = true;
|
|
||||||
privData->nwClient->Send(playerJump);
|
|
||||||
key_Jump = true;
|
key_Jump = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -95,7 +95,7 @@ GameClientState::ClientState LobbyState::Update(float deltaTime, InputClass* Key
|
||||||
{
|
{
|
||||||
if(!DanBias::GameServerAPI::GameStart())
|
if(!DanBias::GameServerAPI::GameStart())
|
||||||
{
|
{
|
||||||
//this->nwClient->Send(GameLogic::Protocol_LobbyStartGame());
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -119,6 +119,7 @@ GameClientState::ClientState LoginState::Update(float deltaTime, InputClass* Key
|
||||||
{
|
{
|
||||||
// game ip
|
// game ip
|
||||||
nwClient->Connect(15152, "127.0.0.1");
|
nwClient->Connect(15152, "127.0.0.1");
|
||||||
|
//nwClient->Connect(15152, "83.254.217.248");
|
||||||
|
|
||||||
if (!nwClient->IsConnected())
|
if (!nwClient->IsConnected())
|
||||||
{
|
{
|
||||||
|
|
|
@ -71,9 +71,9 @@ void Level::InitiateLevel(float radius)
|
||||||
state.SetRestitutionCoeff(0.2);
|
state.SetRestitutionCoeff(0.2);
|
||||||
rigidBody->SetState(state);
|
rigidBody->SetState(state);
|
||||||
|
|
||||||
levelObj = new StaticObject(rigidBody, LevelCollisionBefore, LevelCollisionAfter, OBJECT_TYPE::OBJECT_TYPE_WORLD);
|
this->levelObj = new StaticObject(rigidBody, LevelCollisionBefore, LevelCollisionAfter, OBJECT_TYPE::OBJECT_TYPE_WORLD);
|
||||||
levelObj->objectID = idCount++;
|
this->levelObj->objectID = idCount++;
|
||||||
rigidBody->SetCustomTag(levelObj);
|
rigidBody->SetCustomTag(this->levelObj);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
// add box
|
// add box
|
||||||
|
|
|
@ -1,3 +1,8 @@
|
||||||
|
//////////////////////////////////////////////////////////
|
||||||
|
// Created 2013 //
|
||||||
|
// Dennis Andersen, Linda Andersson //
|
||||||
|
//////////////////////////////////////////////////////////
|
||||||
|
|
||||||
#ifndef GAMELOGIC_OBJECT_PROTOCOLS_H
|
#ifndef GAMELOGIC_OBJECT_PROTOCOLS_H
|
||||||
#define GAMELOGIC_OBJECT_PROTOCOLS_H
|
#define GAMELOGIC_OBJECT_PROTOCOLS_H
|
||||||
|
|
||||||
|
@ -6,6 +11,7 @@
|
||||||
|
|
||||||
namespace GameLogic
|
namespace GameLogic
|
||||||
{
|
{
|
||||||
|
//#define protocol_Gameplay_ObjectPickup 350
|
||||||
struct Protocol_ObjectPickup :public Oyster::Network::CustomProtocolObject
|
struct Protocol_ObjectPickup :public Oyster::Network::CustomProtocolObject
|
||||||
{
|
{
|
||||||
short object_ID;
|
short object_ID;
|
||||||
|
@ -50,10 +56,11 @@ namespace GameLogic
|
||||||
Oyster::Network::CustomNetProtocol protocol;
|
Oyster::Network::CustomNetProtocol protocol;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
//#define protocol_Gameplay_ObjectDamage 351
|
||||||
struct Protocol_ObjectDamage :public Oyster::Network::CustomProtocolObject
|
struct Protocol_ObjectDamage :public Oyster::Network::CustomProtocolObject
|
||||||
{
|
{
|
||||||
int object_ID;
|
int object_ID;
|
||||||
float health; //Precentage%
|
float healthLost; //Precentage%
|
||||||
|
|
||||||
Protocol_ObjectDamage()
|
Protocol_ObjectDamage()
|
||||||
{
|
{
|
||||||
|
@ -64,7 +71,7 @@ namespace GameLogic
|
||||||
this->protocol[2].type = Oyster::Network::NetAttributeType_Float;
|
this->protocol[2].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
|
||||||
object_ID = -1;
|
object_ID = -1;
|
||||||
health = 0.0f;
|
healthLost = 0.0f;
|
||||||
}
|
}
|
||||||
Protocol_ObjectDamage(Oyster::Network::CustomNetProtocol& p)
|
Protocol_ObjectDamage(Oyster::Network::CustomNetProtocol& p)
|
||||||
{
|
{
|
||||||
|
@ -78,12 +85,12 @@ namespace GameLogic
|
||||||
this->protocol[2].type = Oyster::Network::NetAttributeType_Float;
|
this->protocol[2].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
|
||||||
object_ID = id;
|
object_ID = id;
|
||||||
health = hp;
|
healthLost = hp;
|
||||||
}
|
}
|
||||||
Oyster::Network::CustomNetProtocol GetProtocol() override
|
Oyster::Network::CustomNetProtocol GetProtocol() override
|
||||||
{
|
{
|
||||||
this->protocol[1].value = object_ID;
|
this->protocol[1].value = object_ID;
|
||||||
this->protocol[2].value = health;
|
this->protocol[2].value = healthLost;
|
||||||
return protocol;
|
return protocol;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -91,51 +98,89 @@ namespace GameLogic
|
||||||
Oyster::Network::CustomNetProtocol protocol;
|
Oyster::Network::CustomNetProtocol protocol;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
//#define protocol_Gameplay_ObjectHealthStatus 352
|
||||||
|
struct Protocol_ObjectHealthStatus :public Oyster::Network::CustomProtocolObject
|
||||||
|
{
|
||||||
|
float currentHealth;
|
||||||
|
int id;
|
||||||
|
|
||||||
|
Protocol_ObjectHealthStatus()
|
||||||
|
{
|
||||||
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
this->protocol[0].value.netShort = protocol_Gameplay_ObjectHealthStatus;
|
||||||
|
this->protocol[1].type = Oyster::Network::NetAttributeType_Int;
|
||||||
|
this->protocol[2].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->id = 0;
|
||||||
|
this->currentHealth = 0.0f;
|
||||||
|
}
|
||||||
|
Protocol_ObjectHealthStatus(int id, float health)
|
||||||
|
{
|
||||||
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
this->protocol[0].value.netShort = protocol_Gameplay_ObjectHealthStatus;
|
||||||
|
this->protocol[1].type = Oyster::Network::NetAttributeType_Int;
|
||||||
|
this->protocol[2].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->id = id; this->currentHealth = health;
|
||||||
|
}
|
||||||
|
Protocol_ObjectHealthStatus(Oyster::Network::CustomNetProtocol& p)
|
||||||
|
{
|
||||||
|
this->id = p[1].value.netInt;
|
||||||
|
this->currentHealth = p[2].value.netFloat;
|
||||||
|
}
|
||||||
|
Oyster::Network::CustomNetProtocol GetProtocol() override
|
||||||
|
{
|
||||||
|
this->protocol[1].value = this->id;
|
||||||
|
this->protocol[2].value = this->currentHealth;
|
||||||
|
|
||||||
|
return protocol;
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
Oyster::Network::CustomNetProtocol protocol;
|
||||||
|
};
|
||||||
|
|
||||||
|
//#define protocol_Gameplay_ObjectPosition 353
|
||||||
struct Protocol_ObjectPosition :public Oyster::Network::CustomProtocolObject
|
struct Protocol_ObjectPosition :public Oyster::Network::CustomProtocolObject
|
||||||
{
|
{
|
||||||
int object_ID;
|
short object_ID;
|
||||||
float worldMatrix[16];
|
float position[3];
|
||||||
|
|
||||||
Protocol_ObjectPosition()
|
Protocol_ObjectPosition()
|
||||||
{
|
{
|
||||||
this->protocol[0].value = protocol_Gameplay_ObjectPosition;
|
this->protocol[0].value = protocol_Gameplay_ObjectPosition;
|
||||||
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
this->protocol[1].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
this->protocol[2].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->protocol[3].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->protocol[4].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
|
||||||
this->protocol[1].type = Oyster::Network::NetAttributeType_Int;
|
object_ID = 0;
|
||||||
|
memset(&position[0], 0, sizeof(float) * 3);
|
||||||
for (int i = 2; i <= 17; i++)
|
|
||||||
{
|
|
||||||
this->protocol[i].type = Oyster::Network::NetAttributeType_Float;
|
|
||||||
}
|
|
||||||
object_ID = -1;
|
|
||||||
memset(&worldMatrix[0], 0, sizeof(float) * 16);
|
|
||||||
}
|
}
|
||||||
Protocol_ObjectPosition(Oyster::Network::CustomNetProtocol& p)
|
Protocol_ObjectPosition(Oyster::Network::CustomNetProtocol& p)
|
||||||
{
|
{
|
||||||
|
object_ID = p[1].value.netShort;
|
||||||
|
position[0] = p[2].value.netFloat;
|
||||||
|
position[1] = p[3].value.netFloat;
|
||||||
|
position[2] = p[4].value.netFloat;
|
||||||
}
|
}
|
||||||
Protocol_ObjectPosition(float m[16], int id)
|
Protocol_ObjectPosition(float v[3], int id)
|
||||||
{
|
{
|
||||||
this->protocol[0].value = protocol_Gameplay_ObjectPosition;
|
this->protocol[0].value = protocol_Gameplay_ObjectPosition;
|
||||||
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
this->protocol[1].type = Oyster::Network::NetAttributeType_Short;
|
||||||
this->protocol[1].type = Oyster::Network::NetAttributeType_Int;
|
this->protocol[2].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->protocol[3].type = Oyster::Network::NetAttributeType_Float;
|
||||||
for (int i = 2; i <= 17; i++)
|
this->protocol[4].type = Oyster::Network::NetAttributeType_Float;
|
||||||
{
|
|
||||||
this->protocol[i].type = Oyster::Network::NetAttributeType_Float;
|
|
||||||
}
|
|
||||||
|
|
||||||
object_ID = id;
|
object_ID = id;
|
||||||
memcpy(&worldMatrix[0], &m[0], sizeof(float)*16);
|
memcpy(&position[0], &v[0], sizeof(float) * 3);
|
||||||
}
|
}
|
||||||
Oyster::Network::CustomNetProtocol GetProtocol() override
|
Oyster::Network::CustomNetProtocol GetProtocol() override
|
||||||
{
|
{
|
||||||
this->protocol[1].value = object_ID;
|
this->protocol[1].value = object_ID;
|
||||||
for (int i = 2; i <= 17; i++)
|
this->protocol[2].value = position[0];
|
||||||
{
|
this->protocol[3].value = position[1];
|
||||||
this->protocol[i].value = worldMatrix[i-2];
|
this->protocol[4].value = position[2];
|
||||||
}
|
|
||||||
return protocol;
|
return protocol;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -143,49 +188,132 @@ namespace GameLogic
|
||||||
Oyster::Network::CustomNetProtocol protocol;
|
Oyster::Network::CustomNetProtocol protocol;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
//#define protocol_Gameplay_ObjectScale 354
|
||||||
|
struct Protocol_ObjectScale :public Oyster::Network::CustomProtocolObject
|
||||||
|
{
|
||||||
|
short object_ID;
|
||||||
|
float position[3];
|
||||||
|
|
||||||
|
Protocol_ObjectScale()
|
||||||
|
{
|
||||||
|
this->protocol[0].value = protocol_Gameplay_ObjectScale;
|
||||||
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
this->protocol[1].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
this->protocol[2].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->protocol[3].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->protocol[4].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
|
||||||
|
object_ID = 0;
|
||||||
|
memset(&position[0], 0, sizeof(float) * 3);
|
||||||
|
}
|
||||||
|
Protocol_ObjectScale(Oyster::Network::CustomNetProtocol& p)
|
||||||
|
{
|
||||||
|
object_ID = p[1].value.netShort;
|
||||||
|
position[0] = p[2].value.netFloat;
|
||||||
|
position[1] = p[3].value.netFloat;
|
||||||
|
position[2] = p[4].value.netFloat;
|
||||||
|
}
|
||||||
|
Protocol_ObjectScale(float v[3], int id)
|
||||||
|
{
|
||||||
|
this->protocol[0].value = protocol_Gameplay_ObjectScale;
|
||||||
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
this->protocol[1].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
this->protocol[2].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->protocol[3].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->protocol[4].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
|
||||||
|
object_ID = id;
|
||||||
|
memcpy(&position[0], &v[0], sizeof(float) * 3);
|
||||||
|
}
|
||||||
|
Oyster::Network::CustomNetProtocol GetProtocol() override
|
||||||
|
{
|
||||||
|
this->protocol[1].value = object_ID;
|
||||||
|
this->protocol[2].value = position[0];
|
||||||
|
this->protocol[3].value = position[1];
|
||||||
|
this->protocol[4].value = position[2];
|
||||||
|
return protocol;
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
Oyster::Network::CustomNetProtocol protocol;
|
||||||
|
};
|
||||||
|
|
||||||
|
//#define protocol_Gameplay_ObjectRotation 355
|
||||||
|
struct Protocol_ObjectRotation :public Oyster::Network::CustomProtocolObject
|
||||||
|
{
|
||||||
|
short object_ID;
|
||||||
|
float position[3];
|
||||||
|
|
||||||
|
Protocol_ObjectRotation()
|
||||||
|
{
|
||||||
|
this->protocol[0].value = protocol_Gameplay_ObjectRotation;
|
||||||
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
this->protocol[1].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
this->protocol[2].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->protocol[3].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->protocol[4].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
|
||||||
|
object_ID = 0;
|
||||||
|
memset(&position[0], 0, sizeof(float) * 3);
|
||||||
|
}
|
||||||
|
Protocol_ObjectRotation(Oyster::Network::CustomNetProtocol& p)
|
||||||
|
{
|
||||||
|
object_ID = p[1].value.netShort;
|
||||||
|
position[0] = p[2].value.netFloat;
|
||||||
|
position[1] = p[3].value.netFloat;
|
||||||
|
position[2] = p[4].value.netFloat;
|
||||||
|
}
|
||||||
|
Protocol_ObjectRotation(float v[3], int id)
|
||||||
|
{
|
||||||
|
this->protocol[0].value = protocol_Gameplay_ObjectRotation;
|
||||||
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
this->protocol[1].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
this->protocol[2].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->protocol[3].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->protocol[4].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
|
||||||
|
object_ID = id;
|
||||||
|
memcpy(&position[0], &v[0], sizeof(float) * 3);
|
||||||
|
}
|
||||||
|
Oyster::Network::CustomNetProtocol GetProtocol() override
|
||||||
|
{
|
||||||
|
this->protocol[1].value = object_ID;
|
||||||
|
this->protocol[2].value = position[0];
|
||||||
|
this->protocol[3].value = position[1];
|
||||||
|
this->protocol[4].value = position[2];
|
||||||
|
return protocol;
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
Oyster::Network::CustomNetProtocol protocol;
|
||||||
|
};
|
||||||
|
|
||||||
|
//#define protocol_Gameplay_ObjectEnabled 356
|
||||||
struct Protocol_ObjectEnable :public Oyster::Network::CustomProtocolObject
|
struct Protocol_ObjectEnable :public Oyster::Network::CustomProtocolObject
|
||||||
{
|
{
|
||||||
int object_ID;
|
int objectID;
|
||||||
float worldMatrix[16];
|
|
||||||
|
|
||||||
Protocol_ObjectEnable()
|
Protocol_ObjectEnable()
|
||||||
{
|
{
|
||||||
this->protocol[0].value = protocol_Gameplay_ObjectEnabled;
|
this->protocol[0].value = protocol_Gameplay_ObjectEnabled;
|
||||||
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
|
||||||
this->protocol[1].type = Oyster::Network::NetAttributeType_Int;
|
this->protocol[1].type = Oyster::Network::NetAttributeType_Int;
|
||||||
|
this->objectID = -1;
|
||||||
for (int i = 2; i <= 17; i++)
|
|
||||||
{
|
|
||||||
this->protocol[i].type = Oyster::Network::NetAttributeType_Float;
|
|
||||||
}
|
}
|
||||||
object_ID = -1;
|
Protocol_ObjectEnable(int objectID)
|
||||||
memset(&worldMatrix[0], 0, sizeof(float) * 16);
|
|
||||||
}
|
|
||||||
Protocol_ObjectEnable(Oyster::Network::CustomNetProtocol& p)
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
Protocol_ObjectEnable(float m[16], int id)
|
|
||||||
{
|
{
|
||||||
this->protocol[0].value = protocol_Gameplay_ObjectEnabled;
|
this->protocol[0].value = protocol_Gameplay_ObjectEnabled;
|
||||||
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
|
||||||
this->protocol[1].type = Oyster::Network::NetAttributeType_Int;
|
this->protocol[1].type = Oyster::Network::NetAttributeType_Int;
|
||||||
|
this->objectID = objectID;
|
||||||
for (int i = 2; i <= 17; i++)
|
}
|
||||||
{ this->protocol[i].type = Oyster::Network::NetAttributeType_Float; }
|
Protocol_ObjectEnable(Oyster::Network::CustomNetProtocol& p)
|
||||||
|
{
|
||||||
object_ID = id;
|
this->objectID = p[1].value.netInt;
|
||||||
memcpy(&worldMatrix[0], &m[0], sizeof(float)*16);
|
|
||||||
}
|
}
|
||||||
Oyster::Network::CustomNetProtocol GetProtocol() override
|
Oyster::Network::CustomNetProtocol GetProtocol() override
|
||||||
{
|
{
|
||||||
this->protocol[1].value = object_ID;
|
this->protocol[1].value = this->objectID;
|
||||||
for (int i = 2; i <= 17; i++)
|
|
||||||
{
|
|
||||||
this->protocol[i].value = worldMatrix[i-2];
|
|
||||||
}
|
|
||||||
return protocol;
|
return protocol;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -193,38 +321,39 @@ namespace GameLogic
|
||||||
Oyster::Network::CustomNetProtocol protocol;
|
Oyster::Network::CustomNetProtocol protocol;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
//#define protocol_Gameplay_ObjectDisabled 357
|
||||||
struct Protocol_ObjectDisable :public Oyster::Network::CustomProtocolObject
|
struct Protocol_ObjectDisable :public Oyster::Network::CustomProtocolObject
|
||||||
{
|
{
|
||||||
int object_ID;
|
int objectID;
|
||||||
float timer;
|
float seconds;
|
||||||
|
|
||||||
Protocol_ObjectDisable()
|
Protocol_ObjectDisable()
|
||||||
{
|
{
|
||||||
this->protocol[0].value = protocol_Gameplay_ObjectDisabled;
|
this->protocol[0].value = protocol_Gameplay_ObjectDisabled;
|
||||||
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
|
||||||
this->protocol[1].type = Oyster::Network::NetAttributeType_Int;
|
this->protocol[1].type = Oyster::Network::NetAttributeType_Int;
|
||||||
this->protocol[2].type = Oyster::Network::NetAttributeType_Float;
|
this->protocol[2].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->objectID = 0;
|
||||||
|
this->seconds = 0.0f;
|
||||||
}
|
}
|
||||||
Protocol_ObjectDisable(Oyster::Network::CustomNetProtocol& p)
|
Protocol_ObjectDisable(int objctID, float seconds)
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
Protocol_ObjectDisable(int id, float time)
|
|
||||||
{
|
{
|
||||||
this->protocol[0].value = protocol_Gameplay_ObjectDisabled;
|
this->protocol[0].value = protocol_Gameplay_ObjectDisabled;
|
||||||
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
|
||||||
this->protocol[1].type = Oyster::Network::NetAttributeType_Int;
|
this->protocol[1].type = Oyster::Network::NetAttributeType_Int;
|
||||||
this->protocol[2].type = Oyster::Network::NetAttributeType_Float;
|
this->protocol[2].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->objectID = objctID;
|
||||||
object_ID = id;
|
this->seconds = seconds;
|
||||||
timer = time;
|
}
|
||||||
|
Protocol_ObjectDisable(Oyster::Network::CustomNetProtocol& p)
|
||||||
|
{
|
||||||
|
this->objectID = p[1].value.netInt;
|
||||||
|
this->seconds = p[2].value.netFloat;
|
||||||
}
|
}
|
||||||
Oyster::Network::CustomNetProtocol GetProtocol() override
|
Oyster::Network::CustomNetProtocol GetProtocol() override
|
||||||
{
|
{
|
||||||
this->protocol[1].value = object_ID;
|
this->protocol[1].value = this->objectID;
|
||||||
this->protocol[2].value = timer;
|
this->protocol[2].value = this->seconds;
|
||||||
return protocol;
|
return protocol;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -232,6 +361,7 @@ namespace GameLogic
|
||||||
Oyster::Network::CustomNetProtocol protocol;
|
Oyster::Network::CustomNetProtocol protocol;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
//#define protocol_Gameplay_ObjectCreate 358
|
||||||
struct Protocol_ObjectCreate :public Oyster::Network::CustomProtocolObject
|
struct Protocol_ObjectCreate :public Oyster::Network::CustomProtocolObject
|
||||||
{
|
{
|
||||||
//ObjectType type; //ie player, box or whatever
|
//ObjectType type; //ie player, box or whatever
|
||||||
|
@ -304,6 +434,330 @@ namespace GameLogic
|
||||||
private:
|
private:
|
||||||
Oyster::Network::CustomNetProtocol protocol;
|
Oyster::Network::CustomNetProtocol protocol;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
//#define protocol_Gameplay_ObjectCreatePlayer 359
|
||||||
|
struct Protocol_ObjectCreatePlayer :public Oyster::Network::CustomProtocolObject
|
||||||
|
{
|
||||||
|
//ObjectType type; //ie player, box or whatever
|
||||||
|
int object_ID;
|
||||||
|
int teamId;
|
||||||
|
std::string name;
|
||||||
|
std::string meshName;
|
||||||
|
float position[3];
|
||||||
|
float rotation[3];
|
||||||
|
float scale[3];
|
||||||
|
|
||||||
|
Protocol_ObjectCreatePlayer()
|
||||||
|
{
|
||||||
|
this->protocol[0].value = protocol_Gameplay_ObjectCreatePlayer;
|
||||||
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
|
||||||
|
//PLAYER_ID
|
||||||
|
this->protocol[1].type = Oyster::Network::NetAttributeType_Int;
|
||||||
|
//TEAM_ID
|
||||||
|
this->protocol[2].type = Oyster::Network::NetAttributeType_Int;
|
||||||
|
//PLAYER-NAME
|
||||||
|
this->protocol[3].type = Oyster::Network::NetAttributeType_CharArray;
|
||||||
|
//MESH-NAME
|
||||||
|
this->protocol[4].type = Oyster::Network::NetAttributeType_CharArray;
|
||||||
|
//POSITION
|
||||||
|
this->protocol[5].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->protocol[6].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->protocol[7].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
//ROTATION
|
||||||
|
this->protocol[8].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->protocol[9].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->protocol[10].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
//SCALE
|
||||||
|
this->protocol[11].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->protocol[12].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->protocol[13].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
}
|
||||||
|
Protocol_ObjectCreatePlayer(Oyster::Network::CustomNetProtocol& p)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
Protocol_ObjectCreatePlayer(float position[3], float rotation[3], float scale[3], int ObjectID, int teamID, std::string name, std::string meshName)
|
||||||
|
{
|
||||||
|
this->protocol[0].value = protocol_Gameplay_ObjectCreatePlayer;
|
||||||
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
|
||||||
|
//PLAYER_ID
|
||||||
|
this->protocol[1].type = Oyster::Network::NetAttributeType_Int;
|
||||||
|
//TEAM_ID
|
||||||
|
this->protocol[2].type = Oyster::Network::NetAttributeType_Int;
|
||||||
|
//PLAYER-NAME
|
||||||
|
this->protocol[3].type = Oyster::Network::NetAttributeType_CharArray;
|
||||||
|
//MESH-NAME
|
||||||
|
this->protocol[4].type = Oyster::Network::NetAttributeType_CharArray;
|
||||||
|
//POSITION
|
||||||
|
this->protocol[5].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->protocol[6].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->protocol[7].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
//ROTATION
|
||||||
|
this->protocol[8].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->protocol[9].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->protocol[10].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
//SCALE
|
||||||
|
this->protocol[11].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->protocol[12].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->protocol[13].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
|
||||||
|
this->object_ID = ObjectID;
|
||||||
|
this->teamId = teamID;
|
||||||
|
this->name = name;
|
||||||
|
this->meshName = meshName;
|
||||||
|
memcpy(&this->position[0], &position[0], sizeof(float)*3);
|
||||||
|
memcpy(&this->rotation[0], &rotation[0], sizeof(float)*3);
|
||||||
|
memcpy(&this->scale[0], &scale[0], sizeof(float)*3);
|
||||||
|
}
|
||||||
|
Oyster::Network::CustomNetProtocol GetProtocol() override
|
||||||
|
{
|
||||||
|
|
||||||
|
this->protocol[1].value = this->object_ID;
|
||||||
|
this->protocol[2].value = this->teamId;
|
||||||
|
this->protocol.Set(3, this->name);
|
||||||
|
this->protocol.Set(4, this->meshName);
|
||||||
|
|
||||||
|
//POSITION
|
||||||
|
this->protocol[5].value = this->position[0];
|
||||||
|
this->protocol[6].value = this->position[1];
|
||||||
|
this->protocol[7].value = this->position[2];
|
||||||
|
//ROTATION
|
||||||
|
this->protocol[8].value = this->rotation[0];
|
||||||
|
this->protocol[9].value = this->rotation[1];
|
||||||
|
this->protocol[10].value = this->rotation[2];
|
||||||
|
//SCALE
|
||||||
|
this->protocol[11].value = this->scale[0];
|
||||||
|
this->protocol[12].value = this->scale[1];
|
||||||
|
this->protocol[13].value = this->scale[2];
|
||||||
|
|
||||||
|
return protocol;
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
Oyster::Network::CustomNetProtocol protocol;
|
||||||
|
};
|
||||||
|
|
||||||
|
//#define protocol_Gameplay_ObjectJoinTeam 360
|
||||||
|
struct Protocol_ObjectJoinTeam :public Oyster::Network::CustomProtocolObject
|
||||||
|
{
|
||||||
|
int objectID;
|
||||||
|
int teamID;
|
||||||
|
|
||||||
|
Protocol_ObjectJoinTeam()
|
||||||
|
{
|
||||||
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
this->protocol[0].value.netShort = protocol_Gameplay_ObjectJoinTeam;
|
||||||
|
this->protocol[1].type = Oyster::Network::NetAttributeType_Int;
|
||||||
|
this->protocol[2].type = Oyster::Network::NetAttributeType_Int;
|
||||||
|
this->objectID = 0;
|
||||||
|
this->teamID = 0;
|
||||||
|
}
|
||||||
|
Protocol_ObjectJoinTeam(int objID, int teamID)
|
||||||
|
{
|
||||||
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
this->protocol[0].value.netShort = protocol_Gameplay_ObjectJoinTeam;
|
||||||
|
this->protocol[1].type = Oyster::Network::NetAttributeType_Int;
|
||||||
|
this->protocol[2].type = Oyster::Network::NetAttributeType_Int;
|
||||||
|
this->objectID = objID;
|
||||||
|
this->teamID = teamID;
|
||||||
|
}
|
||||||
|
Protocol_ObjectJoinTeam(Oyster::Network::CustomNetProtocol& p)
|
||||||
|
{
|
||||||
|
this->objectID = p[1].value.netInt;
|
||||||
|
this->teamID = p[2].value.netInt;
|
||||||
|
}
|
||||||
|
Oyster::Network::CustomNetProtocol GetProtocol() override
|
||||||
|
{
|
||||||
|
this->protocol[1].value = this->objectID;
|
||||||
|
this->protocol[2].value = this->teamID;
|
||||||
|
return protocol;
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
Oyster::Network::CustomNetProtocol protocol;
|
||||||
|
};
|
||||||
|
|
||||||
|
//#define protocol_Gameplay_ObjectLeaveTeam 361
|
||||||
|
struct Protocol_ObjectLeaveTeam :public Oyster::Network::CustomProtocolObject
|
||||||
|
{
|
||||||
|
int objectID;
|
||||||
|
Protocol_ObjectLeaveTeam()
|
||||||
|
{
|
||||||
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
this->protocol[0].value.netShort = protocol_Gameplay_ObjectLeaveTeam;
|
||||||
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Int;
|
||||||
|
this->objectID = 0;
|
||||||
|
}
|
||||||
|
Protocol_ObjectLeaveTeam(int objectID)
|
||||||
|
{
|
||||||
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
this->protocol[0].value.netShort = protocol_Gameplay_ObjectLeaveTeam;
|
||||||
|
this->protocol[1].type = Oyster::Network::NetAttributeType_Int;
|
||||||
|
this->objectID = objectID;
|
||||||
|
}
|
||||||
|
Protocol_ObjectLeaveTeam(Oyster::Network::CustomNetProtocol& p)
|
||||||
|
{
|
||||||
|
this->objectID = p[1].value.netInt;
|
||||||
|
}
|
||||||
|
Oyster::Network::CustomNetProtocol GetProtocol() override
|
||||||
|
{
|
||||||
|
this->protocol[1].value = this->objectID;
|
||||||
|
return protocol;
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
Oyster::Network::CustomNetProtocol protocol;
|
||||||
|
};
|
||||||
|
|
||||||
|
//#define protocol_Gameplay_ObjectWeaponCooldown 362
|
||||||
|
struct Protocol_ObjectWeaponCooldown :public Oyster::Network::CustomProtocolObject
|
||||||
|
{
|
||||||
|
float seconds;
|
||||||
|
Protocol_ObjectWeaponCooldown()
|
||||||
|
{
|
||||||
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
this->protocol[0].value.netShort = protocol_Gameplay_ObjectWeaponCooldown;
|
||||||
|
this->protocol[1].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->seconds = 0.0f;
|
||||||
|
}
|
||||||
|
Protocol_ObjectWeaponCooldown(float seconds)
|
||||||
|
{
|
||||||
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
this->protocol[0].value.netShort = protocol_Gameplay_ObjectWeaponCooldown;
|
||||||
|
this->protocol[1].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->seconds = seconds;
|
||||||
|
}
|
||||||
|
Protocol_ObjectWeaponCooldown(Oyster::Network::CustomNetProtocol& p)
|
||||||
|
{
|
||||||
|
this->seconds = p[1].value.netFloat;
|
||||||
|
}
|
||||||
|
Oyster::Network::CustomNetProtocol GetProtocol() override
|
||||||
|
{
|
||||||
|
this->protocol[1].value = this->seconds;
|
||||||
|
return protocol;
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
Oyster::Network::CustomNetProtocol protocol;
|
||||||
|
};
|
||||||
|
|
||||||
|
//#define protocol_Gameplay_ObjectWeaponEnergy 363
|
||||||
|
struct Protocol_ObjectWeaponEnergy :public Oyster::Network::CustomProtocolObject
|
||||||
|
{
|
||||||
|
float energy;
|
||||||
|
Protocol_ObjectWeaponEnergy()
|
||||||
|
{
|
||||||
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
this->protocol[0].value.netShort = protocol_Gameplay_ObjectWeaponEnergy;
|
||||||
|
this->protocol[1].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->energy = 0.0f;
|
||||||
|
}
|
||||||
|
Protocol_ObjectWeaponEnergy(float energy)
|
||||||
|
{
|
||||||
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
this->protocol[0].value.netShort = protocol_Gameplay_ObjectWeaponEnergy;
|
||||||
|
this->protocol[1].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->energy = energy;
|
||||||
|
}
|
||||||
|
Protocol_ObjectWeaponEnergy(Oyster::Network::CustomNetProtocol& p)
|
||||||
|
{
|
||||||
|
this->energy = p[1].value.netFloat;
|
||||||
|
}
|
||||||
|
Oyster::Network::CustomNetProtocol GetProtocol() override
|
||||||
|
{
|
||||||
|
this->protocol[1].value = this->energy;
|
||||||
|
return protocol;
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
Oyster::Network::CustomNetProtocol protocol;
|
||||||
|
};
|
||||||
|
|
||||||
|
//#define protocol_Gameplay_ObjectRespawn 364
|
||||||
|
struct Protocol_ObjectRespawn :public Oyster::Network::CustomProtocolObject
|
||||||
|
{
|
||||||
|
float position[3];
|
||||||
|
|
||||||
|
Protocol_ObjectRespawn()
|
||||||
|
{
|
||||||
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
this->protocol[0].value.netShort = protocol_Gameplay_ObjectRespawn;
|
||||||
|
|
||||||
|
this->protocol[1].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->protocol[2].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->protocol[3].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
memset(&this->position[0], 0, sizeof(float) * 3);
|
||||||
|
}
|
||||||
|
Protocol_ObjectRespawn(float position[3])
|
||||||
|
{
|
||||||
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
this->protocol[0].value.netShort = protocol_Gameplay_ObjectRespawn;
|
||||||
|
this->protocol[1].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->protocol[2].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->protocol[3].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
|
||||||
|
memcpy(&this->position[0], &position[0], sizeof(float) * 3);
|
||||||
|
}
|
||||||
|
Protocol_ObjectRespawn(Oyster::Network::CustomNetProtocol& p)
|
||||||
|
{
|
||||||
|
this->position[0] = p[1].value.netFloat;
|
||||||
|
this->position[1] = p[2].value.netFloat;
|
||||||
|
this->position[2] = p[3].value.netFloat;
|
||||||
|
}
|
||||||
|
Oyster::Network::CustomNetProtocol GetProtocol() override
|
||||||
|
{
|
||||||
|
this->protocol[1].value = this->position[0];
|
||||||
|
this->protocol[2].value = this->position[1];
|
||||||
|
this->protocol[3].value = this->position[2];
|
||||||
|
return protocol;
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
Oyster::Network::CustomNetProtocol protocol;
|
||||||
|
};
|
||||||
|
|
||||||
|
//#define protocol_Gameplay_ObjectDie 365
|
||||||
|
struct Protocol_ObjectDie :public Oyster::Network::CustomProtocolObject
|
||||||
|
{
|
||||||
|
int objectID;
|
||||||
|
float seconds;
|
||||||
|
|
||||||
|
Protocol_ObjectDie()
|
||||||
|
{
|
||||||
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
this->protocol[0].value.netShort = protocol_Gameplay_ObjectDie;
|
||||||
|
this->protocol[1].type = Oyster::Network::NetAttributeType_Int;
|
||||||
|
this->protocol[2].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->objectID = 0;
|
||||||
|
this->seconds = 0.0f;
|
||||||
|
}
|
||||||
|
Protocol_ObjectDie(int objectID, float seconds)
|
||||||
|
{
|
||||||
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
this->protocol[0].value.netShort = protocol_Gameplay_ObjectDie;
|
||||||
|
this->protocol[1].type = Oyster::Network::NetAttributeType_Int;
|
||||||
|
this->protocol[2].type = Oyster::Network::NetAttributeType_Float;
|
||||||
|
this->objectID = objectID;
|
||||||
|
this->seconds = seconds;
|
||||||
|
}
|
||||||
|
Protocol_ObjectDie(Oyster::Network::CustomNetProtocol& p)
|
||||||
|
{
|
||||||
|
this->objectID = p[1].value.netInt;
|
||||||
|
this->seconds = p[2].value.netFloat;
|
||||||
|
}
|
||||||
|
Oyster::Network::CustomNetProtocol GetProtocol() override
|
||||||
|
{
|
||||||
|
this->protocol[1].value = this->objectID;
|
||||||
|
this->protocol[2].value = this->seconds;
|
||||||
|
return protocol;
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
Oyster::Network::CustomNetProtocol protocol;
|
||||||
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif // !GAMELOGIC_PLAYER_PROTOCOLS_H
|
#endif // !GAMELOGIC_PLAYER_PROTOCOLS_H
|
|
@ -8,56 +8,67 @@
|
||||||
|
|
||||||
#include <CustomNetProtocol.h>
|
#include <CustomNetProtocol.h>
|
||||||
#include "ProtocolIdentificationID.h"
|
#include "ProtocolIdentificationID.h"
|
||||||
#include <bitset>
|
|
||||||
|
|
||||||
//protocol_Gameplay_PlayerMovement 300
|
|
||||||
//protocol_Gameplay_PlayerMouseMovement 301
|
|
||||||
//protocol_Gameplay_PlayerChangeWeapon 302
|
|
||||||
|
|
||||||
namespace GameLogic
|
namespace GameLogic
|
||||||
{
|
{
|
||||||
struct Protocol_PlayerMovement :public Oyster::Network::CustomProtocolObject
|
struct Protocol_PlayerMovementRight :public Oyster::Network::CustomProtocolObject
|
||||||
{
|
{
|
||||||
bool bForward;
|
Protocol_PlayerMovementRight()
|
||||||
bool bBackward;
|
|
||||||
bool bLeft;
|
|
||||||
bool bRight;
|
|
||||||
|
|
||||||
Protocol_PlayerMovement()
|
|
||||||
{
|
{
|
||||||
this->protocol[0].value = protocol_Gameplay_PlayerMovement;
|
this->protocol[0].value = protocol_Gameplay_PlayerMovementRight;
|
||||||
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
|
||||||
this->protocol[1].type = Oyster::Network::NetAttributeType_Bool;
|
|
||||||
this->protocol[2].type = Oyster::Network::NetAttributeType_Bool;
|
|
||||||
this->protocol[3].type = Oyster::Network::NetAttributeType_Bool;
|
|
||||||
this->protocol[4].type = Oyster::Network::NetAttributeType_Bool;
|
|
||||||
}
|
|
||||||
Protocol_PlayerMovement(Oyster::Network::CustomNetProtocol& p)
|
|
||||||
{
|
|
||||||
bForward = p[1].value.netBool;
|
|
||||||
bBackward = p[2].value.netBool;
|
|
||||||
bLeft = p[3].value.netBool;
|
|
||||||
bRight = p[4].value.netBool;
|
|
||||||
}
|
|
||||||
const Protocol_PlayerMovement& operator=(Oyster::Network::CustomNetProtocol& val)
|
|
||||||
{
|
|
||||||
bForward = val[1].value.netBool;
|
|
||||||
bBackward = val[2].value.netBool;
|
|
||||||
bLeft = val[3].value.netBool;
|
|
||||||
bRight = val[4].value.netBool;
|
|
||||||
|
|
||||||
return *this;
|
|
||||||
}
|
}
|
||||||
Oyster::Network::CustomNetProtocol GetProtocol() override
|
Oyster::Network::CustomNetProtocol GetProtocol() override
|
||||||
{
|
{ return protocol; }
|
||||||
this->protocol[1].value = bForward;
|
|
||||||
this->protocol[2].value = bBackward;
|
|
||||||
this->protocol[3].value = bLeft;
|
|
||||||
this->protocol[4].value = bRight;
|
|
||||||
|
|
||||||
return protocol;
|
private:
|
||||||
|
Oyster::Network::CustomNetProtocol protocol;
|
||||||
|
};
|
||||||
|
struct Protocol_PlayerMovementLeft :public Oyster::Network::CustomProtocolObject
|
||||||
|
{
|
||||||
|
Protocol_PlayerMovementLeft()
|
||||||
|
{
|
||||||
|
this->protocol[0].value = protocol_Gameplay_PlayerMovementLeft;
|
||||||
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
}
|
}
|
||||||
|
Oyster::Network::CustomNetProtocol GetProtocol() override { return protocol; }
|
||||||
|
|
||||||
|
private:
|
||||||
|
Oyster::Network::CustomNetProtocol protocol;
|
||||||
|
};
|
||||||
|
struct Protocol_PlayerMovementForward :public Oyster::Network::CustomProtocolObject
|
||||||
|
{
|
||||||
|
Protocol_PlayerMovementForward()
|
||||||
|
{
|
||||||
|
this->protocol[0].value = protocol_Gameplay_PlayerMovementForward;
|
||||||
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
}
|
||||||
|
Oyster::Network::CustomNetProtocol GetProtocol() override { return protocol; }
|
||||||
|
|
||||||
|
private:
|
||||||
|
Oyster::Network::CustomNetProtocol protocol;
|
||||||
|
};
|
||||||
|
struct Protocol_PlayerMovementBackward :public Oyster::Network::CustomProtocolObject
|
||||||
|
{
|
||||||
|
Protocol_PlayerMovementBackward()
|
||||||
|
{
|
||||||
|
this->protocol[0].value = protocol_Gameplay_PlayerMovementBackward;
|
||||||
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
}
|
||||||
|
Oyster::Network::CustomNetProtocol GetProtocol() override { return protocol; }
|
||||||
|
|
||||||
|
private:
|
||||||
|
Oyster::Network::CustomNetProtocol protocol;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct Protocol_PlayerJump :public Oyster::Network::CustomProtocolObject
|
||||||
|
{
|
||||||
|
Protocol_PlayerJump()
|
||||||
|
{
|
||||||
|
this->protocol[0].value = protocol_Gameplay_PlayerJump;
|
||||||
|
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
||||||
|
}
|
||||||
|
Oyster::Network::CustomNetProtocol GetProtocol() override { return protocol; }
|
||||||
|
|
||||||
private:
|
private:
|
||||||
Oyster::Network::CustomNetProtocol protocol;
|
Oyster::Network::CustomNetProtocol protocol;
|
||||||
|
@ -65,7 +76,6 @@ namespace GameLogic
|
||||||
|
|
||||||
struct Protocol_PlayerLook :public Oyster::Network::CustomProtocolObject
|
struct Protocol_PlayerLook :public Oyster::Network::CustomProtocolObject
|
||||||
{
|
{
|
||||||
|
|
||||||
float lookDirX;
|
float lookDirX;
|
||||||
float lookDirY;
|
float lookDirY;
|
||||||
float lookDirZ;
|
float lookDirZ;
|
||||||
|
@ -180,35 +190,6 @@ namespace GameLogic
|
||||||
Oyster::Network::CustomNetProtocol protocol;
|
Oyster::Network::CustomNetProtocol protocol;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Protocol_PlayerJump :public Oyster::Network::CustomProtocolObject
|
|
||||||
{
|
|
||||||
bool hasJumped;
|
|
||||||
|
|
||||||
Protocol_PlayerJump()
|
|
||||||
{
|
|
||||||
this->protocol[0].value = protocol_Gameplay_PlayerJump;
|
|
||||||
this->protocol[0].type = Oyster::Network::NetAttributeType_Short;
|
|
||||||
|
|
||||||
this->protocol[1].type = Oyster::Network::NetAttributeType_Bool;
|
|
||||||
}
|
|
||||||
Protocol_PlayerJump(Oyster::Network::CustomNetProtocol& p)
|
|
||||||
{
|
|
||||||
hasJumped = p[1].value.netBool;
|
|
||||||
}
|
|
||||||
const Protocol_PlayerJump& operator=(Oyster::Network::CustomNetProtocol& val)
|
|
||||||
{
|
|
||||||
hasJumped = val[1].value.netBool;
|
|
||||||
return *this;
|
|
||||||
}
|
|
||||||
Oyster::Network::CustomNetProtocol GetProtocol() override
|
|
||||||
{
|
|
||||||
this->protocol[1].value = hasJumped;
|
|
||||||
return protocol;
|
|
||||||
}
|
|
||||||
|
|
||||||
private:
|
|
||||||
Oyster::Network::CustomNetProtocol protocol;
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif // !GAMELOGIC_PLAYER_PROTOCOLS_H
|
#endif // !GAMELOGIC_PLAYER_PROTOCOLS_H
|
||||||
|
|
|
@ -41,17 +41,32 @@
|
||||||
/********* GAMEPLAY PROTOCOLS ***************************************************************************************************/
|
/********* GAMEPLAY PROTOCOLS ***************************************************************************************************/
|
||||||
/***********[ 300 - 399 ]***********/
|
/***********[ 300 - 399 ]***********/
|
||||||
#define protocol_GameplayMIN 300
|
#define protocol_GameplayMIN 300
|
||||||
#define protocol_Gameplay_PlayerMovement 300
|
#define protocol_Gameplay_PlayerMovementRight 300
|
||||||
#define protocol_Gameplay_PlayerLookDir 301
|
#define protocol_Gameplay_PlayerMovementLeft 301
|
||||||
#define protocol_Gameplay_PlayerChangeWeapon 302
|
#define protocol_Gameplay_PlayerMovementForward 302
|
||||||
#define protocol_Gameplay_PlayerShot 303
|
#define protocol_Gameplay_PlayerMovementBackward 303
|
||||||
#define protocol_Gameplay_PlayerJump 304
|
#define protocol_Gameplay_PlayerLookDir 304
|
||||||
#define protocol_Gameplay_ObjectPickup 305
|
#define protocol_Gameplay_PlayerChangeWeapon 305
|
||||||
#define protocol_Gameplay_ObjectDamage 306
|
#define protocol_Gameplay_PlayerShot 306
|
||||||
#define protocol_Gameplay_ObjectPosition 307
|
#define protocol_Gameplay_PlayerJump 307
|
||||||
#define protocol_Gameplay_ObjectEnabled 308
|
|
||||||
#define protocol_Gameplay_ObjectDisabled 309
|
#define protocol_Gameplay_ObjectPickup 350
|
||||||
#define protocol_Gameplay_ObjectCreate 310
|
#define protocol_Gameplay_ObjectDamage 351
|
||||||
|
#define protocol_Gameplay_ObjectHealthStatus 352
|
||||||
|
#define protocol_Gameplay_ObjectPosition 353
|
||||||
|
#define protocol_Gameplay_ObjectScale 354
|
||||||
|
#define protocol_Gameplay_ObjectRotation 355
|
||||||
|
#define protocol_Gameplay_ObjectEnabled 356
|
||||||
|
#define protocol_Gameplay_ObjectDisabled 357
|
||||||
|
#define protocol_Gameplay_ObjectCreate 358
|
||||||
|
#define protocol_Gameplay_ObjectCreatePlayer 359
|
||||||
|
#define protocol_Gameplay_ObjectJoinTeam 360
|
||||||
|
#define protocol_Gameplay_ObjectLeaveTeam 361
|
||||||
|
|
||||||
|
#define protocol_Gameplay_ObjectWeaponCooldown 362
|
||||||
|
#define protocol_Gameplay_ObjectWeaponEnergy 363
|
||||||
|
#define protocol_Gameplay_ObjectRespawn 364
|
||||||
|
#define protocol_Gameplay_ObjectDie 365
|
||||||
#define protocol_GameplayMAX 399
|
#define protocol_GameplayMAX 399
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -74,11 +74,14 @@ namespace DanBias
|
||||||
private:
|
private:
|
||||||
void ParseProtocol ( Oyster::Network::CustomNetProtocol& p, DanBias::GameClient* c );
|
void ParseProtocol ( Oyster::Network::CustomNetProtocol& p, DanBias::GameClient* c );
|
||||||
|
|
||||||
void Gameplay_PlayerMovement ( GameLogic::Protocol_PlayerMovement& p, DanBias::GameClient* c );
|
void Gameplay_PlayerMovementRight ( DanBias::GameClient* c );
|
||||||
|
void Gameplay_PlayerMovementLeft ( DanBias::GameClient* c );
|
||||||
|
void Gameplay_PlayerMovementBack ( DanBias::GameClient* c );
|
||||||
|
void Gameplay_PlayerMovementForth ( DanBias::GameClient* c );
|
||||||
|
void Gameplay_PlayerJump ( DanBias::GameClient* c );
|
||||||
void Gameplay_PlayerLookDir ( GameLogic::Protocol_PlayerLook& p, DanBias::GameClient* c );
|
void Gameplay_PlayerLookDir ( GameLogic::Protocol_PlayerLook& p, DanBias::GameClient* c );
|
||||||
void Gameplay_PlayerChangeWeapon ( GameLogic::Protocol_PlayerChangeWeapon& p, DanBias::GameClient* c );
|
void Gameplay_PlayerChangeWeapon ( GameLogic::Protocol_PlayerChangeWeapon& p, DanBias::GameClient* c );
|
||||||
void Gameplay_PlayerShot ( GameLogic::Protocol_PlayerShot& p, DanBias::GameClient* c );
|
void Gameplay_PlayerShot ( GameLogic::Protocol_PlayerShot& p, DanBias::GameClient* c );
|
||||||
void Gameplay_PlayerJump ( GameLogic::Protocol_PlayerJump& p, DanBias::GameClient* c );
|
|
||||||
void Gameplay_ObjectPickup ( GameLogic::Protocol_ObjectPickup& p, DanBias::GameClient* c );
|
void Gameplay_ObjectPickup ( GameLogic::Protocol_ObjectPickup& p, DanBias::GameClient* c );
|
||||||
void Gameplay_ObjectDamage ( GameLogic::Protocol_ObjectDamage& p, DanBias::GameClient* c );
|
void Gameplay_ObjectDamage ( GameLogic::Protocol_ObjectDamage& p, DanBias::GameClient* c );
|
||||||
void Gameplay_ObjectPosition ( GameLogic::Protocol_ObjectPosition& p, DanBias::GameClient* c );
|
void Gameplay_ObjectPosition ( GameLogic::Protocol_ObjectPosition& p, DanBias::GameClient* c );
|
||||||
|
|
|
@ -85,7 +85,7 @@ namespace DanBias
|
||||||
|
|
||||||
void GameSession::ObjectMove(GameLogic::IObjectData* movedObject)
|
void GameSession::ObjectMove(GameLogic::IObjectData* movedObject)
|
||||||
{
|
{
|
||||||
float dt = GameSession::gameSession->networkTimer.getElapsedSeconds();
|
//float dt = (float)GameSession::gameSession->networkTimer.getElapsedSeconds();
|
||||||
//Duh... This was causing alot of problems, it's in the wrong place...
|
//Duh... This was causing alot of problems, it's in the wrong place...
|
||||||
//Need to figure out where to put this frame locker.
|
//Need to figure out where to put this frame locker.
|
||||||
//We only need to send network packages when necessary, ie not 120 times per frame.
|
//We only need to send network packages when necessary, ie not 120 times per frame.
|
||||||
|
@ -93,18 +93,10 @@ namespace DanBias
|
||||||
//graphics update (60 fps) on the client side. To send more than this would be lost
|
//graphics update (60 fps) on the client side. To send more than this would be lost
|
||||||
//bandwidth.
|
//bandwidth.
|
||||||
//if( dt >= GameSession::gameSession->networkFrameTime )
|
//if( dt >= GameSession::gameSession->networkFrameTime )
|
||||||
{
|
//{
|
||||||
GameSession::gameSession->networkTimer.reset();
|
GameSession::gameSession->networkTimer.reset();
|
||||||
|
int id = movedObject->GetID();
|
||||||
GameLogic::IObjectData* obj = movedObject;
|
Protocol_ObjectPosition p(movedObject->GetPosition(), id);
|
||||||
if(movedObject->GetID() == testID) //TODO: TEST
|
|
||||||
{
|
|
||||||
float sec = (float)testTimer.getElapsedSeconds();
|
|
||||||
sec = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
int id = obj->GetID();
|
|
||||||
Protocol_ObjectPosition p(obj->GetOrientation(), id);
|
|
||||||
//if(id != 1)
|
//if(id != 1)
|
||||||
GameSession::gameSession->Send(p.GetProtocol());
|
GameSession::gameSession->Send(p.GetProtocol());
|
||||||
|
|
||||||
|
@ -150,7 +142,7 @@ namespace DanBias
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
}
|
//}
|
||||||
|
|
||||||
}
|
}
|
||||||
void GameSession::ObjectDisabled( GameLogic::IObjectData* movedObject, float seconds )
|
void GameSession::ObjectDisabled( GameLogic::IObjectData* movedObject, float seconds )
|
||||||
|
@ -168,7 +160,15 @@ namespace DanBias
|
||||||
|
|
||||||
switch (p[0].value.netShort)
|
switch (p[0].value.netShort)
|
||||||
{
|
{
|
||||||
case protocol_Gameplay_PlayerMovement: this->Gameplay_PlayerMovement ( Protocol_PlayerMovement (p), c );
|
case protocol_Gameplay_PlayerMovementBackward: this->Gameplay_PlayerMovementBack ( c );
|
||||||
|
break;
|
||||||
|
case protocol_Gameplay_PlayerMovementForward: this->Gameplay_PlayerMovementForth ( c );
|
||||||
|
break;
|
||||||
|
case protocol_Gameplay_PlayerMovementLeft: this->Gameplay_PlayerMovementLeft ( c );
|
||||||
|
break;
|
||||||
|
case protocol_Gameplay_PlayerMovementRight: this->Gameplay_PlayerMovementRight ( c );
|
||||||
|
break;
|
||||||
|
case protocol_Gameplay_PlayerJump: this->Gameplay_PlayerJump ( c );
|
||||||
break;
|
break;
|
||||||
case protocol_Gameplay_PlayerLookDir: this->Gameplay_PlayerLookDir ( Protocol_PlayerLook (p), c );
|
case protocol_Gameplay_PlayerLookDir: this->Gameplay_PlayerLookDir ( Protocol_PlayerLook (p), c );
|
||||||
break;
|
break;
|
||||||
|
@ -176,8 +176,7 @@ namespace DanBias
|
||||||
break;
|
break;
|
||||||
case protocol_Gameplay_PlayerShot: this->Gameplay_PlayerShot ( Protocol_PlayerShot (p), c );
|
case protocol_Gameplay_PlayerShot: this->Gameplay_PlayerShot ( Protocol_PlayerShot (p), c );
|
||||||
break;
|
break;
|
||||||
case protocol_Gameplay_PlayerJump: this->Gameplay_PlayerJump ( Protocol_PlayerJump (p), c );
|
|
||||||
break;
|
|
||||||
case protocol_Gameplay_ObjectPickup: this->Gameplay_ObjectPickup ( Protocol_ObjectPickup (p), c );
|
case protocol_Gameplay_ObjectPickup: this->Gameplay_ObjectPickup ( Protocol_ObjectPickup (p), c );
|
||||||
break;
|
break;
|
||||||
case protocol_Gameplay_ObjectDamage: this->Gameplay_ObjectDamage ( Protocol_ObjectDamage (p), c );
|
case protocol_Gameplay_ObjectDamage: this->Gameplay_ObjectDamage ( Protocol_ObjectDamage (p), c );
|
||||||
|
@ -190,6 +189,7 @@ namespace DanBias
|
||||||
break;
|
break;
|
||||||
case protocol_Gameplay_ObjectCreate: this->Gameplay_ObjectCreate ( Protocol_ObjectCreate (p), c );
|
case protocol_Gameplay_ObjectCreate: this->Gameplay_ObjectCreate ( Protocol_ObjectCreate (p), c );
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case protocol_General_Status: this->General_Status ( Protocol_General_Status (p), c );
|
case protocol_General_Status: this->General_Status ( Protocol_General_Status (p), c );
|
||||||
break;
|
break;
|
||||||
case protocol_General_Text: this->General_Text ( Protocol_General_Text (p), c );
|
case protocol_General_Text: this->General_Text ( Protocol_General_Text (p), c );
|
||||||
|
@ -197,12 +197,25 @@ namespace DanBias
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void GameSession::Gameplay_PlayerMovement ( Protocol_PlayerMovement& p, DanBias::GameClient* c )
|
void GameSession::Gameplay_PlayerMovementBack ( DanBias::GameClient* c )
|
||||||
{
|
{
|
||||||
if(p.bForward) c->GetPlayer()->Move(GameLogic::PLAYER_MOVEMENT_FORWARD);
|
c->GetPlayer()->Move(GameLogic::PLAYER_MOVEMENT_BACKWARD);
|
||||||
if(p.bBackward) c->GetPlayer()->Move(GameLogic::PLAYER_MOVEMENT_BACKWARD);
|
}
|
||||||
if(p.bLeft) c->GetPlayer()->Move(GameLogic::PLAYER_MOVEMENT_LEFT);
|
void GameSession::Gameplay_PlayerMovementForth ( DanBias::GameClient* c )
|
||||||
if(p.bRight) c->GetPlayer()->Move(GameLogic::PLAYER_MOVEMENT_RIGHT);
|
{
|
||||||
|
c->GetPlayer()->Move(GameLogic::PLAYER_MOVEMENT_FORWARD);
|
||||||
|
}
|
||||||
|
void GameSession::Gameplay_PlayerMovementLeft ( DanBias::GameClient* c )
|
||||||
|
{
|
||||||
|
c->GetPlayer()->Move(GameLogic::PLAYER_MOVEMENT_LEFT);
|
||||||
|
}
|
||||||
|
void GameSession::Gameplay_PlayerMovementRight ( DanBias::GameClient* c )
|
||||||
|
{
|
||||||
|
c->GetPlayer()->Move(GameLogic::PLAYER_MOVEMENT_RIGHT);
|
||||||
|
}
|
||||||
|
void GameSession::Gameplay_PlayerJump ( DanBias::GameClient* c )
|
||||||
|
{
|
||||||
|
c->GetPlayer()->Move(GameLogic::PLAYER_MOVEMENT_JUMP);
|
||||||
}
|
}
|
||||||
void GameSession::Gameplay_PlayerLookDir ( Protocol_PlayerLook& p, DanBias::GameClient* c )
|
void GameSession::Gameplay_PlayerLookDir ( Protocol_PlayerLook& p, DanBias::GameClient* c )
|
||||||
{
|
{
|
||||||
|
@ -224,10 +237,8 @@ namespace DanBias
|
||||||
|
|
||||||
if(p.utilityPressed) c->GetPlayer()->UseWeapon(GameLogic::WEAPON_USE_UTILLITY_PRESS);
|
if(p.utilityPressed) c->GetPlayer()->UseWeapon(GameLogic::WEAPON_USE_UTILLITY_PRESS);
|
||||||
}
|
}
|
||||||
void GameSession::Gameplay_PlayerJump ( Protocol_PlayerJump& p, DanBias::GameClient* c )
|
|
||||||
{
|
|
||||||
if(p.hasJumped) c->GetPlayer()->Move(GameLogic::PLAYER_MOVEMENT_JUMP);
|
|
||||||
}
|
|
||||||
void GameSession::Gameplay_ObjectPickup ( Protocol_ObjectPickup& p, DanBias::GameClient* c )
|
void GameSession::Gameplay_ObjectPickup ( Protocol_ObjectPickup& p, DanBias::GameClient* c )
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|
|
@ -156,6 +156,7 @@ namespace DanBias
|
||||||
{
|
{
|
||||||
if((this->clients[k] && readyList[i]) && readyList[i]->GetClient()->GetID() != this->clients[k]->GetClient()->GetID())
|
if((this->clients[k] && readyList[i]) && readyList[i]->GetClient()->GetID() != this->clients[k]->GetClient()->GetID())
|
||||||
{
|
{
|
||||||
|
//Protocol_ObjectCreatePlayer
|
||||||
Protocol_ObjectCreate p(this->clients[k]->GetPlayer()->GetOrientation(), this->clients[k]->GetPlayer()->GetID(), "char_white.dan"); //The model name will be custom later..
|
Protocol_ObjectCreate p(this->clients[k]->GetPlayer()->GetOrientation(), this->clients[k]->GetPlayer()->GetID(), "char_white.dan"); //The model name will be custom later..
|
||||||
readyList[i]->GetClient()->Send(p);
|
readyList[i]->GetClient()->Send(p);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue