mirror of
https://github.com/jokerx3/HeatUp
synced 2026-07-27 12:49:45 +02:00
Noch mehr Anpassungen
This commit is contained in:
@@ -13,7 +13,7 @@ import de.heatup.ui.actionPanel.ActionWatcher;
|
||||
import de.heatup.ui.actionPanel.HardewareManipulate;
|
||||
|
||||
public class KeyBindings extends KeyAdapter {
|
||||
|
||||
final private static int progressBarTimer = 7;
|
||||
private boolean left = false;
|
||||
private boolean right = false;
|
||||
private boolean up = false;
|
||||
@@ -45,6 +45,9 @@ public class KeyBindings extends KeyAdapter {
|
||||
case KeyEvent.VK_ESCAPE:
|
||||
esc = false;
|
||||
break;
|
||||
case KeyEvent.VK_A:
|
||||
key = false;
|
||||
break;
|
||||
case KeyEvent.VK_Q:
|
||||
key = false;
|
||||
break;
|
||||
@@ -80,22 +83,22 @@ public class KeyBindings extends KeyAdapter {
|
||||
esc = true;
|
||||
break;
|
||||
case KeyEvent.VK_A:
|
||||
if(MapGrid.getGridCell(GameLoopD.player01.getGridLocation().x, GameLoopD.player01.getGridLocation().y).isTrigger()
|
||||
&& !HardewareManipulate.getHardware(MapGrid.getGridCell(GameLoopD.player01.getGridLocation().x, GameLoopD.player01.getGridLocation().y).getCorrespondingHardwareToTrigger())){
|
||||
if(((MapGrid.getGridCell(GameLoopD.player01.getGridLocation().x, GameLoopD.player01.getGridLocation().y).isTrigger()
|
||||
&& !HardewareManipulate.getHardware(MapGrid.getGridCell(GameLoopD.player01.getGridLocation().x, GameLoopD.player01.getGridLocation().y).getCorrespondingHardwareToTrigger()))&&!key)&&ActionControl.getKeyA()){
|
||||
ActionWatcher.setAction(true);
|
||||
key=true;
|
||||
}
|
||||
break;
|
||||
case KeyEvent.VK_Q:
|
||||
if(ActionWatcher.getAction()&&!key){
|
||||
if(ActionControl.getOption()==1){
|
||||
if(ActionControl.getSmash()=='Q'){
|
||||
ActionControl.getBar().setValue(ActionControl.getBar().getValue()+7);
|
||||
ActionControl.setProgressBarTimer(progressBarTimer);
|
||||
}
|
||||
}else if(!ActionControl.getKeySequenceFail()){
|
||||
if(ActionControl.getSequence()[ActionControl.getCount()]=='Q'){
|
||||
ActionControl.incCount();
|
||||
}else{
|
||||
ActionControl.resetCount();
|
||||
ActionControl.setKeySequenceFail();
|
||||
}
|
||||
|
||||
@@ -107,13 +110,12 @@ public class KeyBindings extends KeyAdapter {
|
||||
if(ActionWatcher.getAction()&&!key){
|
||||
if(ActionControl.getOption()==1){
|
||||
if(ActionControl.getSmash()=='W'){;
|
||||
ActionControl.getBar().setValue(ActionControl.getBar().getValue()+7);
|
||||
ActionControl.setProgressBarTimer(progressBarTimer);
|
||||
}
|
||||
}else if(!ActionControl.getKeySequenceFail()){
|
||||
if(ActionControl.getSequence()[ActionControl.getCount()]=='W'){
|
||||
ActionControl.incCount();
|
||||
}else{
|
||||
ActionControl.resetCount();
|
||||
ActionControl.setKeySequenceFail();
|
||||
}
|
||||
}
|
||||
@@ -124,13 +126,12 @@ public class KeyBindings extends KeyAdapter {
|
||||
if(ActionWatcher.getAction()&&!key){
|
||||
if(ActionControl.getOption()==1){
|
||||
if(ActionControl.getSmash()=='E'){
|
||||
ActionControl.getBar().setValue(ActionControl.getBar().getValue()+7);
|
||||
ActionControl.setProgressBarTimer(progressBarTimer);
|
||||
}
|
||||
}else if(!ActionControl.getKeySequenceFail()){
|
||||
if(ActionControl.getSequence()[ActionControl.getCount()]=='E'){
|
||||
ActionControl.incCount();
|
||||
}else{
|
||||
ActionControl.resetCount();
|
||||
ActionControl.setKeySequenceFail();
|
||||
}
|
||||
}
|
||||
@@ -141,13 +142,12 @@ public class KeyBindings extends KeyAdapter {
|
||||
if(ActionWatcher.getAction()&&!key){
|
||||
if(ActionControl.getOption()==1){
|
||||
if(ActionControl.getSmash()=='R'){
|
||||
ActionControl.getBar().setValue(ActionControl.getBar().getValue()+7);
|
||||
ActionControl.setProgressBarTimer(progressBarTimer);
|
||||
}
|
||||
}else if(!ActionControl.getKeySequenceFail()){
|
||||
if(ActionControl.getSequence()[ActionControl.getCount()]=='R'){
|
||||
ActionControl.incCount();
|
||||
}else{
|
||||
ActionControl.resetCount();
|
||||
ActionControl.setKeySequenceFail();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,18 +5,14 @@ import java.awt.Color;
|
||||
import java.awt.Font;
|
||||
|
||||
import javax.swing.*;
|
||||
import javax.swing.border.LineBorder;
|
||||
|
||||
import de.heatup.mapengine.MapGrid;
|
||||
import de.heatup.testing.GameLoopD;
|
||||
import de.heatup.ui.StatusPanelAdder;
|
||||
|
||||
public class ActionControl{
|
||||
private static int count = 0;
|
||||
private static long beforTime = 0;
|
||||
private static boolean time = true;
|
||||
private static boolean keySequenceFail=false;
|
||||
private static boolean tickTimer =false;
|
||||
private static int option=0;
|
||||
private static char chr;
|
||||
private static char arr[];
|
||||
@@ -25,6 +21,7 @@ public class ActionControl{
|
||||
private static JLabel actionLabel;
|
||||
private static JLabel bigActionLabel;
|
||||
private static int tmpCount=0;
|
||||
private static boolean keyA=true;
|
||||
|
||||
public static void setPanel(JPanel newPanel){
|
||||
panel = newPanel;
|
||||
@@ -45,81 +42,57 @@ public class ActionControl{
|
||||
resetActionPanel();
|
||||
}
|
||||
public static void setAction(int rd){
|
||||
setKeyA();
|
||||
if(rd==1){
|
||||
option=1;
|
||||
setSmash(new Smashing().getKey());
|
||||
String str= "Bitte die Taste "+getSmash()+" so schnell wie moeglich druecken";
|
||||
actionLabel.setText(str);
|
||||
setProgressBar(0);
|
||||
beforTime=System.nanoTime();
|
||||
}else{
|
||||
option=2;
|
||||
setSequence(new Keysequence().getKeySequence());
|
||||
String str="Bitte diese Tastenkombination so schnell wie moeglich eingeben";
|
||||
actionLabel.setText(str);
|
||||
setProgressBar(100);
|
||||
}
|
||||
}
|
||||
public static void tick(){
|
||||
if(ActionWatcher.getAction()){
|
||||
//Smashing-Tick
|
||||
if(option==1){
|
||||
setTickTimer();
|
||||
if(bar.getValue()<100){
|
||||
if(time){
|
||||
setProgressBar(0);
|
||||
time = false;
|
||||
beforTime=System.nanoTime();
|
||||
}
|
||||
}else{
|
||||
tmpCount=0;
|
||||
bar.setVisible(false);
|
||||
ActionWatcher.setAction(false);
|
||||
if(System.nanoTime()-beforTime>8_000_000_000L){
|
||||
actionLabel.setText("Zu langsam! Fehlgeschlagen!!!");
|
||||
}else{
|
||||
actionLabel.setText("Manipulation erfolgreich!");
|
||||
HardewareManipulate.setHardware(MapGrid.getGridCell(GameLoopD.player01.getGridLocation().x, GameLoopD.player01.getGridLocation().y).getCorrespondingHardwareToTrigger());
|
||||
}
|
||||
}
|
||||
//KeySequence-Tick
|
||||
}else{
|
||||
if(!getTickTimer()){
|
||||
setTickTimer();
|
||||
setProgressBar(100);
|
||||
if(option==1){ //Smashing-Tick
|
||||
if(bar.getValue()>=100){
|
||||
setAchiv(8_000_000_000L, System.nanoTime()-beforTime);
|
||||
}
|
||||
}else{ //KeySequence-Tick
|
||||
if(!getKeySequenceFail()){
|
||||
if(count<arr.length&&bar.getValue()>0){
|
||||
bigActionLabel.setVisible(true);
|
||||
if(time){
|
||||
time = false;
|
||||
beforTime=System.nanoTime();
|
||||
}
|
||||
String str="";
|
||||
for(int i=count;i<arr.length;i++){
|
||||
str=str+getSequence()[i]+" ";
|
||||
}
|
||||
bigActionLabel.setText(str);
|
||||
}else{
|
||||
tmpCount=0;
|
||||
resetTickTimer();
|
||||
bigActionLabel.setVisible(false);
|
||||
ActionWatcher.setAction(false);
|
||||
if(System.nanoTime()-beforTime>7_000_000_000L || bar.getValue()<=0){
|
||||
actionLabel.setText("Zu langsam! Fehlgeschlagen!!!");
|
||||
}else{
|
||||
actionLabel.setText("Manipulation erfolgreich!");
|
||||
HardewareManipulate.setHardware(MapGrid.getGridCell(GameLoopD.player01.getGridLocation().x, GameLoopD.player01.getGridLocation().y).getCorrespondingHardwareToTrigger());
|
||||
}
|
||||
setAchiv(bar.getValue(),0);
|
||||
}
|
||||
}else{
|
||||
resetTickTimer();
|
||||
resetProgressBar();
|
||||
bigActionLabel.setVisible(false);
|
||||
ActionWatcher.setAction(false);
|
||||
actionLabel.setText("Falsche Taste! Fehlgeschlagen!!!");
|
||||
setAchiv();
|
||||
}
|
||||
}
|
||||
tickProgressBar(); //ProgressBar-Tick
|
||||
}
|
||||
}
|
||||
public static void tickTimer(){
|
||||
public static boolean getKeyA(){
|
||||
return keyA;
|
||||
}
|
||||
private static void setKeyA(){
|
||||
keyA=false;
|
||||
}
|
||||
public static void resetKeyA(){
|
||||
keyA=true;
|
||||
}
|
||||
private static void tickProgressBar(){
|
||||
tmpCount++;
|
||||
if(option==1){
|
||||
if(bar.getValue()>1){
|
||||
@@ -130,14 +103,21 @@ public class ActionControl{
|
||||
if(tmpCount%3==0)bar.setValue(bar.getValue()-1);
|
||||
}
|
||||
}
|
||||
public static boolean getTickTimer(){
|
||||
return tickTimer;
|
||||
private static void setAchiv(double value1, double value2){
|
||||
ActionWatcher.setAction(false);
|
||||
if(value1<=value2){
|
||||
resetActionPanel();
|
||||
actionLabel.setText("Zu langsam! Fehlgeschlagen!!!");
|
||||
}else{
|
||||
resetActionPanel();
|
||||
actionLabel.setText("Manipulation erfolgreich!");
|
||||
HardewareManipulate.setHardware(MapGrid.getGridCell(GameLoopD.player01.getGridLocation().x, GameLoopD.player01.getGridLocation().y).getCorrespondingHardwareToTrigger());
|
||||
}
|
||||
}
|
||||
public static void resetTickTimer(){
|
||||
tickTimer=false;
|
||||
}
|
||||
private static void setTickTimer(){
|
||||
tickTimer=true;
|
||||
private static void setAchiv(){
|
||||
ActionWatcher.setAction(false);
|
||||
resetActionPanel();
|
||||
actionLabel.setText("Falsche Taste! Fehlgeschlagen!!!");
|
||||
}
|
||||
public static int getOption(){
|
||||
return option;
|
||||
@@ -155,19 +135,20 @@ public class ActionControl{
|
||||
return arr;
|
||||
}
|
||||
public static void resetActionPanel(){
|
||||
bigActionLabel.setText("");
|
||||
actionLabel.setText("");
|
||||
resetBigActionLabel();
|
||||
resetActionLabel();
|
||||
resetProgressBar();
|
||||
resetCount();
|
||||
resetTime();
|
||||
resetBeforTime();
|
||||
resetKeySequenceFail();
|
||||
resetTickTimer();
|
||||
}
|
||||
public static void resetTime(){
|
||||
time=true;
|
||||
private static void resetActionLabel(){
|
||||
actionLabel.setText("");
|
||||
}
|
||||
public static void resetBeforTime(){
|
||||
private static void resetBigActionLabel(){
|
||||
bigActionLabel.setText("");
|
||||
}
|
||||
private static void resetBeforTime(){
|
||||
beforTime=0;
|
||||
}
|
||||
public static int getCount(){
|
||||
@@ -176,7 +157,7 @@ public class ActionControl{
|
||||
public static void incCount(){
|
||||
count++;
|
||||
}
|
||||
public static void resetCount(){
|
||||
private static void resetCount(){
|
||||
tmpCount=0;
|
||||
count=0;
|
||||
}
|
||||
@@ -186,7 +167,7 @@ public class ActionControl{
|
||||
public static void setKeySequenceFail(){
|
||||
keySequenceFail=true;
|
||||
}
|
||||
public static void resetKeySequenceFail(){
|
||||
private static void resetKeySequenceFail(){
|
||||
keySequenceFail=false;
|
||||
}
|
||||
public static void setTextforA(){
|
||||
@@ -203,7 +184,7 @@ public class ActionControl{
|
||||
bar.setValue(0);
|
||||
bar.setVisible(false);
|
||||
}
|
||||
public static JProgressBar getBar(){
|
||||
return bar;
|
||||
public static void setProgressBarTimer(int value){
|
||||
bar.setValue(bar.getValue()+value);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,15 +1,8 @@
|
||||
package de.heatup.ui.actionPanel;
|
||||
|
||||
import java.awt.Component;
|
||||
import java.awt.event.KeyAdapter;
|
||||
import java.awt.event.KeyEvent;
|
||||
|
||||
import java.util.Random;
|
||||
|
||||
import javax.swing.JLabel;
|
||||
|
||||
import de.heatup.mapengine.MapEngine;
|
||||
import de.heatup.mapengine.MapGrid;
|
||||
import de.heatup.mapengine.MapGridCell;
|
||||
import de.heatup.testing.GameLoopD;
|
||||
|
||||
public class ActionWatcher{
|
||||
@@ -47,6 +40,7 @@ public class ActionWatcher{
|
||||
//Entfernt jeglichen Text wenn man sich von dem Hardwarestück entfernt, nachdem Aktion bereits eingeleitet wurde, und setzt Booleans/Counter wieder auf die Ausgangssituation
|
||||
if(!MapGrid.getGridCell(GameLoopD.player01.getGridLocation().x, GameLoopD.player01.getGridLocation().y).isTrigger() && setAction){
|
||||
ActionControl.resetActionPanel();
|
||||
ActionControl.resetKeyA();
|
||||
infoText=false;
|
||||
setAction=false;
|
||||
action=false;
|
||||
|
||||
Reference in New Issue
Block a user