From 8142a9c87a13cecc7a3698e877f24d89f128c074 Mon Sep 17 00:00:00 2001 From: Kelly Rauchenberger Date: Sat, 21 Apr 2018 14:50:52 -0400 Subject: Started working on prototype objects --- src/systems/playing.cpp | 33 ++++++++++++++++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) (limited to 'src/systems/playing.cpp') diff --git a/src/systems/playing.cpp b/src/systems/playing.cpp index 40d9706..5077f8a 100644 --- a/src/systems/playing.cpp +++ b/src/systems/playing.cpp @@ -5,6 +5,7 @@ #include "components/playable.h" #include "components/controllable.h" #include "components/orientable.h" +#include "components/mappable.h" #include "systems/mapping.h" #include "systems/pondering.h" #include "systems/orienting.h" @@ -84,7 +85,8 @@ void PlayingSystem::initPlayer() game_.getSystemManager().getSystem().initializeBody( player, - PonderableComponent::Type::freefalling); + PonderableComponent::BodyType::freefalling, + PonderableComponent::ColliderType::player); game_.getEntityManager().emplaceComponent(player); game_.getEntityManager().emplaceComponent(player); @@ -173,3 +175,32 @@ void PlayingSystem::die() }); } } + +void PlayingSystem::save() +{ + playSound("res/Pickup_Coin23.wav", 0.25); + + auto players = game_.getEntityManager().getEntitiesWithComponents< + TransformableComponent, + PlayableComponent>(); + + auto maps = game_.getEntityManager().getEntitiesWithComponents< + MappableComponent>(); + + auto& mappable = game_.getEntityManager(). + getComponent(*maps.begin()); + + for (id_type player : players) + { + auto& transformable = game_.getEntityManager(). + getComponent(player); + + auto& playable = game_.getEntityManager(). + getComponent(player); + + playable.checkpointMapId = mappable.getMapId(); + playable.checkpointX = transformable.getX(); + playable.checkpointY = transformable.getY(); + playable.checkpointObjectActivated = false; + } +} -- cgit 1.4.1