// Use this for initialization. void Start() { dbm = GameObject.Find("Dialog Boxes").GetComponent <DialogBoxManager>(); // Add liseners here. buttonConstructor.onClick.AddListener(delegate { OnButtonConstruction(); }); buttonWorld.onClick.AddListener(delegate { OnButtonWorld(); }); buttonWork.onClick.AddListener(delegate { OnButtonWork(); }); buttonOptions.onClick.AddListener(delegate { OnButtonOptions(); }); buttonSettings.onClick.AddListener(delegate { OnButtonSettings(); }); DeactivateAll(); }
public void OkayWasClicked() { int height = int.Parse(Height.text); int width = int.Parse(Width.text); int depth = int.Parse(Depth.text); // Try and parse seed as Integer if this is not possible then hash string as integer int seed = 0; if (Seed.text == string.Empty) { seed = UnityEngine.Random.Range(0, int.MaxValue); } else if (int.TryParse(Seed.text, out seed) == false) { seed = Seed.text.GetHashCode(); Debug.LogWarning("Converted " + Seed.text + " to hash " + seed); } string generatorFile = GeneratorInputField.text + ".xml"; DialogBoxManager dialogManager = GameObject.FindObjectOfType <DialogBoxManager>(); dialogManager.dialogBoxPromptOrInfo.SetPrompt("message_creating_new_world"); dialogManager.dialogBoxPromptOrInfo.ShowDialog(); SceneController.LoadNewWorld(width, height, depth, seed, generatorFile, GenerateAsteroids.isOn); }
private void Awake() { prefabManager = GetComponent <PrefabManager>(); menuManager = GetComponent <MenuManager>(); sceneLoader = GetComponent <SceneLoader>(); charactersCommon = GetComponent <CharactersCommon>(); spawnCharacter = GetComponent <SpawnCharacter>(); pauseManager = GetComponent <PauseManager>(); levelMessageManager = GetComponent <LevelMessageManager>(); tutorialMessageManager = GetComponent <TutorialMessageManager>(); menuMessageManager = GetComponent <MenuMessageManager>(); threatManager = GetComponent <ThreatManager>(); timeEventManager = GetComponent <TimeEventManager>(); timeManager = GetComponent <TimeManager>(); cameraManager = GetComponent <CameraManager>(); notebookManager = GetComponent <NotebookManager>(); dialogBoxManager = GetComponent <DialogBoxManager>(); tutorialDialogBoxManager = GetComponent <TutorialDialogBoxManager>(); idCardManager = GetComponent <IdCardManager>(); gameDataManager = GetComponent <GameDataManager>(); threatChartManager = GetComponent <ThreatChartManager>(); logManager = GetComponent <LogManager>(); userActionManager = GetComponent <UserActionManager>(); if (SceneManager.GetActiveScene().buildIndex == StaticDb.menuSceneIndex || SceneManager.GetActiveScene().buildIndex == StaticDb.loginSceneIndex) { return; } regularPathfinder = GameObject.Find("PathFinderRegular").GetComponent <Pathfinding>(); strictedPathfinder = GameObject.Find("PathFinderRestricted").GetComponent <Pathfinding>(); }
void Start() { dialogManager = GameObject.FindObjectOfType <DialogBoxManager>(); WorldController wc = GameObject.FindObjectOfType <WorldController>(); // Add liseners here. buttonQuit.onClick.AddListener(delegate { OnButtonQuitGame(); }); buttonResume.onClick.AddListener(delegate { this.CloseDialog(); }); buttonNewWorld.onClick.AddListener(delegate { wc.NewWorld(); }); buttonSave.onClick.AddListener(delegate { OnButtonSaveGame(); }); buttonLoad.onClick.AddListener(delegate { OnButtonLoadGame(); }); }
public static DialogBoxManager FetchDialogBoxManager() { GameObject dialogBoxManagerObject = GameObject.FindGameObjectWithTag(TagsConstants.DIALOG_BOX_MANAGER_TAG); DialogBoxManager dialogBoxManager = dialogBoxManagerObject.GetComponent <DialogBoxManager>(); return(dialogBoxManager); }
private void DoBattingAction(BallController ballControllerScript, PlayerStatus playerStatusScript, float pitchSuccesRate) { PlayersTurnManager playersTurnManager = GameUtils.FetchPlayersTurnManager(); if (!ActionCalculationUtils.HasActionSucceeded(pitchSuccesRate)) { this.EquipedBat.GetComponent <CapsuleCollider2D>().enabled = false; ballControllerScript.IsPitched = false; ballControllerScript.IsHit = true; GameObject homeBase = GameUtils.FetchBaseGameObject(TagsConstants.HOME_BASE_TAG); List <Vector2Int> ballPositionList = ActionCalculationUtils.CalculateBallFallPositionList(this.gameObject, 0, (int)MathUtils.HALF_CIRCLE_ANGLE_IN_DEGREE, 10, true, FieldUtils.GetGameObjectTilePositionOnField(homeBase)); int ballPositionIndex = Random.Range(0, ballPositionList.Count - 1); Vector2Int ballTilePosition = ballPositionList[ballPositionIndex]; ballControllerScript.StopCoroutine(ballControllerScript.MovementCoroutine); ballControllerScript.Target = FieldUtils.GetTileCenterPositionInGameWorld(ballTilePosition); Vector2 direction = MathUtils.CalculateDirection(ballControllerScript.gameObject.transform.position, ballControllerScript.Target.Value); float ballDirectionAngle = MathUtils.CalculateDirectionAngle(direction); Vector3 firstBasePosition = FieldUtils.GetTileCenterPositionInGameWorld(FieldUtils.GetFirstBaseTilePosition()); Vector3 homeBasePosition = FieldUtils.GetTileCenterPositionInGameWorld(FieldUtils.GetHomeBaseTilePosition()); float homeBaseToFirstBaseDistance = Vector3.Distance(homeBasePosition, firstBasePosition); Vector3 rigthSideFictionalPosition = new Vector3(firstBasePosition.x, homeBasePosition.y, 0); float homeBaseToRigthSideFictionalDistance = Vector3.Distance(homeBasePosition, rigthSideFictionalPosition); float foulZoneAngle = Mathf.Acos(homeBaseToRigthSideFictionalDistance / homeBaseToFirstBaseDistance); //Fix calcul when the ball go to the left zone if (ballDirectionAngle < MathUtils.HALF_CIRCLE_ANGLE_IN_DEGREE - foulZoneAngle * Mathf.Rad2Deg && ballDirectionAngle > foulZoneAngle * Mathf.Rad2Deg) { RunnerBehaviour runnerBehaviour = this.ConvertBatterToRunner(playerStatusScript); this.AddRunnerAbilitiesToBatter(this.gameObject); playerStatusScript.IsAllowedToMove = true; runnerBehaviour.EnableMovement = true; } playersTurnManager.IsRunnersTurnsDone = false; StartCoroutine(this.WaitToEnableBatCollider()); } else { float ballOutcomeRate = ActionCalculationUtils.CalculateBallOutcomeProbability(ballControllerScript.CurrentPitcher); bool isBallOutcome = ActionCalculationUtils.HasActionSucceeded(ballOutcomeRate); DialogBoxManager dialogBoxManagerScript = GameUtils.FetchDialogBoxManager(); string outcomeMessage; if (!isBallOutcome) { StrikeOutcomeCount++; outcomeMessage = "STRIKE!!!"; } else { BallOutcomeCount++; outcomeMessage = "BALL!!!"; } ballControllerScript.IsPitched = true; ballControllerScript.Target = FieldUtils.GetTileCenterPositionInGameWorld(FieldUtils.GetCatcherZonePosition()); dialogBoxManagerScript.DisplayDialogAndTextForGivenAmountOfTime(1f, false, outcomeMessage); } }
public void FixedUpdate() { if (WorldController.Instance.IsPaused) { return; } Vector3 destination = LandingCoordinates; if (DestinationReached && !TradeCompleted) { return; } if (TradeCompleted) { destination = LeavingCoordinates; } float distance = Vector3.Distance(transform.position, destination); if (distance > DestinationReachedThreshold) { // rotate the model Vector3 vectorToTarget = destination - transform.position; float angle = (Mathf.Atan2(vectorToTarget.y, vectorToTarget.x) * Mathf.Rad2Deg) - 90; Quaternion q = Quaternion.AngleAxis(angle, Vector3.forward); transform.rotation = Quaternion.Slerp(transform.rotation, q, Time.deltaTime * Speed * WorldController.Instance.TimeScale); // Direction to the next waypoint Vector3 dir = (destination - transform.position).normalized; dir *= Speed * Time.fixedDeltaTime * WorldController.Instance.TimeScale; transform.position = transform.position + dir; } else { DestinationReached = true; if (TradeCompleted) { Destroy(this.gameObject); } else { DialogBoxManager dbm = GameObject.Find("Dialog Boxes").GetComponent <DialogBoxManager>(); Trader playerTrader = Trader.FromPlayer(World.Current.Wallet.Currencies[Trader.Currency.Name]); Trade trade = new Trade(playerTrader, Trader); dbm.dialogBoxTrade.SetupTrade(trade); dbm.dialogBoxTrade.OnTradeCancelled = () => { TradeCompleted = true; }; dbm.dialogBoxTrade.OnTradeCompleted = () => { TradeCompleted = true; TrasfertTradedItems(trade); }; dbm.dialogBoxTrade.ShowDialog(); } } }
// Use this for initialization void Start() { Attempts = GameObject.Find("Attempts"); Hearts = Attempts.transform.Find("Hearts").GetComponent <Image>(); DialogBoxManager = GameObject.Find("DialogBoxManager").GetComponent <DialogBoxManager>(); currentAttempt = PersistentGameManager.Instance.CurrentAttempts; maxAttempts = 2; }
public void TagOutRunner(GameObject targetToTagOut) { PlayerStatus newBatterStatus = null; GameManager gameManager = GameUtils.FetchGameManager(); DialogBoxManager dialogBoxManagerScript = GameUtils.FetchDialogBoxManager(); PlayersTurnManager playersTurnManager = GameUtils.FetchPlayersTurnManager(); RunnerBehaviour tagOutRunnerBehaviourScript = PlayerUtils.FetchRunnerBehaviourScript(targetToTagOut); int batterCount = gameManager.AttackTeamBatterListClone.Count; //test in case there no one left to pick if (batterCount > 0) { GameObject newBatter = gameManager.AttackTeamBatterListClone.First(); newBatterStatus = PlayerUtils.FetchPlayerStatusScript(newBatter); BatterBehaviour newbatterBehaviourScript = PlayerUtils.FetchBatterBehaviourScript(newBatter); newbatterBehaviourScript.EquipedBat = tagOutRunnerBehaviourScript.EquipedBat; newBatter.SetActive(true); } dialogBoxManagerScript.DisplayDialogAndTextForGivenAmountOfTime(1f, false, "TAG OUT !!!!!!!"); tagOutRunnerBehaviourScript.EquipedBat = null; gameManager.AttackTeamRunnerList.Remove(targetToTagOut); targetToTagOut.SetActive(false); playersTurnManager.UpdatePlayerTurnQueue(targetToTagOut); int runnersCount = gameManager.AttackTeamRunnerList.Count; bool isRunnersAllSafeAndStaying = gameManager.AttackTeamRunnerList.TrueForAll(runner => { RunnerBehaviour runnerBehaviour = PlayerUtils.FetchRunnerBehaviourScript(runner); return(runnerBehaviour.IsSafe && runnerBehaviour.IsStaying); }); if (runnersCount == 0 && batterCount == 0 || batterCount == 0 && runnersCount > 0 && isRunnersAllSafeAndStaying) { gameManager.ProcessNextInningHalf(); } else if (runnersCount == 0 && batterCount > 0) { StartCoroutine(gameManager.WaitAndReinit(dialogBoxManagerScript, newBatterStatus, FieldBall)); } else if (runnersCount > 0) { if (isRunnersAllSafeAndStaying && batterCount > 0) { StartCoroutine(gameManager.WaitAndReinit(dialogBoxManagerScript, newBatterStatus, FieldBall)); } else { playersTurnManager.TurnState = TurnStateEnum.FIELDER_TURN; PlayersTurnManager.IsCommandPhase = true; } } }
// Use this for initialization void Start() { LevelManager = GameObject.Find("LevelManager").GetComponent <LevelManager>(); if (GameObject.Find("DialogBoxManager") != null) { DialogBoxManager = GameObject.Find("DialogBoxManager").GetComponent <DialogBoxManager>(); } }
public void Start() { // Create GameObject so we can have access to a transform which has a position of "Vector3.zero". new GameObject("VisualPath", typeof(VisualPath)); GameObject go; tileSpriteController = new TileSpriteController(World); characterSpriteController = new CharacterSpriteController(World); furnitureSpriteController = new FurnitureSpriteController(World); utilitySpriteController = new UtilitySpriteController(World); jobSpriteController = new JobSpriteController(World, furnitureSpriteController, utilitySpriteController); inventorySpriteController = new InventorySpriteController(World, inventoryUI); shipSpriteController = new ShipSpriteController(World); buildModeController = new BuildModeController(); spawnInventoryController = new SpawnInventoryController(); mouseController = new MouseController(buildModeController, furnitureSpriteController, utilitySpriteController, circleCursorPrefab); questController = new QuestController(); cameraController = new CameraController(); TradeController = new TradeController(); autosaveManager = new AutosaveManager(); dialogBoxManager = GameObject.Find("Dialog Boxes").GetComponent <DialogBoxManager>(); // Register inputs actions KeyboardManager.Instance.RegisterInputAction("DevMode", KeyboardMappedInputType.KeyDown, ChangeDevMode); // Hiding Dev Mode spawn inventory controller if devmode is off. spawnInventoryController.SetUIVisibility(Settings.GetSetting("DialogBoxSettingsDevConsole_developerModeToggle", false)); cameraController.Initialize(); cameraController.Moved += this.World.OnCameraMoved; // Initialising controllers. GameObject canvas = GameObject.Find("Canvas"); go = Instantiate(Resources.Load("UI/ContextMenu"), canvas.transform.position, canvas.transform.rotation, canvas.transform) as GameObject; go.name = "ContextMenu"; GameController.Instance.IsModal = false; GameObject devConsole = (GameObject)Instantiate(Resources.Load("UI/Console/DevConsole")); // This is just to make sure it isn't null (the static thing shouldn't destroy this copy but in some edge cases it might decide to). if (devConsole != null) { devConsole.name = "DevConsole-Spawned"; devConsole.transform.SetParent(canvas.transform, false); devConsole.transform.SetAsLastSibling(); devConsole.SetActive(true); DeveloperConsole.DevConsole.Close(); } }
private static void ValidateDialogBox(DialogBox dialog) { if (string.IsNullOrEmpty(dialog.textArea.text)) { throw new UnityException("EXPORT ERROR: DialogBox missing text!"); } if (DialogBoxManager.GetInterruptNode(dialog.outPoint) == null) { throw new UnityException("EXPORT ERROR: DialogBox missing interrupt flag connection!"); } }
public void OkayWasClicked() { int height = int.Parse(Height.text); int width = int.Parse(Width.text); int depth = int.Parse(Depth.text); string generatorFile = GeneratorInputField.text + ".xml"; DialogBoxManager dialogManager = GameObject.FindObjectOfType <DialogBoxManager>(); dialogManager.dialogBoxPromptOrInfo.SetPrompt("message_creating_new_world"); dialogManager.dialogBoxPromptOrInfo.ShowDialog(); SceneController.Instance.LoadNewWorld(width, height, depth, generatorFile, GenerateAsteroids.isOn); }
public void DeleteWasClicked() { DialogBoxManager dbm = GameObject.Find("Dialog Boxes").GetComponent <DialogBoxManager>(); dbm.dialogBoxAreYouSure.Closed = () => { if (dbm.dialogBoxAreYouSure.Result == DialogBoxResult.Yes) { DeleteFile(); } }; dbm.dialogBoxAreYouSure.ShowDialog(); }
public void LoadWorld(string filePath) { // This function gets called when the user confirms a filename // from the load dialog box. // Get the file name from the save file dialog box. Debug.ULogChannel("DialogBoxLoadGame", "LoadWorld button was clicked."); DialogBoxManager dbm = GameObject.Find("Dialog Boxes").GetComponent <DialogBoxManager>(); dbm.dialogBoxPromptOrInfo.SetPrompt("Woruld you like to save before loading a new game?"); dbm.dialogBoxPromptOrInfo.ShowDialog(); WorldController.Instance.LoadWorld(filePath); }
public void LoadWorld(string filePath) { // This function gets called when the user confirms a filename // from the load dialog box. // Get the file name from the save file dialog box. UnityDebugger.Debugger.Log("DialogBoxLoadGame", "LoadWorld button was clicked."); DialogBoxManager dbm = GameObject.Find("Dialog Boxes").GetComponent <DialogBoxManager>(); dbm.dialogBoxPromptOrInfo.SetPrompt("message_loading_game"); dbm.dialogBoxPromptOrInfo.ShowDialog(); SceneController.LoadWorld(filePath); }
public void DeleteWasClicked() { string fileName = gameObject.GetComponentInChildren <InputField>().text; DialogBoxManager dbm = GameObject.Find("Dialog Boxes").GetComponent <DialogBoxManager>(); dbm.dialogBoxPromptOrInfo.Closed = () => { if (dbm.dialogBoxPromptOrInfo.Result == DialogBoxResult.Yes) { DeleteFile(); } }; dbm.dialogBoxPromptOrInfo.SetPrompt("prompt_delete_file", fileName); dbm.dialogBoxPromptOrInfo.SetButtons(DialogBoxResult.Yes, DialogBoxResult.No); dbm.dialogBoxPromptOrInfo.ShowDialog(); }
// Use this for initialization void Start() { AttemptManager = GameObject.Find("AttemptManager"); DialogBoxManager = GameObject.Find("DialogBoxManager").GetComponent <DialogBoxManager>(); // Initialize timer bar characteristics filler = transform.Find("Mask/Filler").gameObject.GetComponent <Image>(); timeLeft = levelSeconds; filler.fillAmount = 1.0f; // Start unpaused paused = false; Time.timeScale = 1; // Initialize with saved data if any ElapsedTime = PersistentGameManager.Instance.ElapsedTime; StartTime = PersistentGameManager.Instance.StartTime; }
public void OkayWasClicked() { string fileName = gameObject.GetComponentInChildren <InputField>().text; if (fileName == string.Empty) { DialogBoxManager dbm = GameObject.Find("Dialog Boxes").GetComponent <DialogBoxManager>(); dbm.dialogBoxPromptOrInfo.SetAsInfo("message_file_needed_for_load"); dbm.dialogBoxPromptOrInfo.ShowDialog(); return; } // TODO: Is the filename valid? I.E. we may want to ban path-delimiters (/ \ or :) and // maybe periods? ../../some_important_file // Right now fileName is just what was in the dialog box. We need to pad this out to the full // path, plus an extension! // In the end, we're looking for something that's going to be similar to this (depending on OS) // C:\Users\Quill18\ApplicationData\MyCompanyName\MyGameName\Saves\SaveGameName123.sav // Application.persistentDataPath == C:\Users\<username>\ApplicationData\MyCompanyName\MyGameName\ string saveDirectoryPath = GameController.Instance.FileSaveBasePath(); EnsureDirectoryExists(saveDirectoryPath); string filePath = System.IO.Path.Combine(saveDirectoryPath, fileName + ".sav"); // At this point, filePath should look very much like // C:\Users\Quill18\ApplicationData\MyCompanyName\MyGameName\Saves\SaveGameName123.sav if (File.Exists(filePath) == false) { //// TODO: Do file overwrite dialog box. DialogBoxManager dbm = GameObject.Find("Dialog Boxes").GetComponent <DialogBoxManager>(); dbm.dialogBoxPromptOrInfo.SetAsInfo("message_file_doesn't_exist"); dbm.dialogBoxPromptOrInfo.ShowDialog(); return; } CloseDialog(); LoadWorld(filePath); }
// Use this for initialization. private void Start() { dbm = GameObject.Find("Dialog Boxes").GetComponent <DialogBoxManager>(); furnitureMenu = GameObject.Find("MenuFurniture"); floorMenu = GameObject.Find("MenuFloor"); constructorMenu = GameObject.Find("MenuConstruction"); // Add listeners here. buttonConstructor.onClick.AddListener(delegate { OnButtonConstruction(); }); buttonWorld.onClick.AddListener(delegate { OnButtonWorld(); }); buttonWork.onClick.AddListener(delegate { OnButtonWork(); }); buttonOptions.onClick.AddListener(delegate { OnButtonOptions(); }); buttonSettings.onClick.AddListener(delegate { OnButtonSettings(); }); buttonQuests = CreateButton("menu_quests"); buttonQuests.onClick.AddListener(delegate { OnButtonQuests(); }); DeactivateAll(); }
/* * Remove() removes the DialogBox and the accompanied InterruptNode */ public override void Remove() { // only remove if there are other dialog boxes if (parentNode != null && child == null) { Debug.Log("Can't remove the last DialogBox!"); return; } HistoryManager.RecordEditor(); Node interruptNode = DialogBoxManager.GetInterruptNode(outPoint); SDEContainerManager.RemoveContainer(this, markHistory: false); if (interruptNode != null) { Debug.Log("deleting interrupt"); NodeManager.RemoveNode(interruptNode, markHistory: false); } }
public void Start() { // Create GameObject so we can have access to a transform which has a position of "Vector3.zero". new GameObject("VisualPath", typeof(VisualPath)); GameObject go; tileSpriteController = new TileSpriteController(World); characterSpriteController = new CharacterSpriteController(World); furnitureSpriteController = new FurnitureSpriteController(World); utilitySpriteController = new UtilitySpriteController(World); jobSpriteController = new JobSpriteController(World, furnitureSpriteController, utilitySpriteController); inventorySpriteController = new InventorySpriteController(World, inventoryUI); shipSpriteController = new ShipSpriteController(World); buildModeController = new BuildModeController(); spawnInventoryController = new SpawnInventoryController(); mouseController = new MouseController(buildModeController, furnitureSpriteController, utilitySpriteController, circleCursorPrefab); questController = new QuestController(); cameraController = new CameraController(); TradeController = new TradeController(); autosaveManager = new AutosaveManager(); dialogBoxManager = GameObject.Find("Dialog Boxes").GetComponent <DialogBoxManager>(); // Register inputs actions KeyboardManager.Instance.RegisterInputAction("DevMode", KeyboardMappedInputType.KeyDown, ChangeDevMode); // Hiding Dev Mode spawn inventory controller if devmode is off. spawnInventoryController.SetUIVisibility(Settings.GetSetting("DialogBoxSettings_developerModeToggle", false)); cameraController.Initialize(); cameraController.Moved += this.World.OnCameraMoved; // Initialising controllers. GameObject canvas = GameObject.Find("Canvas"); go = Instantiate(Resources.Load("UI/ContextMenu"), canvas.transform.position, canvas.transform.rotation, canvas.transform) as GameObject; go.name = "ContextMenu"; GameController.Instance.IsModal = false; }
/// <summary> /// Display the TradeDialogBox and allow the user to trade. /// </summary> /// <param name="tradeShip"></param> public void ShowTradeDialogBox(TraderShipController tradeShip) { DialogBoxManager dbm = GameObject.Find("Dialog Boxes").GetComponent <DialogBoxManager>(); Trader playerTrader = Trader.FromPlayer(World.Current.Wallet[tradeShip.Trader.Currency.Name]); Trade trade = new Trade(playerTrader, tradeShip.Trader); dbm.dialogBoxTrade.SetupTrade(trade); dbm.dialogBoxTrade.TradeCancelled = () => { tradeShip.TradeCompleted = true; TradeShips.Remove(tradeShip); }; dbm.dialogBoxTrade.TradeCompleted = () => { tradeShip.TradeCompleted = true; TrasfertTradedItems(trade, tradeShip.LandingCoordinates); TradeShips.Remove(tradeShip); }; dbm.dialogBoxTrade.ShowDialog(); }
// Use this for initialization. private void Start() { dialogBoxManager = GameObject.Find("Dialog Boxes").GetComponent <DialogBoxManager>(); menuLeft = GameObject.Find("MenuLeft").GetComponent <MenuLeft>(); // Add listeners here. buttonConstructor.onClick.AddListener(delegate { OnButtonConstruction(); }); buttonWorld.onClick.AddListener(delegate { OnButtonWorld(); }); buttonWork.onClick.AddListener(delegate { OnButtonWork(); }); buttonOptions.onClick.AddListener(delegate { OnButtonOptions(); }); buttonSettings.onClick.AddListener(delegate { OnButtonSettings(); }); buttonQuests = CreateButton("menu_quests"); buttonQuests.onClick.AddListener(delegate { OnButtonQuests(); }); DeactivateAll(); }
private void OnTriggerStay2D(Collider2D collision) { if (ColliderUtils.HasBallCollided(collision) && !GameData.isPaused) { GameObject ball = collision.gameObject; BallController ballControllerScript = BallUtils.FetchBallControllerScript(ball); if (ballControllerScript.IsHit) { timeElapsed += Time.deltaTime; if (timeElapsed >= TIME_TO_WAIT_IN_FOUL_ZONE) { Debug.Log("the ball is foul"); timeElapsed = 0; DialogBoxManager dialogBoxManagerScript = GameUtils.FetchDialogBoxManager(); dialogBoxManagerScript.DisplayDialogAndTextForGivenAmountOfTime(1f, false, "FOUL!!"); PlayersTurnManager playersTurnManager = GameUtils.FetchPlayersTurnManager(); GameObject pitcher = TeamUtils.GetPlayerTeamMember(PlayerFieldPositionEnum.PITCHER, TeamUtils.GetPlayerIdFromPlayerFieldPosition(PlayerFieldPositionEnum.PITCHER)); GameManager gameManager = GameUtils.FetchGameManager(); GameObject currentBatter = gameManager.AttackTeamBatterListClone.First(); BatterBehaviour currentBatterBehaviour = PlayerUtils.FetchBatterBehaviourScript(currentBatter); GameObject bat = currentBatterBehaviour.EquipedBat; currentBatterBehaviour.FoulOutcomeCount += 1; currentBatter.transform.rotation = Quaternion.identity; bat.transform.position = FieldUtils.GetBatCorrectPosition(currentBatter.transform.position); bat.transform.rotation = Quaternion.Euler(0f, 0f, -70f); gameManager.ReinitPitcher(pitcher); gameManager.ReturnBallToPitcher(ballControllerScript.gameObject); gameManager.ReinitRunners(gameManager.AttackTeamRunnerList); ballControllerScript.IsInFoulState = false; playersTurnManager.TurnState = TurnStateEnum.PITCHER_TURN; PlayersTurnManager.IsCommandPhase = true; } } } }
private void CreateContextMenuOptions() { this.physicalBehaviour.ContextMenuOptions.Buttons.Add(new ContextMenuButton("selfDestruct", "Self-destruct", "Makes drone go kaboom", () => { selfDestruct = true; })); this.physicalBehaviour.ContextMenuOptions.Buttons.Add(new ContextMenuButton("stabilise", "Stabilise", "Keeps drone at balance to avoid any tilting and drifting", () => { if (!stabilisation) { stabilisation = true; } else { stabilisation = false; } })); this.physicalBehaviour.ContextMenuOptions.Buttons.Add(new ContextMenuButton("setHeight", "Set height", "Set the minimum flight height of the drone", new UnityAction[1] { (UnityAction)(() => { DialogBox dialog = (DialogBox)null; dialog = DialogBoxManager.TextEntry("What should the height be?", "Enter height here", new DialogButton("Apply", true, new UnityAction[1] { new UnityAction(setTextFromUserInput) }), new DialogButton("Cancel", true, (UnityAction[])Array.Empty <UnityAction>())); dialog.InputField.contentType = TMP_InputField.ContentType.DecimalNumber; dialog.InputField.textComponent.text = "0"; void setTextFromUserInput() { float.TryParse(dialog.InputField.text, out rayDistance); } }) }));
public void DeleteFile() { string fileName = gameObject.GetComponentInChildren <InputField>().text; string saveDirectoryPath = GameController.Instance.FileSaveBasePath(); EnsureDirectoryExists(saveDirectoryPath); string filePath = System.IO.Path.Combine(saveDirectoryPath, fileName + ".sav"); if (File.Exists(filePath) == false) { DialogBoxManager dbm = GameObject.Find("Dialog Boxes").GetComponent <DialogBoxManager>(); dbm.dialogBoxPromptOrInfo.SetAsInfo("message_file_doesn't_exist"); return; } File.Delete(filePath); gameObject.GetComponentInChildren <InputField>().text = string.Empty; CloseDialog(); ShowDialog(); }
public void Start() { // Create GameObject so we can have access to a transform which has a position of "Vector3.zero". new GameObject("VisualPath", typeof(VisualPath)); GameObject go; tileSpriteController = new TileSpriteController(World); characterSpriteController = new CharacterSpriteController(World); furnitureSpriteController = new FurnitureSpriteController(World); utilitySpriteController = new UtilitySpriteController(World); jobSpriteController = new JobSpriteController(World, furnitureSpriteController, utilitySpriteController); inventorySpriteController = new InventorySpriteController(World, inventoryUI); shipSpriteController = new ShipSpriteController(World); buildModeController = new BuildModeController(); spawnInventoryController = new SpawnInventoryController(); mouseController = new MouseController(buildModeController, furnitureSpriteController, utilitySpriteController, circleCursorPrefab); questController = new QuestController(); cameraController = new CameraController(); TradeController = new TradeController(); autosaveManager = new AutosaveManager(); // Register inputs actions KeyboardManager.Instance.RegisterInputAction("DevMode", KeyboardMappedInputType.KeyDown, ChangeDevMode); // Hiding Dev Mode spawn inventory controller if devmode is off. spawnInventoryController.SetUIVisibility(Settings.GetSetting("DialogBoxSettingsDevConsole_developerModeToggle", false)); cameraController.Initialize(); cameraController.Moved += this.World.OnCameraMoved; // Initialising controllers. GameObject canvas = GameObject.Find("Canvas"); go = Instantiate(Resources.Load("UI/ContextMenu"), canvas.transform.position, canvas.transform.rotation, canvas.transform) as GameObject; go.name = "ContextMenu"; GameController.Instance.IsModal = false; // Settings UI is a 'dialog box' (kinda), so it comes here. // Where as DevConsole is a constant menu item (it can appear 'anywhere' so it appears after) GameObject settingsMenu = (GameObject)Instantiate(Resources.Load("UI/SettingsMenu/SettingsMenu")); if (settingsMenu != null) { settingsMenu.name = "Settings Menu"; settingsMenu.transform.SetParent(canvas.transform, false); settingsMenu.SetActive(true); } // This will place it after context menu (and the inventory menu) and settings menu dialogBoxManager = GameObject.Find("Dialog Boxes").GetComponent <DialogBoxManager>(); dialogBoxManager.transform.SetAsLastSibling(); GameObject devConsole = (GameObject)Instantiate(Resources.Load("UI/Console/DevConsole")); if (devConsole != null) { devConsole.name = "DevConsole-Spawned"; devConsole.transform.SetParent(canvas.transform, false); devConsole.transform.SetAsLastSibling(); devConsole.SetActive(true); DeveloperConsole.DevConsole.Close(); } }
public void CalculatePitcherColliderInterraction(GameObject ballGameObject, BallController ballControllerScript, GenericPlayerBehaviour genericPlayerBehaviourScript) { int runnersOnFieldCount = -1; List <GameObject> runners = PlayerUtils.GetRunnersOnField(); runnersOnFieldCount = runners.Count; if (runnersOnFieldCount < 1) { return; } //Choose the runner who just hit the ball GameObject runnerToGetOut = runners.Last(); bool hasIntercepted = false; PlayersTurnManager playersTurnManager = GameUtils.FetchPlayersTurnManager(); if (ballControllerScript.BallHeight == BallHeightEnum.HIGH || ballControllerScript.BallHeight == BallHeightEnum.LOW) { GameManager gameManager = GameUtils.FetchGameManager(); DialogBoxManager dialogBoxManagerScript = GameUtils.FetchDialogBoxManager(); dialogBoxManagerScript.DisplayDialogAndTextForGivenAmountOfTime(1f, false, "TAG OUT !!!!!!!"); ballControllerScript.Target = null; PlayerActionsManager.InterceptBall(ballGameObject, ballControllerScript, genericPlayerBehaviourScript); hasIntercepted = true; gameManager.AttackTeamRunnerList.Remove(runnerToGetOut); runnerToGetOut.SetActive(false); playersTurnManager.UpdatePlayerTurnQueue(runnerToGetOut); gameManager.AttackTeamBatterListClone.First().SetActive(true); RunnerBehaviour runnerBehaviourScript = PlayerUtils.FetchRunnerBehaviourScript(runnerToGetOut); BatterBehaviour batterBehaviourScript = PlayerUtils.FetchBatterBehaviourScript(gameManager.AttackTeamBatterListClone.First()); batterBehaviourScript.EquipedBat = runnerBehaviourScript.EquipedBat; runnerBehaviourScript.EquipedBat = null; if (runnersOnFieldCount == 1) { GameData.isPaused = true; StartCoroutine(gameManager.WaitAndReinit(dialogBoxManagerScript, PlayerUtils.FetchPlayerStatusScript(gameManager.AttackTeamBatterListClone.First()), FieldBall)); return; } else { GameObject bat = batterBehaviourScript.EquipedBat; bat.transform.SetParent(null); bat.transform.position = FieldUtils.GetBatCorrectPosition(batterBehaviourScript.transform.position); bat.transform.rotation = Quaternion.Euler(0f, 0f, -70f); bat.transform.SetParent(gameManager.AttackTeamBatterListClone.First().transform); batterBehaviourScript.EquipedBat.SetActive(true); TeamUtils.AddPlayerTeamMember(PlayerFieldPositionEnum.BATTER, batterBehaviourScript.gameObject, TeamUtils.GetBaseballPlayerOwner(batterBehaviourScript.gameObject)); } } if (runnersOnFieldCount >= 1) { if (!hasIntercepted) { PlayerActionsManager.InterceptBall(ballGameObject, ballControllerScript, genericPlayerBehaviourScript); } PlayerActionsManager playerActionsManager = GameUtils.FetchPlayerActionsManager(); PlayerAbilities playerAbilities = PlayerUtils.FetchPlayerAbilitiesScript(this.gameObject); playerAbilities.ReinitAbilities(); PlayerAbility passPlayerAbility = new PlayerAbility("Pass to fielder", AbilityTypeEnum.BASIC, AbilityCategoryEnum.NORMAL, playerActionsManager.GenericPassAction, this.gameObject, true); playerAbilities.AddAbility(passPlayerAbility); playersTurnManager.TurnState = TurnStateEnum.PITCHER_TURN; PlayersTurnManager.IsCommandPhase = true; } }
private void Start() { dialogManager = GameObject.FindObjectOfType <DialogBoxManager>(); RenderButtons(); }