Merge branch 'jonathan'

es geht, es geht, ich will dass es geht. Wenn es geht, dann muss man nicht so lange warten
master
Jonathan Hager 6 years ago
commit 9422474268

@ -60,9 +60,9 @@ public class ThrowMath {
public Vector2 test(Projectile projectile, double g){ public Vector2 test(Projectile projectile, double g){
Vector2 lol = new Vector2(); Vector2 lol = new Vector2();
lol.x = (int) (projectile.getxPos() + projectile.getvX()); lol.x = (float) (projectile.getxPos() + projectile.getvX());
projectile.setvY(projectile.getvY() - g); projectile.setvY(projectile.getvY() - g);
lol.y = (int) (projectile.getyPos() + projectile.getvY()); lol.y = (float) (projectile.getyPos() + projectile.getvY());
return lol; return lol;
} }

@ -8,6 +8,8 @@ package model;
import com.badlogic.gdx.math.Vector2; import com.badlogic.gdx.math.Vector2;
import com.throwgame.main.ThrowMath; import com.throwgame.main.ThrowMath;
import java.util.ArrayList;
/** /**
* *
* @author Jan * @author Jan
@ -25,6 +27,9 @@ public class Level {
private double angleSpeed; private double angleSpeed;
private boolean isReleased; private boolean isReleased;
private int traceIndex;
public Vector2[] traces;
public Level(Goal goal, Projectile projectile, int xPosPivot, int yPosPivot){ public Level(Goal goal, Projectile projectile, int xPosPivot, int yPosPivot){
this.goal = goal; this.goal = goal;
this.projectile = projectile; this.projectile = projectile;
@ -37,6 +42,12 @@ public class Level {
this.yPosPivot = yPosPivot; this.yPosPivot = yPosPivot;
this.angle = 0; this.angle = 0;
this.angleSpeed = 0; this.angleSpeed = 0;
traceIndex = 0;
traces = new Vector2[50];
for(int i = 0; i < traces.length; i++){
traces[i] = new Vector2(-10, -10);
}
} }
public void projectileReleased(){ public void projectileReleased(){
@ -44,9 +55,9 @@ public class Level {
double v0 = angleSpeed * RADIUS; double v0 = angleSpeed * RADIUS;
double tempAngle = angle - Math.PI / 2; double tempAngle = angle - Math.PI / 2;
double vX = v0 * Math.sin(tempAngle); double vX = v0 * Math.sin(tempAngle);
this.math.initThrow(Math.PI / 2 + angle, G, v0, projectile.getyPos(), projectile.getxPos(), vX); //this.math.initThrow(/*Math.PI / 2 + angle*/tempAngle, G, v0, projectile.getyPos(), projectile.getxPos(), vX);
//projectile.setvX(v0 * Math.sin(tempAngle)); projectile.setvX(v0 * Math.sin(tempAngle));
//projectile.setvY(v0 * Math.cos(tempAngle)); projectile.setvY(v0 * Math.cos(tempAngle));
} }
public void step(){ public void step(){
@ -70,14 +81,25 @@ public class Level {
} }
private void stepAir(){ private void stepAir(){
Vector2 newPos = math.calculateY(projectile.getxPos()); /*Vector2 newPos = math.calculateY(projectile.getxPos());
projectile.setxPos(newPos.x); projectile.setxPos(newPos.x);
projectile.setyPos(newPos.y); projectile.setyPos(newPos.y);
/*Vector2 lol = math.test(projectile, G);
projectile.setxPos((int) lol.x);
projectile.setyPos((int) lol.y);
System.out.println(projectile.getxPos() + " " + projectile.getyPos());
*/ */
Vector2 lol = math.test(projectile, G);
projectile.setxPos(lol.x);
projectile.setyPos(lol.y);
changeTracePos(lol);
}
public void changeTracePos(Vector2 newPos){
if(traceIndex >= traces.length){
traceIndex = 0;
}
traces[traceIndex] = newPos;
traceIndex++;
} }
public void reset(){ public void reset(){

@ -8,6 +8,7 @@ package view;
import com.badlogic.gdx.graphics.Color; import com.badlogic.gdx.graphics.Color;
import com.badlogic.gdx.graphics.g2d.SpriteBatch; import com.badlogic.gdx.graphics.g2d.SpriteBatch;
import com.badlogic.gdx.graphics.glutils.ShapeRenderer; import com.badlogic.gdx.graphics.glutils.ShapeRenderer;
import com.badlogic.gdx.math.Vector2;
import model.Goal; import model.Goal;
import model.Level; import model.Level;
@ -54,6 +55,16 @@ public class Gamescreen{
shapeRenderer.begin(ShapeRenderer.ShapeType.Filled); shapeRenderer.begin(ShapeRenderer.ShapeType.Filled);
shapeRenderer.setColor(Color.BLACK); shapeRenderer.setColor(Color.BLACK);
if(level.released()) {
for (Vector2 trace : level.traces) {
shapeRenderer.rect(trace.x, trace.y, 3, 3);
}
}
else{
shapeRenderer.rectLine((float) level.getPivotX(), (float) level.getPivotY(), (float) level.getProjectile().getxPos(), (float) level.getProjectile().getyPos(), 3);
}
shapeRenderer.rect(g.getxPos(), g.getyPos(), 0.2f * g.getSizeX(), g.getSizeY()); shapeRenderer.rect(g.getxPos(), g.getyPos(), 0.2f * g.getSizeX(), g.getSizeY());
shapeRenderer.rect(g.getxPos() + 0.2f * g.getSizeX(), g.getyPos(), 0.6f * g.getSizeX(),0.2f * g.getSizeY()); shapeRenderer.rect(g.getxPos() + 0.2f * g.getSizeX(), g.getyPos(), 0.6f * g.getSizeX(),0.2f * g.getSizeY());
shapeRenderer.rect(g.getxPos() + 0.2f * g.getSizeX() + 0.6f * g.getSizeX(), g.getyPos(), 0.2f * g.getSizeX(),g.getSizeY()); shapeRenderer.rect(g.getxPos() + 0.2f * g.getSizeX() + 0.6f * g.getSizeX(), g.getyPos(), 0.2f * g.getSizeX(),g.getSizeY());

Loading…
Cancel
Save