22 #ifndef QDENGINE_MINIGAMES_MASKI_21_H 23 #define QDENGINE_MINIGAMES_MASKI_21_H 25 #include "common/debug.h" 27 #include "qdengine/qd_fwd.h" 28 #include "qdengine/qdcore/qd_minigame_interface.h" 38 debugC(1, kDebugMinigames,
"Maski21::init()");
40 _engine = engine_interface;
41 _scene = engine_interface->current_scene_interface();
45 _flagObj = _scene->
object_interface(_scene->minigame_parameter(
"command_object"));
48 _commandObj = _scene->
object_interface(_scene->minigame_parameter(
"command_object"));
58 debugC(3, kDebugMinigames,
"Maski21::quant(%f)", dt);
64 _commandObj->
set_state(
"\xe2\xeb\xe5\xe2\xee");
67 _commandObj->
set_state(
"\xe2\xef\xf0\xe0\xe2\xee");
69 if (pos.x > 25 && pos.x < 775)
75 _targetTime =
qd_rnd(20) + 10;
77 _flagObj->
set_state(
"\xe2\xfb\xef\xee\xeb\xed\xe5\xed\xe8\xe5");
78 }
else if (_flagObj->
is_state_active(
"\xe2\xfb\xef\xee\xeb\xed\xe5\xed\xe8\xe5")) {
82 if ((
float)_targetTime < _timePassed && _timePassed != -1.0 ) {
84 _flagObj->
set_state(
"\xea\xee\xed\xe5\xf6");
91 debugC(1, kDebugMinigames,
"Maski21::finit()");
94 _engine->release_scene_interface(_scene);
113 enum { INTERFACE_VERSION = 99 };
114 int version()
const {
115 return INTERFACE_VERSION;
125 float _timePassed = -1.0;
128 bool _randomDll =
false;
133 #endif // QDENGINE_MINIGAMES_MASKI_21_H bool quant(float dt)
Обсчёт логики игры, параметр - время, которое должно пройти в игре (в секундах).
Definition: maski_21.h:57
bool finit()
Деинициализация игры.
Definition: maski_21.h:90
int save_game(const qdEngineInterface *engine_interface, const qdMinigameSceneInterface *scene_interface, char *buffer, int buffer_size)
Сохранение данных, вызывается при сохранении сцены, на которую повешена миниигра. ...
Definition: maski_21.h:105
Definition: qd_minigame_interface.h:78
virtual mgVect2i mouse_cursor_position() const =0
Возвращает текущие координаты мышиного курсора.
Definition: qd_minigame_interface.h:365
virtual bool is_state_active(const char *state_name) const =0
Возвращает true, если состояние с именем state_name включено в данный момент.
Базовый класс для игровых ресурсов.
Definition: console.h:28
Definition: maski_21.h:32
bool init(const qdEngineInterface *engine_interface)
Инициализация игры.
Definition: maski_21.h:37
Интерфейс к динамическому объекту.
Definition: qd_minigame_interface.h:230
Интерфейс к сцене.
Definition: qd_minigame_interface.h:315
virtual bool set_state(const char *state_name)=0
Включает состояние с именем state_name.
virtual qdMinigameObjectInterface * object_interface(const char *object_name)=0
Создаёт интерфейс к объекту с именем object_name.
int load_game(const qdEngineInterface *engine_interface, const qdMinigameSceneInterface *scene_interface, const char *buffer, int buffer_size)
Загрузка данных, вызывается при загрузке сцены, на которую повешена миниигра.
Definition: maski_21.h:109
bool new_game(const qdEngineInterface *engine_interface)
Инициализация миниигры, вызывается при старте и перезапуске игры.
Definition: maski_21.h:101
void void void void void debugC(int level, uint32 debugChannels, MSVC_PRINTF const char *s,...) GCC_PRINTF(3
uint32 qd_rnd(uint32 m)
Возвращает случайное значение в интервале [0, m-1].
Definition: qd_rnd.h:30