public void SetArrowSelection(int i) { //Buttons use this function selection = (ArrowSelection)i; InitializeArrows((ArrowSelection)i); }
void Start() { db = GetComponent <DatabaseBattle>(); selection = GetComponent <ArrowSelection>(); logic = GetComponent <BattleLogic>(); activeTime = transform.FindChild("PlayerInfo/ActiveTimeBar").GetComponent <ActiveTime>(); }
public void InitializeArrows(ArrowSelection s) { Color newColor = Color.white; float newAngle = 0; Vector2Int inputVector = Vector2Int.one * -1; switch (s) { case ArrowSelection.NONE: inputVector = Vector2Int.one * -1; newColor = new Color(0, 0, 0, 0); newAngle = 0; break; case ArrowSelection.IN1: inputVector = currentlySelectedComponent.GetComponent <Receiver>().InputDirection1; newColor = input1Color; newAngle = 90; break; case ArrowSelection.IN2: inputVector = currentlySelectedComponent.GetComponent <Receiver>().InputDirection2; newColor = input2Color; newAngle = 90; break; case ArrowSelection.OUT: inputVector = currentlySelectedComponent.GetComponent <Transmitter>().OutputDirection; newColor = outputColor; newAngle = -90; break; } if (inputVector == Vector2Int.right) { SetActiveSprite(0); } else if (inputVector == Vector2Int.up) { SetActiveSprite(1); } else if (inputVector == Vector2Int.left) { SetActiveSprite(2); } else { SetActiveSprite(3); } for (int i = 0; i < directionButtons.Length; i++) { directionButtons[i].GetComponent <Image>().color = newColor; directionButtons[i].transform.localRotation = Quaternion.Euler(new Vector3(0, 0, newAngle)); } }
public void SetArrowSelection(ArrowSelection a) { SetArrowSelection((int)a); }
// Instead of start function, call this with a little delay (maybe .1s). // This will assign everything from infoDump. Delay is used to make sure Info dump has been assigned. void startFromDump() { attack = GetComponent <BattleAttackHandler>(); state = GetComponent <BattleScreenStates>(); selection = GetComponent <ArrowSelection>(); stateQueue = new List <BattleScreenStates.FightStates>(); stateQueue.Add(BattleScreenStates.FightStates.BEGINNING); activeTime = transform.FindChild("PlayerInfo/ActiveTimeBar").GetComponent <ActiveTime>(); enemies = new Monster[3]; if (infoDump != null) { enemies[0] = infoDump.enemy0; enemies[1] = infoDump.enemy1; enemies[2] = infoDump.enemy2; activeTime.setEnemyMaxTime(infoDump.info.enemy0Max); activeTime.setEnemySeconds(infoDump.info.enemy0Sec); if (infoDump.info.numEnemies > 2) { enemy2ActiveTime.setEnemyMaxTime(infoDump.info.enemy1Max); enemy2ActiveTime.setEnemySeconds(infoDump.info.enemy1Sec); enemy3ActiveTime.setEnemyMaxTime(infoDump.info.enemy2Max); enemy3ActiveTime.setEnemySeconds(infoDump.info.enemy2Sec); } else if (infoDump.info.numEnemies > 1) { enemy2ActiveTime.setEnemyMaxTime(infoDump.info.enemy1Max); enemy2ActiveTime.setEnemySeconds(infoDump.info.enemy1Sec); } numPlayers = infoDump.info.numPlayers; numEnemies = infoDump.info.numEnemies; playerNum = infoDump.info.numPlayers - 1; setEnemyHP(); switch (playerNum) { case 0: character = infoDump.player0; break; case 1: character = infoDump.player1; break; case 2: character = infoDump.player2; break; default: print("Character still null in Battle Logic"); break; } playerMaxHP = character.getHP(); setPlayerHP(); enemyAttackFlag = infoDump.info.enemyAttackFlag; setEnemyMaxTime(); setEnemyTime(); GetComponent <BattleScreenGUI>().fillSkillButtons(); } else { print("infoDUmp null"); } dumpLoad = false; for (int i = 0; i < enemies.Length; i++) { //enemies[i].setDead(false); } }