Antkeeper  0.0.1
world.hpp
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2023 Christopher J. Howard
3  *
4  * This file is part of Antkeeper source code.
5  *
6  * Antkeeper source code is free software: you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation, either version 3 of the License, or
9  * (at your option) any later version.
10  *
11  * Antkeeper source code is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with Antkeeper source code. If not, see <http://www.gnu.org/licenses/>.
18  */
19 
20 #ifndef ANTKEEPER_GAME_WORLD_HPP
21 #define ANTKEEPER_GAME_WORLD_HPP
22 
23 #include "game/game.hpp"
24 #include "game/ecoregion.hpp"
25 
26 
28 namespace world {
29 
31 void cosmogenesis(::game& ctx);
32 
34 void create_observer(::game& ctx);
35 
44 void set_location(::game& ctx, double elevation, double latitude, double longitude);
45 
52 void set_time(::game& ctx, double t);
53 
65 void set_time(::game& ctx, int year, int month, int day, int hour, int minute, double second);
66 
73 void set_time_scale(::game& ctx, double scale);
74 
81 void enter_ecoregion(::game& ctx, const ecoregion& ecoregion);
82 
83 void switch_scene(::game& ctx);
84 
85 } // namespace menu
86 
87 #endif // ANTKEEPER_GAME_WORLD_HPP
Definition: game.hpp:121
constexpr mat4< T > scale(const vec3< T > &v)
Constructs a scale matrix.
World creation and manipulation functions.
Definition: world.cpp:66
void cosmogenesis(::game &ctx)
Creates the cosmos.
Definition: world.cpp:86
void create_observer(::game &ctx)
Creates the observer.
Definition: world.cpp:98
void set_location(::game &ctx, double elevation, double latitude, double longitude)
Sets the location of the observer.
Definition: world.cpp:134
void enter_ecoregion(::game &ctx, const ecoregion &ecoregion)
Enters a ecoregion.
Definition: world.cpp:429
void switch_scene(::game &ctx)
Definition: world.cpp:473
void set_time_scale(::game &ctx, double scale)
Sets rate at which time passes.
Definition: world.cpp:197
void set_time(::game &ctx, double t)
Sets the current time.
Definition: world.cpp:157