Kraken arm animations!
This commit is contained in:
@@ -107,8 +107,8 @@ private:
|
|||||||
float m_Edge = 2.8f;
|
float m_Edge = 2.8f;
|
||||||
float m_PadOriginalHeight = -4.8;
|
float m_PadOriginalHeight = -4.8;
|
||||||
float m_PadHeight = m_PadOriginalHeight;
|
float m_PadHeight = m_PadOriginalHeight;
|
||||||
EntityID m_KrakenArm = NULL;
|
EntityID m_KrakenArm = 0;
|
||||||
EntityID m_KrakenArmHitbox = NULL;
|
EntityID m_KrakenArmHitbox = 0;
|
||||||
float m_PadRiseSpeed = 0.2;
|
float m_PadRiseSpeed = 0.2;
|
||||||
Components::Transform* m_Transform = nullptr;
|
Components::Transform* m_Transform = nullptr;
|
||||||
Components::Pad* m_Pad = nullptr;
|
Components::Pad* m_Pad = nullptr;
|
||||||
|
|||||||
+36
-35
@@ -59,6 +59,9 @@ void dd::Systems::PadSystem::Initialize()
|
|||||||
m_World->CommitEntity(ent);
|
m_World->CommitEntity(ent);
|
||||||
|
|
||||||
SetEdge(3.2 - (ctransform->Scale.x / 2));
|
SetEdge(3.2 - (ctransform->Scale.x / 2));
|
||||||
|
SetEntity(ent);
|
||||||
|
SetTransform(m_World->GetComponent<Components::Transform>(Entity()));
|
||||||
|
SetPad(m_World->GetComponent<Components::Pad>(Entity()));
|
||||||
}
|
}
|
||||||
|
|
||||||
//Stick
|
//Stick
|
||||||
@@ -77,18 +80,31 @@ void dd::Systems::PadSystem::Initialize()
|
|||||||
m_StickTransform = transform;
|
m_StickTransform = transform;
|
||||||
m_StickyAim = sticky;
|
m_StickyAim = sticky;
|
||||||
|
|
||||||
/*{
|
/*{
|
||||||
auto entChild = m_World->CreateEntity(ent);
|
auto entChild = m_World->CreateEntity(ent);
|
||||||
std::shared_ptr<Components::Transform> transform = m_World->AddComponent<Components::Transform>(entChild);
|
std::shared_ptr<Components::Transform> transform = m_World->AddComponent<Components::Transform>(entChild);
|
||||||
transform->Position = glm::vec3(0.f, 12.5f, 0.f);
|
transform->Position = glm::vec3(0.f, 12.5f, 0.f);
|
||||||
|
|
||||||
transform->Scale = glm::vec3(0.1f, 25.f, 0.1f);
|
transform->Scale = glm::vec3(0.1f, 25.f, 0.1f);
|
||||||
std::shared_ptr<Components::Sprite> sprite = m_World->AddComponent<Components::Sprite>(entChild);
|
std::shared_ptr<Components::Sprite> sprite = m_World->AddComponent<Components::Sprite>(entChild);
|
||||||
sprite->SpriteFile = "Models/Brick/White.png";
|
sprite->SpriteFile = "Models/Brick/White.png";
|
||||||
sprite->Color = glm::vec4(0.f, 0.5f, 0.f, 0.5f);
|
sprite->Color = glm::vec4(0.f, 0.5f, 0.f, 0.5f);
|
||||||
}*/
|
}*/
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Kraken arm
|
||||||
|
{
|
||||||
|
m_KrakenArm = m_World->CreateEntity(Entity());
|
||||||
|
auto transform = m_World->AddComponent<Components::Transform>(m_KrakenArm);
|
||||||
|
transform->Position = glm::vec3(1.f, -3.0f, 0.f);
|
||||||
|
auto model = m_World->AddComponent<Components::Model>(m_KrakenArm);
|
||||||
|
model->ModelFile = "Models/Kraken/Arm.dae";
|
||||||
|
auto animation = m_World->AddComponent<Components::Animation>(m_KrakenArm);
|
||||||
|
animation->Speed = 0.0f;
|
||||||
|
animation->Loop = false;
|
||||||
|
m_World->CommitEntity(m_KrakenArm);
|
||||||
|
}
|
||||||
|
|
||||||
m_ResetBall = true;
|
m_ResetBall = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -133,17 +149,6 @@ void dd::Systems::PadSystem::Update(double dt)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Entity() == 0) {
|
|
||||||
for (auto it = m_World->GetEntities()->begin(); it != m_World->GetEntities()->end(); it++) {
|
|
||||||
if (m_World->GetProperty<std::string>(it->first, "Name") == "Pad") {
|
|
||||||
SetEntity(it->first);
|
|
||||||
SetTransform(m_World->GetComponent<Components::Transform>(Entity()));
|
|
||||||
SetPad(m_World->GetComponent<Components::Pad>(Entity()));
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (m_KrakenAttack) {
|
if (m_KrakenAttack) {
|
||||||
m_KrakenCharge -= m_KrakenStrength * dt;
|
m_KrakenCharge -= m_KrakenStrength * dt;
|
||||||
if (m_KrakenCharge < 0) {
|
if (m_KrakenCharge < 0) {
|
||||||
@@ -476,18 +481,10 @@ bool dd::Systems::PadSystem::OnKrakenAttack(const dd::Events::KrakenAttack &even
|
|||||||
|
|
||||||
transform->Velocity = glm::vec3(0, 0, 0);
|
transform->Velocity = glm::vec3(0, 0, 0);
|
||||||
acceleration = glm::vec3(0, 0, 0);
|
acceleration = glm::vec3(0, 0, 0);
|
||||||
LOG_INFO("Kraken arm duuude");
|
if (m_KrakenArmHitbox == 0) {
|
||||||
if (!m_KrakenArm){
|
auto animation = m_World->GetComponent<Components::Animation>(m_KrakenArm);
|
||||||
LOG_INFO("InKrakenArmDuuude");
|
animation->Time = 0.0;
|
||||||
m_KrakenArm = m_World->CreateEntity(Entity());
|
animation->Speed = 1.0;
|
||||||
auto transform = m_World->AddComponent<Components::Transform>(m_KrakenArm);
|
|
||||||
transform->Position = glm::vec3(1.f, -3.0f, 0.f);
|
|
||||||
auto model = m_World->AddComponent<Components::Model>(m_KrakenArm);
|
|
||||||
model->ModelFile = "Models/Kraken/Arm.dae";
|
|
||||||
auto animation = m_World->AddComponent<Components::Animation>(m_KrakenArm);
|
|
||||||
animation->Speed = 1.0f;
|
|
||||||
animation->Loop = false;
|
|
||||||
m_World->CommitEntity(m_KrakenArm);
|
|
||||||
|
|
||||||
m_KrakenArmHitbox = m_World->CreateEntity();
|
m_KrakenArmHitbox = m_World->CreateEntity();
|
||||||
auto hb_transform = m_World->AddComponent<Components::Transform>(m_KrakenArmHitbox);
|
auto hb_transform = m_World->AddComponent<Components::Transform>(m_KrakenArmHitbox);
|
||||||
@@ -525,10 +522,14 @@ bool dd::Systems::PadSystem::OnKrakenAttackEnd(const dd::Events::KrakenAttackEnd
|
|||||||
m_KrakenStrength = 0;
|
m_KrakenStrength = 0;
|
||||||
m_PlayerStrength = 0;
|
m_PlayerStrength = 0;
|
||||||
|
|
||||||
m_World->RemoveEntity(m_KrakenArm);
|
//m_World->RemoveEntity(m_KrakenArm);
|
||||||
m_World->RemoveEntity(m_KrakenArmHitbox);
|
|
||||||
m_KrakenArm = NULL;
|
auto animation = m_World->GetComponent<Components::Animation>(m_KrakenArm);
|
||||||
m_KrakenArmHitbox = NULL;
|
animation->Time = 0.0;
|
||||||
|
animation->Speed = -1.5;
|
||||||
|
m_World->RemoveEntity(m_KrakenArmHitbox);
|
||||||
|
//m_KrakenArm = NULL;
|
||||||
|
m_KrakenArmHitbox = 0;
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user