Merge remote-tracking branch 'refs/remotes/origin/main'
commit
27b9b240a3
|
@ -7,7 +7,7 @@ public class Main {
|
|||
public static void main(String[] args) {
|
||||
GameEngine engine = new GameEngine();
|
||||
|
||||
engine.printMap();
|
||||
engine.printState();
|
||||
engine.run();
|
||||
}
|
||||
|
||||
|
|
|
@ -1,9 +1,7 @@
|
|||
package ca.cosc3p91.a2.game;
|
||||
|
||||
import ca.cosc3p91.a2.gameobjects.Building;
|
||||
import ca.cosc3p91.a2.gameobjects.VillageStage;
|
||||
import ca.cosc3p91.a2.gameobjects.Village_Hall;
|
||||
import ca.cosc3p91.a2.player.Player;
|
||||
import ca.cosc3p91.a2.gameobjects.*;
|
||||
import ca.cosc3p91.a2.player.*;
|
||||
|
||||
public class GameEngine implements Runnable {
|
||||
|
||||
|
@ -22,11 +20,17 @@ public class GameEngine implements Runnable {
|
|||
map = new Map(new Village_Hall(1,vInitialStage),30);
|
||||
}
|
||||
|
||||
public void printMap() {
|
||||
System.out.println("~ Current Map State ~\n\n");
|
||||
public void printState() {
|
||||
// Print toPrint = new Print("~ Current Village Buildings ~",2);
|
||||
|
||||
System.out.println("In Map:\n");
|
||||
System.out.println("\t~ Current Village Buildings ~\n");
|
||||
for (Building b : map.contains) {
|
||||
System.out.println("|> "+b.getClass().getSimpleName()+" lvl: "+b.getLevel()+" health: "+b.getHealth());
|
||||
System.out.println("\t|> "+b.getClass().getSimpleName()+" lvl: "+b.getLevel()+" health: "+b.getHealth());
|
||||
}
|
||||
System.out.println("\n\t~ Current Village Inhabitants ~\n\n");
|
||||
for (Inhabitant i : map.inhabitants) {
|
||||
System.out.println("\t|> "+i.getClass().getSimpleName()+" lvl: "+i.getLevel());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -33,7 +33,7 @@ public class Map {
|
|||
|
||||
}
|
||||
|
||||
public void build(Village_Hall hall, Tile t, Building b) {
|
||||
public void build(Tile t, Building b) {
|
||||
contains.add(b);
|
||||
}
|
||||
|
||||
|
|
|
@ -1,4 +1,28 @@
|
|||
package ca.cosc3p91.a2.gameobjects;
|
||||
|
||||
public class Archer extends Infantry {
|
||||
|
||||
public Archer() {
|
||||
super(90, 2, 10);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void move(Tile t) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void getPosition() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getLevel() {
|
||||
return super.getLevel();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int setLevel(int level) {
|
||||
return super.setLevel(level);
|
||||
}
|
||||
}
|
|
@ -1,4 +1,28 @@
|
|||
package ca.cosc3p91.a2.gameobjects;
|
||||
|
||||
public class Catapult extends Infantry {
|
||||
|
||||
public Catapult() {
|
||||
super(80, 12, 12);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void move(Tile t) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void getPosition() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getLevel() {
|
||||
return super.getLevel();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int setLevel(int level) {
|
||||
return super.setLevel(level);
|
||||
}
|
||||
}
|
|
@ -1,6 +1,6 @@
|
|||
package ca.cosc3p91.a2.gameobjects;
|
||||
|
||||
public abstract class Infantry {
|
||||
public abstract class Infantry implements Inhabitant {
|
||||
|
||||
private int health;
|
||||
|
||||
|
@ -8,16 +8,36 @@ public abstract class Infantry {
|
|||
|
||||
private int range;
|
||||
|
||||
public Infantry(int hitPoints, int damage, int range) {
|
||||
this.health = hitPoints;
|
||||
this.damage = damage;
|
||||
this.range = range;
|
||||
}
|
||||
|
||||
public void attack(Building b) {
|
||||
}
|
||||
|
||||
public void getHealth() {
|
||||
public int getHealth() {
|
||||
return health;
|
||||
}
|
||||
|
||||
public void getDamage() {
|
||||
public int getDamage() {
|
||||
return damage;
|
||||
}
|
||||
|
||||
public void getRange() {
|
||||
public int getRange() {
|
||||
return range;
|
||||
}
|
||||
|
||||
public void setHealth(int health) {
|
||||
this.health = health;
|
||||
}
|
||||
|
||||
public void setDamage(int damage) {
|
||||
this.damage = damage;
|
||||
}
|
||||
|
||||
public void setRange(int range) {
|
||||
this.range = range;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,14 +1,19 @@
|
|||
package ca.cosc3p91.a2.gameobjects;
|
||||
|
||||
import ca.cosc3p91.a2.game.Map;
|
||||
|
||||
public interface Inhabitant {
|
||||
|
||||
Map map = null;
|
||||
Building building = null;
|
||||
int lvl = 1;
|
||||
|
||||
void move(Tile t);
|
||||
|
||||
void getPosition();
|
||||
default int getLevel() {
|
||||
return lvl;
|
||||
}
|
||||
default int setLevel(int level) {
|
||||
return lvl;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -1,4 +1,28 @@
|
|||
package ca.cosc3p91.a2.gameobjects;
|
||||
|
||||
public class Knight extends Infantry {
|
||||
|
||||
public Knight() {
|
||||
super(150, 6, 6);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void move(Tile t) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void getPosition() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getLevel() {
|
||||
return super.getLevel();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int setLevel(int level) {
|
||||
return super.setLevel(level);
|
||||
}
|
||||
}
|
|
@ -1,4 +1,28 @@
|
|||
package ca.cosc3p91.a2.gameobjects;
|
||||
|
||||
public class Soldier extends Infantry {
|
||||
|
||||
public Soldier() {
|
||||
super(100, 4, 4);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void move(Tile t) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void getPosition() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getLevel() {
|
||||
return super.getLevel();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int setLevel(int level) {
|
||||
return super.setLevel(level);
|
||||
}
|
||||
}
|
|
@ -1,11 +1,33 @@
|
|||
package ca.cosc3p91.a2.gameobjects;
|
||||
|
||||
public class Worker {
|
||||
public class Worker implements Inhabitant {
|
||||
|
||||
private boolean currentlyBuilding;
|
||||
|
||||
public void set_IsBuilding(boolean state) {
|
||||
currentlyBuilding = state;
|
||||
}
|
||||
public boolean isCurrentlyBuilding() {
|
||||
return currentlyBuilding;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void move(Tile t) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void getPosition() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getLevel() {
|
||||
return Inhabitant.super.getLevel();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int setLevel(int level) {
|
||||
return Inhabitant.super.setLevel(level);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue