public void inicia() { Level spawn = new SpawnLevel("/textures/level.png"); Level spawn2 = new SpawnLevel("/textures/level2.png"); audio = new Audio(); menuu = new Menu(); falas = new Falas(); frame = new JFrame(); digni = new Dignidade(); key = new Keyboard(); Dimension size = new Dimension(width * scale, height * scale); setPreferredSize(size); player = new Player(playerSpawn.x(), playerSpawn.y(), key); ea = new EstadoAtual(); projectile = new WizardProjectile(17, 40, -0.17); screen = new Screen(width, height); if (ea.fase == ea.fase.UM) level = spawn; if (ea.fase == ea.fase.DOIS) level = spawn2; level.add(player); addKeyListener(key); Mouse mouse = new Mouse(); if (ea.State == ea.State.MENU) Dignidade.dign = 245; addMouseListener(mouse); addMouseMotionListener(mouse); // cursor do mouse Cursor hourglassCursor = new Cursor(Cursor.CROSSHAIR_CURSOR); setCursor(hourglassCursor); }
private void attackMoveSelected(int x, int y) { attackMoveClicked = false; GameSprite target = level.getSpriteAt(x, y); for (GameSprite sprite : selected) { if (target == null) sprite.goTo(x, y, true, shiftDown()); else sprite.goTo(target, true, shiftDown()); } }
public static void onLevelCOmplete(int number, boolean isComplete) { if (isComplete) { JOptionPane.showMessageDialog(null, "Mission Complete!"); } else { JOptionPane.showMessageDialog(null, "Mission Failed"); } if (number == 1) { Level.setLevel1(null); } else if (number == 2) { Level.setLevel2(null); } else if (number == 3) { Level.setLevel3(null); } else if (number == 4) { Level.setLevel4(null); } else if (true) { ThrowCrash("The level was not unloaded correctly"); } }
private void rightMouseClick(int x, int y) { attackMoveClicked = false; GameSprite target = level.getSpriteAt(x, y); for (GameSprite sprite : selected) { if (sprite.onTeam(playerTeam)) { if (target == null) sprite.goTo(x, y, false, shiftDown()); else sprite.goTo(target, false, shiftDown()); } } }
public void update() { ea.update(); key.update(); level.update(); // O level.update() ja da update ne todo resto (player, particulas, mobs, projeteis.. etc) }
private void leftMouseClick(int x, int y) { if (attackMoveClicked) { attackMoveSelected(x, y); } else { GameSprite sprite = level.getSpriteAt(x, y); if (sprite != null) { selected.clear(); selected.add(sprite); } } }
private void handleInput() { if (input.clicked(0)) leftMouseClick(input.getX(), input.getY()); else if (input.clicked(2)) rightMouseClick(input.getX(), input.getY()); if (input.createdBox()) { ArrayList<GameSprite> boxedSprites = level.getSpritesAt(input.getDragBox()); ArrayList<GameSprite> boxedFriendly = new ArrayList<GameSprite>(); for (GameSprite sprite : boxedSprites) { if (sprite.onTeam(playerTeam)) boxedFriendly.add(sprite); } if (!boxedFriendly.isEmpty()) { selected = boxedFriendly; } } if (input.keyDown(KeyEvent.VK_A)) attackMoveClicked = true; if (input.keyDown(KeyEvent.VK_S)) stopSelected(); if (input.keyDown(KeyEvent.VK_LEFT)) scrollLeft(); if (input.keyDown(KeyEvent.VK_RIGHT)) scrollRight(); if (input.keyDown(KeyEvent.VK_UP)) scrollUp(); if (input.keyDown(KeyEvent.VK_DOWN)) scrollDown(); }
public void render() { BufferStrategy bs = getBufferStrategy(); if (bs == null) { createBufferStrategy(3); return; } screen.clear(); int xScroll = player.getX() - screen.width / 2; int yScroll = player.getY() - screen.height / 2; level.render(xScroll, yScroll, screen); for (int i = 0; i < pixels.length; i++) { pixels[i] = screen.pixels[i]; } Graphics g = bs.getDrawGraphics(); if (ea.State == ea.State.MENU) { menuu.renderMenu(g); } else if (ea.State == ea.State.CONVERSAINICIAL) { falas.renderFala(g); } else if (ea.State == ea.State.CREDITS) { menuu.renderCredits(g); } else if (ea.State == ea.State.GAME) { g.drawImage(image, 0, 0, getWidth(), getHeight(), null); digni.render(g); } else if (ea.State == ea.State.CONVERSAORC) { falas.renderFala(g); } g.dispose(); bs.show(); }
public void render(Graphics g) { level.render(selected, screenX, screenY, g); GUI.render(input, screenX, screenY, g); }
public void tick(Input input) { this.input = input; handleInput(); level.tick(); }