/** * Initialize standard settings for app */ protected override void Initialize() { LoadSettings(); uiManager = new UIManager(GraphicsDevice, Content); gameStateManager = new GameStageManager(GraphicsDevice, Content, uiManager); base.Initialize(); }
private void Awake() { if (Instance == null) { Instance = this; } else { throw new System.Exception(); } }
private void CreateManagers() { _managersObject = new GameObject("Managers"); ObjectPoolManager.CreateFromPrefab(_objectPoolManagerPrefab.gameObject, _managersObject); DataManager.CreateFromPrefab(_dataManagerPrefab.gameObject, _managersObject); GameStageManager.CreateFromPrefab(_gameStageManagerPrefab.gameObject, _managersObject); FighterManager.CreateFromPrefab(_fighterManagerPrefab.gameObject, _managersObject); AudioManager.CreateFromPrefab(_audioManagerPrefab.gameObject, _managersObject); PlayerManager.Create(_managersObject); }
public void GameStageManagerIsAssignedToGameStageDuringInitialize() { var dummyInput = new Input(); var stageCollection = new GameStageRegistry(); stageCollection.RegisterStage <MockGameStage>(); var gameStageMgr = new GameStageManager(dummyInput, stageCollection); gameStageMgr.Initialize(new MockGameResourceFactory()); Assert.AreSame(gameStageMgr.ActiveGameStage.GameStageManager, gameStageMgr); }
/// <summary> /// กำหนดค่าเริ่มต้นของเกม State 3 /// </summary> public ThirdStatePage() { InitializeComponent(); GlobalScore.ThirdScore = GlobalScore.SecondScore; scoreBoard.txt_Score.Text = GlobalScore.SecondScore.ToString(); // เหตุการณ์ในการรอให้แสดงคำถามเสร็จสิ้นก่อน _displayQuestionTimer = new DispatcherTimer(); _displayQuestionTimer.Interval = TimeSpan.FromMilliseconds(QuestionTimeMilisecond); // ตัวนับเวลาแสดงมือทักกี้ _doNotingHandTimer = new DispatcherTimer(); _doNotingHandTimer.Interval = TimeSpan.FromSeconds(TimeTickSecond); // ตัวนับเวลาก่อนเกมเริ่ม _prepareLayer = new PrepareLayerUI(); LayoutRoot.Children.Add(_prepareLayer); // กำหนดตัวควบคุมเกม และ แถวหน้ากับแถวหลัง _gameManager = new GameStageManagerThird(); _frontRow = new RowUI(); // กำหนดค่าให้ตัวแจ้งเวลาจบเกม _timeOutLayer = new TheS.SperfGames.MayaTukky.Controls.TimeOutLayerUI(); // กำหนดตำแหน่งของแถวหน้า Canvas.SetTop(_frontRow, 35); // ย่อขนาดของแถวหลัง ScaleTransform scale = new ScaleTransform(); scale.ScaleX = scale.ScaleX * 0.85; scale.ScaleY = scale.ScaleY * 0.85; Canvas.SetLeft(_frontRow, 52); Canvas.SetTop(_frontRow, 12); _frontRow.RenderTransform = scale; // เครื่องหมายที่แสดงผลการตอบถูกหรือตอบผิด _trueFalseMark = new TrueFalseMarkUI(); // สร้างตัวจับเวลา _timer = new DispatcherTimer(); _timer.Interval = TimeSpan.FromSeconds(TimeTickSecond); // สร้างหน้าก้อนเมฆในการแสดงการเปลี่ยนฉาก _clound = new CloudUI(); // กำหนดเหตุการณ์ของเกม initializeEvents(); // เริ่มเล่นตัวนับเวลาก่อนเข้าเล่นเกม _prepareLayer.Sb_Start.Begin(); Sb_Dark.Begin(); }
public void LoadsFirstStageInCollectionByDefault() { var dummyInput = new Input(); var stageCollection = new GameStageRegistry(); stageCollection.RegisterStage <MockGameStage>(); stageCollection.RegisterStage <DummyGameStage>(); var gameStageMgr = new GameStageManager(dummyInput, stageCollection); gameStageMgr.Initialize(new MockGameResourceFactory()); Assert.IsInstanceOfType(gameStageMgr.ActiveGameStage, typeof(MockGameStage)); }
private void Awake() { // Singleton if (instance == null) { instance = this; } else { Destroy(this.gameObject); } DontDestroyOnLoad(this.gameObject); }
public override void OnInspectorGUI() { base.OnInspectorGUI(); gameStageManager = target as GameStageManager; GUILayout.BeginHorizontal(); if (GUILayout.Button("Load", GUILayout.Width(100))) { this.gameStageManager.LoadStages(); } GUILayout.EndHorizontal(); }
public void InitializeIsInvokedOnGameStageWhenLoadedDuringInitialize() { var dummyInput = new Input(); var stageCollection = new GameStageRegistry(); stageCollection.RegisterStage <MockGameStage>(); var gameStageMgr = new GameStageManager(dummyInput, stageCollection); gameStageMgr.Initialize(new MockGameResourceFactory()); var stage = gameStageMgr.ActiveGameStage as MockGameStage; Assert.IsTrue(stage.InitializeWasInvoked); }
/// <summary> /// กำหนดค่าเริ่มต้นของเกม State 1 /// </summary> public FirstStatePage() { InitializeComponent(); // เหตุการณ์ในการรอให้แสดงคำถามเสร็จสิ้นก่อน _displayQuestionTimer = new DispatcherTimer(); _displayQuestionTimer.Interval = TimeSpan.FromMilliseconds(QuestionTimeMilisecond); // ตัวนับเวลาก่อนเกมเริ่ม _prepareLayer = new PrepareLayerUI(); LayoutRoot.Children.Add(_prepareLayer); // ตัวนับเวลาแสดงมือทักกี้ _doNotingHandTimer = new DispatcherTimer(); _doNotingHandTimer.Interval = TimeSpan.FromSeconds(TimeTickSecond); // ค่าเริ่มต้น _gameManager = new GameStageManagerFirst(); _frontRow = new RowUI(); _trueFalseMark = new TrueFalseMarkUI(); // กำหนดค่าให้ตัวแจ้งเวลาจบเกม _timeOutLayer = new TheS.SperfGames.MayaTukky.Controls.TimeOutLayerUI(); // สร้างตัวจับเวลา _timer = new DispatcherTimer(); _timer.Interval = TimeSpan.FromSeconds(TimeTickSecond); _autoPlayQuestionTimer = new DispatcherTimer(); _autoPlayQuestionTimer.Interval = TimeSpan.FromSeconds(AutoPlayQuestionTimeSecond); // สร้างหน้าก้อนเมฆในการแสดงการเปลี่ยนฉาก _clound = new CloudUI(); // กำหนดเหตุการณ์ของเกม initializeEvents(); // เปลี่ยนให้มีนาฬิกา 3 เรือน clock.ShowThreeClock(); // เริ่มเล่นตัวนับเวลาก่อนเข้าเล่นเกม _prepareLayer.Sb_Start.Begin(); Sb_Dark.Begin(); }
/// <summary> /// Board를 초기화합니다. /// </summary> /// <param name="gsm">스테이지의 상태를 검사하는 GameStageManager를 매개변수로 받습니다.</param> public void InitializeBoard(GameStageManager gsm) { // 게임 매니저를 할당합니다. gameStageMgr = gsm; // 비활성화된 Piece을 저장합니다. disabledPieces = new Queue <Piece>(); // 매치된 Piece을 저장합니다. matchedPieces = new List <Piece>(); // 매치된 Piece 중 검사한 Piece을 저장합니다. verifiedPieces = new List <Piece>(); // 힌트로 표시된 Piece을 저장합니다. hintPieces = new List <Piece>(); // 스테이지의 정보를 가져옵니다. stageData = GameManager.Instance.GetStageDataWithLevel(StaticVariables.LoadLevel); // 스테이지의 저장된 Piece 색깔 이미지를 저장합니다. pieceSprites = stageData.pieceSprites; // 스테이지에 저장된 Piece 아이템 이미지를 저장합니다. itemSprites = stageData.itemSprites; // Board의 세로 크기 vertical = stageData.vertical; // Board의 가로 크기 horizontal = stageData.horizontal; // 블럭을 Board 크기만큼 배열 크기를 정합니다. tiles = new Tile[horizontal, vertical]; // 카메라에 붙은 스크립트를 가져옵니다. camPivot = Camera.main.GetComponent <CamPivot>(); // 카메라의 위치를 크기에 비례해서 정합니다. camPivot.SetCameraPivot(horizontal, vertical, stageData.camPivotX, stageData.camPivotY, stageData.camPivotSize); // Board에 Tile을 생성합니다. CreateBackgroundTile(); // Board에 Breakable Tile을 생성합니다. CreateBreakableTile(); // Board에 생성된 Tile에 Piece를 생성합니다. CreatePiece(); }
private void Play() { GameStageManager.LoadStage("GameplayStage"); }