temp: half finished but ineffective EventBuilder, to be reworked
fix: deleted duplicate equals fix: changed language level temp: half finished but ineffective EventBuilder, to be reworked
This commit is contained in:
parent
82fa54bd2d
commit
608cd829c4
@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ExternalStorageConfigurationManager" enabled="true" />
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_16" project-jdk-name="15" project-jdk-type="JavaSDK" />
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_15" project-jdk-name="15" project-jdk-type="JavaSDK" />
|
||||
</project>
|
@ -29,17 +29,6 @@ public class EntityID {
|
||||
return type == other;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean equals(Object obj){
|
||||
if(this == obj) return true;
|
||||
|
||||
if(!(obj instanceof EntityID)) return false;
|
||||
|
||||
EntityID other = (EntityID)obj;
|
||||
|
||||
return this.id == other.id && this.type == other.type;
|
||||
}
|
||||
|
||||
/**
|
||||
* Clones this entity id.
|
||||
* @return The cloned {@link EntityID}
|
||||
|
@ -21,6 +21,7 @@ public class EventBuilder {
|
||||
private EntityID targetEntity;
|
||||
private IntVector2 targetField;
|
||||
private Integer amount;
|
||||
private Entity entity;
|
||||
|
||||
// Keys used primarily in CharacterEvents
|
||||
private EntityID originEntity;
|
||||
@ -28,21 +29,21 @@ public class EventBuilder {
|
||||
private StoneType stoneType;
|
||||
|
||||
// Keys used primarily in GameEvents
|
||||
private int roundCount;
|
||||
private int turnCount;
|
||||
private Integer roundCount = null;
|
||||
private Integer turnCount = null;
|
||||
private EntityID[] characterOrder;
|
||||
private EntityID nextCharacter;
|
||||
|
||||
private int playerWon;
|
||||
private Integer playerWon;
|
||||
|
||||
private String message;
|
||||
private int timeLeft;
|
||||
private Integer timeLeft;
|
||||
|
||||
// Keys used primarily in GamestateEvents
|
||||
private Entity[] entities;
|
||||
private EntityID[] turnOrder;
|
||||
private EntityID activeCharacter;
|
||||
private boolean winCondition;
|
||||
private Boolean winCondition;
|
||||
|
||||
// Keys used in CustomEvents
|
||||
private String teamIdentifier;
|
||||
@ -78,6 +79,12 @@ public class EventBuilder {
|
||||
return this;
|
||||
}
|
||||
|
||||
|
||||
public EventBuilder withEntity(Entity entity) {
|
||||
this.entity = entity;
|
||||
return this;
|
||||
}
|
||||
|
||||
public EventBuilder withOriginEntity(EntityID originEntity) {
|
||||
this.originEntity = originEntity;
|
||||
return this;
|
||||
@ -159,7 +166,7 @@ public class EventBuilder {
|
||||
}
|
||||
|
||||
/**
|
||||
* Builds a {@link GameEvent} from the values given to the builder
|
||||
* Builds a generic {@link GameEvent} from the values given to the builder
|
||||
* <ul>
|
||||
* <li>type is the {@link EventType} of the {@link GameEvent}.</li>
|
||||
* <li>roundCount describes the count of rounds in the RoundSetupEvent</li>
|
||||
@ -172,7 +179,7 @@ public class EventBuilder {
|
||||
* </ul>
|
||||
* @return a {@link GameEvent} based on the builder. Caution: non-given fields are null!
|
||||
*/
|
||||
public GameEvent buildGameEvent() {
|
||||
public GameEvent buildGenericGameEvent() {
|
||||
var gameEvent = new GameEvent();
|
||||
gameEvent.type = this.type;
|
||||
gameEvent.roundCount = this.roundCount;
|
||||
@ -188,7 +195,7 @@ public class EventBuilder {
|
||||
}
|
||||
|
||||
/**
|
||||
* Builds an {@link EntityEvent} from the values given to the builder.
|
||||
* Builds a generic {@link EntityEvent} from the values given to the builder.
|
||||
* <ul>
|
||||
* <li>type is the {@link EventType} of the EntityEvent</li>
|
||||
* <li>targetEntity is the target {@link Entity}</li>
|
||||
@ -197,17 +204,18 @@ public class EventBuilder {
|
||||
* </ul>
|
||||
* @return a {@link EntityEvent} based on the builder. Caution: non-given fields are null!
|
||||
*/
|
||||
public EntityEvent buildEntityEvent() {
|
||||
public EntityEvent buildGenericEntityEvent() {
|
||||
var entityEvent = new EntityEvent();
|
||||
entityEvent.type = this.type;
|
||||
entityEvent.targetEntity = this.targetEntity;
|
||||
entityEvent.targetField = this.targetField;
|
||||
entityEvent.amount = this.amount;
|
||||
entityEvent.entity = this.entity;
|
||||
return entityEvent;
|
||||
}
|
||||
|
||||
/**
|
||||
* Builds a {@link CharacterEvent} from the values given to the builder.
|
||||
* Builds a generic {@link CharacterEvent} from the values given to the builder.
|
||||
* <ul>
|
||||
* <li>type is the {@link EventType} of the EntityEvent</li>
|
||||
* <li>originEntity is the origin {@link Entity}</li>
|
||||
@ -217,7 +225,7 @@ public class EventBuilder {
|
||||
* </ul>
|
||||
* @return a {@link CharacterEvent} based on the builder. Caution: non-given fields are null!
|
||||
*/
|
||||
public CharacterEvent buildCharacterEvent() {
|
||||
public CharacterEvent buildGenericCharacterEvent() {
|
||||
var characterEvent = new CharacterEvent();
|
||||
characterEvent.type = this.type;
|
||||
characterEvent.originEntity = this.originEntity;
|
||||
@ -230,7 +238,7 @@ public class EventBuilder {
|
||||
}
|
||||
|
||||
/**
|
||||
* Builds a {@link GameStateEvent} from the values given to the builder.
|
||||
* Builds a generic {@link GameStateEvent} from the values given to the builder.
|
||||
* <ul>
|
||||
* <li>type is the {@link EventType} of the {@link GameStateEvent}</li>
|
||||
* <li>entities is an array of {@link Entity Entities}</li>
|
||||
@ -240,7 +248,7 @@ public class EventBuilder {
|
||||
* </ul>
|
||||
* @return a {@link GameStateEvent} based on the builder. Caution: non-given fields are null!
|
||||
*/
|
||||
public GameStateEvent buildGamestateEvent() {
|
||||
public GameStateEvent buildGenericGameStateEvent() {
|
||||
var gamestateEvent = new GameStateEvent();
|
||||
gamestateEvent.type = this.type;
|
||||
gamestateEvent.entities = this.entities;
|
||||
@ -258,12 +266,351 @@ public class EventBuilder {
|
||||
* </ul>
|
||||
* @return a {@link CustomEvent} based on the builder. Caution: non-given fields are null!
|
||||
*/
|
||||
public CustomEvent buildCustomEvent() {
|
||||
public CustomEvent buildGenericCustomEvent() {
|
||||
var customEvent = new CustomEvent();
|
||||
customEvent.type = this.type;
|
||||
customEvent.teamIdentifier = this.teamIdentifier;
|
||||
customEvent.customContent = this.customContent;
|
||||
return customEvent;
|
||||
}
|
||||
|
||||
/** Builds a new Ack {@link GameStateEvent}. Can have a no declared type. */
|
||||
public GameStateEvent buildAckEvent() throws IllegalStateException {
|
||||
if (this.type == null || this.type != EventType.Ack) throw new IllegalStateException("EventType was not Ack");
|
||||
var ackEvent = new GameStateEvent();
|
||||
ackEvent.type = EventType.Ack;
|
||||
return ackEvent;
|
||||
}
|
||||
|
||||
/** Builds a new Nack {@link GameStateEvent}. Can have no declared type. */
|
||||
public GameStateEvent buildNackEvent() throws IllegalStateException {
|
||||
if (this.type == null || this.type != EventType.Nack) throw new IllegalStateException("EventType was not Ack");
|
||||
var nackEvent = new GameStateEvent();
|
||||
nackEvent.type = EventType.Nack;
|
||||
return nackEvent;
|
||||
}
|
||||
|
||||
/** Builds a new Req {@link GameStateEvent}. Can have no declared type. */
|
||||
public GameStateEvent buildReqEvent() throws IllegalStateException {
|
||||
if (this.type == null || this.type != EventType.Req) throw new IllegalStateException("EventType was not Req");
|
||||
var reqEvent = new GameStateEvent();
|
||||
reqEvent.type = EventType.Req;
|
||||
return reqEvent;
|
||||
}
|
||||
|
||||
/**
|
||||
* Builds a new {@link GameStateEvent}.
|
||||
* This event needs the fields <b>entities, turnOrder, activeCharacter</b> and <b>winCondition</b>.
|
||||
*/
|
||||
public GameStateEvent buildGameStateEvent() throws IllegalStateException {
|
||||
if (this.type == null || this.type != EventType.GameStateEvent ||
|
||||
this.entities == null ||
|
||||
this.turnOrder == null ||
|
||||
this.activeCharacter == null ||
|
||||
this.winCondition == null
|
||||
) {
|
||||
throw new IllegalStateException("Properties malformed for GameStateEvent");
|
||||
}
|
||||
var gameStateEvent = new GameStateEvent();
|
||||
gameStateEvent.type = EventType.GameStateEvent;
|
||||
gameStateEvent.entities = this.entities;
|
||||
gameStateEvent.turnOrder = this.turnOrder;
|
||||
gameStateEvent.activeCharacter = this.activeCharacter;
|
||||
gameStateEvent.winCondition = this.winCondition;
|
||||
|
||||
return gameStateEvent;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Builds a new {@link CustomEvent}.
|
||||
* This event needs the field <b>customContent</b>.
|
||||
*/
|
||||
public CustomEvent buildCustomEvent() throws IllegalStateException {
|
||||
if (this.type == null || this.type != EventType.CustomEvent ||
|
||||
this.customContent == null
|
||||
) {
|
||||
throw new IllegalStateException("Properties malformed for CustomEvent");
|
||||
}
|
||||
var customEvent = new CustomEvent();
|
||||
customEvent.type = EventType.CustomEvent;
|
||||
customEvent.customContent = this.customContent;
|
||||
|
||||
return customEvent;
|
||||
}
|
||||
|
||||
/**
|
||||
* Builds a new {@link EntityEvent}.
|
||||
* This event needs the fields <b>targetField</b> and <b>targetEntity</b>.
|
||||
*/
|
||||
public EntityEvent buildDestroyedEntityEvent() throws IllegalStateException {
|
||||
if (this.type == null || this.type != EventType.DestroyedEntityEvent ||
|
||||
this.targetField == null ||
|
||||
this.targetEntity == null
|
||||
) {
|
||||
throw new IllegalStateException("Properties malformed for DestroyedEntityEvent");
|
||||
}
|
||||
var destroyedEntityEvent = new EntityEvent();
|
||||
destroyedEntityEvent.type = EventType.DestroyedEntityEvent;
|
||||
destroyedEntityEvent.targetField = this.targetField;
|
||||
destroyedEntityEvent.targetEntity = this.targetEntity;
|
||||
|
||||
return destroyedEntityEvent;
|
||||
}
|
||||
|
||||
/**
|
||||
* Builds a new {@link EntityEvent}.
|
||||
* This event needs the fields <b>targetField, targetEntity</b> and <b>amount</b>.
|
||||
*/
|
||||
public EntityEvent buildTakenDamageEvent() throws IllegalStateException {
|
||||
if (this.type == null || this.type != EventType.TakenDamageEvent ||
|
||||
this.targetField == null ||
|
||||
this.targetEntity == null ||
|
||||
this.amount == null
|
||||
) {
|
||||
throw new IllegalStateException("Properties malformed for TakenDamageEvent");
|
||||
}
|
||||
var takenDamageEvent = new EntityEvent();
|
||||
takenDamageEvent.type = EventType.TakenDamageEvent;
|
||||
takenDamageEvent.targetField = this.targetField;
|
||||
takenDamageEvent.targetEntity = this.targetEntity;
|
||||
takenDamageEvent.amount = this.amount;
|
||||
|
||||
return takenDamageEvent;
|
||||
}
|
||||
|
||||
/**
|
||||
* Builds a new {@link EntityEvent}.
|
||||
* This event needs the fields <b>targetField, targetEntity</b> and <b>amount</b>.
|
||||
*/
|
||||
public EntityEvent buildConsumedAPEvent() throws IllegalStateException {
|
||||
if (this.type == null || this.type != EventType.ConsumedAPEvent ||
|
||||
this.targetField == null ||
|
||||
this.targetEntity == null ||
|
||||
this.amount == null
|
||||
) {
|
||||
throw new IllegalStateException("Properties malformed for ConsumedAPEvent");
|
||||
}
|
||||
var consumedAPEvent = new EntityEvent();
|
||||
consumedAPEvent.type = EventType.ConsumedAPEvent;
|
||||
consumedAPEvent.targetField = this.targetField;
|
||||
consumedAPEvent.targetEntity = this.targetEntity;
|
||||
consumedAPEvent.amount = this.amount;
|
||||
|
||||
return consumedAPEvent;
|
||||
}
|
||||
|
||||
/**
|
||||
* Builds a new {@link EntityEvent}.
|
||||
* This event needs the fields <b>targetField, targetEntity</b> and <b>amount</b>.
|
||||
*/
|
||||
public EntityEvent buildConsumedMPEvent() throws IllegalStateException {
|
||||
if (this.type == null || this.type != EventType.ConsumedMPEvent ||
|
||||
this.targetField == null ||
|
||||
this.targetEntity == null ||
|
||||
this.amount == null
|
||||
) {
|
||||
throw new IllegalStateException("Properties malformed for ConsumedMPEvent");
|
||||
}
|
||||
var consumedAPEvent = new EntityEvent();
|
||||
consumedAPEvent.type = EventType.ConsumedMPEvent;
|
||||
consumedAPEvent.targetField = this.targetField;
|
||||
consumedAPEvent.targetEntity = this.targetEntity;
|
||||
consumedAPEvent.amount = this.amount;
|
||||
|
||||
return consumedAPEvent;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Builds a new {@link EntityEvent}.
|
||||
* This event needs the field <b>entity</b>.
|
||||
*/
|
||||
public EntityEvent buildSpawnEntityEvent() throws IllegalStateException {
|
||||
if (this.type == null || this.type != EventType.SpawnEntityEvent ||
|
||||
this.targetField == null ||
|
||||
this.targetEntity == null ||
|
||||
this.amount == null
|
||||
) {
|
||||
throw new IllegalStateException("Properties malformed for SpawnEntityEvent");
|
||||
}
|
||||
var spawnEntityEvent = new EntityEvent();
|
||||
spawnEntityEvent.type = EventType.SpawnEntityEvent;
|
||||
spawnEntityEvent.entity = this.entity;
|
||||
|
||||
return spawnEntityEvent;
|
||||
}
|
||||
|
||||
/**
|
||||
* Builds a new {@link EntityEvent}.
|
||||
* This event needs the fields <b>targetField, targetEntity</b> and <b>amount</b>.
|
||||
*/
|
||||
public EntityEvent buildHealedEvent() throws IllegalStateException {
|
||||
if (this.type == null || this.type != EventType.HealedEvent ||
|
||||
this.targetField == null ||
|
||||
this.targetEntity == null ||
|
||||
this.amount == null
|
||||
) {
|
||||
throw new IllegalStateException("Properties malformed for HealedEvent");
|
||||
}
|
||||
var healedEvent = new EntityEvent();
|
||||
healedEvent.type = EventType.HealedEvent;
|
||||
healedEvent.targetField = this.targetField;
|
||||
healedEvent.targetEntity = this.targetEntity;
|
||||
healedEvent.amount = this.amount;
|
||||
|
||||
return healedEvent;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Builds a new {@link CharacterEvent}.
|
||||
* This event needs the fields <b>originField, targetField, originEntity</b> and <b>targetEntity</b>.
|
||||
*/
|
||||
public CharacterEvent buildMeleeAttackEvent() throws IllegalStateException {
|
||||
if (this.type == null || this.type != EventType.MeleeAttackEvent ||
|
||||
this.originField == null ||
|
||||
this.targetField == null ||
|
||||
this.originEntity == null ||
|
||||
this.targetEntity == null
|
||||
) {
|
||||
throw new IllegalStateException("Properties malformed for MeleeAttackEvent");
|
||||
}
|
||||
var meleeAttackEvent = new CharacterEvent();
|
||||
meleeAttackEvent.type = EventType.MeleeAttackEvent;
|
||||
meleeAttackEvent.originField = this.originField;
|
||||
meleeAttackEvent.targetField = this.targetField;
|
||||
meleeAttackEvent.originEntity = this.originEntity;
|
||||
meleeAttackEvent.targetEntity = this.targetEntity;
|
||||
|
||||
return meleeAttackEvent;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Builds a new {@link CharacterEvent}.
|
||||
* This event needs the fields <b>originField, targetField, originEntity</b> and <b>targetEntity</b>.
|
||||
*/
|
||||
public CharacterEvent buildRangedAttackEvent() throws IllegalStateException {
|
||||
if (this.type == null || this.type != EventType.RangedAttackEvent ||
|
||||
this.originField == null ||
|
||||
this.targetField == null ||
|
||||
this.originEntity == null ||
|
||||
this.targetEntity == null
|
||||
) {
|
||||
throw new IllegalStateException("Properties malformed for RangedAttackEvent");
|
||||
}
|
||||
var rangedAttackEvent = new CharacterEvent();
|
||||
rangedAttackEvent.type = EventType.RangedAttackEvent;
|
||||
rangedAttackEvent.originField = this.originField;
|
||||
rangedAttackEvent.targetField = this.targetField;
|
||||
rangedAttackEvent.originEntity = this.originEntity;
|
||||
rangedAttackEvent.targetEntity = this.targetEntity;
|
||||
|
||||
return rangedAttackEvent;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Builds a new {@link CharacterEvent}.
|
||||
* This event needs the fields <b>stoneType, originField, targetField, originEntity</b> and <b>targetEntity</b>.
|
||||
*/
|
||||
public CharacterEvent buildExchangeInfinityStoneEvent() throws IllegalStateException {
|
||||
if (this.type == null || this.type != EventType.ExchangeInfinityStoneEvent ||
|
||||
this.originField == null ||
|
||||
this.targetField == null ||
|
||||
this.originEntity == null ||
|
||||
this.targetEntity == null ||
|
||||
this.stoneType == null
|
||||
) {
|
||||
throw new IllegalStateException("Properties malformed for ExchangeInfinityStoneEvent");
|
||||
}
|
||||
var exchangeInfinityStoneEvent = new CharacterEvent();
|
||||
exchangeInfinityStoneEvent.type = EventType.ExchangeInfinityStoneEvent;
|
||||
exchangeInfinityStoneEvent.originField = this.originField;
|
||||
exchangeInfinityStoneEvent.targetField = this.targetField;
|
||||
exchangeInfinityStoneEvent.originEntity = this.originEntity;
|
||||
exchangeInfinityStoneEvent.targetEntity = this.targetEntity;
|
||||
|
||||
return exchangeInfinityStoneEvent;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Builds a new {@link CharacterEvent}.
|
||||
* This event needs the fields <b>originField, targetField</b> and <b>originEntity</b>.
|
||||
*/
|
||||
public CharacterEvent buildMoveEvent() throws IllegalStateException {
|
||||
if (this.type == null || this.type != EventType.MoveEvent ||
|
||||
this.originField == null ||
|
||||
this.targetField == null ||
|
||||
this.originEntity == null
|
||||
) {
|
||||
throw new IllegalStateException("Properties malformed for MoveEvent");
|
||||
}
|
||||
var moveEvent = new CharacterEvent();
|
||||
moveEvent.type = EventType.ExchangeInfinityStoneEvent;
|
||||
moveEvent.originField = this.originField;
|
||||
moveEvent.targetField = this.targetField;
|
||||
moveEvent.originEntity = this.originEntity;
|
||||
|
||||
return moveEvent;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Builds a new {@link CharacterEvent}.
|
||||
* This event needs the fields <b>stoneType, originField, targetField, originEntity</b> and <b>targetEntity</b>.
|
||||
*/
|
||||
public CharacterEvent buildUseInfinityStoneEvent() throws IllegalStateException {
|
||||
if (this.type == null || this.type != EventType.UseInfinityStoneEvent ||
|
||||
this.originField == null ||
|
||||
this.targetField == null ||
|
||||
this.originEntity == null ||
|
||||
this.targetEntity == null ||
|
||||
this.stoneType == null
|
||||
) {
|
||||
throw new IllegalStateException("Properties malformed for UseInfinityStoneEvent");
|
||||
}
|
||||
var useInfinityStoneEvent = new CharacterEvent();
|
||||
useInfinityStoneEvent.type = EventType.UseInfinityStoneEvent;
|
||||
useInfinityStoneEvent.originField = this.originField;
|
||||
useInfinityStoneEvent.targetField = this.targetField;
|
||||
useInfinityStoneEvent.originEntity = this.originEntity;
|
||||
useInfinityStoneEvent.targetEntity = this.targetEntity;
|
||||
|
||||
return useInfinityStoneEvent;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Builds a new {@link GameEvent}.
|
||||
* This event needs the fields <b>roundCount</b> and <b>characterOrder</b>.
|
||||
*/
|
||||
public GameEvent buildRoundSetupEvent() throws IllegalStateException {
|
||||
if (this.type == null || this.type != EventType.RoundSetupEvent ||
|
||||
this.roundCount == null ||
|
||||
this.characterOrder == null
|
||||
) {
|
||||
throw new IllegalStateException("Properties malformed for RoundSetupEvent");
|
||||
}
|
||||
var roundSetupEvent = new GameEvent();
|
||||
roundSetupEvent.type = EventType.UseInfinityStoneEvent;
|
||||
roundSetupEvent.roundCount = this.roundCount;
|
||||
roundSetupEvent.characterOrder = this.characterOrder;
|
||||
|
||||
return roundSetupEvent;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
@ -0,0 +1,77 @@
|
||||
package uulm.teamname.marvelous.gamelibrary.events;
|
||||
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import static org.assertj.core.api.Assertions.*;
|
||||
import uulm.teamname.marvelous.gamelibrary.IntVector2;
|
||||
import uulm.teamname.marvelous.gamelibrary.entities.*;
|
||||
|
||||
import java.util.HashMap;
|
||||
|
||||
import static org.mockito.Mockito.*;
|
||||
import static org.junit.jupiter.api.Assertions.*;
|
||||
|
||||
class EventBuilderTest {
|
||||
|
||||
@BeforeEach
|
||||
void setUp() {
|
||||
EventBuilder builder = new EventBuilder()
|
||||
.withType(EventType.CustomEvent)
|
||||
.withTargetEntity(new EntityID(EntityType.P1, 1))
|
||||
.withTargetField(new IntVector2(11, 13))
|
||||
.withAmount(15)
|
||||
.withOriginEntity(new EntityID(EntityType.P2, 4))
|
||||
.withOriginField(new IntVector2(15, 3))
|
||||
.withStoneType(StoneType.MindStone)
|
||||
.withRoundCount(3)
|
||||
.withTurnCount(4)
|
||||
.withCharacterOrder(new EntityID[] {
|
||||
new EntityID(EntityType.P1, 4),
|
||||
new EntityID(EntityType.P1, 1),
|
||||
new EntityID(EntityType.P2, 2),
|
||||
new EntityID(EntityType.P2, 4),
|
||||
new EntityID(EntityType.P1, 3),
|
||||
new EntityID(EntityType.P2, 5),})
|
||||
.withNextCharacter(new EntityID(EntityType.P2, 2))
|
||||
.withPlayerWon(2)
|
||||
.withMessage("Some message")
|
||||
.withTimeLeft(11)
|
||||
.withEntities(new Entity[] {})
|
||||
.withTurnOrder(new EntityID[] {
|
||||
new EntityID(EntityType.P1, 4),
|
||||
new EntityID(EntityType.P1, 1),
|
||||
new EntityID(EntityType.P2, 2),
|
||||
new EntityID(EntityType.P2, 4),
|
||||
new EntityID(EntityType.P1, 3),
|
||||
new EntityID(EntityType.P2, 5),})
|
||||
.withActiveCharacter(new EntityID(EntityType.P1, 1))
|
||||
.withWinCondition(false)
|
||||
.withTeamIdentifier("Team25")
|
||||
.withCustomContent(new HashMap<>());
|
||||
}
|
||||
|
||||
@Test
|
||||
void buildGameEvent() {
|
||||
var gameEvent = new EventBuilder()
|
||||
.withType(EventType.DisconnectEvent)
|
||||
.buildEntityEvent();
|
||||
|
||||
assertThat(gameEvent).isEqualTo()
|
||||
}
|
||||
|
||||
@Test
|
||||
void buildEntityEvent() {
|
||||
}
|
||||
|
||||
@Test
|
||||
void buildCharacterEvent() {
|
||||
}
|
||||
|
||||
@Test
|
||||
void buildGamestateEvent() {
|
||||
}
|
||||
|
||||
@Test
|
||||
void buildCustomEvent() {
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user