Anonymní profil Rikimaru – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil Rikimaru – Programujte.comAnonymní profil Rikimaru – Programujte.com

 

Příspěvky odeslané z IP adresy 217.144.24.–

Rikimaru
Java › Problém s tlačítkami Try Aga…
22. 11. 2016   #213727

#11 Rikimaru
Tlačítko "Wanna Try Again" som už vyriešil. Už vracá naspäť iba tlačítko nie celá obrazovka.

Rikimaru
Java › Problém s tlačítkami Try Aga…
22. 11. 2016   #213726

#10 Matrix17
Tento problém s tlačítkami "Back" a "TryAgain" už mám vyriešený :). Teraz by som práve potreboval pomôcť spraviť niečo v takomto zmysle: Pokiaľ bude get.Level()=15 tak vyhráte hru. Vyskočí vám Congratulations a tlačítko "Wanna try again?"
1.
Toto plní svoj účel a hodí ma to do STATE.Menu. Ale myš reaguje na úplne celé okno. To znamená, že hoci kde kliknem ma to hodí to menu.
 2.
Keď sa dostanem do menu tak náhodné "MenuParticles" (to sú iba random pohybujúci sa enemáci v pozadí) sa tam nenachádzajú. Proste celé menu je na pozadí čierne.Tlačítka fungujú.
3.
Player po prepnutí do Menu stále ostáva a môžete s ním manupulovať.

Rikimaru
Java › Problém s tlačítkami Try Aga…
21. 11. 2016   #213697

#8 gna
Tak potom ďakujem veľmi za vaše rady a som rád, že ste si našli čas preto aby ste odpísal takému neschopnému blbcovi ako som ja. Nechcel som vás nijak nasrať alebo niečo podobné, za to sa hlboko ospravedlňujem.

Rikimaru
Java › Problém s tlačítkami Try Aga…
20. 11. 2016   #213685

#2 Matrix17
Mám na vás otázku ak smiem. Nevedeli by ste mi vysvetliť čo a ako funguje ten handler? V tom mám ešte trochu chaos.

Rikimaru
Java › Problém s tlačítkami Try Aga…
20. 11. 2016   #213684

#4 gna
A inak už som na to prišiel aj sám :). A nabudúce také reči ako:"Odnělud jsi to zkopíroval a nechápeš ani řádek." si nechajte pre seba. Najprv si zistite fakty a potom môžte ostatných ľudí podľa toho súdiť.

Rikimaru
Java › Problém s tlačítkami Try Aga…
20. 11. 2016   #213683

#4 gna

Podľa tohoto tutoriálu som to robil :). Pravda nerozumiem všetkému, ale moje nedostatky, ktoré mám sa snažím doplniť takýmito fórami, tutoriálmi, a stránkami kde sa touto tématikou zaoberá viacej ľudí. Tento tutoriál ktorý ste mi poslali tak podľa toho som postupoval krok za krokom a poriadne som počúval čo aký príkaz znamená. Ale "Chybička se bloudí" a niečo v tomto nemám správne. Preto som napísal sem, že možno tu bude niekto kto mi bude môcť pomôcť s týmito dvoma problémami "Try Again" a "Back". PS: Jediné čo som menil bola FARBA nepriateľov a pokiaľ má toto nejaký dopad na celý ten program tak sa velice ospravedlňujem ...

Rikimaru
Java › Problém s tlačítkami Try Aga…
19. 11. 2016   #213680

#2 Matrix17
Ďakujem veľmi pekne. Som v tomto začiatočník a úplne presne neviem všetky tieto príkazy a metódy, ktorými sa to dá spraviť. Toto je môj prvý väčší projekt. Do teraz som robil iba niečo v tom štýle: "Ahoj ja som ... A mám ... rokov. Takže celkom iná liga toto na mňa :D Ale velice pekne ešte raz ďakujem za rady.

Rikimaru
Java › Problém s tlačítkami Try Aga…
19. 11. 2016   #213677

Ahojte. Potrebujem pomoc s tlačítkom "Back" a "Try Again". Hráč keď dohrá vypíše mu to At least you tried + skóre. Ale keď chce hráč hrať znova tak mu to celý program zavrie. To isté keď si vyberie v menu tlačítko "Help". Je tam iba popísané ako sa to ovláda a to je všetko. Ale keď chce ísť hráč späť do hlavného menu a klikne na tlačítko "back" vypne to celý program. Trápim sa s tým už asi 3 dni a je to celkom depresívne. (Iba začínam s Javou). A pri všetkých "game.gameState" mi píše: "The static field Game.gameState should be accesed in static way.

