#include "SDL_events.h"
#include <typeinfo>
#include "files/U7file.h"
#include "files/utils.h"
#include "flic/playfli.h"
#include "gamewin.h"
#include "Audio.h"
#include "bggame.h"
#include "sigame.h"
#include "palette.h"
#include "databuf.h"
#include "font.h"
#include "txtscroll.h"
#include "data/exult_bg_flx.h"
#include "exult.h"
#include "Configuration.h"
#include "shapeid.h"
#include <cctype>
#include <cstring>
Include dependency graph for bggame.cc:
Go to the source code of this file.
Classes | |
class | UserSkipException |
Defines | |
#define | WAITDELAY(x) |
#define | WAITDELAYCYCLE(x) |
#define | WAITDELAYCYCLE2(x) |
#define | WAITDELAYCYCLE3(x) |
#define | BUTTERFLY_FRAME_DURATION 16 |
#define | BUTTERFLY_SUB_FRAMES 3 |
#define | BUTTERFLY(x, y, frame, delay) |
#define | BUTTERFLY_FLAP() |
#define | FLASH_SHAPE(x, y, shape, frame, delay) |
#define | EYES_DIST 12 |
#define | FORHEAD_DIST 49 |
Enumerations | |
enum | { ultima_text_shp = 0x0D, butterfly_shp = 0x0E, lord_british_shp = 0x11, trees_shp = 0x12, guardian_mouth_shp = 0x1E, guardian_forehead_shp = 0x1F, guardian_eyes_shp = 0x20 } |
enum | { bird_song_midi = 0, home_song_midi = 1, guardian_midi = 2, menu_midi = 3, credits_midi = 4, quotes_midi = 5 } |
Variables | |
static int | butterfly_x [] |
static int | butterfly_y [] |
static const int | butterfly_num_coords = sizeof(butterfly_x)/sizeof(int) |
static int | butterfly_end_frames [] = { 3, 4, 3, 4, 3, 2, 1, 0 } |
static int | butterfly_end_delay [] = { 167, 416, 250, 416, 416, 416, 416, 333 } |
#define BUTTERFLY | ( | x, | |||
y, | |||||
frame, | |||||
delay | ) |
Value:
do { \ win->get(backup, topx + (x) - butterfly->get_xleft(), \ topy + (y) - butterfly->get_yabove()); \ sman->paint_shape(topx + x, topy + y, shapes.get_shape(butterfly_shp, frame)); \ win->show(); \ WAITDELAY(delay); \ win->put(backup, topx + (x) - butterfly->get_xleft(), \ topy + (y) - butterfly->get_yabove()); \ } while(0)
Definition at line 312 of file bggame.cc.
Referenced by BG_Game::scene_butterfly().
#define BUTTERFLY_FLAP | ( | ) |
#define BUTTERFLY_FRAME_DURATION 16 |
#define BUTTERFLY_SUB_FRAMES 3 |
#define EYES_DIST 12 |
#define FLASH_SHAPE | ( | x, | |||
y, | |||||
shape, | |||||
frame, | |||||
delay | ) |
Value:
do { \ sman->paint_shape(x,y,shapes.get_shape(shape,frame)); \ win->show(); \ WAITDELAYCYCLE(delay); \ win->put(backup,(x)-s->get_xleft(),(y)-s->get_yabove()); \ } while(0)
Definition at line 467 of file bggame.cc.
Referenced by BG_Game::scene_guardian().
#define FORHEAD_DIST 49 |
#define WAITDELAY | ( | x | ) |
Value:
switch(wait_delay(x)) { \ case 1: throw UserBreakException(); break; \ case 2: throw UserSkipException(); break; \ }
Definition at line 196 of file bggame.cc.
Referenced by BG_Game::scene_butterfly(), BG_Game::scene_desk(), BG_Game::scene_guardian(), and BG_Game::scene_moongate().
#define WAITDELAYCYCLE | ( | x | ) |
Value:
switch (wait_delay((x), 16, 78)) { \ case 1: throw UserBreakException(); break; \ case 2: throw UserSkipException(); break; \ }
Definition at line 201 of file bggame.cc.
Referenced by BG_Game::scene_guardian().
#define WAITDELAYCYCLE2 | ( | x | ) |
Value:
switch (wait_delay((x), 250, 5)) { \ case 1: throw UserBreakException(); break; \ case 2: throw UserSkipException(); break; \ }
Definition at line 206 of file bggame.cc.
Referenced by BG_Game::scene_desk().
#define WAITDELAYCYCLE3 | ( | x | ) |
Value:
switch (wait_delay((x), 240, 15)) { \ case 1: throw UserBreakException(); break; \ case 2: throw UserSkipException(); break; \ }
Definition at line 211 of file bggame.cc.
Referenced by BG_Game::scene_moongate().
anonymous enum |
anonymous enum |
int butterfly_end_delay[] = { 167, 416, 250, 416, 416, 416, 416, 333 } [static] |
int butterfly_end_frames[] = { 3, 4, 3, 4, 3, 2, 1, 0 } [static] |
const int butterfly_num_coords = sizeof(butterfly_x)/sizeof(int) [static] |
int butterfly_x[] [static] |
Initial value:
{ 6,18,30,41,52,62,70,78,86,95, 104,113,122,132,139,146,151,155,157,158, 157,155,151,146,139,132,124,116,108,102, 96,93,93,93,95,99,109,111,118,125, 132,140,148,157,164,171,178,184,190,196, 203,211,219,228,237,246,254,259,262,264, 265,265,263,260,256,251,245,239,232,226, 219,212,208,206,206,209,212,216,220,224, 227,234,231,232,233,233,233,233,234,236, 239,243,247,250,258,265 }
Definition at line 331 of file bggame.cc.
Referenced by BG_Game::scene_butterfly().
int butterfly_y[] [static] |
Initial value:
{ 155,153,151,150,149,148,148,148,148,149, 150,150,150,149,147,142,137,131,125,118, 110,103,98,94,92,91,91,91,92,95, 99,104,110,117,123,127,131,134,135,135, 135,135,135,134,132,129,127,123,119,115, 112,109,104,102,101,102,109,109,114,119, 125,131,138,144,149,152,156,158,159,159, 158,155,150,144,137,130,124,118,112,105, 99,93,86,80,73,66,59,53,47,42, 38,35,32,29,26,25 }
Definition at line 345 of file bggame.cc.
Referenced by BG_Game::scene_butterfly().