示例#1
0
        public void SetUp()
        {
            const string   pathToDevelopments = @"csv-data\developments-data.csv";
            GameDataLoader gdl = new GameDataLoader(pathToDevelopments, string.Empty);

            _developments = gdl.LoadDevelopments();
        }
示例#2
0
        public void SetUp()
        {
            const string   pathToDevelopments = @"csv-data\developments-data.csv";
            const string   pathToNobles       = @"csv-data\nobles-data.csv";
            GameDataLoader gdl = new GameDataLoader(pathToDevelopments, pathToNobles);

            _developments = gdl.LoadDevelopments();
            _nobles       = gdl.LoadNobles();
        }
示例#3
0
    void Awake()
    {
        if (_instance != null)
        {
            return;
        }

        _instance = this;
        DontDestroyOnLoad(this);
    }
        public void Setup()
        {
            var pathToDevelopments = @"csv-data\developments-data.csv";
            var pathToNobles       = @"csv-data\nobles-data.csv";

            var _sut = new GameDataLoader(pathToDevelopments, pathToNobles);

            _sutAllDevelopments = _sut.LoadDevelopments();
            _sutAllNobiles      = _sut.LoadNobles();
        }
示例#5
0
    protected static Dictionary <int, T> GetDataMapFromText <T>(string content, string fileName = "")
    {
        Dictionary <int, T> dataMap;
        Stopwatch           sw = new Stopwatch();

        sw.Start();
        var type   = typeof(T);
        var result = GameDataLoader.LoadXMLData(content, fileName, typeof(Dictionary <int, T>), type);

        dataMap = result as Dictionary <int, T>;

        sw.Stop();
        return(dataMap);
    }
示例#6
0
        static void Main(string[] args)
        {
            var root = args.FirstOrDefault();
            if (String.IsNullOrEmpty(root)) throw new ArgumentNullException("Must specify game data location as first parameter.");
            var gameDataRoot = Path.GetFullPath(root);
            if (!Directory.Exists(gameDataRoot)) throw new ArgumentNullException(String.Format("Directory does not exist: {0}", gameDataRoot));

            var loader = new GameDataLoader(new GameFileLoader(gameDataRoot));

            Program.Run_BlueprintGeneration(loader);

            //var localiser = loader.LoadLocalisations();
            //var gameData = loader.LoadGameData();
            //new Program(gameData, localiser).Run_CSV();
        }
示例#7
0
    /// <summary>
    /// Initialize the game objects.
    /// </summary>
    private void InitGameObjects()
    {
        UIFactory.LoadEventSystem(gameObject);

        State = gameObject.AddComponent <GameStateMachine>();

        var ui = UIFactory.LoadUICanvas(gameObject);

        UI = GameDataLoader <UIData> .SetGameData <UIManager>(ui, UIConfig);

        var campus = UIFactory.GenerateEmpty("Campus", transform);

        Campus = GameDataLoader <CampusData> .SetGameData <CampusManager>(campus, CampusConfig);

        TooltipManager.Initialize(ui.gameObject.transform);
    }
示例#8
0
 private static void Run_BlueprintGeneration(GameDataLoader loader)
 {
     var bps = loader.LoadBlueprints();
     foreach (var bp in bps)
     {
         Console.Out.Write("new Blueprint(\"{0}\"", bp.Id.SubTypeId);
         var input = bp.Inputs.Single();
         FormatStack(", new ItemAndQuantity(\"{0}/{1}\", {2:0.###}f / {3:0.###}f)", input, bp.BaseProductionTimeInSeconds);
         var firstOutput = bp.Outputs.First();
         FormatStack(",\n    new ItemAndQuantity(\"{0}/{1}\", {2:0.###}f / {3:0.###}f)", firstOutput, bp.BaseProductionTimeInSeconds);
         foreach(var output in bp.Outputs.Skip(1))
         {
             FormatStack(", new ItemAndQuantity(\"{0}/{1}\", {2:0.###}f / {3:0.###}f)", output, bp.BaseProductionTimeInSeconds);
         }
         Console.Out.WriteLine("),");
     }
 }
示例#9
0
        public PlatformGame()
        {
            log4net.Config.BasicConfigurator.Configure();
            log = LogManager.GetLogger(typeof(PlatformGame));
            ((log4net.Repository.Hierarchy.Hierarchy)LogManager.GetLoggerRepository()).Root.AddAppender(this);

            GameDataLoader = new GameDataLoader(this);
            GameMode       = new EliminationGameMode();
            fpsCounter     = new FPSCounter();
            renderer       = new Renderer(this);
            gameWorld      = new GameWorld(this);

            // TODO BDM: Move to preloader
            Content.RootDirectory = "Content";

            IsMouseVisible = Config.DebugModeEnabled;
        }
