@Override public void draw(Graphics2D g) { tileMap.draw(g); eManager.draw(g); tManager.draw(g); player.draw(g); }
public TowerUpgraderBack upgrade(final Tower pTowerSource, final TowerTypes pTowerType) { Debug.i("TowerUpgrader :: upgrade :: pTowerType=" + pTowerType); mTowerManager.upgrade(pTowerSource, pTowerType); hide(); return this; }
public boolean sell() { // sell this tower mTowerManager.sellTower(TowerUpgraderBack.this.mCurrentTowerBase); hide(); return true; }
@Override public void update() { if (paused) { return; } eManager.update(); tManager.update(eManager.getLiveEnemies()); if (player.getLives() <= 0) { gsm.setState(GameStateManager.GAMEOVERSTATE); } }
@Override public void mouseMoved(MouseEvent e) { tManager.mouseMoved(e); }
@Override public void mousePressed(MouseEvent e) { tManager.mousePressed(e); eManager.mousePressed(e); }
public TowerUpgraderBack( final TowerManager pTowerManager, final TiledTextureRegion pTowerMenuTiledTextureRegion) { // ref our tower manager mTowerManager = pTowerManager; // create our position marker mPositionMarker = new Rectangle(0, 0, TowerManager.TOWER_WIDTH, TowerManager.TOWER_HEIGHT); mPositionMarker.setColor(1, 0, 0, 0.25f); mPositionMarker.setVisible(false); mPositionMarker.setIgnoreUpdate(true); // setup the radius marker mRadiusMarker = new Sprite(0, 0, mTowerManager.getTowerCircleTextureRegion().deepCopy()); mRadiusMarker.setAlpha(0.25f); mRadiusMarker.setColor(.25f, .25f, .25f); mRadiusMarker.setVisible(false); mRadiusMarker.setIgnoreUpdate(true); // attach the radius marker to the position marker, then to the scene mPositionMarker.attachChild(mRadiusMarker); // assign our textures/font mTowerMenuTiledTextureRegion = pTowerMenuTiledTextureRegion; // calculate the total columns/rows mTotalColumns = 3; // (int) Math.floor((TOWERS_UI_CAMERA_WIDTH - (TOWERS_UI_MIN_BORDER_WIDTH * 2)) / // (TOWERS_UI_ITEM_WIDTH + (TOWERS_UI_SPACER * 2))); mTotalRows = 2; // (int) Math.floor((TOWERS_UI_CAMERA_HEIGHT - (TOWERS_UI_MIN_BORDER_WIDTH * 2)) / // (TOWERS_UI_ITEM_HEIGHT + (TOWERS_UI_SPACER * 2))); // decide the width of our box mBoxWidth = TOWERS_UI_SPACER + (mTotalColumns * (TOWERS_UI_ITEM_WIDTH + TOWERS_UI_SPACER)); mBoxHeight = TOWERS_UI_SPACER + (mTotalRows * (TOWERS_UI_ITEM_HEIGHT + TOWERS_UI_SPACER)); // decide our box x/y coords mBoxX = (TOWERS_UI_CAMERA_WIDTH / 2) - (mBoxWidth / 2); mBoxY = (TOWERS_UI_CAMERA_HEIGHT / 2) - (mBoxHeight / 2); // create our overlay "box", just a transparent rectangle final Rectangle rect = new Rectangle(mBoxX, mBoxY, mBoxWidth, mBoxHeight) { @Override public boolean onAreaTouched( final TouchEvent pSceneTouchEvent, final float pTouchAreaLocalX, final float pTouchAreaLocalY) { Debug.i("WTF"); return true; } }; rect.setColor(1, 1, 1, 0.50f); rect.setZIndex(0); attachChild(rect); // registerTouchArea(rect); /* // our sell button final TiledSprite sellButton = new TiledSprite(mBoxX + TOWERS_UI_ITEM_WIDTH + (TOWERS_UI_SPACER * 2), mBoxY + TOWERS_UI_SPACER, mTowerManager.getTowerMenuTiledTextureRegionClone()) { @Override public boolean onAreaTouched(TouchEvent pSceneTouchEvent, float pTouchAreaLocalX, float pTouchAreaLocalY) { if (pSceneTouchEvent.getAction() == TouchEvent.ACTION_UP) { Registry.sGameActivity.runOnUpdateThread(new Runnable() { @Override public void run() { TowerUpgrader.this.sell(); } } ); } return true; } }; sellButton.setCurrentTileIndex(TOWERS_UI_SELL[0], TOWERS_UI_SELL[1]); sellButton.setZIndex(1); attachChild(sellButton); registerTouchArea(sellButton); mTowerSellText = new ChangeableText(TOWERS_UI_ITEM_WIDTH / 2, TOWERS_UI_ITEM_HEIGHT - (TOWERS_UI_ITEM_HEIGHT / 4), Registry.sFontWhite12, "", HorizontalAlign.CENTER, "XXXXX".length()); mTowerSellText.setColor(1f, 85f, 0f); sellButton.attachChild(this.mTowerSellText); */ mTowerSellText = new ChangeableText( TOWERS_UI_ITEM_WIDTH / 2, TOWERS_UI_ITEM_HEIGHT - (TOWERS_UI_ITEM_HEIGHT / 4), Registry.sFontWhite12, "", HorizontalAlign.CENTER, "XXXXX".length()); sortChildren(); }