Jan Ehehalt 6 years ago
parent 6e66f9edd3
commit 2acc4c4b14

@ -0,0 +1,20 @@
{
"version": 1,
"artifactType": {
"type": "APK",
"kind": "Directory"
},
"applicationId": "com.dungeoncrawler.control",
"variantName": "release",
"elements": [
{
"type": "SINGLE",
"filters": [],
"properties": [],
"versionCode": 1,
"versionName": "1",
"enabled": true,
"outputFile": "android-release.apk"
}
]
}

@ -10,7 +10,7 @@ buildscript {
google()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.4.1'
classpath 'com.android.tools.build:gradle:4.0.0'
}

@ -1019,13 +1019,70 @@ public class Controller extends ApplicationAdapter implements InputProcessor{
d.getPlayer().setMovementX(-d.getPlayer().getMovementSpeed());
break;
case 1:
d.getPlayer().setMovementX(d.getPlayer().getMovementSpeed());
d.getPlayer().setMovementY(d.getPlayer().getMovementSpeed());
break;
case 2:
d.getPlayer().setMovementY(-d.getPlayer().getMovementSpeed());
d.getPlayer().setMovementX(d.getPlayer().getMovementSpeed());
break;
case 3:
d.getPlayer().setMovementY(d.getPlayer().getMovementSpeed());
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 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 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;
}
}
@ -1060,7 +1117,7 @@ public class Controller extends ApplicationAdapter implements InputProcessor{
@Override
public boolean touchUp(int screenX, int screenY, int i2, int i3) {
if(gs != null){
if(click(screenX,screenY) == 0 || click(screenX,screenY) == 1 || click(screenX,screenY) == 2 || click(screenX,screenY) == 3){
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);
d.getPlayer().setMovementX(0);
@ -1072,10 +1129,10 @@ 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);
//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()){
@ -1097,6 +1154,63 @@ public class Controller extends ApplicationAdapter implements InputProcessor{
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 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 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;
}
return false;
}

@ -9,6 +9,7 @@ import com.badlogic.gdx.graphics.g2d.BitmapFont;
import com.badlogic.gdx.graphics.g2d.SpriteBatch;
import com.badlogic.gdx.graphics.g2d.Sprite;
import com.badlogic.gdx.graphics.g2d.TextureRegion;
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;
@ -18,6 +19,8 @@ import com.badlogic.gdx.utils.Timer;
import com.dungeoncrawler.model.Dungeon;
import com.dungeoncrawler.model.Entity;
import com.dungeoncrawler.model.entities.*;
import java.awt.Shape;
import java.util.ArrayList;
import java.util.Arrays;
@ -68,6 +71,8 @@ public class GameScreen {
// CONTROLS
ArrayList<Button> controls;
int mouseX;
int mouseY;
float animationSpeed = 0.1f;
@ -185,6 +190,10 @@ public class GameScreen {
controls.add(new Button("sprites/controls/arrowUp.png", hudX + 50, hudY + 100, 1));
controls.add(new Button("sprites/controls/arrowRight.png", hudX + 100, hudY + 50, 2));
controls.add(new Button("sprites/controls/arrowDown.png", hudX + 50, hudY + 0, 3));
controls.add(new Button("sprites/controls/arrowLeft.png", 550-170, 75, 4));
controls.add(new Button("sprites/controls/arrowUp.png", 600-170, 125, 5));
controls.add(new Button("sprites/controls/arrowRight.png", 650-170, 75, 6));
controls.add(new Button("sprites/controls/arrowDown.png", 600-170, 25, 7));
}
@ -278,6 +287,18 @@ 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.end();
*/
}
public void generateEntitySprites(Entity[] e){
@ -528,12 +549,15 @@ public class GameScreen {
}
}
public int click(int x, int y){
x = (int)((float)x / (float)Gdx.graphics.getWidth() * 1600f) - 160;
y = 900-(int)((float)y / Gdx.graphics.getHeight() * 900) + 25;
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);
for(Button button : controls){
if(Intersector.overlaps(mouse, button.getSprite().getBoundingRectangle())){
System.out.println(button.getId());
return button.getId();
}
}

@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-6.1.1-all.zip

Loading…
Cancel
Save