void Awake() { if (instance == null) { instance = this; } }
// Time:0-所有回合开始 1-回合后 2-回合前 public static void BuffProcess(FighterController F1, int Time) { bool Worked = false; for (int i = 0; i < F1.BindMember.buffs.Count; i++) { Buff b = F1.BindMember.buffs[i]; Worked = false; if (b.Name == "能力学习" && Time == 0) { Worked = true; FighterController F = (FighterController)b.Tag; AcB.Msg.Add(F.BindMember.Name + "的能力学习起效果了!"); AcB.Msg.Add(F.BindMember.Name + "学会了" + F1.BindMember.LastSkill.Name + "!"); for (int j = 0; j < 3; j++) { if (F.BindMember.Magics[j] == "能力学习") { F.BindMember.Magics[j] = F1.BindMember.LastSkill.Name; } } } if (b.Name == "回避" && Time == 1) { Worked = true; AcB.Msg.Add(F1.BindMember.Name + "撑过了这个回合!"); F1.BindMember.DEF = (float)b.Tag; } if (b.Name == "睡眠" && Time == 0) { Worked = true; F1.State = FighterController.BattleState.Sleep; AcB.Msg.Add(F1.BindMember.Name + "正睡得香甜..."); AcB.Rounds.Remove(F1); } if (b.Name == "害怕" && Time == 0) { Worked = true; F1.State = FighterController.BattleState.BadHurt; AcB.Msg.Add(F1.BindMember.Name + "被敌方震慑了,不能行动!"); AcB.Rounds.Remove(F1); } if (b.Name == "冻伤" && Time == 0) { Worked = true; F1.State = FighterController.BattleState.BadHurt; AcB.Msg.Add(F1.BindMember.Name + "冻伤的伤口发作了!"); float hp = F1.BindMember.HP; F1.BindMember.HP *= 0.75f; F1.BindMember.HP = Mathf.Ceil(F1.BindMember.HP); AcB.Msg.Add(F1.BindMember.Name + "受到了" + Mathf.Floor(F1.BindMember.HP - hp) + "点伤害。"); } if (Worked) { b.Round--; } F1.BindMember.buffs[i] = b; } F1.BindMember.buffs.RemoveAll(m => m.Round <= 0); }
void Start() { animator = GetComponent <Animator>(); controller = GetComponent <FighterController>(); dealDamage = GetComponentInParent <DealDamage>(); fighter = GetComponentInParent <Fighter>(); }
public static FighterControllerState DetermineFighterControllerState(FighterController fighterController) { FighterControllerState fighterControllerState = null; if (fighterController.IsPlayerOne() || GameData.GetPlayers() == 2) { fighterControllerState = new PlayerControllerState(); } else { switch (GameData.GetComputerDifficulty()) { case Difficulty.Easy: fighterControllerState = new EasyAiControllerState(); break; case Difficulty.Medium: fighterControllerState = new MediumAiControllerState(); break; case Difficulty.Hard: fighterControllerState = new HardAiControllerState(); break; } } fighterControllerState.Init(fighterController); return(fighterControllerState); }
public void UpdateIfTargeted(FighterController attacker, FighterAction action, List <FighterController> targets) { if (targets.Contains(_fighter)) { UpdateUiElements(); } }
public virtual void CreateFighter() { if (FoodAmount >= fighterCost) { FoodAmount = -fighterCost; fighters++; NewGameController.Instance.TeamSize[teamID] += 1; if (FighterPool.Count > 0) { FighterController recycle = FighterPool.Find(f => !f.isActive); if (recycle != null) { recycle.SetMoM(this.gameObject); recycle.transform.position = Location + new Vector3(1, 0, 1); } else { InstantiateFighter(); } } else { InstantiateFighter(); } } }
// Use this for initialization void Start() { fc = GetComponent <FighterController> (); hb = Instantiate(healthBar, transform.position, transform.rotation) as GameObject; //initialGreenLength = hb.transform.localScale.x; }
public void RemoveEnemyFighter(FighterController fighter) { if (enemyFighters.fighters.Contains(fighter)) { enemyFighters.fighters.Remove(fighter); } }
public void OnFighterActionComplete(FighterController fighter, FighterAction action, List <FighterController> targets) { if (_fightersTakingAction.Contains(fighter)) { _fightersTakingAction.Remove(fighter); } }
public FighterInformation(Transform _transform, Fighter _fighterScript, Renderer _visible, FighterController _fighterController) { baseTransform = _transform; fighterScript = _fighterScript; renderer = _visible; fighterController = _fighterController; }
// Update is called once per frame void Update() { if (playServices == null) { playServices = FindObjectOfType <PlayServicesController>(); } if (camera == null) { camera = FindObjectOfType <CameraController>(); } if (player == null) { player = FindObjectOfType <FighterController>(); } if (enemySpawner == null) { enemySpawner = FindObjectOfType <EnemySpawner>(); } if (gameManager == null) { gameManager = FindObjectOfType <GameManager>(); } if (soundManager == null) { soundManager = FindObjectOfType <SoundManager>(); } if (codeText == null) { codeText = FindObjectOfType <CodeTextController>(); } }
public void InitializeFighters() { if (PlayerFighterController != null) { Destroy(PlayerFighterController.gameObject); } if (OpponentFighterController != null) { Destroy(OpponentFighterController.gameObject); } GameObject playerGO = Instantiate(FighterPrefab, new Vector3(PlayerStartPosition.X + Offset, PlayerStartPosition.Y), Quaternion.identity); PlayerFighterController = playerGO.AddComponent <NeuralFighterController>(); GameObject opponentGO = Instantiate(FighterPrefab, new Vector3(OpponentStartPosition.X + Offset, OpponentStartPosition.Y), Quaternion.identity); OpponentFighterController = (FighterController)opponentGO.AddComponent(NextFighterController); GameController.FighterControllers = new Dictionary <int, FighterController> { { 0, PlayerFighterController }, { 1, OpponentFighterController } }; GameController.ResetGame(); }
public void InitFighter(Transform parent) { currentSpawned = Instantiate(fighters[currActIdx].gameObject, parent); currentSpawned.transform.position = fighters[currActIdx].transform.position; currentSpawned.transform.rotation = fighters[currActIdx].transform.rotation; currentSpawned.transform.localScale = Vector3.one * 0.2f; player = currentSpawned.GetComponent <FighterController>(); player.healthIndicator = Instantiate(healthBar, currentSpawned.transform).GetComponent <HealthIndicator>(); player.healthIndicator.player = currentSpawned.transform.Find("Indicator"); player.isActive = true; Rigidbody sr = currentSpawned.GetComponent <Rigidbody>(); sr.useGravity = true; sr.isKinematic = false; SetFloor(); floor.transform.SetParent(null); currentSpawned.SetActive(true); fighters[currActIdx].gameObject.SetActive(false); selectorScreen.SetActive(false); controlScreen.SetActive(true); controlScreen.transform.SetParent(null); }
public void PlayerInputComplete(FighterController fighter, FighterAction action, List <FighterController> targets) { if (fighter == _fighter) { UpdateAnimationTrigger(CameraStates.DEFAULT); } }
public void SubmitFighterInput(FighterController fighter, FighterAction action, List <FighterController> targets) { if (submitFighterInput != null) { submitFighterInput.Broadcast(fighter, action, targets); } }
// Player Input public void EnqueuePlayerFighter(FighterController fighter) { if (ownFighters.fighters.Contains(fighter)) { FighterReadyQueue.Enqueue(fighter); } }
public void AddPlayerFighter(FighterController fighter) { if (!playerFighters.fighters.Contains(fighter)) { playerFighters.fighters.Add(fighter); } }
public void NotifyBattleMeterFull(FighterController fighter) { if (FighterListsManager.Instance.enemyFighters.fighters.Contains(fighter)) { StartCoroutine(HandleEnemyFighterInput(fighter)); } }
public void OnFighterActionStart(FighterController fighter, FighterAction action, List <FighterController> targets) { if (!_fightersTakingAction.Contains(fighter)) { _fightersTakingAction.Add(fighter); } }
public override void DoAiLogic() { foreach (Entity go in gameObjects.Values) { // Removes spinning from collisions go.SetAngularVelocity(Vector3.Zero); if (go is EnemyFighter) { FighterController.Update(go as EnemyFighter, c, null); } else if (go is EnemyCruiser) { CruiserController.Update(go as EnemyCruiser); } else if (go is Feather) { Feather f = go as Feather; f.Update(); } else if (go is Beam) { Beam b = go as Beam; if (Vector3.Distance(b.Position, Vector3.Zero) > 500) { physicsManager.RemoveObject(b.ID); } } } }
public void UpdateOnBattleMeterTicker(FighterController fighter) { if (fighter == _fighter) { UpdateUiElements(); } }
public virtual void Init(bool isPlayerOne, GameObject otherFighter) { GameObject canvas = GameObject.FindGameObjectWithTag("Canvas"); gameManager = GameObject.FindGameObjectWithTag("Game Manager").GetComponent <GameManager>(); rb = GetComponent <Rigidbody>(); this.isPlayerOne = isPlayerOne; this.otherFighter = otherFighter; otherFighterController = otherFighter.GetComponent <FighterController>(); fighterControllerState = FighterControllerState.DetermineFighterControllerState(this); if (isPlayerOne) { controllerInput = ControllerManager.GetControllerInput(1); fighterUI = canvas.transform.GetChild(0).GetComponent <FighterUI>(); } else { controllerInput = ControllerManager.GetControllerInput(2); fighterUI = canvas.transform.GetChild(1).GetComponent <FighterUI>(); } anim = GetComponent <Animator>(); attackManager = GetComponent <AttackManager>(); attackManager.Init(); fighterUI.Init(); startingPosition.Set(transform.position.x, transform.position.y, transform.position.z); startingRotation.Set(transform.rotation.x, transform.rotation.y, transform.rotation.z, transform.rotation.w); startingScale.Set(transform.localScale.x, transform.localScale.y, transform.localScale.z); }
public void RemovePlayerFighter(FighterController fighter) { if (playerFighters.fighters.Contains(fighter)) { playerFighters.fighters.Remove(fighter); } }
public void AddEnemyFighter(FighterController fighter) { if (!enemyFighters.fighters.Contains(fighter)) { enemyFighters.fighters.Add(fighter); } }
public void Start() { fighter = transform.root.gameObject.GetComponent <FighterController>(); if (fighter != null) { player = fighter.playerID; } }
public void SetActiveFighter(FighterController fighter) { input.fighter = fighter; if (activeFighterSet != null) { activeFighterSet.Broadcast(input.fighter); } }
public override IEnumerator Play(FighterController fighter, FighterAction action, List <FighterController> targets) { fighter.fighterAnimationController.UpdateAnimationTrigger(runAnimation.trigger); yield return(fighter.agentController.SetDestination(fighter.startingPosition, 0)); fighter.transform.rotation = fighter.startingRotation; fighter.fighterAnimationController.UpdateAnimationTrigger(fighter.startingTrigger); }
public void PlayerFighterActive(FighterController fighter) { if (_currentTrigger == CameraStates.DEFAULT) { UpdateAnimationTrigger(CameraStates.VIEW_PLAYERS); _fighter = fighter; } }
private IEnumerator Setup() { yield return(Intro()); yield return(NextLevel()); this.fighter = Instantiate(fighterPrefab, respawn).GetComponent <FighterController>(); }
public void SetAbovePlayerFighter(FighterController fighter) { if (playerFighters.fighters.Contains(fighter)) { _target = fighter.transform; arrowIcon.SetActive(true); } }
public void SetPartner(int index, FighterController partner) { partners[index] = partner; }
public FighterAttackingPlayer(Transform fighter, Transform player) { this.player = player.GetComponent<PlayerController>(); this.fighter = fighter.GetComponent<FighterController>(); }
void Start() { player = FindObjectOfType< FighterController >(); }
public FighterReachedScreenEdge(Transform fighter, Transform player) { this.player = player.GetComponent<PlayerController>(); this.fighter = fighter.GetComponent<FighterController>(); playerPosition = Vector3.zero; }
public FighterDead(Transform fighter) { this.fighter = fighter.GetComponent<FighterController>(); }
public void SetLeader(FighterController fighter) { leader = fighter; }