Peoplemon  0.1.0
Peoplemon 3 game source documentation
Modules | Classes | Typedefs | Enumerations
Maps

Collection of classes responsible for loading, editing, rendering, and updating maps. More...

Modules

 Weather
 Collection of weather type implementations.
 

Classes

struct  core::map::CatchRegion
 Represents a class of catchable peoplemon. More...
 
struct  core::map::CharacterSpawn
 Represents a character to be spawned into a map on load. More...
 
struct  core::map::Event
 Represents an event in a Map. A script that is run on a trigger within a given region. More...
 
struct  core::map::Item
 Basic struct representing a pickup-able item in Map. More...
 
class  core::map::Layer< T >
 Generic map layer class. Can be used for any type of layer. More...
 
class  core::map::LayerSet
 Encapsulates a set of layers for a given map height. Maps have one LayerSet per height level, as well as a TransitionLayer. More...
 
struct  core::map::Light
 Represents a renderable light in a Map. More...
 
class  core::map::LightingSystem
 System for handling lighting in Maps. Manages all the lights and performs rendering. Also handles the loading and saving of lights to map files. More...
 
class  core::map::Map
 The primary map class that represents a usable map in the game. More...
 
struct  core::map::RenderLevel
 Basic struct containing the graphics elements to render a map level. More...
 
struct  core::map::Spawn
 Basic struct representing a spawn in a Map. More...
 
class  core::map::Tile
 Data representation of a tile in a Map TileLayer. More...
 
class  core::map::Tileset
 Stores the collection of images and animations used by Tiles in a Map. More...
 
struct  core::map::Town
 Represents a town, route, or region within a map. Maps may have many towns. Individual tiles are associated to a town. If a tile is not associated with a town then a default town is used with the name, music, and weather of the map itself. More...
 
class  core::map::Weather
 Parent weather system for maps. Manages active weather. More...
 

Typedefs

using core::map::CollisionLayer = Layer< Collision >
 Specialization of Layer for collisions. More...
 
using core::map::CatchLayer = Layer< std::uint8_t >
 Specialization of Layer for catch tiles. More...
 
using core::map::TileLayer = Layer< Tile >
 Specialization of Layer for tiles. More...
 
using core::map::HeightTransitionLayer = Layer< std::uint8_t >
 Specialization of Layer for height transitions. More...
 

Enumerations

enum class  core::map::Collision : std::uint8_t {
  core::map::Blocked = 0 , core::map::Open = 1 , core::map::TopOpen = 2 , core::map::RightOpen = 3 ,
  core::map::BottomOpen = 4 , core::map::LeftOpen = 5 , core::map::TopRightOpen = 6 , core::map::BottomRightOpen = 7 ,
  core::map::BottomLeftOpen = 8 , core::map::TopLeftOpen = 9 , core::map::TopBottomOpen = 10 , core::map::LeftRightOpen = 11 ,
  core::map::TopClosed = 12 , core::map::RightClosed = 13 , core::map::BottomClosed = 14 , core::map::LeftClosed = 15 ,
  core::map::SurfRequired = 16 , core::map::WaterfallRequired = 17 , core::map::LedgeHop = 18
}
 The different types of collisions in maps. More...
 
enum class  core::map::LevelTransition : std::uint8_t {
  core::map::None = 0 , core::map::HorizontalRightUp = 1 , core::map::HorizontalRightDown = 2 , core::map::VerticalTopUp = 3 ,
  core::map::VerticalTopDown = 4
}
 Represents a level transition in a map. Level transitions are applied when an entity moves either onto or out of a tile containing a transition. When the transition is for going up the change occurs when the tile is left. When it is going down it is applied when the tile is entered. More...
 

Detailed Description

Collection of classes responsible for loading, editing, rendering, and updating maps.

Typedef Documentation

◆ CatchLayer

using core::map::CatchLayer = typedef Layer<std::uint8_t>

Specialization of Layer for catch tiles.

Definition at line 26 of file LayerSet.hpp.

◆ CollisionLayer

Specialization of Layer for collisions.

Definition at line 18 of file LayerSet.hpp.

◆ HeightTransitionLayer

using core::map::HeightTransitionLayer = typedef Layer<std::uint8_t>

Specialization of Layer for height transitions.

Definition at line 42 of file LayerSet.hpp.

◆ TileLayer

using core::map::TileLayer = typedef Layer<Tile>

Specialization of Layer for tiles.

Definition at line 34 of file LayerSet.hpp.

Enumeration Type Documentation

◆ Collision

enum core::map::Collision : std::uint8_t
strong

The different types of collisions in maps.

Enumerator
Blocked 
Open 
TopOpen 
RightOpen 
BottomOpen 
LeftOpen 
TopRightOpen 
BottomRightOpen 
BottomLeftOpen 
TopLeftOpen 
TopBottomOpen 
LeftRightOpen 
TopClosed 
RightClosed 
BottomClosed 
LeftClosed 
SurfRequired 
WaterfallRequired 
LedgeHop 

Definition at line 16 of file Collision.hpp.

◆ LevelTransition

enum core::map::LevelTransition : std::uint8_t
strong

Represents a level transition in a map. Level transitions are applied when an entity moves either onto or out of a tile containing a transition. When the transition is for going up the change occurs when the tile is left. When it is going down it is applied when the tile is entered.

Enumerator
None 

No level transition, entity stays on same level.

HorizontalRightUp 

Entities moving horizontally move up when going right and down when going left.

HorizontalRightDown 

Entities moving horizontally move down when going right and up when going left.

VerticalTopUp 

Entities moving vertically move up when going north and down when going south.

VerticalTopDown 

Entities moving vertically move down when going north and up when going south.

Definition at line 19 of file LevelTransition.hpp.