My Project
 
Loading...
Searching...
No Matches
gamescene.h
Go to the documentation of this file.
1#pragma once
2
3#include "pixelscene.h"
4#include "emitter.h"
5#include "ripple.h"
6#include "cellselector.h"
7#include "wndbag.h"
8
9class FloatingText;
10class SkinnedBlock;
11class DungeonTilemap;
12class HeroSprite;
13class GameLog;
14class BusyIndicator;
15class Item;
16class FogOfWar;
17class Toolbar;
18class Toast;
19class Blob;
20class Mob;
21class Plant;
22class Banner;
23
24class GameScene :public PixelScene{
25private:
26 static const std::string TXT_WELCOME;
27 static const std::string TXT_WELCOME_BACK;
28 static const std::string TXT_NIGHT_MODE;
29
30 static const std::string TXT_CHASM;
31 static const std::string TXT_WATER;
32 static const std::string TXT_GRASS;
33 static const std::string TXT_SECRETS;
34
35 static GameScene* scene;
36
37 SkinnedBlock* water;
38 DungeonTilemap* tiles;
39 FogOfWar* fog;
40 HeroSprite* hero;
41
42 GameLog* log;
43
44 BusyIndicator* busy;
45
46 static CellSelector* cellSelector;
47 static CellSelector::Listener* defaultCellListener;
48
49 Group* terrain;
50 Group* ripples;
51 Group* plants;
52 Group* heaps;
53 Group* mobs;
54 Group* emitters;
55 Group* effects;
56 Group* gases;
57 Group* spells;
58 Group* statuses;
59 Group* emoicons;
60
61 Toolbar* toolbar;
62 Toast* prompt;
63
64 void addBlobSprite(Blob* gas);
65 void addMobSprite(Mob* mob);
66 void addPlantSprite(Plant* plant);
67 void addHeapSprite(Heap* heap);
68
69 void showBanner(Banner* banner);
70 void Prompt(const std::string& text);
71
72 static bool cancelCellSelector();
73public:
74 GameScene();
75 void brightness(bool value);
76
77 virtual void init();
78 void destroy();
79
80 static Emitter* emitter();
81 static FloatingText* status();
82 static Ripple* ripple(int pos);
83 static void effect(Visual* eff);
84 static void afterObserve();
85 static void show(Window* wnd);
86
87 static void ready();
88 static bool cancel();
89
90 static void addMob(Mob* mob, float delay);
91 static void addMob(Mob* mob);
92
93 static void addBlob(Blob* gas);
94
95 virtual void update();
96
97 static void handleCell(int cell);
98 static void selectCell(CellSelector::Listener* listener);
99
100 static void bossSlain();
101
102 static void updateMap(int cell);
103 static void discoverTile(int pos, int oldValue);
104 static void pickUp(Item* item);
105
106 static WndBag* selectItem(WndBag::Listener* listener, WndBag::Mode mode, const std::string& title);
107};
Definition banner.h:5
Definition blob.h:9
Definition busyindicator.h:5
Definition cellselector.h:9
Definition cellselector.h:7
Definition dungeontilemap.h:8
Definition floatingtext.h:8
Definition fogofwar.h:5
Definition gamelog.h:11
static Emitter * emitter()
Definition gamescene.cpp:424
static void show(Window *wnd)
Definition gamescene.cpp:490
static FloatingText * status()
Definition gamescene.cpp:443
static void handleCell(int cell)
Definition gamescene.cpp:562
static bool cancel()
Definition gamescene.cpp:502
static void updateMap(int cell)
Definition gamescene.cpp:585
void destroy()
Definition gamescene.cpp:416
static Ripple * ripple(int pos)
Definition gamescene.cpp:457
void brightness(bool value)
Definition gamescene.cpp:156
static void effect(Visual *eff)
Definition gamescene.cpp:470
static void discoverTile(int pos, int oldValue)
Definition gamescene.cpp:593
static void addMob(Mob *mob, float delay)
Definition gamescene.cpp:517
static WndBag * selectItem(WndBag::Listener *listener, WndBag::Mode mode, const std::string &title)
Definition gamescene.cpp:605
virtual void update()
Definition gamescene.cpp:541
GameScene()
Definition gamescene.cpp:173
static void pickUp(Item *item)
Definition gamescene.cpp:600
static void afterObserve()
Definition gamescene.cpp:475
static void bossSlain()
Definition gamescene.cpp:573
virtual void init()
Definition gamescene.cpp:178
static void addBlob(Blob *gas)
Definition gamescene.cpp:533
static void selectCell(CellSelector::Listener *listener)
Definition gamescene.cpp:567
static void ready()
Definition gamescene.cpp:496
Definition heap.h:11
Definition herosprite.h:6
Definition item.h:15
Definition mob.h:9
PixelScene()
Definition pixelscene.cpp:34
Definition plant.h:13
Definition ripple.h:5
Definition toast.h:9
Definition toolbar.h:12
Definition window.h:14
Definition wndbag.h:23
Definition wndbag.h:8
Mode
Definition wndbag.h:10