Commit 6b30e430 authored by nanahira's avatar nanahira

add credit display

parent 71a6ff76
...@@ -1218,18 +1218,42 @@ void Game::DrawThumb(code_pointer cp, irr::core::vector2di pos, const LFList* lf ...@@ -1218,18 +1218,42 @@ void Game::DrawThumb(code_pointer cp, irr::core::vector2di pos, const LFList* lf
otloc = irr::core::recti(pos.X + 7, pos.Y + 50 * mainGame->yScale, pos.X + 37 * mainGame->xScale, pos.Y + 65 * mainGame->yScale); otloc = irr::core::recti(pos.X + 7, pos.Y + 50 * mainGame->yScale, pos.X + 37 * mainGame->xScale, pos.Y + 65 * mainGame->yScale);
} }
driver->draw2DImage(img, dragloc, irr::core::rect<irr::s32>(0, 0, size.Width, size.Height)); driver->draw2DImage(img, dragloc, irr::core::rect<irr::s32>(0, 0, size.Width, size.Height));
auto current_limitloc = limitloc;
auto credit_max_display = CARD_THUMB_WIDTH / 20;
auto next_limitloc = [&]() {
auto this_limitloc = current_limitloc;
auto width = current_limitloc.getWidth();
current_limitloc.UpperLeftCorner.X += width;
current_limitloc.LowerRightCorner.X += width;
--credit_max_display;
return this_limitloc;
};
auto lfit = lflist->content.find(lcode); auto lfit = lflist->content.find(lcode);
if (lfit != lflist->content.end()) { if (lfit != lflist->content.end() && lfit->second >= 0 && lfit->second <= 2) {
switch(lfit->second) { auto lim_texture_offset_x = 0;
case 0: auto lim_texture_offset_y = 0;
driver->draw2DImage(imageManager.tLim, limitloc, irr::core::recti(0, 0, 64, 64), 0, 0, true); if(lfit->second == 1) {
break; lim_texture_offset_x = 64;
case 1: } else if(lfit->second == 2) {
driver->draw2DImage(imageManager.tLim, limitloc, irr::core::recti(64, 0, 128, 64), 0, 0, true); lim_texture_offset_y = 64;
break; }
case 2: driver->draw2DImage(imageManager.tLim, next_limitloc(), irr::core::recti(lim_texture_offset_x, lim_texture_offset_y, lim_texture_offset_x + 64, lim_texture_offset_y + 64), 0, 0, true);
driver->draw2DImage(imageManager.tLim, limitloc, irr::core::recti(0, 64, 64, 128), 0, 0, true); }
break; auto lfcredit = lflist->credits.find(lcode);
if(lfcredit != lflist->credits.end()) {
for(auto& credit_entry : lfcredit->second) {
if(credit_max_display <= 0)
break;
auto value = credit_entry.second;
if(value > 0 && value <= 100) {
auto cvalue = value - 1; // 1-100 => 0-99
// pick the first and second digit
auto digit1 = cvalue / 10;
auto digit2 = cvalue % 10;
auto credit_texture_offset_x = digit2 * 64;
auto credit_texture_offset_y = digit1 * 64;
driver->draw2DImage(imageManager.tLimCredit, next_limitloc(), irr::core::recti(credit_texture_offset_x, credit_texture_offset_y, credit_texture_offset_x + 64, credit_texture_offset_y + 64), 0, 0, true);
}
} }
} }
bool showAvail = false; bool showAvail = false;
......
...@@ -45,6 +45,7 @@ bool ImageManager::Initial() { ...@@ -45,6 +45,7 @@ bool ImageManager::Initial() {
tTarget = driver->getTexture("textures/target.png"); tTarget = driver->getTexture("textures/target.png");
tChainTarget = driver->getTexture("textures/chaintarget.png"); tChainTarget = driver->getTexture("textures/chaintarget.png");
tLim = driver->getTexture("textures/lim.png"); tLim = driver->getTexture("textures/lim.png");
tLimCredit = driver->getTexture("textures/lim_credit.png");
tOT = driver->getTexture("textures/ot.png"); tOT = driver->getTexture("textures/ot.png");
tHand[0] = driver->getTexture("textures/f1.jpg"); tHand[0] = driver->getTexture("textures/f1.jpg");
tHand[1] = driver->getTexture("textures/f2.jpg"); tHand[1] = driver->getTexture("textures/f2.jpg");
......
...@@ -57,6 +57,7 @@ public: ...@@ -57,6 +57,7 @@ public:
irr::video::ITexture* tTarget; irr::video::ITexture* tTarget;
irr::video::ITexture* tChainTarget; irr::video::ITexture* tChainTarget;
irr::video::ITexture* tLim; irr::video::ITexture* tLim;
irr::video::ITexture* tLimCredit;
irr::video::ITexture* tOT; irr::video::ITexture* tOT;
irr::video::ITexture* tHand[3]; irr::video::ITexture* tHand[3];
irr::video::ITexture* tBackGround; irr::video::ITexture* tBackGround;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment