22 #ifndef QDENGINE_QDCORE_QD_MINIGAME_INTERFACE_H 23 #define QDENGINE_QDCORE_QD_MINIGAME_INTERFACE_H 32 class qdEngineInterface;
76 class qdMinigameSceneInterface;
91 virtual bool quant(
float dt) = 0;
94 virtual bool finit() = 0;
123 enum { INTERFACE_VERSION = 112 };
124 virtual int version()
const {
125 return INTERFACE_VERSION;
132 explicit mgVect2(T value = (T)0) : x(value), y(value) { }
133 mgVect2(T xx, T yy) : x(xx), y(yy) { }
176 explicit mgVect3(T value = (T)0) : x(value), y(value), z(value) { }
177 mgVect3(T xx, T yy, T zz) : x(xx), y(yy), z(zz) { }
235 virtual const char *name()
const = 0;
238 virtual bool has_state(
const char *state_name)
const = 0;
241 virtual const char *current_state_name()
const = 0;
243 virtual bool is_state_active(
const char *state_name)
const = 0;
245 virtual bool is_state_waiting_activation(
const char *state_name)
const = 0;
247 virtual int current_state_index()
const = 0;
249 virtual bool set_state(
const char *state_name) = 0;
251 virtual bool set_state(
int state_index) = 0;
257 virtual int state_index(
const char *state_name)
const = 0;
260 virtual mgVect3f R()
const = 0;
262 virtual void set_R(
const mgVect3f &r) = 0;
265 virtual bool hit_test(
const mgVect2i &pos)
const = 0;
268 virtual mgVect2i screen_R()
const = 0;
270 virtual bool update_screen_R() = 0;
272 virtual mgVect2i screen_size()
const = 0;
277 virtual void set_screen_rotation(
float angle,
float speed) = 0;
279 virtual float screen_rotation()
const = 0;
281 virtual void set_screen_scale(
const mgVect2f &
scale,
const mgVect2f &speed) = 0;
283 virtual mgVect2f screen_scale()
const = 0;
286 virtual int shadow_color()
const = 0;
288 virtual int shadow_alpha()
const = 0;
290 virtual bool set_shadow(
int shadow_color,
int shadow_alpha) = 0;
293 virtual bool is_visible()
const = 0;
296 virtual mgVect3f bound()
const = 0;
304 virtual bool move(
const mgVect3f &target_position,
bool disable_target_change =
false) = 0;
309 virtual float direction_angle()
const = 0;
311 virtual bool set_direction_angle(
float direction) = 0;
320 virtual const char *name()
const = 0;
327 virtual bool activate_personage(
const char *personage_name) = 0;
330 virtual mgVect3f screen2world_coords(
const mgVect2i &screen_pos,
float screen_depth = 0)
const = 0;
332 virtual mgVect2i world2screen_coords(
const mgVect3f &world_pos)
const = 0;
334 virtual float screen_depth(
const mgVect3f &pos)
const = 0;
336 virtual mgVect3f screen2grid_coords(
const mgVect2i &screen_pos)
const = 0;
347 virtual const char *minigame_parameter(
const char *parameter_name)
const = 0;
358 virtual int value()
const = 0;
360 virtual void set_value(
int value) = 0;
362 virtual void add_value(
int value_delta) = 0;
372 MOUSE_EV_LEFT_DOWN = 0,
394 virtual mgVect2i screen_size()
const = 0;
397 virtual bool is_key_pressed(
int vkey)
const = 0;
403 virtual mgVect2i mouse_cursor_position()
const = 0;
407 virtual bool add_hall_of_fame_entry(
int score)
const = 0;
411 virtual bool set_interface_text(
const char *screen_name,
const char *control_name,
const char *text)
const = 0;
414 virtual void rnd_init(
int seed)
const = 0;
416 virtual uint32 rnd(uint32 m)
const = 0;
418 virtual float frnd(
float x)
const = 0;
420 virtual float fabs_rnd(
float x)
const = 0;
425 #endif // QDENGINE_QDCORE_QD_MINIGAME_INTERFACE_H
qdMinigameMouseEvent
Идентификаторы событий для работы с мышью.
Definition: qd_minigame_interface.h:370
Отжатие левой кнопки.
Definition: qd_minigame_interface.h:380
virtual bool new_game(const qdEngineInterface *engine_interface)
Инициализация миниигры, вызывается при старте и перезапуске игры.
Definition: qd_minigame_interface.h:97
Definition: qd_minigame_interface.h:78
Definition: qd_minigame_interface.h:174
Graphics::Surface * scale(const Graphics::Surface &srcImage, int xSize, int ySize)
Definition: qd_minigame_interface.h:365
Definition: qd_minigame_interface.h:130
Базовый класс для игровых ресурсов.
Definition: console.h:28
Definition: algorithm.h:29
virtual int load_game(const qdEngineInterface *engine_interface, const qdMinigameSceneInterface *scene_interface, const char *buffer, int buffer_size)
Загрузка данных, вызывается при загрузке сцены, на которую повешена миниигра.
Definition: qd_minigame_interface.h:105
Нажатие правой кнопки.
Definition: qd_minigame_interface.h:374
Двойное нажатие правой кнопки.
Definition: qd_minigame_interface.h:378
DBCSString operator+(const DBCSString &x, const DBCSString &y)
Интерфейс к динамическому объекту.
Definition: qd_minigame_interface.h:230
Интерфейс к счётчику.
Definition: qd_minigame_interface.h:353
Out move(In first, In last, Out dst)
Definition: algorithm.h:109
Интерфейс к сцене.
Definition: qd_minigame_interface.h:315
Двойное нажатие левой кнопки.
Definition: qd_minigame_interface.h:376
virtual int save_game(const qdEngineInterface *engine_interface, const qdMinigameSceneInterface *scene_interface, char *buffer, int buffer_size)
Сохранение данных, вызывается при сохранении сцены, на которую повешена миниигра. ...
Definition: qd_minigame_interface.h:101
Отжатие правой кнопки.
Definition: qd_minigame_interface.h:382