1. Index: view.c
  2. ===================================================================
  3. --- view.c (revision 2574)
  4. +++ view.c (working copy)
  5. @@ -3613,7 +3613,11 @@
  6.  
  7. // tweak as needed, this alters the transparency
  8. c1.a = 140;
  9. - drawIsoEnergyBar(Z_DIR, x, y, 1, 5, 5, w, PercentageDone, &c1, &c2);
  10. + if (PercentageDone > 0.05){
  11. + drawIsoEnergyBar(Z_DIR, x, y, 1, 5, 5, w, PercentageDone, &c1, &c2);
  12. + }else{
  13. + drawIsoEnergyBar(Z_DIR, x, y, 1, 5, 5, w, 0.05, &c1, &c2);
  14. + }
  15. }
  16.  
  17. #endif
  18. Index: hud.c
  19. ===================================================================
  20. --- hud.c (revision 2574)
  21. +++ hud.c (working copy)
  22. @@ -599,7 +599,7 @@
  23. 2.5 * FontHeight(BFont_to_use);
  24.  
  25. // Width of bars
  26. - bar_width = (text_length) * (cur_enemy->energy / Druidmap[cur_enemy->type].maxenergy);
  27. + bar_width = (text_length);
  28. barc_width = (text_length) * (1.0 - cur_enemy->energy / Druidmap[cur_enemy->type].maxenergy);
  29. if (bar_width < 0)
  30. bar_width = 0;
  31. @@ -618,11 +618,17 @@
  32. }
  33.  
  34. // Draw the energy bar complement
  35. - rect.x = bar_x + bar_width;
  36. + rect.x = bar_x;
  37. rect.y = bar_y;
  38. rect.w = barc_width;
  39. - our_SDL_fill_rect_wrapper(Screen, &rect, SDL_MapRGB(Screen->format, 0x000, 0x000, 0x000));
  40.  
  41. + if (barc_width < (bar_width*0.995)){
  42. + our_SDL_fill_rect_wrapper(Screen, &rect, SDL_MapRGB(Screen->format, 0x000, 0x000, 0x000));
  43. + }else{
  44. + rect.w = bar_width*0.005;
  45. + our_SDL_fill_rect_wrapper(Screen, &rect, SDL_MapRGB(Screen->format, 0x000, 0x000, 0x000));
  46. + }
  47. +
  48. // Display droid's short description text
  49. rect.x = translate_map_point_to_screen_pixel_x(description_pos->x, description_pos->y) - text_length / 2;
  50. PutStringFont(Screen, BFont_to_use, rect.x, rect.y, cur_enemy->short_description_text);