public void OnPlayerJoined(PlayerInput newPlayer) { if (newPlayer.currentControlScheme == "Keyboard&Mouse") { // I think this is permenantly disabled now? //Debug.Log("Don't need no stinking Keyboard&Mouse"); player2 = newPlayer.GetComponent <Player>(); foreach (var enemy in enemyCharacters) { enemy.SetTacticalController(player2.GetComponent <PlayerBattleController>()); } return; } Debug.Log("new player!"); player = newPlayer.GetComponent <Player>(); //player.AddControllableActors(playerActors); if (playerCharacters != null) { PlayerBattleController ptc = newPlayer.GetComponent <PlayerBattleController>(); playerControllers.Add(ptc); foreach (var pc in playerCharacters) { pc.SetTacticalController(ptc); } } }
/// <summary> /// Sets a pointer belonging to playerController to active, sets position relative to target, /// and returns it. /// </summary> /// <param name="playerController"></param> /// <param name="target"></param> /// <returns></returns> public GameObject SetPointerTarget(PlayerBattleController playerController, GameObject target) { var pointer = targetPointers[playerController]; pointer.SetActive(true); pointer.transform.position = target.transform.position + pointerOffset; return(pointer); }
IEnumerator Start() { while (FindObjectOfType <PlayerBattleController>() == null) { yield return(null); } player = FindObjectOfType <PlayerBattleController>(); }
void SetUpBattle() { GameObject playerGO = Instantiate(playerPrefab, playerSpawnPoint); InstantiateDices(); SpawnMonstersStartup(); GetComponentInChildren <SpriteRenderer>().sprite = battleStartupInfo.battleBackground; player = playerGO.GetComponent <PlayerBattleController>(); SetupButtonNavigation(); state = BattleState.PLAYERTURN; FirstTurn(); }
public void TriggerBlockPushed() { if (playerBattleController == null) { if ((playerBattleController = FindObjectOfType <PlayerBattleController>()) == null) { return; } } playerBattleController.BlockPushed(); }
void CreateUnits(int num) { battleCamera = CreateCamera(); for (int i = 0; i < status.monsterNumbers[num].Length; i++) { int number = status.monsterNumbers[num][i]; GameObject enemy = Instantiate(status.monstersData[number].modle) as GameObject; if (number == 3) { BossBattleController auto = enemy.AddComponent <BossBattleController> (); enemyList.Add(auto); auto.InitBattle(this.gameObject, battleCamera, status.monsterPositions[i], Quaternion.identity, "Enemy", number, status.playersData[number].status); auto.SetEffects(status.playersData[number].attackEffect); auto.enabled = false; } else { EnemyBattleController auto = enemy.AddComponent <EnemyBattleController> (); enemyList.Add(auto); auto.InitBattle(this.gameObject, battleCamera, status.monsterPositions[i], Quaternion.identity, "Enemy", number, status.monstersData[number].status); auto.enabled = false; } } for (int i = 0; i < 4; i++) { if (status.partyMember[i] >= 0) { GameObject player = Instantiate(status.playersData[status.partyMember[i]].modle[1]) as GameObject; PlayerBattleController mb = player.AddComponent <PlayerBattleController> (); playerList.Add(mb); if (i == 0) { mb.isUser = true; } else { mb.isUser = false; } mb.InitBattle(this.gameObject, battleCamera, status.playerPositions[i], Quaternion.Euler(0.0f, 180.0f, 0.0f), "Player", status.partyMember[i], status.playersData[status.partyMember[i]].status); mb.SetEffects(status.playersData[status.partyMember[i]].attackEffect); mb.enabled = false; } } }
public CommandSelectFSM(PlayerBattleController controller) { data.commandStack = new Stack <EventSelectionPanel>(); data.playerController = controller; data.battleManager = BattleManager.instance; data.battleHUD = BattleManager.BattleHUD; typeToState.Add(CommandPhase.WaitingForInput, new WaitingForInputCommandState(data)); typeToState.Add(CommandPhase.SelectingCommand, new SelectingCommandState(data)); typeToState.Add(CommandPhase.SelectingTarget, new SelectingTargetCommandState(data)); currentState = CommandPhase.WaitingForInput; currentStateImplementation = typeToState[currentState]; }
// Use this for initialization void Start() { _battleController = GameObject.FindWithTag("Player").GetComponent <PlayerBattleBehavior>().BattleController; _battleController.OnEnergyChanged += UpdateEnergy; _battleController.OnDamage += UpdateHealth; _health = transform.Find("HealthPanel"); _energy = transform.Find("EnergyPanel"); _healthBar = _health.Find("HealthBar"); _energyBar = _energy.Find("EnergyBar"); UpdateEnergy(0); UpdateHealth(0); }
public void ChangeToOverworld() { controls.InventoryUI.Disable(); controls.Overworld.Enable(); controls.Battle.Disable(); controls.GenericUI.Disable(); if (playerController == null) { if ((playerController = FindObjectOfType <PlayerController>()) == null) { return; } } playerController.SetGameState(GameState.PLAYING); battleSystem = null; holdAssignButton = null; playerBattleController = null; eventSystem = null; }
// Update is called once per frame void Update() { if (battleManager.getExp > 0) { battleManager.getExp -= speed; if (inputManager.CancelButton == 1) { speed += battleManager.getExp; battleManager.getExp = 0; inputManager.ClearInput(); } expVar += speed; for (int i = 0; i < battleManager.playerList.Count; i++) { PlayerBattleController player = (PlayerBattleController)battleManager.playerList[i]; int nextExp = ReturnNextExe(player.status.level); status.playersData[player.ID].status.experience += speed; if (status.playersData[player.ID].status.experience >= nextExp) { status.LevelUp(player.ID); player.nowHp = status.playersData[player.ID].status.maxhp; player.nowMp = status.playersData[player.ID].status.maxmp; CreateGUITexture("level_up", "UI/battle/level_up", new Rect(expGauge[i].pixelInset.x - 300, expGauge[i].pixelInset.y - 30, 160, 20), expGauge[i].transform.parent, 2.3f); } float widht = (float)(nextExp - status.playersData[player.ID].status.experience) / (float)nextExp * -145.0f * ww; expGauge[i].pixelInset = new Rect(expGauge[i].pixelInset.x, expGauge[i].pixelInset.y, widht, expGauge[i].pixelInset.height); exp[i].text = "+" + expVar.ToString(); } } if (battleManager.getExp <= 0 && inputManager.DecisionButton == 1) { Destroy(resultObject.gameObject); battleManager.UnitBattle(); } }
private void InitAttackEvent() { GameObject battleCamera = Instantiate(Resources.Load("Prefabs/Cameras/BattleCamera", typeof(GameObject)) as GameObject, Vector3.zero, Quaternion.identity) as GameObject; battleCamera.GetComponent <Camera>().enabled = false; battleCamera.AddComponent <ShinBattleCamera> (); for (int i = 0; i < 2; i++) { GameObject player = Instantiate(status.playersData[i].modle[1]) as GameObject; PlayerBattleController mb = player.AddComponent <PlayerBattleController> (); mb.InitBattle(this.gameObject, battleCamera, status.playerPositions[i], Quaternion.Euler(0.0f, 180.0f, 0.0f), "Player", i, status.playersData[status.partyMember[i]].status); mb.AddAttackEvent(); Destroy(player); } for (int i = 0; i < 4; i++) { GameObject enemy = Instantiate(status.monstersData[i].modle) as GameObject; if (i == 3) { BossBattleController auto = enemy.AddComponent <BossBattleController> (); auto.InitBattle(this.gameObject, battleCamera, status.monsterPositions[i], Quaternion.identity, "Enemy", 0, status.playersData[i].status); auto.AddAttackEvent(); } else { EnemyBattleController auto = enemy.AddComponent <EnemyBattleController> (); auto.InitBattle(this.gameObject, battleCamera, status.monsterPositions[i], Quaternion.identity, "Enemy", 0, status.monstersData[i].status); auto.AddAttackEvent(); } Destroy(enemy); } Destroy(battleCamera); }
public void Unpause(PlayerBattleController controller) { battleTimer.PauseRequest(BattleTimer.PauseRequestType.Unpause, controller); }
public void PauseRequested(BattleTimer.PauseRequestType pauseReason, PlayerBattleController controller) { battleTimer.PauseRequest(pauseReason, controller); }
void Awake() { Instance = this; Init(); }
public void SetPanelToController(PlayerBattleController player) { owningPlayer = player; }
/// <summary> /// Returns true if is pausing. Returns false if unpausing. /// </summary> /// <param name="reason"></param> /// <returns></returns> public bool PauseRequest(PauseRequestType reason, PlayerBattleController controller) { switch (reason) { case PauseRequestType.Unpause: if (!playersRequestedPause.Remove(controller)) { Debug.LogError("Player did not request pause"); } else if (playersRequestedPause.Count == 0) { unpauseThisUpdate = true; } break; case PauseRequestType.ChooseCommand: if (!BattleManager.instance.isActiveCommand) { pauseThisUpdate = true; reasonForPause = reason; playersRequestedPause.Add(controller, reason); } break; case PauseRequestType.ControllerLost: pauseThisUpdate = true; reasonForPause = reason; throw new System.Exception("Need pop-up to handle controller disconnect!"); case PauseRequestType.GamePause: if (Time.timeScale == 0) { if (hardPauseRequestedBy == controller) { GetComponent <BattleManager>().ToggleInputAllPlayers(true); pauseDisplay.SetActive(false); Time.timeScale = 1; hardPauseRequestedBy = null; } } else { GetComponent <BattleManager>().ToggleInputAllPlayers(false); hardPauseRequestedBy = controller; pauseDisplay.SetActive(true); Time.timeScale = 0; } break; case PauseRequestType.FinishedCommandInput: if (reasonForPause != PauseRequestType.ActionContest) { if (!isPaused) { unpauseThisUpdate = true; reasonForPause = reason; } } break; case PauseRequestType.ActionContest: if (!isPaused) { pauseThisUpdate = true; reasonForPause = reason; } break; } return(pauseThisUpdate); }