001 package components; 002 003 import java.util.Map; 004 005 /** 006 * <p> 007 * GameObjectFactory creates GameObjects. It is immutable and abstract. 008 * This is implemented by a factory for every object that we want to create. 009 * </p> 010 */ 011 012 public abstract class GameObjectFactory<G extends GameObject> { 013 014 015 public abstract G newInstance(Map <String, String> properties, GameSpace g); 016 }