Skip to content

Commit 480b934

Browse files
committed
ui: window info for temple moved to own files
1 parent 8ccf94a commit 480b934

File tree

2 files changed

+33
-40
lines changed

2 files changed

+33
-40
lines changed

src/building/building_temple.cpp

-40
Original file line numberDiff line numberDiff line change
@@ -19,53 +19,13 @@
1919
#include "building/count.h"
2020
#include "widget/city/ornaments.h"
2121
#include "window/window_building_info.h"
22-
#include "js/js_game.h"
2322

2423
buildings::model_t<building_temple_osiris> temple_osiris_m;
2524
buildings::model_t<building_temple_ra> temple_ra_m;
2625
buildings::model_t<building_temple_ptah> temple_ptah_m;
2726
buildings::model_t<building_temple_seth> temple_seth_m;
2827
buildings::model_t<building_temple_bast> temple_bast_m;
2928

30-
struct temple_info_window_t : public building_info_window {
31-
virtual void init(object_info &c) override {
32-
building_info_window::init(c);
33-
34-
auto temple = c.building_get()->dcast_temple();
35-
36-
int image_offset = 0;
37-
switch (temple->type()) {
38-
case BUILDING_TEMPLE_OSIRIS: image_offset = 21; break;
39-
case BUILDING_TEMPLE_RA: image_offset = 22; break;
40-
case BUILDING_TEMPLE_PTAH: image_offset = 23; break;
41-
case BUILDING_TEMPLE_SETH: image_offset = 24; break;
42-
case BUILDING_TEMPLE_BAST: image_offset = 25; break;
43-
44-
default:
45-
assert(false);
46-
}
47-
48-
ui["god_image"].image({PACK_UNLOADED, 21, image_offset});
49-
}
50-
51-
virtual bool check(object_info &c) override {
52-
building *b = c.building_get();
53-
return !!b->dcast_temple();
54-
}
55-
};
56-
57-
temple_info_window_t g_temple_info_window;
58-
59-
ANK_REGISTER_CONFIG_ITERATOR(config_load_building_temples);
60-
void config_load_building_temples() {
61-
temple_osiris_m.load();
62-
temple_ra_m.load();
63-
temple_ptah_m.load();
64-
temple_seth_m.load();
65-
temple_bast_m.load();
66-
g_temple_info_window.load("temple_info_window");
67-
}
68-
6929
e_overlay building_temple::get_overlay() const {
7030
switch(type()) {
7131
case BUILDING_TEMPLE_OSIRIS: return OVERLAY_RELIGION_OSIRIS;

src/window/window_temple_info.cpp

+33
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
#include "window_building_info.h"
2+
3+
#include "building/building_temple.h"
4+
5+
struct temple_info_window : public building_info_window_t<temple_info_window> {
6+
virtual void init(object_info &c) override;
7+
virtual bool check(object_info &c) override {
8+
building *b = c.building_get();
9+
return !!b->dcast_temple();
10+
}
11+
};
12+
13+
temple_info_window temple_infow;
14+
15+
void temple_info_window::init(object_info &c) {
16+
building_info_window::init(c);
17+
18+
auto temple = c.building_get()->dcast_temple();
19+
20+
int image_offset = 0;
21+
switch (temple->type()) {
22+
case BUILDING_TEMPLE_OSIRIS: image_offset = 21; break;
23+
case BUILDING_TEMPLE_RA: image_offset = 22; break;
24+
case BUILDING_TEMPLE_PTAH: image_offset = 23; break;
25+
case BUILDING_TEMPLE_SETH: image_offset = 24; break;
26+
case BUILDING_TEMPLE_BAST: image_offset = 25; break;
27+
28+
default:
29+
assert(false);
30+
}
31+
32+
ui["god_image"].image({ PACK_UNLOADED, 21, image_offset });
33+
}

0 commit comments

Comments
 (0)