wip: implement score caltulation and action possibilities

This commit is contained in:
2021-06-06 02:00:12 +02:00
parent 98b47ea688
commit 598a1e00c1
4 changed files with 276 additions and 23 deletions

View File

@ -1,9 +1,7 @@
package uulm.teamname.marvelous.gamelibrary.ai;
import uulm.teamname.marvelous.gamelibrary.IntVector2;
import uulm.teamname.marvelous.gamelibrary.config.CharacterConfig;
import uulm.teamname.marvelous.gamelibrary.config.PartyConfig;
import uulm.teamname.marvelous.gamelibrary.config.ScenarioConfig;
import uulm.teamname.marvelous.gamelibrary.entities.EntityID;
import uulm.teamname.marvelous.gamelibrary.entities.EntityType;
import uulm.teamname.marvelous.gamelibrary.gamelogic.GameStateView;
@ -13,15 +11,15 @@ import java.util.HashMap;
class BoardAnalyzer {
private final Board origin;
private final EntityType player;
private final HashMap<Integer, Integer> cache = new HashMap<>();
private final HashMap<Integer, Float> cache = new HashMap<>();
public BoardAnalyzer(GameStateView state, EntityType player) {
this.origin = Board.generate(state, player);
this.player = player;
public BoardAnalyzer(GameStateView state, EntityID turn) {
this.origin = Board.generate(state, turn);
this.player = turn.type;
}
public Action analyze(IntVector2 position, EntityType turn, PartyConfig partyConfig, CharacterConfig characterConfig, ScenarioConfig scenarioConfig) {
ArrayList<Action> actions = origin.generateActions();
public Action analyze(GameStateView state, IntVector2 position, EntityID turn) {
ArrayList<Action> actions = origin.generateActions(state);
//TODO: create minimax tree