diff --git a/pom.xml b/pom.xml
index 5593d30..6a80a64 100644
--- a/pom.xml
+++ b/pom.xml
@@ -34,7 +34,7 @@
3.2.3
- natives-windows
+ natives-linux
11
diff --git a/src/gameplay/Characters/Blue/BlueBaseFrames.java b/src/gameplay/Characters/Blue/BlueBaseFrames.java
index e4d9357..24b56b8 100644
--- a/src/gameplay/Characters/Blue/BlueBaseFrames.java
+++ b/src/gameplay/Characters/Blue/BlueBaseFrames.java
@@ -39,6 +39,11 @@ public class BlueBaseFrames {
return blueStandframe1;
}
+ protected static Frame[] blueStandFrames() {
+ Frame[] sf = {generateStandFrame1(),generateStandFrame2()};
+ return sf;
+ }
+
private static Frame generateCrouchFrame1(){
Passive_HitBox bStandPHB1 = new Passive_HitBox(70,70,150,500);
Passive_throw_HitBox bStandPTHB1 = new Passive_throw_HitBox(70,400,150,100);
@@ -49,10 +54,15 @@ public class BlueBaseFrames {
pthb.add(bStandPTHB1);
Frame blueStandframe1 = new Frame(0.0,0.0,phb,new ArrayList(),pthb,new ArrayList(),
bStandPB1,true,true,true,true,true);
- blueStandframe1.setSpriteWrap(112,0,112,120);
+ blueStandframe1.setSpriteWrap(112,120,112,120);
return blueStandframe1;
}
+ protected static Frame[] blueCrouchFrames() {
+ Frame[] cF = {generateCrouchFrame1()};
+ return cF;
+ }
+
private static Frame generateNeutralJumpFrame1(){
Passive_HitBox bStandPHB1 = new Passive_HitBox(70,70,150,500);
Passive_throw_HitBox bStandPTHB1 = new Passive_throw_HitBox(70,400,150,100);
@@ -81,6 +91,17 @@ public class BlueBaseFrames {
return blueStandframe1;
}
+ protected static Frame[] blueNeutralJump() {
+ Frame[] jF = new Frame[40];
+ for(int i = 0; i < jF.length/2; i++) {
+ jF[i] = generateNeutralJumpFrame1();
+ }
+ for(int i = jF.length/2; i < jF.length; i++) {
+ jF[i] = generateNeutralJumpFrame2();
+ }
+ return jF;
+ }
+
private static Frame GenerateForwardJumpFrame1(){
Passive_HitBox bStandPHB1 = new Passive_HitBox(70,70,150,500);
Passive_throw_HitBox bStandPTHB1 = new Passive_throw_HitBox(70,400,150,100);
@@ -109,6 +130,17 @@ public class BlueBaseFrames {
return blueStandframe1;
}
+ protected static Frame[] blueForwardJump() {
+ Frame[] jF = new Frame[40];
+ for(int i = 0; i < jF.length/2; i++) {
+ jF[i] = GenerateForwardJumpFrame1();
+ }
+ for(int i = jF.length/2; i < jF.length; i++) {
+ jF[i] = GenerateForwardJumpFrame2();
+ }
+ return jF;
+ }
+
private static Frame BackJumpFrame1(){
Passive_HitBox bStandPHB1 = new Passive_HitBox(70,70,150,500);
Passive_throw_HitBox bStandPTHB1 = new Passive_throw_HitBox(70,400,150,100);
@@ -123,6 +155,17 @@ public class BlueBaseFrames {
return blueStandframe1;
}
+ protected static Frame[] blueBackJump() {
+ Frame[] jF = new Frame[40];
+ for(int i = 0; i < jF.length/2; i++) {
+ jF[i] = BackJumpFrame1();
+ }
+ for(int i = jF.length/2; i < jF.length; i++) {
+ jF[i] = BackJumpFrame2();
+ }
+ return jF;
+ }
+
private static Frame BackJumpFrame2(){
Passive_HitBox bStandPHB1 = new Passive_HitBox(70,70,150,500);
Passive_throw_HitBox bStandPTHB1 = new Passive_throw_HitBox(70,400,150,100);
@@ -137,6 +180,138 @@ public class BlueBaseFrames {
return blueStandframe1;
}
+ private static Frame walkForwardFrame1(){
+ Passive_HitBox bStandPHB1 = new Passive_HitBox(70,70,150,500);
+ Passive_throw_HitBox bStandPTHB1 = new Passive_throw_HitBox(70,400,150,100);
+ Push_HitBox bStandPB1 = new Push_HitBox(70,70,150,500);
+ ArrayList phb = new ArrayList();
+ ArrayList pthb = new ArrayList();
+ phb.add(bStandPHB1);
+ pthb.add(bStandPTHB1);
+ Frame blueStandframe1 = new Frame(0.0,8.0,phb,new ArrayList(),pthb,new ArrayList(),
+ bStandPB1,true,true,true,true,true);
+ blueStandframe1.setSpriteWrap(220,0,112,120);
+ return blueStandframe1;
+ }
+
+ private static Frame walkForwardFrame2(){
+ Passive_HitBox bStandPHB1 = new Passive_HitBox(70,70,150,500);
+ Passive_throw_HitBox bStandPTHB1 = new Passive_throw_HitBox(70,400,150,100);
+ Push_HitBox bStandPB1 = new Push_HitBox(70,70,150,500);
+ ArrayList phb = new ArrayList();
+ ArrayList pthb = new ArrayList();
+ phb.add(bStandPHB1);
+ pthb.add(bStandPTHB1);
+ Frame blueStandframe1 = new Frame(0.0,8.0,phb,new ArrayList(),pthb,new ArrayList(),
+ bStandPB1,true,true,true,true,true);
+ blueStandframe1.setSpriteWrap(330,0,112,120);
+ return blueStandframe1;
+ }
+
+ private static Frame walkForwardFrame3(){
+ Passive_HitBox bStandPHB1 = new Passive_HitBox(70,70,150,500);
+ Passive_throw_HitBox bStandPTHB1 = new Passive_throw_HitBox(70,400,150,100);
+ Push_HitBox bStandPB1 = new Push_HitBox(70,70,150,500);
+ ArrayList phb = new ArrayList();
+ ArrayList pthb = new ArrayList();
+ phb.add(bStandPHB1);
+ pthb.add(bStandPTHB1);
+ Frame blueStandframe1 = new Frame(0.0,8.0,phb,new ArrayList(),pthb,new ArrayList(),
+ bStandPB1,true,true,true,true,true);
+ blueStandframe1.setSpriteWrap(420,0,112,120);
+ return blueStandframe1;
+ }
+
+ private static Frame walkForwardFrame4(){
+ Passive_HitBox bStandPHB1 = new Passive_HitBox(70,70,150,500);
+ Passive_throw_HitBox bStandPTHB1 = new Passive_throw_HitBox(70,400,150,100);
+ Push_HitBox bStandPB1 = new Push_HitBox(70,70,150,500);
+ ArrayList phb = new ArrayList();
+ ArrayList pthb = new ArrayList();
+ phb.add(bStandPHB1);
+ pthb.add(bStandPTHB1);
+ Frame blueStandframe1 = new Frame(0.0,8.0,phb,new ArrayList(),pthb,new ArrayList(),
+ bStandPB1,true,true,true,true,true);
+ blueStandframe1.setSpriteWrap(500,0,112,120);
+ return blueStandframe1;
+ }
+
+ protected static Frame[] blueFWalk() {
+ Frame[] f = new Frame[4];
+ f[0] = walkForwardFrame1();
+ f[1] = walkForwardFrame2();
+ f[2] = walkForwardFrame3();
+ f[3] = walkForwardFrame4();
+ return f;
+ }
+
+
+ private static Frame walkBackFrame4(){
+ Passive_HitBox bStandPHB1 = new Passive_HitBox(70,70,150,500);
+ Passive_throw_HitBox bStandPTHB1 = new Passive_throw_HitBox(70,400,150,100);
+ Push_HitBox bStandPB1 = new Push_HitBox(70,70,150,500);
+ ArrayList phb = new ArrayList();
+ ArrayList pthb = new ArrayList();
+ phb.add(bStandPHB1);
+ pthb.add(bStandPTHB1);
+ Frame blueStandframe1 = new Frame(0.0,-8.0,phb,new ArrayList(),pthb,new ArrayList(),
+ bStandPB1,true,true,true,true,true);
+ blueStandframe1.setSpriteWrap(220,0,112,120);
+ return blueStandframe1;
+ }
+
+ private static Frame walkBackFrame3(){
+ Passive_HitBox bStandPHB1 = new Passive_HitBox(70,70,150,500);
+ Passive_throw_HitBox bStandPTHB1 = new Passive_throw_HitBox(70,400,150,100);
+ Push_HitBox bStandPB1 = new Push_HitBox(70,70,150,500);
+ ArrayList phb = new ArrayList();
+ ArrayList pthb = new ArrayList();
+ phb.add(bStandPHB1);
+ pthb.add(bStandPTHB1);
+ Frame blueStandframe1 = new Frame(0.0,-8.0,phb,new ArrayList(),pthb,new ArrayList(),
+ bStandPB1,true,true,true,true,true);
+ blueStandframe1.setSpriteWrap(330,0,112,120);
+ return blueStandframe1;
+ }
+
+ private static Frame walkBackFrame2(){
+ Passive_HitBox bStandPHB1 = new Passive_HitBox(70,70,150,500);
+ Passive_throw_HitBox bStandPTHB1 = new Passive_throw_HitBox(70,400,150,100);
+ Push_HitBox bStandPB1 = new Push_HitBox(70,70,150,500);
+ ArrayList phb = new ArrayList();
+ ArrayList pthb = new ArrayList();
+ phb.add(bStandPHB1);
+ pthb.add(bStandPTHB1);
+ Frame blueStandframe1 = new Frame(0.0,-8.0,phb,new ArrayList(),pthb,new ArrayList(),
+ bStandPB1,true,true,true,true,true);
+ blueStandframe1.setSpriteWrap(420,0,112,120);
+ return blueStandframe1;
+ }
+
+ private static Frame walkBackFrame1(){
+ Passive_HitBox bStandPHB1 = new Passive_HitBox(70,70,150,500);
+ Passive_throw_HitBox bStandPTHB1 = new Passive_throw_HitBox(70,400,150,100);
+ Push_HitBox bStandPB1 = new Push_HitBox(70,70,150,500);
+ ArrayList phb = new ArrayList();
+ ArrayList pthb = new ArrayList();
+ phb.add(bStandPHB1);
+ pthb.add(bStandPTHB1);
+ Frame blueStandframe1 = new Frame(0.0,-8.0,phb,new ArrayList(),pthb,new ArrayList(),
+ bStandPB1,true,true,true,true,true);
+ blueStandframe1.setSpriteWrap(500,0,112,120);
+ return blueStandframe1;
+ }
+
+ protected static Frame[] blueBWalk() {
+ Frame[] f = new Frame[4];
+ f[0] = walkBackFrame1();
+ f[1] = walkBackFrame2();
+ f[2] = walkBackFrame3();
+ f[3] = walkBackFrame4();
+ return f;
+ }
+
+
public static void main(String[] args) {
Engine engine = new Engine(640, 480, new Vector3f(4.0f, 3.0f));
engine.init();
diff --git a/src/gameplay/Characters/Blue/CharacterBlue.java b/src/gameplay/Characters/Blue/CharacterBlue.java
index df11ae9..64540f7 100644
--- a/src/gameplay/Characters/Blue/CharacterBlue.java
+++ b/src/gameplay/Characters/Blue/CharacterBlue.java
@@ -1,9 +1,22 @@
package gameplay.Characters.Blue;
+import gameplay.actions.Jump;
import gameplay.entities.Character;
+import gameplay.frames.Frame;
+import gameplay.Characters.Blue.BlueBaseFrames;
+
+import static gameplay.input.ButtonIG.*;
public class CharacterBlue {
- public Character generateCharBlue(){
+ public static Character generateCharBlue(){
+ Frame[] standF = BlueBaseFrames.blueStandFrames();
+ Frame[] crouchF = BlueBaseFrames.blueCrouchFrames();
+ Frame[] nJumpF = BlueBaseFrames.blueNeutralJump();
+ Frame[] fJumpF = BlueBaseFrames.blueForwardJump();
+ Frame[] bJumpF = BlueBaseFrames.blueBackJump();
+ Frame[] fWalkF = BlueBaseFrames.blueFWalk();
+ Frame[] bWalkF = BlueBaseFrames.blueBWalk();
+
return new Character();
}
}
diff --git a/src/gameplay/actions/Attack.java b/src/gameplay/actions/Attack.java
index 87b64a5..72e2097 100644
--- a/src/gameplay/actions/Attack.java
+++ b/src/gameplay/actions/Attack.java
@@ -10,24 +10,31 @@ public class Attack implements Action {
/**
* Defines if the attack is a special one (E.G. a fireball) or a normal one (a punch)
*/
- private static boolean isSpecial;
+ private boolean isSpecial;
+
+ private Status requiredStatus;
- private static Status requiredStatus;
-
/**
* The suite of Inputs to have the move come out.
* For example, a classic fireball would be something like
* {{DOWN},{DOWN,RIGHT},{RIGHT},{A}}
*/
- private static ButtonIG[][] command;
+ private ButtonIG[][] command;
/**
* The different sections of the attack
*/
private attackPart[] parts;
-
+
+ public Attack(boolean isSpecial, Status requiredStatus, ButtonIG[][] command, attackPart[] parts) {
+ this.isSpecial = isSpecial;
+ this.requiredStatus = requiredStatus;
+ this.command = command;
+ this.parts = parts;
+ }
+
@Override
public ArrayList getFrame() {
ArrayList res = new ArrayList();
@@ -47,21 +54,21 @@ public class Attack implements Action {
return res;
}
- public static boolean isIsSpecial() {
- return isSpecial;
+ public boolean isIsSpecial() {
+ return this.isSpecial;
}
- public static void setIsSpecial(boolean isSpecial) {
- Attack.isSpecial = isSpecial;
+ public void setIsSpecial(boolean isSpecial) {
+ this.isSpecial = isSpecial;
}
@Override
public ButtonIG[][] getCommand() {
- return command;
+ return this.command;
}
- public static void setCommand(ButtonIG[][] command) {
- Attack.command = command;
+ public void setCommand(ButtonIG[][] command) {
+ this.command = command;
}
public attackPart[] getParts() {
@@ -72,13 +79,15 @@ public class Attack implements Action {
this.parts = parts;
}
- public static Status getRequiredStatus() {
- return requiredStatus;
+ public Status getRequiredStatus() {
+ return this.requiredStatus;
}
- public static void setRequiredStatus(Status requiredStatus) {
- Attack.requiredStatus = requiredStatus;
+ public void setRequiredStatus(Status requiredStatus) {
+ this.requiredStatus = requiredStatus;
}
public boolean isSpecial() {return this.isSpecial();}
+
+
}
diff --git a/src/gameplay/actions/Dash.java b/src/gameplay/actions/Dash.java
index 3800c86..190a5de 100644
--- a/src/gameplay/actions/Dash.java
+++ b/src/gameplay/actions/Dash.java
@@ -11,11 +11,11 @@ public class Dash implements Action {
* For example, a Front Dash would be something like
* {{FORWARD},{FORWARD}}
*/
- private static ButtonIG[][] command;
+ private ButtonIG[][] command;
private Frame[] frames;
-
+
@Override
public ArrayList getFrame() {
ArrayList res = new ArrayList();
@@ -27,7 +27,11 @@ public class Dash implements Action {
@Override
public ButtonIG[][] getCommand() {
- return command;
+ return this.command;
}
+ public Dash(ButtonIG[][] command, Frame[] frames) {
+ this.command = command;
+ this.frames = frames;
+ }
}
diff --git a/src/gameplay/actions/Jump.java b/src/gameplay/actions/Jump.java
index 5adabb0..14e422b 100644
--- a/src/gameplay/actions/Jump.java
+++ b/src/gameplay/actions/Jump.java
@@ -12,7 +12,7 @@ public class Jump implements Action {
* For example, a Front Jump would be something like
* {{UP,RIGHT}}
*/
- private static ButtonIG[][] command;
+ private ButtonIG[][] command;
private Frame[] frames;
@@ -27,7 +27,11 @@ public class Jump implements Action {
@Override
public ButtonIG[][] getCommand() {
- return command;
+ return this.command;
}
+ public Jump(ButtonIG[][] command, Frame[] frames) {
+ this.command = command;
+ this.frames = frames;
+ }
}
diff --git a/src/gameplay/actions/Throw.java b/src/gameplay/actions/Throw.java
index 8d631ed..be0cdc4 100644
--- a/src/gameplay/actions/Throw.java
+++ b/src/gameplay/actions/Throw.java
@@ -10,7 +10,7 @@ public class Throw implements Action {
/**
* Defines if the throw is a special one (E.G. a Moonsault Press ) or a normal one
*/
- private static boolean isSpecial;
+ private boolean isSpecial;
/**
* The suite of Inputs to have the move come out.
@@ -52,7 +52,14 @@ public class Throw implements Action {
@Override
public ButtonIG[][] getCommand() {
- return command;
+ return this.command;
}
+ public Throw(boolean isSpecial, ThrowPart[] parts) {
+ this.isSpecial = isSpecial;
+ this.parts = parts;
+ }
+
+ public Throw() {
+ }
}