MCPcopy Create free account
hub / github.com/OpenXcom/OpenXcom / ArticleStateUfo

Method ArticleStateUfo

src/Ufopaedia/ArticleStateUfo.cpp:39–123  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

37{
38
39 ArticleStateUfo::ArticleStateUfo(Game *game, ArticleDefinitionUfo *defs) : ArticleState(game, defs->id)
40 {
41 RuleUfo *ufo = _game->getRuleset()->getUfo(defs->id);
42
43 // add screen elements
44 _txtTitle = new Text(155, 32, 5, 24);
45
46 // Set palette
47 setPalette("PAL_GEOSCAPE");
48
49 ArticleState::initLayout();
50
51 // add other elements
52 add(_txtTitle);
53
54 // Set up objects
55 _game->getResourcePack()->getSurface("BACK11.SCR")->blit(_bg);
56 _btnOk->setColor(Palette::blockOffset(8)+5);
57 _btnPrev->setColor(Palette::blockOffset(8)+5);
58 _btnNext->setColor(Palette::blockOffset(8)+5);
59
60 _txtTitle->setColor(Palette::blockOffset(8)+5);
61 _txtTitle->setBig();
62 _txtTitle->setWordWrap(true);
63 _txtTitle->setText(tr(defs->title));
64
65 _image = new Surface(160, 52, 160, 6);
66 add(_image);
67
68 Surface *graphic = _game->getResourcePack()->getSurface("INTERWIN.DAT");
69 graphic->setX(0);
70 graphic->setY(0);
71 graphic->getCrop()->x = 0;
72 graphic->getCrop()->y = 0;
73 graphic->getCrop()->w = 160;
74 graphic->getCrop()->h = 52;
75 _image->drawRect(graphic->getCrop(), 15);
76/*
77 graphic->getCrop()->y = 96;
78 graphic->getCrop()->h = 15;
79 graphic->blit(_image);
80 graphic->setY(67);
81 graphic->getCrop()->y = 111;
82 graphic->getCrop()->h = 29;
83 graphic->blit(_image);
84*/
85 if (ufo->getModSprite() == "")
86 {
87 graphic->getCrop()->y = 140 + 52 * ufo->getSprite();
88 graphic->getCrop()->h = 52;
89 }
90 else
91 {
92 graphic = _game->getResourcePack()->getSurface(ufo->getModSprite());
93 graphic->setX(0);
94 graphic->setY(0);
95 }
96 graphic->blit(_image);

Callers

nothing calls this directly

Calls 15

getCropMethod · 0.80
drawRectMethod · 0.80
getModSpriteMethod · 0.80
setColumnsMethod · 0.80
setDotMethod · 0.80
addRowMethod · 0.80
getWeaponPowerMethod · 0.80
getWeaponRangeMethod · 0.80
argMethod · 0.60
getUfoMethod · 0.45
getRulesetMethod · 0.45
blitMethod · 0.45

Tested by

no test coverage detected