Fixad FOV
Levelgen Spawnfrequency
This commit is contained in:
@@ -8,6 +8,8 @@ namespace Components
|
||||
|
||||
struct Camera : Component
|
||||
{
|
||||
Camera() : FOV(glm::radians(45.f)), NearClip(0.1f), FarClip(100.f) { }
|
||||
|
||||
float FOV;
|
||||
float NearClip;
|
||||
float FarClip;
|
||||
|
||||
@@ -65,7 +65,7 @@ void GameWorld::Initialize()
|
||||
AddComponent<Components::Input>(entcamera, "Input");
|
||||
transform->Position = glm::vec3(0.f, 10.f, 14.f);
|
||||
camera = AddComponent<Components::Camera>(entcamera, "Camera");
|
||||
camera->FOV = 45.f;
|
||||
camera->FOV = glm::radians(45.f);
|
||||
camera->FarClip = 1000.f;
|
||||
camera->NearClip = 0.01f;
|
||||
transform->Orientation = glm::angleAxis<float>(glm::radians(15.0f),glm::vec3(1,0,0));
|
||||
|
||||
@@ -8,6 +8,7 @@ Systems::LevelGenerationSystem::LevelGenerationSystem( World* world )
|
||||
velocity = 0;
|
||||
startx = 0;
|
||||
startyz = glm::vec2(0, -1000);
|
||||
spawnFrequency = 0.1f;
|
||||
}
|
||||
|
||||
void Systems::LevelGenerationSystem::SpawnObstacle()
|
||||
@@ -85,8 +86,9 @@ void Systems::LevelGenerationSystem::Update( double dt )
|
||||
{
|
||||
|
||||
elapsedtime += dt;
|
||||
spawnFrequency = velocity/1000;
|
||||
|
||||
if(elapsedtime > 0.1){
|
||||
if(elapsedtime > spawnFrequency){
|
||||
SpawnObstacle();
|
||||
elapsedtime = 0;
|
||||
}
|
||||
|
||||
@@ -33,6 +33,7 @@ namespace Systems
|
||||
float startx;
|
||||
double elapsedtime;
|
||||
float velocity;
|
||||
float spawnFrequency;
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@@ -12,6 +12,7 @@ Systems::PlayerSystem::PlayerSystem( World* world ) : System(world)
|
||||
freecamEnabled = false;
|
||||
m_poweruptimeleft = 0;
|
||||
m_basespeed = 100.f;
|
||||
m_maxspeed = 100.f;
|
||||
}
|
||||
|
||||
void Systems::PlayerSystem::Update(double dt)
|
||||
@@ -164,6 +165,7 @@ void Systems::PlayerSystem::UpdateEntity(double dt, EntityID entity, EntityID pa
|
||||
//powerup
|
||||
auto cameraEntity = m_World->GetProperty<EntityID>(entity, "Camera");
|
||||
auto cameracamera = m_World->GetComponent<Components::Camera>(cameraEntity, "Camera");
|
||||
cameracamera->FOV = glm::radians(20.f + transform->Velocity.z/3 );
|
||||
|
||||
auto collisionComponent = m_World->GetComponent<Components::Collision>(entity, "Collision");
|
||||
for(auto ent : collisionComponent->CollidingEntities)
|
||||
@@ -172,19 +174,29 @@ void Systems::PlayerSystem::UpdateEntity(double dt, EntityID entity, EntityID pa
|
||||
if(name == "PowerUp")
|
||||
{
|
||||
auto powerupComp = m_World->GetComponent<Components::PowerUp>(ent, "PowerUp");
|
||||
transform->Velocity.z = powerupComp->Speed;
|
||||
m_poweruptimeleft = 3.f;
|
||||
m_maxspeed = powerupComp->Speed;
|
||||
m_poweruptimeleft = 5.f;
|
||||
m_World->RemoveEntity(ent);
|
||||
|
||||
|
||||
cameracamera->FOV = 55.f;
|
||||
}
|
||||
}
|
||||
if(m_poweruptimeleft <= 0)
|
||||
{
|
||||
transform->Velocity.z = m_basespeed;
|
||||
cameracamera->FOV = 45.f;
|
||||
m_maxspeed = m_basespeed;
|
||||
}
|
||||
if(transform->Velocity.z < m_maxspeed)
|
||||
{
|
||||
transform->Velocity.z += 100.f*dt;
|
||||
if(transform->Velocity.z >= m_maxspeed)
|
||||
transform->Velocity.z = m_maxspeed;
|
||||
}
|
||||
else if(transform->Velocity.z > m_maxspeed)
|
||||
{
|
||||
transform->Velocity.z -= 50.f*dt;
|
||||
if(transform->Velocity.z <= m_maxspeed)
|
||||
transform->Velocity.z = m_maxspeed;
|
||||
}
|
||||
|
||||
|
||||
|
||||
// Update camera
|
||||
|
||||
@@ -34,7 +34,10 @@ namespace Systems
|
||||
glm::quat m_CameraOrientation;
|
||||
|
||||
bool freecamEnabled;
|
||||
|
||||
float m_basespeed;
|
||||
float m_maxspeed;
|
||||
|
||||
float m_poweruptimeleft;
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user