Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #pragma once
- #include "Entity.h"
- #include "FileManager.h"
- #include "Player.h"
- class EntityManager
- {
- public:
- EntityManager();
- ~EntityManager();
- void LoadContent(std::string fileName, std::string id, std::string type, SDL_Renderer *renderer);
- void UnloadContent();
- void Update(InputManager input);
- void Draw(SDL_Renderer *renderer);
- std::vector<Entity*> entities;
- private:
- };
- ////////////////////////////////////////////////////////////////////////////////
- #include "EntityManager.h"
- EntityManager::EntityManager()
- {
- }
- EntityManager::~EntityManager()
- {
- }
- void EntityManager::LoadContent(std::string fileName, std::string id, std::string type, SDL_Renderer *renderer)
- {
- std::vector<std::vector<std::string>> attributes;
- std::vector<std::vector<std::string>> contents;
- FileManager file;
- if(id == "")
- {
- file.LoadContent(fileName, attributes, contents);
- }
- else
- {
- file.LoadContent(fileName, attributes, contents, id);
- }
- for (int i = 0; i < attributes.size(); i++)
- {
- Entity *entity;
- if (type == "Player")
- {
- entity = new Player();
- }
- entities.push_back(entity);
- entities[i]->LoadContent(attributes[i], contents[i], renderer);
- }
- }
- void EntityManager::UnloadContent()
- {
- for (int i = 0; i < entities.size(); i++)
- {
- entities[i]->UnloadContent();
- delete entities[i];
- }
- }
- void EntityManager::Update(InputManager input)
- {
- for (int i = 0; i < entities.size(); i++)
- {
- entities[i]->Update(input);
- }
- }
- void EntityManager::Draw(SDL_Renderer *renderer)
- {
- for (int i = 0; i < entities.size(); i++)
- {
- entities[i]->Draw(renderer);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement