From 4c6895ba1445a040f65affea6f29ab66011960db Mon Sep 17 00:00:00 2001 From: drumsetmonkey Date: Fri, 4 Dec 2015 08:49:02 -0500 Subject: [PATCH] inv stuff --- assets/items/SWORD_WOOD.png | Bin 0 -> 256 bytes assets/names_en-us | 1 + assets/player.png | Bin 577 -> 577 bytes assets/player1.png | Bin 586 -> 586 bytes assets/player2.png | Bin 586 -> 586 bytes config/items.h | 6 +++--- include/inventory.h | 2 ++ include/ui.h | 1 + main.cpp | 1 - src/entities.cpp | 4 ++-- src/inventory.cpp | 34 +++++++++++++++++++++++++--------- src/ui.cpp | 7 +++++++ 12 files changed, 41 insertions(+), 15 deletions(-) create mode 100644 assets/items/SWORD_WOOD.png diff --git a/assets/items/SWORD_WOOD.png b/assets/items/SWORD_WOOD.png new file mode 100644 index 0000000000000000000000000000000000000000..a6d3af32da65194a79d7e1d18e4f9467c7605ed0 GIT binary patch literal 256 zcmeAS@N?(olHy`uVBq!ia0vp^JU}eR!3HEHvj3L@DYhhUcNd2LAh=-f^2tCE&H|6f zVg?3oVGw3ym^DWND9B#o>FdgVpNECVSfr`dOcf|3n;8;O;+&tGo0?YwnumSlot-1)highlight=numSlot-1; if(SDL_GetMouseState(NULL, NULL) & SDL_BUTTON(SDL_BUTTON_LEFT)){ - highlight>numSlot-1 ? sel=numSlot-1 : sel = highlight; + sel = highlight; mouseSel=false; invHover=false; selected = true; @@ -205,10 +213,10 @@ void Inventory::draw(void){ glColor4f(0.0f, 0.0f, 0.0f, a == highlight ? 0.5f : 0.1f); glBegin(GL_QUADS); - glVertex2i(r.end.x-(itemWide/2), r.end.y-(itemWide/2)); - glVertex2i(r.end.x-(itemWide/2)+itemWide, r.end.y-(itemWide/2)); - glVertex2i(r.end.x-(itemWide/2)+itemWide, r.end.y-(itemWide/2)+itemWide); - glVertex2i(r.end.x-(itemWide/2), r.end.y-(itemWide/2)+itemWide); + glVertex2i(r.end.x-(itemWide/2), r.end.y-(itemWide/2)); + glVertex2i(r.end.x+(itemWide/2), r.end.y-(itemWide/2)); + glVertex2i(r.end.x+(itemWide/2), r.end.y+(itemWide/2)); + glVertex2i(r.end.x-(itemWide/2), r.end.y+(itemWide/2)); glEnd(); if(inv[a].count > 0){ @@ -216,16 +224,24 @@ void Inventory::draw(void){ glBindTexture(GL_TEXTURE_2D, itemtex[inv[a].id]); glColor4f(1.0f, 1.0f, 1.0f, a == highlight ? 0.8f : 0.2f); glBegin(GL_QUADS); - glTexCoord2i(0,1);glVertex2i(r.end.x-(itemWide/2), r.end.y-(itemWide/2)); - glTexCoord2i(1,1);glVertex2i(r.end.x-(itemWide/2)+itemWide, r.end.y-(itemWide/2)); - glTexCoord2i(1,0);glVertex2i(r.end.x-(itemWide/2)+itemWide, r.end.y-(itemWide/2)+itemWide); - glTexCoord2i(0,0);glVertex2i(r.end.x-(itemWide/2), r.end.y-(itemWide/2)+itemWide); + if(item[inv[a].id].height > item[inv[a].id].width){ + glTexCoord2i(0,1);glVertex2i(r.end.x-((itemWide/2)*((float)item[inv[a].id].width/(float)item[inv[a].id].height)), r.end.y-(itemWide/2)); + glTexCoord2i(1,1);glVertex2i(r.end.x+((itemWide/2)*((float)item[inv[a].id].width/(float)item[inv[a].id].height)), r.end.y-(itemWide/2)); + glTexCoord2i(1,0);glVertex2i(r.end.x+((itemWide/2)*((float)item[inv[a].id].width/(float)item[inv[a].id].height)), r.end.y+(itemWide/2)); + glTexCoord2i(0,0);glVertex2i(r.end.x-((itemWide/2)*((float)item[inv[a].id].width/(float)item[inv[a].id].height)), r.end.y+(itemWide/2)); + }else{ + glTexCoord2i(0,1);glVertex2i(r.end.x-(itemWide/2), r.end.y-(itemWide/2)*((float)item[inv[a].id].height/(float)item[inv[a].id].width)); + glTexCoord2i(1,1);glVertex2i(r.end.x+(itemWide/2), r.end.y-(itemWide/2)*((float)item[inv[a].id].height/(float)item[inv[a].id].width)); + glTexCoord2i(1,0);glVertex2i(r.end.x+(itemWide/2), r.end.y+(itemWide/2)*((float)item[inv[a].id].height/(float)item[inv[a].id].width)); + glTexCoord2i(0,0);glVertex2i(r.end.x-(itemWide/2), r.end.y+(itemWide/2)*((float)item[inv[a].id].height/(float)item[inv[a].id].width)); + } glEnd(); glDisable(GL_TEXTURE_2D); //ui::putText(r.end.x-(itemWide/2)+(itemWide*.85),r.end.y-(itemWide/1.75),"%d",inv[a].count); } a++; } + if(inv[highlight].count > 0)ui::putStringCentered(player->loc.x+player->width/2, player->loc.y + range*.75,item[inv[highlight].id].name); } if(inv[sel].count)itemDraw(player,inv[sel].id); lop++; diff --git a/src/ui.cpp b/src/ui.cpp index db376b7..6f5bdbe 100644 --- a/src/ui.cpp +++ b/src/ui.cpp @@ -68,6 +68,11 @@ namespace ui { */ vec2 mouse; + + /* + * Variety of keydown bools + */ + bool edown; /* * Debugging flags. @@ -624,6 +629,7 @@ DONE: if(SDL_KEY==SDLK_F3)debug^=true; if(((SDL_KEY==SDLK_b) & (SDL_KEY==SDLK_F3)))posFlag^=true; if(SDL_KEY==SDLK_e){ + edown=true; if(heyOhLetsGo == 0){ heyOhLetsGo = loops; player->inv->mouseSel = false; @@ -646,6 +652,7 @@ DONE: if(SDL_KEY==SDLK_h)player->health-=5; if(SDL_KEY==SDLK_f)player->light ^= true; if(SDL_KEY==SDLK_e){ + edown=false; if(player->inv->invHover){ player->inv->invHover = false; heyOhLetsGo = 0; -- 2.39.5