#pragma once #include "defines.h" #include #include #include #include namespace MassShoot { namespace Maps { class CollideCollAdvancedResult { public: Vector3 newPossiblePos; }; class Map { std::vector collisions; std::vector textures; std::vector lights; std::vector triggerMaps; std::vector triggers; std::vector sprites; std::vector billboards; public: LOADING_FUNC LoadMap(std::string mapName); LIGHTING_FUNC UpdateLighting(Vector3 cameraPosition); RENDERING_FUNC RenderBillboards(); RENDERING_FUNC RenderBoxes(); PHYSICS_BOOL IsColliding(BoundingBox box); CollideCollAdvancedResult CollideCollAdvanced(Vector3 newbox, Vector3 oldbox, int margin, int height); PHYSICS_FUNC CheckForTriggers(BoundingBox box); std::string GetMapName(); std::string title, subtitle; bool shaded = true; }; } }