示例#10
0
        protected override void LoadContent()
        {
            renderer.LoadContent();

            GameDataLoader.LoadContent(Content);

            base.LoadContent();

            LevelEditor = new Editor.Editor(this);

            eventAggregationManager.AddListener(new GoreFactory(this), true);
            eventAggregationManager.AddListener(new SpawnPlayersHandler(this), true);
            eventAggregationManager.AddListener(new StartGameHandler(this), true);
            eventAggregationManager.AddListener(new CheckGameStateHandler(this), true);
            eventAggregationManager.AddListener(new ShootHandler(this), true);
            eventAggregationManager.AddListener(new PowerupPickedUpHandler(this), true);

            eventAggregationManager.SendMessage(new StartGameMessage());

            DebugCommandUI = new DebugCommandUI(this, DefaultFont);
            Components.Add(DebugCommandUI);
        }
示例#11
0
        static void Main(string[] args)
        {
            var root = args.FirstOrDefault();

            if (String.IsNullOrEmpty(root))
            {
                throw new ArgumentNullException("Must specify game data location as first parameter.");
            }
            var gameDataRoot = Path.GetFullPath(root);

            if (!Directory.Exists(gameDataRoot))
            {
                throw new ArgumentNullException(String.Format("Directory does not exist: {0}", gameDataRoot));
            }

            var loader = new GameDataLoader(new GameFileLoader(gameDataRoot));

            var localiser = loader.LoadLocalisations();
            var gameData  = loader.LoadGameData();

            new Program(gameData, localiser).Run_BlueprintGeneration();
            //new Program(gameData, localiser).Run_BlueprintSpeeds();
        }
示例#12
0
 public void InitData(GameDataLoader gameDataLoader)
 {
     this.gameDataLoader = gameDataLoader;
     DefaultData();
 }
示例#13
0
 public void SaveData()
 {
     GameDataLoader.SaveData(GameDataSet);
 }
示例#14
0
    public void CreateInitialData()
    {
        GameDataLoader dataLoader = new GameDataLoader();

        GameDataSet = dataLoader.CreateInitialData();
    }
示例#15
0
    public void UpdateData()
    {
        GameDataLoader dataLoader = new GameDataLoader();

        GameDataSet = dataLoader.ReadData();
    }
示例#16
0
        public override IEnumerator LoadModuleAsync()
        {
            m_GameDataLoader = new GameDataLoader();

            var assetName = "Data/GameData/GameDataConfig";

            AssetManager.Instance.LoadAssetAsync(assetName, (asset) =>
            {
                if (asset == null)
                {
                    m_HasDataConfig = false;
                    return;
                }

                var configBytes          = (asset as TextAsset).bytes;
                var gameDataConfigParser = new GameDataConfigParser(configBytes);
                m_LoadPriorityList       = gameDataConfigParser.GetLoadPriorityList();
                m_ModuleLoadDone         = true;
                AssetManager.Instance.SubAssetReference(assetName);
            });

            while (!m_ModuleLoadDone)
            {
                if (!m_HasDataConfig)
                {
                    Debug.LogWarning("GameData配置文件无法被找到,GameData相关功能无法使用");
                    m_HasDataConfig = true;
                    yield break;
                }
                yield return(null);
            }

            LoadingUI.Instance.ShowLoadingTip(LoadingLanguageData.Instance.GetString(25));
            var count = m_LoadPriorityList[0].Count;

            for (int i = 0; i < count; ++i)
            {
                var gameDataTypeName = m_LoadPriorityList[0][i];
                assetName = string.Format("Data/GameData/{0}", gameDataTypeName);
                AssetManager.Instance.LoadAssetAsync(assetName, (asset) =>
                {
                    var bytes = (asset as TextAsset).bytes;
                    m_GameDataLoader.LoadGameDataAsync(bytes, gameDataTypeName, () =>
                    {
                        ++m_LoadDoneCount;
                        AssetManager.Instance.SubAssetReference(assetName);
                        LoadingUI.Instance.SetLoadingBarProgressDelta(m_LoadDoneCount / (float)count);
                    });
                });
            }

            while (m_LoadDoneCount < count)
            {
                yield return(null);
            }

            if (count == 0)
            {
                LoadingUI.Instance.SetLoadingBarProgressDelta(1);
            }

            LoadOtherGameDataAync();
        }
示例#17
0
 public void InitData(GameDataLoader gameDataLoader)
 {
     PlayerData = new PlayerData();
     PlayerData.InitData(gameDataLoader);
 }
 public void Awake()
 {
     GameDataLoader.Instance = this;
     // String ok = GameDataLoader.Instance.GetLocaleString("ok"); // 测试
     DontDestroyOnLoad(gameObject);
 }