From 410f971972bde37fb852420ea2ca0e2f69f27256 Mon Sep 17 00:00:00 2001 From: Kelly Rauchenberger Date: Sat, 30 Jan 2021 09:41:31 -0500 Subject: Encapsulated some player movement stuff Imported vector from therapy5 --- src/party.cpp | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 src/party.cpp (limited to 'src/party.cpp') diff --git a/src/party.cpp b/src/party.cpp new file mode 100644 index 0000000..559aacb --- /dev/null +++ b/src/party.cpp @@ -0,0 +1,42 @@ +#include "party.h" +#include "consts.h" + +void Party::addMember(int spriteId) { + PartyMember newMember; + newMember.spriteId = spriteId; + + members_.push_back(std::move(newMember)); +} + +void Party::move(Game& game, const Input& keystate) { + if (members_.empty()) { + return; + } + + Sprite& p1 = game.getSprite(members_[0].spriteId); + vec2i pLoc = p1.loc(); + + if (keystate.up) + { + pLoc.y() -= MOVEMENT_SPEED; + } + + if (keystate.down) + { + pLoc.y() += MOVEMENT_SPEED; + } + + if (keystate.left) + { + pLoc.x() -= MOVEMENT_SPEED; + } + + if (keystate.right) + { + pLoc.x() += MOVEMENT_SPEED; + } + + if (pLoc != p1.loc()) { + p1.loc() = pLoc; + } +} \ No newline at end of file -- cgit 1.4.1