Repackaged grammar and (profile/archetype) matchers.

This commit is contained in:
Woody Folsom
2012-03-17 12:05:46 -04:00
parent e1aadadde4
commit 2c5339ba8e
10 changed files with 27 additions and 19 deletions

View File

@@ -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 {

View File

@@ -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) {

View File

@@ -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>();

View File

@@ -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 {

View File

@@ -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;

View File

@@ -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;

View File

@@ -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) {

View File

@@ -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;

View File

@@ -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

View File

@@ -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) {