             }
         }
 
-        private function drawBuildingCounts():void {
+        private function drawUnitCounts():void {
             var towerBoxTop:Number = Math.ceil(maxTowers / 3.0) * (DrawHUDTower.HEIGHT + 10);
             var top:Number = hqBox.height + hqBox.y + towerBoxTop + 10;
+            unitLabel.y = top + 10;
+            top = unitLabel.height + unitLabel.y + 5;
+            var i:uint = 0;
+            for each (var unitBox:DrawHUDUnit in unitBoxes) {
+                unitBox.x = (width - unitBox.width * 3) / 2 + (i % 3) * unitBox.width;
+                unitBox.y = ((unitBox.height + 10) * Math.floor(i / 3)) + top;
+                if (unitBox.getCount() > 0) {
+                    unitBox.visible = true;
+                    i++;
+                } else {
+                    unitBox.visible = false;
+                }
+            }
+        }
+
+        private function drawBuildingCounts():void {
+            var topUnitBox:DrawHUDUnit = unitBoxes[unitBoxes.length-1];
+            for (var j:int = unitBoxes.length - 1; j >= 0; j--) {
+                topUnitBox = unitBoxes[j];
+                if (topUnitBox.visible) {
+                    break;
+                }
+            }
+
+            var top:Number = topUnitBox.height + topUnitBox.y + 10;
             buildingLabel.y = top + 10;
             top = buildingLabel.height + buildingLabel.y + 5;
             var i:uint = 0;

            repositionWinMarkers();
            resizeHQBox();
            drawTowerBoxes();
            drawBuildingCounts();
            drawUnitCounts();
        }

    }

                    i++;
                } else {
                    buildingBox.visible = false;
                }
            }
        }
