From da4bd0b57b1ce5cdb56e6f8d9870998cbdd176f4 Mon Sep 17 00:00:00 2001 From: Clyne Sullivan Date: Mon, 27 Mar 2017 19:22:49 -0400 Subject: gravity? --- src/attack.cpp | 8 ++++---- src/components.cpp | 10 +++++----- src/inventory.cpp | 2 +- src/player.cpp | 6 +++--- 4 files changed, 13 insertions(+), 13 deletions(-) (limited to 'src') diff --git a/src/attack.cpp b/src/attack.cpp index 550b849..3dc1594 100644 --- a/src/attack.cpp +++ b/src/attack.cpp @@ -3,8 +3,8 @@ #include #include -constexpr int shortSlashLength = 100; -constexpr int longSlashLength = 200; +constexpr int shortSlashLength = 20; +constexpr int longSlashLength = 40; // math helpers because we don't trust stdlib template @@ -41,7 +41,7 @@ void AttackSystem::update(entityx::EntityManager& en, entityx::EventManager& ev, if (e.has_component()) return; - if (inrange(a.pos.x, pos.x, pos.x + dim.width, shortSlashLength)) { + if (inrange(a.pos.x, pos.x, pos.x + dim.width, HLINES(shortSlashLength))) { h.health -= a.power; game::engine.getSystem()->addMultiple(15, ParticleType::DownSlash, [&](){ return vec2(pos.x + dim.width / 2, pos.y + dim.height / 2); }, 300, 7); @@ -56,7 +56,7 @@ void AttackSystem::update(entityx::EntityManager& en, entityx::EventManager& ev, if (e.has_component()) return; - if (inrange(a.pos.x, pos.x, pos.x + dim.width, shortSlashLength)) { + if (inrange(a.pos.x, pos.x, pos.x + dim.width, 0)) { h.health -= a.power; game::engine.getSystem()->addMultiple(15, ParticleType::SmallBlast, [&](){ return vec2(pos.x + dim.width / 2, pos.y + dim.height / 2); }, 300, 7); diff --git a/src/components.cpp b/src/components.cpp index 732e21f..dee56a6 100644 --- a/src/components.cpp +++ b/src/components.cpp @@ -27,8 +27,8 @@ void MovementSystem::update(entityx::EntityManager &en, entityx::EventManager &e (void)ev; en.each([&](entityx::Entity entity, Position &position, Direction &direction) { - position.x += direction.x * dt; - position.y += direction.y * dt; + position.x += HLINES(direction.x) * dt; + position.y += HLINES(direction.y) * dt; if (entity.has_component() && entity.has_component()) { auto animate = entity.component(); @@ -38,7 +38,7 @@ void MovementSystem::update(entityx::EntityManager &en, entityx::EventManager &e animate->updateAnimation(1, sprite->sprite, dt); else animate->firstFrame(1, sprite->sprite); - } + } if (entity.has_component() && entity.component()->talking) { direction.x = 0; } else { @@ -60,7 +60,7 @@ void MovementSystem::update(entityx::EntityManager &en, entityx::EventManager &e h = 0; } } else - direction.x = (ppos.x > position.x) ? .05 : -.05; + direction.x = (ppos.x > position.x) ? .01 : -.01; } else if (entity.has_component()) { auto& countdown = entity.component()->countdown; @@ -68,7 +68,7 @@ void MovementSystem::update(entityx::EntityManager &en, entityx::EventManager &e countdown--; } else { countdown = 5000 + randGet() % 10 * 100; - direction.x = (randGet() % 3 - 1) * 0.02f; + direction.x = (randGet() % 3 - 1) * 0.004f; } } } diff --git a/src/inventory.cpp b/src/inventory.cpp index 3e7104e..664d8a6 100644 --- a/src/inventory.cpp +++ b/src/inventory.cpp @@ -211,7 +211,7 @@ void InventorySystem::receive(const MouseReleaseEvent &mre) auto e = game::entities.create(); e.assign(mre.position.x, mre.position.y); - e.assign(0, 1); + e.assign(0, 0.4f); e.assign(items[movingItem]); e.assign(); e.component()->addSpriteSegment( diff --git a/src/player.cpp b/src/player.cpp index d9a4a98..711ddae 100644 --- a/src/player.cpp +++ b/src/player.cpp @@ -75,7 +75,7 @@ void PlayerSystem::create(void) player.assign(0.0f, 100.0f); player.assign(0.0f, 0.0f); //player.assign(-0.001f); - player.assign(1); + player.assign(); player.assign(-0.2f); player.assign(100); auto sprite = player.assign(); @@ -154,7 +154,7 @@ void PlayerSystem::receive(const KeyDownEvent &kde) if ((kc == SDLK_SPACE) && game::canJump && ((vel.y > -0.01) & (vel.y < 0.01))) { loc.y += HLINES(2); - vel.y = .4; + vel.y = 0.05f; vel.grounded = false; } else if (!ui::dialogBoxExists || ui::dialogPassive) { if (kc == getControl(0)) { @@ -229,7 +229,7 @@ void PlayerSystem::receive(const UseItemEvent& uie) e.assign(pos.x, pos.y + 10); auto angle = std::atan2(uie.curs.y - pos.y, uie.curs.x - pos.x); - e.assign(1 * std::cos(angle), 1 * std::sin(angle)); + e.assign(0.25f * std::cos(angle), 0.25f * std::sin(angle)); e.assign(-5); e.assign(); -- cgit v1.2.3