Danbias/GameLogic/InstanceBlueprint.h

43 lines
1.2 KiB
C
Raw Normal View History

2013-10-23 00:09:17 +02:00
/////////////////////////////////////////////////////////////////////
// Created by Dan Andersson 2013
/////////////////////////////////////////////////////////////////////
#pragma once
#ifndef GAME_INSTANCEBLUEPRINT_H
#define GAME_INSTANCEBLUEPRINT_H
#include <string>
#include <vector>
#include "OysterMath.h"
namespace GameLogic
{
struct InstanceBlueprint
{
enum Result { Success, Failure };
static Result loadFromFile( ::std::vector<InstanceBlueprint*> &output, ::std::vector<::std::string> &idOutput, const ::std::string &entityFile, const ::Oyster::Math::Float4x4 &transform = ::Oyster::Math::Float4x4::identity );
::std::string name, objFileName, description;
float mass;
::Oyster::Math::Float3 centerOfMass;
struct { ::Oyster::Math::Float3 halfSize, position; } hitBox;
// engineData
int hullPoints, shieldPoints;
struct
{
::Oyster::Math::Float maxSpeed, deAcceleration;
struct{ ::Oyster::Math::Float forward, backward, horizontal, vertical; } acceleration;
} movementProperty;
struct
{
::Oyster::Math::Float maxSpeed, deAcceleration;
struct{ ::Oyster::Math::Float pitch, yaw, roll; } acceleration;
} rotationProperty;
InstanceBlueprint( );
};
}
#endif