Repackaged grammar and (profile/archetype) matchers.
This commit is contained in:
@@ -8,13 +8,13 @@ import dk.itu.mario.MarioInterface.LevelInterface;
|
||||
import dk.itu.mario.engine.DataRecorder;
|
||||
import dk.itu.mario.engine.sprites.Enemy;
|
||||
import dk.itu.mario.engine.sprites.SpriteTemplate;
|
||||
import dk.itu.mario.level.generator.ArchetypeMatcher;
|
||||
import dk.itu.mario.level.generator.GrammarTuner;
|
||||
import dk.itu.mario.level.generator.LevelArchetype;
|
||||
import dk.itu.mario.level.generator.LevelGrammar;
|
||||
import dk.itu.mario.level.generator.LevelGrammarFactory;
|
||||
import dk.itu.mario.level.generator.PlayerProfile;
|
||||
import dk.itu.mario.level.generator.ProfileMatcher;
|
||||
import dk.itu.mario.level.grammar.GrammarTuner;
|
||||
import dk.itu.mario.level.grammar.LevelGrammar;
|
||||
import dk.itu.mario.level.grammar.LevelGrammarFactory;
|
||||
import dk.itu.mario.level.matcher.ArchetypeMatcher;
|
||||
import dk.itu.mario.level.matcher.LevelArchetype;
|
||||
import dk.itu.mario.level.matcher.PlayerProfile;
|
||||
import dk.itu.mario.level.matcher.ProfileMatcher;
|
||||
|
||||
public class MyNewLevel extends Level {
|
||||
public enum MazeLevel {
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
package dk.itu.mario.level.generator;
|
||||
package dk.itu.mario.level.grammar;
|
||||
|
||||
import dk.itu.mario.level.matcher.LevelArchetype;
|
||||
import dk.itu.mario.level.matcher.PlayerProfile;
|
||||
|
||||
public class GrammarTuner {
|
||||
public static LevelGrammar tune(LevelGrammar grammar, PlayerProfile profile, LevelArchetype archetype) {
|
||||
@@ -1,4 +1,4 @@
|
||||
package dk.itu.mario.level.generator;
|
||||
package dk.itu.mario.level.grammar;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
@@ -7,6 +7,7 @@ import java.util.Random;
|
||||
import java.util.Set;
|
||||
import java.util.TreeSet;
|
||||
|
||||
|
||||
public class LevelGrammar {
|
||||
private Variable start;
|
||||
private Map<Variable, ProductionRule> ruleMap = new HashMap<Variable, ProductionRule>();
|
||||
@@ -1,4 +1,7 @@
|
||||
package dk.itu.mario.level.generator;
|
||||
package dk.itu.mario.level.grammar;
|
||||
|
||||
import dk.itu.mario.level.matcher.LevelArchetype;
|
||||
import dk.itu.mario.level.matcher.PlayerProfile;
|
||||
|
||||
|
||||
public class LevelGrammarFactory {
|
||||
@@ -1,8 +1,9 @@
|
||||
package dk.itu.mario.level.generator;
|
||||
package dk.itu.mario.level.grammar;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
public class ProductionRule {
|
||||
private Variable lhs;
|
||||
private List<Variable> rhs;
|
||||
@@ -1,4 +1,4 @@
|
||||
package dk.itu.mario.level.generator;
|
||||
package dk.itu.mario.level.grammar;
|
||||
|
||||
public class Variable implements Comparable<Variable> {
|
||||
private boolean terminal;
|
||||
@@ -1,8 +1,8 @@
|
||||
package dk.itu.mario.level.generator;
|
||||
package dk.itu.mario.level.matcher;
|
||||
|
||||
import dk.itu.mario.MarioInterface.GamePlay;
|
||||
import dk.itu.mario.engine.DataRecorder;
|
||||
import dk.itu.mario.level.generator.LevelArchetype.TYPE;
|
||||
import dk.itu.mario.level.matcher.LevelArchetype.TYPE;
|
||||
|
||||
public class ArchetypeMatcher {
|
||||
public static LevelArchetype getMatchingArchetype(GamePlay playerMetrics, DataRecorder detailedInfo) {
|
||||
@@ -1,4 +1,4 @@
|
||||
package dk.itu.mario.level.generator;
|
||||
package dk.itu.mario.level.matcher;
|
||||
|
||||
public class LevelArchetype {
|
||||
public static final int MAX_DIFFICULTY_LEVEL = 10;
|
||||
@@ -1,4 +1,4 @@
|
||||
package dk.itu.mario.level.generator;
|
||||
package dk.itu.mario.level.matcher;
|
||||
|
||||
public class PlayerProfile {
|
||||
//From Bartle/Yee models of player psychology: achiever, killer, explorer, manipulator
|
||||
@@ -1,9 +1,9 @@
|
||||
package dk.itu.mario.level.generator;
|
||||
package dk.itu.mario.level.matcher;
|
||||
|
||||
import dk.itu.mario.MarioInterface.GamePlay;
|
||||
import dk.itu.mario.engine.DataRecorder;
|
||||
import dk.itu.mario.level.generator.PlayerProfile.SKILL_LEVEL;
|
||||
import dk.itu.mario.level.generator.PlayerProfile.TYPE;
|
||||
import dk.itu.mario.level.matcher.PlayerProfile.SKILL_LEVEL;
|
||||
import dk.itu.mario.level.matcher.PlayerProfile.TYPE;
|
||||
|
||||
public class ProfileMatcher {
|
||||
public static PlayerProfile getMatchingProfile(GamePlay playerMetrics, DataRecorder detailedInfo) {
|
||||
Reference in New Issue
Block a user