Auf Thema antworten

Ich will ein kleines Java 2D Game erstellen. Im Menu State kann man mit den Pfeiltasten Oben/Unten durch die Optionen (String[] options) switchen.Anschließend wird die gewählte option grün angemalt. Meine ausgewählte Option vom Array erfahre ich mit : currentSelected aber dies setzt sich irgendwie die ganze Zeit zurück auf 0.

[code]package cleancode.learning.game.programming;


import java.awt.Color;

import java.awt.Font;

import java.awt.Graphics;

import java.awt.event.KeyEvent;

import java.awt.event.KeyListener;

import java.util.List;

import java.util.ArrayList;

import java.util.Arrays;


public class MenuState extends GameState{


    String[] options = {"Start Game", "Information", "Credits"};

    public int currentSelection = 0;

  

    public MenuState(GameStateManager gsm) {

        super(gsm);

    }

  

    public void init() {}

    public void tick() {}

  

    public void draw(Graphics g) {

            g.setColor(new Color(10,200,255));

            g.fillRect(0, 0, GamePanel.WIDTH, GamePanel.HEIGHT);

            g.setFont(new Font("Arial",Font.PLAIN,40));

          

            for(int i = 0; i < options.length; i ++){

                if(currentSelection == i){

                    g.setColor(Color.GREEN);

                    }else{

                        g.setColor(Color.BLACK);

                    }

                g.drawString(options[i],GamePanel.WIDTH/2 - 100, 150 + i * 110); 

            }

    }

  

    public void keyPressed(int k) {

        if(k == KeyEvent.VK_DOWN){

            currentSelection ++;

            //System.out.println(currentSelection) ergibt 1 beim erneuten drücken immernoch 1


        }else if(k == KeyEvent.VK_UP){

            currentSelection --;

       //System.out.println(currentSelection)ergibt -1 und beim erneuten drücken immernoch -1

        }

    }


    public void keyReleased(int k) {}

[/code]


Ich brauche dringend Hilfe kann jemand diesen Fehler beheben? Danke!!



Oben