GammelJan 6 years ago
parent 2acc4c4b14
commit b329934dfd

@ -336,6 +336,18 @@ public class Controller extends ApplicationAdapter implements InputProcessor{
isPaused = true;
entityMovement.stop();
gs.end();
GAME_WORLD_WIDTH = 1600;
GAME_WORLD_HEIGHT = 900;
camera = null;
viewport = null;
camera = new OrthographicCamera();
camera.update();
viewport = new FitViewport(GAME_WORLD_WIDTH, GAME_WORLD_HEIGHT, camera);
viewport.update(Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
viewport.apply();
camera.position.set(GAME_WORLD_WIDTH / 2, GAME_WORLD_HEIGHT / 2, 0);
camera.update();
batch.setProjectionMatrix(camera.combined);
gs = null;
hc = null;
es = new EndScreen(kills);
@ -930,7 +942,7 @@ public class Controller extends ApplicationAdapter implements InputProcessor{
mm.cleanUp();
mm = null;
GAME_WORLD_WIDTH = 700;
GAME_WORLD_HEIGHT = 380;
GAME_WORLD_HEIGHT = 394;
camera = null;
viewport = null;
camera = new OrthographicCamera();
@ -1013,80 +1025,82 @@ public class Controller extends ApplicationAdapter implements InputProcessor{
}
if(gs != null){
if(!d.getPlayer().isToDelete()){
switch(gs.click(screenX, screenY)){ // -1: nix, 0: left, 1: up, 2: right, 3: down, 4: attackLeft, 5: attackUp, 6: attackRight, 7: attackDown
case 0:
if(!d.getPlayer().isToDelete()) {
ArrayList<Integer> clicked = gs.click(screenX,screenY);
for (Integer i : clicked) {
switch (i) { // -1: nix, 0: left, 1: up, 2: right, 3: down, 4: attackLeft, 5: attackUp, 6: attackRight, 7: attackDown
case 0:
d.getPlayer().setMovementX(-d.getPlayer().getMovementSpeed());
break;
case 1:
break;
case 1:
d.getPlayer().setMovementY(d.getPlayer().getMovementSpeed());
break;
case 2:
break;
case 2:
d.getPlayer().setMovementX(d.getPlayer().getMovementSpeed());
break;
case 3:
break;
case 3:
d.getPlayer().setMovementY(-d.getPlayer().getMovementSpeed());
break;
case 4:
if(!gs.getIsLoading() && !d.getPlayer().isToDelete()){
Entity lol = d.getPlayer().shoot((int) d.getPlayer().getxPos() - 1, (int) d.getPlayer().getyPos());
for(int k = 5; k < d.getCurrentEntities().length; k++){
if(d.getCurrentEntities()[k] == null && gs.player.getSecondaryAttackState() != 1){
d.getCurrentEntities()[k] = lol;
gs.generateNewEntitySprite(lol, k);
gs.player.startSecondaryAttack();
break;
break;
case 4:
if (!gs.getIsLoading() && !d.getPlayer().isToDelete()) {
Entity lol = d.getPlayer().shoot((int) d.getPlayer().getxPos() - 1, (int) d.getPlayer().getyPos());
for (int k = 5; k < d.getCurrentEntities().length; k++) {
if (d.getCurrentEntities()[k] == null && gs.player.getSecondaryAttackState() != 1) {
d.getCurrentEntities()[k] = lol;
gs.generateNewEntitySprite(lol, k);
gs.player.startSecondaryAttack();
break;
}
}
}
}
break;
case 5:
if(!gs.getIsLoading() && !d.getPlayer().isToDelete()){
Entity lol = d.getPlayer().shoot((int) d.getPlayer().getxPos(), (int) d.getPlayer().getyPos() + 1);
for(int k = 5; k < d.getCurrentEntities().length; k++){
if(d.getCurrentEntities()[k] == null && gs.player.getSecondaryAttackState() != 1){
d.getCurrentEntities()[k] = lol;
gs.generateNewEntitySprite(lol, k);
gs.player.startSecondaryAttack();
break;
break;
case 5:
if (!gs.getIsLoading() && !d.getPlayer().isToDelete()) {
Entity lol = d.getPlayer().shoot((int) d.getPlayer().getxPos(), (int) d.getPlayer().getyPos() + 1);
for (int k = 5; k < d.getCurrentEntities().length; k++) {
if (d.getCurrentEntities()[k] == null && gs.player.getSecondaryAttackState() != 1) {
d.getCurrentEntities()[k] = lol;
gs.generateNewEntitySprite(lol, k);
gs.player.startSecondaryAttack();
break;
}
}
}
}
break;
case 6:
if(!gs.getIsLoading() && !d.getPlayer().isToDelete()){
Entity lol = d.getPlayer().shoot((int) d.getPlayer().getxPos() + 1, (int) d.getPlayer().getyPos());
for(int k = 5; k < d.getCurrentEntities().length; k++){
if(d.getCurrentEntities()[k] == null && gs.player.getSecondaryAttackState() != 1){
d.getCurrentEntities()[k] = lol;
gs.generateNewEntitySprite(lol, k);
gs.player.startSecondaryAttack();
break;
break;
case 6:
if (!gs.getIsLoading() && !d.getPlayer().isToDelete()) {
Entity lol = d.getPlayer().shoot((int) d.getPlayer().getxPos() + 1, (int) d.getPlayer().getyPos());
for (int k = 5; k < d.getCurrentEntities().length; k++) {
if (d.getCurrentEntities()[k] == null && gs.player.getSecondaryAttackState() != 1) {
d.getCurrentEntities()[k] = lol;
gs.generateNewEntitySprite(lol, k);
gs.player.startSecondaryAttack();
break;
}
}
}
}
break;
case 7:
if(!gs.getIsLoading() && !d.getPlayer().isToDelete()){
Entity lol = d.getPlayer().shoot((int) d.getPlayer().getxPos(), (int) d.getPlayer().getyPos() - 1);
for(int k = 5; k < d.getCurrentEntities().length; k++){
if(d.getCurrentEntities()[k] == null && gs.player.getSecondaryAttackState() != 1){
d.getCurrentEntities()[k] = lol;
gs.generateNewEntitySprite(lol, k);
gs.player.startSecondaryAttack();
break;
break;
case 7:
if (!gs.getIsLoading() && !d.getPlayer().isToDelete()) {
Entity lol = d.getPlayer().shoot((int) d.getPlayer().getxPos(), (int) d.getPlayer().getyPos() - 1);
for (int k = 5; k < d.getCurrentEntities().length; k++) {
if (d.getCurrentEntities()[k] == null && gs.player.getSecondaryAttackState() != 1) {
d.getCurrentEntities()[k] = lol;
gs.generateNewEntitySprite(lol, k);
gs.player.startSecondaryAttack();
break;
}
}
}
}
break;
break;
}
}
}
}
return true;
}
@ -1098,7 +1112,7 @@ public class Controller extends ApplicationAdapter implements InputProcessor{
if(ps != null){
return ps.click(x,y);
}
if(mm != null && mm.getHidden() == false){
if(mm != null && !mm.getHidden()){
return mm.click(x, y);
}
if(ss != null){
@ -1107,9 +1121,6 @@ public class Controller extends ApplicationAdapter implements InputProcessor{
if(cs != null){
return cs.click(x, y);
}
if(gs != null && isPaused == true){
return gs.click(x,y);
}
return -1;
}
@ -1117,9 +1128,7 @@ public class Controller extends ApplicationAdapter implements InputProcessor{
@Override
public boolean touchUp(int screenX, int screenY, int i2, int i3) {
if(gs != null){
if(gs.click(screenX,screenY) == 0 || gs.click(screenX,screenY) == 1 || gs.click(screenX,screenY) == 2 || gs.click(screenX,screenY) == 3){
d.getPlayer().setMovementX(0);
d.getPlayer().setMovementY(0);
if(gs.click(screenX,screenY).contains(0) || gs.click(screenX,screenY).contains(1)|| gs.click(screenX,screenY).contains(2)|| gs.click(screenX,screenY).contains(3)){
d.getPlayer().setMovementX(0);
d.getPlayer().setMovementY(0);
}
@ -1129,90 +1138,87 @@ public class Controller extends ApplicationAdapter implements InputProcessor{
@Override
public boolean touchDragged(int screenX, int screenY, int i2) {
//d.getPlayer().setMovementX(0);
//d.getPlayer().setMovementY(0);
//d.getPlayer().setMovementX(0);
//d.getPlayer().setMovementY(0);
switch(click(screenX, screenY)){ // -1: nix, 0: left, 1: up, 2: right, 3: down, 4: attackLeft, 5: attackUp, 6: attackRight, 7: attackDown
case 0:
if(!d.getPlayer().isToDelete()){
d.getPlayer().setMovementX(-d.getPlayer().getMovementSpeed());
}
break;
case 1:
if(!d.getPlayer().isToDelete()){
d.getPlayer().setMovementX(d.getPlayer().getMovementSpeed());
}
break;
case 2:
if(!d.getPlayer().isToDelete()){
d.getPlayer().setMovementY(-d.getPlayer().getMovementSpeed());
}
break;
case 3:
if(!d.getPlayer().isToDelete()){
d.getPlayer().setMovementY(d.getPlayer().getMovementSpeed());
}
break;
case 4:
if(!gs.getIsLoading() && !d.getPlayer().isToDelete()){
Entity lol = d.getPlayer().shoot((int) d.getPlayer().getxPos() - 1, (int) d.getPlayer().getyPos());
for(int k = 5; k < d.getCurrentEntities().length; k++){
if(d.getCurrentEntities()[k] == null && gs.player.getSecondaryAttackState() != 1){
d.getCurrentEntities()[k] = lol;
gs.generateNewEntitySprite(lol, k);
gs.player.startSecondaryAttack();
d.getPlayer().setMovementX(0);
d.getPlayer().setMovementY(0);
if(gs != null){
if(!d.getPlayer().isToDelete()) {
ArrayList<Integer> clicked = gs.click(screenX,screenY);
for (Integer i : clicked) {
switch (i) { // -1: nix, 0: left, 1: up, 2: right, 3: down, 4: attackLeft, 5: attackUp, 6: attackRight, 7: attackDown
case 0:
d.getPlayer().setMovementX(-d.getPlayer().getMovementSpeed());
break;
case 1:
d.getPlayer().setMovementY(d.getPlayer().getMovementSpeed());
break;
case 2:
d.getPlayer().setMovementX(d.getPlayer().getMovementSpeed());
break;
case 3:
d.getPlayer().setMovementY(-d.getPlayer().getMovementSpeed());
break;
case 4:
if (!gs.getIsLoading() && !d.getPlayer().isToDelete()) {
Entity lol = d.getPlayer().shoot((int) d.getPlayer().getxPos() - 1, (int) d.getPlayer().getyPos());
for (int k = 5; k < d.getCurrentEntities().length; k++) {
if (d.getCurrentEntities()[k] == null && gs.player.getSecondaryAttackState() != 1) {
d.getCurrentEntities()[k] = lol;
gs.generateNewEntitySprite(lol, k);
gs.player.startSecondaryAttack();
break;
}
}
}
break;
}
}
}
break;
case 5:
if(!gs.getIsLoading() && !d.getPlayer().isToDelete()){
Entity lol = d.getPlayer().shoot((int) d.getPlayer().getxPos(), (int) d.getPlayer().getyPos() + 1);
for(int k = 5; k < d.getCurrentEntities().length; k++){
if(d.getCurrentEntities()[k] == null && gs.player.getSecondaryAttackState() != 1){
d.getCurrentEntities()[k] = lol;
gs.generateNewEntitySprite(lol, k);
gs.player.startSecondaryAttack();
case 5:
if (!gs.getIsLoading() && !d.getPlayer().isToDelete()) {
Entity lol = d.getPlayer().shoot((int) d.getPlayer().getxPos(), (int) d.getPlayer().getyPos() + 1);
for (int k = 5; k < d.getCurrentEntities().length; k++) {
if (d.getCurrentEntities()[k] == null && gs.player.getSecondaryAttackState() != 1) {
d.getCurrentEntities()[k] = lol;
gs.generateNewEntitySprite(lol, k);
gs.player.startSecondaryAttack();
break;
}
}
}
break;
}
}
}
break;
case 6:
if(!gs.getIsLoading() && !d.getPlayer().isToDelete()){
Entity lol = d.getPlayer().shoot((int) d.getPlayer().getxPos() + 1, (int) d.getPlayer().getyPos());
for(int k = 5; k < d.getCurrentEntities().length; k++){
if(d.getCurrentEntities()[k] == null && gs.player.getSecondaryAttackState() != 1){
d.getCurrentEntities()[k] = lol;
gs.generateNewEntitySprite(lol, k);
gs.player.startSecondaryAttack();
case 6:
if (!gs.getIsLoading() && !d.getPlayer().isToDelete()) {
Entity lol = d.getPlayer().shoot((int) d.getPlayer().getxPos() + 1, (int) d.getPlayer().getyPos());
for (int k = 5; k < d.getCurrentEntities().length; k++) {
if (d.getCurrentEntities()[k] == null && gs.player.getSecondaryAttackState() != 1) {
d.getCurrentEntities()[k] = lol;
gs.generateNewEntitySprite(lol, k);
gs.player.startSecondaryAttack();
break;
}
}
}
break;
}
}
}
break;
case 7:
if(!gs.getIsLoading() && !d.getPlayer().isToDelete()){
Entity lol = d.getPlayer().shoot((int) d.getPlayer().getxPos(), (int) d.getPlayer().getyPos() - 1);
for(int k = 5; k < d.getCurrentEntities().length; k++){
if(d.getCurrentEntities()[k] == null && gs.player.getSecondaryAttackState() != 1){
d.getCurrentEntities()[k] = lol;
gs.generateNewEntitySprite(lol, k);
gs.player.startSecondaryAttack();
case 7:
if (!gs.getIsLoading() && !d.getPlayer().isToDelete()) {
Entity lol = d.getPlayer().shoot((int) d.getPlayer().getxPos(), (int) d.getPlayer().getyPos() - 1);
for (int k = 5; k < d.getCurrentEntities().length; k++) {
if (d.getCurrentEntities()[k] == null && gs.player.getSecondaryAttackState() != 1) {
d.getCurrentEntities()[k] = lol;
gs.generateNewEntitySprite(lol, k);
gs.player.startSecondaryAttack();
break;
}
}
}
break;
}
}
}
break;
}
}
return false;
return true;
}
@Override
@ -1253,7 +1259,7 @@ public class Controller extends ApplicationAdapter implements InputProcessor{
}
public void resume(){
GAME_WORLD_WIDTH = 700;
GAME_WORLD_HEIGHT = 380;
GAME_WORLD_HEIGHT = 394;
camera = null;
viewport = null;
camera = new OrthographicCamera();

@ -13,6 +13,7 @@ import com.badlogic.gdx.graphics.glutils.ShapeRenderer;
import com.badlogic.gdx.maps.tiled.TiledMap;
import com.badlogic.gdx.maps.tiled.TiledMapRenderer;
import com.badlogic.gdx.maps.tiled.renderers.OrthogonalTiledMapRenderer;
import com.badlogic.gdx.math.Circle;
import com.badlogic.gdx.math.Intersector;
import com.badlogic.gdx.math.Rectangle;
import com.badlogic.gdx.utils.Timer;
@ -289,16 +290,16 @@ public class GameScreen {
batch.end();
// BUTTON HITBOXES
/*
ShapeRenderer lol = new ShapeRenderer();
lol.setProjectionMatrix(camera.combined);
lol.begin(ShapeRenderer.ShapeType.Filled);
for(Button button : controls){
lol.rect(button.getxPos(), button.getyPos(), button.getWidth(), button.getHeight());
}
lol.circle(mouseX,mouseY,5);
lol.circle(mouseX,mouseY,15);
lol.end();
*/
}
public void generateEntitySprites(Entity[] e){
@ -548,19 +549,18 @@ public class GameScreen {
}
}
}
public int click(int x, int y){
public ArrayList<Integer> click(int x, int y){
x = (int)(((float)x) / (float)Gdx.graphics.getWidth() * 700f) -170;
y = 380- (int)(((float)y) / (float)Gdx.graphics.getHeight() * 380f)+ 25;
mouseX = x;
mouseY = y;
System.out.println("X: "+x+"| Y: "+y);
Rectangle mouse = new Rectangle(x,y,1,1);
ArrayList<Integer> clicks = new ArrayList();
Circle mouse = new Circle(x,y,20);
for(Button button : controls){
if(Intersector.overlaps(mouse, button.getSprite().getBoundingRectangle())){
System.out.println(button.getId());
return button.getId();
clicks.add(button.getId());
}
}
return -1;
return clicks;
}
}

Loading…
Cancel
Save