Skip to content

Commit b956b2e

Browse files
authored
Merge pull request #121 from EntelectChallenge/develop
Release 3.0.2
2 parents c6a15bd + 2654d83 commit b956b2e

File tree

19 files changed

+138
-30
lines changed

19 files changed

+138
-30
lines changed

game-engine-interface/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
<groupId>za.co.entelect.challenge</groupId>
88
<artifactId>game-engine-interface</artifactId>
9-
<version>3.0.1</version>
9+
<version>3.0.2</version>
1010

1111
<distributionManagement>
1212
<repository>

game-engine/core/pom.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<artifactId>game-engine</artifactId>
77
<groupId>za.co.entelect.challenge</groupId>
8-
<version>3.0.1</version>
8+
<version>3.0.2</version>
99
</parent>
1010
<modelVersion>4.0.0</modelVersion>
1111

@@ -27,7 +27,7 @@
2727
<dependency>
2828
<groupId>za.co.entelect.challenge</groupId>
2929
<artifactId>domain</artifactId>
30-
<version>3.0.1</version>
30+
<version>3.0.2</version>
3131
<scope>compile</scope>
3232
</dependency>
3333
<dependency>

game-engine/domain/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<artifactId>game-engine</artifactId>
77
<groupId>za.co.entelect.challenge</groupId>
8-
<version>3.0.1</version>
8+
<version>3.0.2</version>
99
</parent>
1010
<modelVersion>4.0.0</modelVersion>
1111

game-engine/domain/src/main/java/za/co/entelect/challenge/entities/Building.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -126,11 +126,11 @@ public void damageSelfDirectly(int damageTaken, TowerDefensePlayer missileOwner)
126126
}
127127

128128
private void setHealthAndAddScore(int damageTaken, TowerDefensePlayer missileOwner) {
129-
129+
int previousHealth = health;
130130
health -= damageTaken;
131131
health = Math.max(0, health);
132132

133-
missileOwner.addScore(damageTaken * destroyMultiplier);
133+
missileOwner.addScore((previousHealth - health) * destroyMultiplier);
134134
}
135135

136136
public void decreaseCooldown() {

game-engine/domain/src/main/java/za/co/entelect/challenge/entities/TowerDefenseGameMap.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -108,11 +108,6 @@ public void deconstructBuilding(Building building) {
108108

109109
public void removeBuilding(Building building) {
110110
buildings.remove(building);
111-
try {
112-
getPlayerOpponent(building.getPlayerType()).addScore(building.getDestroyMultiplier());
113-
} catch (Exception e) {
114-
log.error(e);
115-
}
116111
}
117112

118113
private Direction getDirectionAndUpdateBuilding(Building b) {

game-engine/pom.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
<groupId>za.co.entelect.challenge</groupId>
77
<artifactId>game-engine</artifactId>
8-
<version>3.0.1</version>
8+
<version>3.0.2</version>
99
<modules>
1010
<module>domain</module>
1111
<module>core</module>
@@ -16,7 +16,7 @@
1616

1717
<properties>
1818
<java.version>1.8</java.version>
19-
<game.engine.interfaces.version>3.0.1</game.engine.interfaces.version>
19+
<game.engine.interfaces.version>3.0.2</game.engine.interfaces.version>
2020
<junit.version>4.12</junit.version>
2121
<apache.commons.configuration.version>2.2</apache.commons.configuration.version>
2222
<gson.version>2.8.2</gson.version>

game-runner/pom.xml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,14 @@
66

77
<groupId>za.co.entelect.challenge</groupId>
88
<artifactId>game-runner</artifactId>
9-
<version>3.0.1</version>
9+
<version>3.0.2</version>
1010

1111
<properties>
1212
<java.version>1.8</java.version>
1313
<reflections.version>0.9.11</reflections.version>
1414
<gson.version>2.8.2</gson.version>
15-
<game.engine.interface.version>3.0.1</game.engine.interface.version>
16-
<game.engine.core.version>3.0.1</game.engine.core.version>
15+
<game.engine.interface.version>3.0.2</game.engine.interface.version>
16+
<game.engine.core.version>3.0.2</game.engine.core.version>
1717
</properties>
1818

1919
<dependencies>

game-runner/src/main/java/za/co/entelect/challenge/botrunners/BotRunner.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import org.apache.commons.exec.ExecuteWatchdog;
66
import org.apache.commons.exec.PumpStreamHandler;
77
import za.co.entelect.challenge.entities.BotMetaData;
8+
import za.co.entelect.challenge.entities.BotArguments;
89
import za.co.entelect.challenge.game.contracts.exceptions.TimeoutException;
910

1011
import java.io.ByteArrayOutputStream;
@@ -37,6 +38,8 @@ public String getBotFileName() {
3738
return botMetaData.getBotFileName();
3839
}
3940

41+
public BotArguments getArguments() { return botMetaData.getArguments(); }
42+
4043
protected String RunSimpleCommandLineCommand(String line, int expectedExitValue) throws IOException, TimeoutException {
4144
CommandLine cmdLine = CommandLine.parse(line);
4245
DefaultExecutor executor = new DefaultExecutor();

game-runner/src/main/java/za/co/entelect/challenge/botrunners/HaskellBotRunner.java

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package za.co.entelect.challenge.botrunners;
22

33
import za.co.entelect.challenge.entities.BotMetaData;
4+
import za.co.entelect.challenge.entities.BotArguments;
45
import za.co.entelect.challenge.game.contracts.exceptions.TimeoutException;
56

67
import java.io.IOException;
@@ -13,12 +14,20 @@ public HaskellBotRunner(BotMetaData botMetaData, int timeoutInMilliseconds) {
1314

1415
@Override
1516
protected String runBot() throws IOException, TimeoutException {
17+
String runTimeArguments;
18+
if (this.getArguments() != null) {
19+
int coreCount = this.getArguments().getCoreCount();
20+
runTimeArguments = " +RTS -N" + Integer.toString(coreCount) + " -RTS";
21+
} else {
22+
runTimeArguments = "";
23+
}
24+
1625
String line;
1726

1827
if(System.getProperty("os.name").contains("Windows")) {
19-
line = "cmd /c \"" + this.getBotFileName() + "\"";
28+
line = "cmd /c \"" + this.getBotFileName() + runTimeArguments + "\"";
2029
} else {
21-
line = "\"./" + this.getBotFileName() + "\"";
30+
line = "./" + this.getBotFileName() + runTimeArguments;
2231
}
2332

2433
return RunSimpleCommandLineCommand(line, 0);
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
package za.co.entelect.challenge.entities;
2+
3+
import com.google.gson.annotations.SerializedName;
4+
5+
public class BotArguments {
6+
@SerializedName("coreCount")
7+
private int coreCount;
8+
9+
public BotArguments(int coreCount) {
10+
this.coreCount = coreCount;
11+
}
12+
13+
public int getCoreCount() {
14+
return this.coreCount;
15+
}
16+
}

0 commit comments

Comments
 (0)