import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.util.Random;

import com.tutorial.main.Game.STATE;

public class Menu extends MouseAdapter{
    
    private Game game;
    private Handler handler;
    private HUD hud;
    private Random r = new Random();
    
    public Menu(Game game, Handler handler, HUD hud){
        this.game = game;
        this.hud = hud;
        this.handler = handler;
        
    }
    
    public void mousePressed(MouseEvent e){
        int mx = e.getX();
        int my = e.getY();
        
        if(game.gameState == STATE.Menu){
            //Play button
            if(mouseOver(mx, my, 210, 150, 200, 64)){
                game.gameState = STATE.Game;
                handler.addObject(new Player(Game.WIDTH/2-32, Game.HEIGHT/2-32, ID.Player, handler));
                handler.clearEnemys();
                handler.addObject(new BasicEnemy(r.nextInt(Game.WIDTH - 50), r.nextInt(Game.HEIGHT - 50), ID.BasicEnemy, handler));    
            
            }    
            //Help Button
            if(mouseOver(mx, my, 210, 250, 200, 64)){
                game.gameState = STATE.Help;
            }
            
            }
            
            
            //Quit button
            if(mouseOver(mx, my, 210, 350, 200 ,64)){
                System.exit(0);
            }
        
        
        //back button for Help
            if(game.gameState == STATE.Help) {
                 if(mouseOver(mx, my, 210, 350, 200, 64)) {
                    game.gameState = STATE.Menu;
                     return;
                   }
            }
            
                //back button for Help
            if(game.gameState == STATE.Help) {
                 if(mouseOver(mx, my, 210, 350, 200, 64)) {
                    game.gameState = STATE.Menu;
                hud.setLevel(1);
                hud.setScore(0);
                handler.addObject(new Player(Game.WIDTH/2-32, Game.HEIGHT/2-32, ID.Player, handler));
                handler.clearEnemys();
                handler.addObject(new BasicEnemy(r.nextInt(Game.WIDTH - 50), r.nextInt(Game.HEIGHT - 50), ID.BasicEnemy, handler));
            }
        }        
        
    }
    
    public void mouseReleased(MouseEvent e){
        
    }
    
    private boolean mouseOver(int mx, int my, int x, int y, int width, int height){
        if(mx > x && mx < x + width){
            if(my > y && my < y + height){
                return true;
            }else return false;
        }else return false;
    }
    
    
    public void tick(){
        
    }
    
    public void render (Graphics g){
        if(game.gameState == STATE.Menu){
        Font fnt = new Font("arial", 1, 50); 
        Font fnt2 = new Font("arial", 1, 40);
        
        g.setFont(fnt);
        g.setColor(Color.white);
        g.drawString("Wave", 250, 50);
        
        g.setFont(fnt2);
        g.drawRect(210, 150, 200, 64);
        g.drawString("Play", 270, 190);
        
        g.drawRect(210, 250, 200, 64);
        g.drawString("Help", 270, 290);
        
        g.drawRect(210, 350, 200, 64);
        g.drawString("Quit", 271, 390);
    }else if(game.gameState == STATE.Help){
        
        Font fnt = new Font("arial", 1, 50); 
        Font fnt2 = new Font("arial", 1, 40);
        Font fnt3 = new Font("arial", 1, 20);
        
        g.setFont(fnt);
        g.setColor(Color.white);
        g.drawString("Help", 250, 50);
        
        g.setFont(fnt3);
        g.drawString("Use WASD keys to move player and dodge enemies", 80, 230);
        
        g.setFont(fnt2);
        g.drawRect(210, 350, 200, 64);
        g.drawString("Back", 255, 395);
        
    }else if(game.gameState == STATE.End){
        Font fnt = new Font("arial", 1, 50); 
        Font fnt2 = new Font("arial", 1, 40);
        Font fnt3 = new Font("arial", 1, 20);
        
        g.setFont(fnt);
        g.setColor(Color.white);
        g.drawString("Game Over", 180, 50);
        
        g.setFont(fnt3);
        g.drawString("At least you tried: " + hud.getScore(), 80, 230);
        
        g.setFont(fnt2);
        g.drawRect(210, 350, 200, 64);
        g.drawString("Try Again", 225, 395);
    }
}
}

Prepáčte ak som v tomto vlákne niečo pokazil alebo zle napísal. Ale ešte sa v tomto neviem celkom orientovať. Keď tak ďakujem každému za pomoc :).

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý