package rpgEngine;

import rpgEngine.Resources.CharacterSetPool;
import rpgEngine.Resources.ChipSetPool;
import rpgEngine.Resources.EnemyPartyPool;
import rpgEngine.Resources.EnemyPool;
import rpgEngine.Resources.EnemySetPool;
import rpgEngine.Resources.FontPool;
import rpgEngine.Resources.GameConfigPool;
import rpgEngine.Resources.HeroLearningPool;
import rpgEngine.Resources.HeroPool;
import rpgEngine.Resources.ImagePool;
import rpgEngine.Resources.ItemPool;
import rpgEngine.Resources.LevelRequirementPool;
import rpgEngine.Resources.MapPool;
import rpgEngine.Resources.NPCPool;
import rpgEngine.Resources.ShopPool;
import rpgEngine.Resources.SkillPool;
import rpgEngine.Resources.SoundPool;
import rpgEngine.Resources.TerrainPool;
import rpgEngine.UI.MainFrame;

public class Runner {

	public Runner() {
		
	}
	
	
	public void StartProgram() {
		//Load Raw Resources
		FontPool.getInstance();
		ImagePool.getInstance();
		ChipSetPool.getInstance();
		CharacterSetPool.getInstance();
		EnemySetPool.getInstance();
		SoundPool.getInstance();
		
		//Load Game - Non Dependent
		TerrainPool.getInstance();
		GameConfigPool.getInstance();
		SkillPool.getInstance();
		LevelRequirementPool.getInstance();
		HeroPool.getInstance();
		
		//Load Game - Dependent Files
		ItemPool.getInstance();
		ShopPool.getInstance();
		HeroLearningPool.getInstance();
		EnemyPool.getInstance();
		EnemyPartyPool.getInstance();
		NPCPool.getInstance();
		MapPool.getInstance();
		
		//Display
		MainFrame mf = new MainFrame();
		mf.setTitle("Project SafeGuard");
		mf.setVisible(true);
		mf.showScreen(MainFrame.PANEL_TITLE);
	}
	
	
	public static void main(String[] args) {
		Runner r = new Runner();
		r.StartProgram(); 
	}

}
