public Sprite getSprite(InputManager.PlayerID pID, Vector3 dir) { InputManager.PlayerColor clr = InputManager.S.getPlayerColorWithPlayerID(pID); switch (clr) { case InputManager.PlayerColor.Red: //use red return(red_left[0]); case InputManager.PlayerColor.Blue: //use blue return(blue_left[0]); //currentColor = ColorSprite.BLUE; case InputManager.PlayerColor.Green: return(green_left[0]); //R.GetComponent<SpriteRenderer>().sprite = green_left[0]; //currentColor = ColorSprite.GREEN; //use green case InputManager.PlayerColor.Yellow: return(yellow_left[0]); //R.GetComponent<SpriteRenderer>().sprite = yellow_left[0]; //currentColor = ColorSprite.YELLOW; //use yellow } return(null); }
void setScoreTextColor(InputManager.PlayerID pID, Text scoreText) { InputManager.PlayerColor clr = InputManager.S.getPlayerInfoWithPlayerID(pID).playerClr; if (clr == InputManager.PlayerColor.Blue) { scoreText.color = (Resources.Load("BluePlayer") as Material).color; } else if (clr == InputManager.PlayerColor.Green) { scoreText.color = (Resources.Load("GreenPlayer") as Material).color; } else if (clr == InputManager.PlayerColor.Yellow) { scoreText.color = (Resources.Load("YellowPlayer") as Material).color; } else if (clr == InputManager.PlayerColor.Red) { scoreText.color = (Resources.Load("RedPlayer") as Material).color; } }
// Use this for initialization void Start() { curr_time = Time.time; currentVelocity = Vector3.zero; currentRunner = InputManager.S.getCurrentRunnerID(); prevPosition = R.transform.position; InputManager.PlayerColor curr_color = InputManager.S.getPlayerColorWithPlayerID(currentRunner); switch (curr_color) { case InputManager.PlayerColor.Red: //use red R.GetComponent <SpriteRenderer>().sprite = red_left[0]; currentColor = ColorSprite.RED; break; case InputManager.PlayerColor.Blue: //use blue R.GetComponent <SpriteRenderer>().sprite = blue_left[0]; currentColor = ColorSprite.BLUE; break; case InputManager.PlayerColor.Green: R.GetComponent <SpriteRenderer>().sprite = green_left[0]; currentColor = ColorSprite.GREEN; //use green break; case InputManager.PlayerColor.Yellow: R.GetComponent <SpriteRenderer>().sprite = yellow_left[0]; currentColor = ColorSprite.YELLOW; //use yellow break; } }
private void swapHelper(GameObject CannonballGO) { inSwitch = true; CannonControl.freeze = true; PlayerControl.freeze = true; // Destroy all cannonballs when runner is killed var cannonBalls = GameObject.FindGameObjectsWithTag("Projectile"); for (var i = 0; i < cannonBalls.Length; i++) { Destroy(cannonBalls [i]); } Debug.Log("OnCollisionEnter" + Time.time); // Debug.Log (InputManager.S.getDebugPlayerNum () + " " + PlayerControl.S.controller); // swaps the player controlling the cannon InputManager.ControlID cID = CannonballGO.GetComponent <CannonBallMetadata>().controllerThatFired(); InputManager.PlayerID newRunnerID = InputManager.S.getPlayerIDWithControlID(cID); InputManager.PlayerID oldRunnerID = InputManager.S.getCurrentRunnerID(); InputManager.PlayerColor newColor = InputManager.S.getPlayerColorWithPlayerID(newRunnerID); InputManager.PlayerColor oldColor = InputManager.S.getPlayerColorWithPlayerID(oldRunnerID); //Debug.Log("NEW" + newRunnerID); //Debug.Log("OLD" + oldRunnerID); //swaps the material of the player - CHANGED TO SWAP SPRITE //Material runnerMaterial = new Material (runner.GetComponent<SpriteRenderer> ().material); //setMaterial(collision.gameObject.GetComponent<CannonBallMetadata> ().getCannonControlMaterial ()); //collision.gameObject.GetComponent<CannonBallMetadata> ().setCannonControlMaterial (runnerMaterial); //change color of cannon /* * switch(oldRunnerID) { //old runner becomes new cannon * case InputManager.PlayerID.Player1: * CannonballGO.GetComponent<CannonBallMetadata>().setCannonControlMaterial(player1Material); //r * break; * case InputManager.PlayerID.Player2: * CannonballGO.GetComponent<CannonBallMetadata>().setCannonControlMaterial(player2Material); //b * break; * case InputManager.PlayerID.Player3: * CannonballGO.GetComponent<CannonBallMetadata>().setCannonControlMaterial(player3Material); //g * break; * case InputManager.PlayerID.Player4: * CannonballGO.GetComponent<CannonBallMetadata>().setCannonControlMaterial(player4Material); //y * break; * }*/ //change color of cannon switch (oldColor) { //old runner becomes new cannon case InputManager.PlayerColor.Red: CannonballGO.GetComponent <CannonBallMetadata>().setCannonControlMaterial(player1Material); //r break; case InputManager.PlayerColor.Blue: CannonballGO.GetComponent <CannonBallMetadata>().setCannonControlMaterial(player2Material); //b break; case InputManager.PlayerColor.Green: CannonballGO.GetComponent <CannonBallMetadata>().setCannonControlMaterial(player3Material); //g break; case InputManager.PlayerColor.Yellow: CannonballGO.GetComponent <CannonBallMetadata>().setCannonControlMaterial(player4Material); //y break; } /* * switch (newRunnerID) { //old runner becomes new cannon * case InputManager.PlayerID.Player1: * RunnerAnimation.R.currentColor = RunnerAnimation.ColorSprite.RED; * break; * case InputManager.PlayerID.Player2: * RunnerAnimation.R.currentColor = RunnerAnimation.ColorSprite.BLUE; * break; * case InputManager.PlayerID.Player3: * RunnerAnimation.R.currentColor = RunnerAnimation.ColorSprite.GREEN; * break; * case InputManager.PlayerID.Player4: * RunnerAnimation.R.currentColor = RunnerAnimation.ColorSprite.YELLOW; * break; * }*/ switch (newColor) { //old runner becomes new cannon case InputManager.PlayerColor.Red: RunnerAnimation.R.currentColor = RunnerAnimation.ColorSprite.RED; break; case InputManager.PlayerColor.Blue: RunnerAnimation.R.currentColor = RunnerAnimation.ColorSprite.BLUE; break; case InputManager.PlayerColor.Green: RunnerAnimation.R.currentColor = RunnerAnimation.ColorSprite.GREEN; break; case InputManager.PlayerColor.Yellow: RunnerAnimation.R.currentColor = RunnerAnimation.ColorSprite.YELLOW; break; } //Debug.Log (cID); //Debug.Log (oldRunnerID); //Debug.Log (newRunnerID); switch (cID) { case InputManager.ControlID.Cannon1: /* * switch (oldRunnerID) { //old runner becomes new cannon * case InputManager.PlayerID.Player1: * cannon1Sprite.GetComponent<SpriteRenderer>().sprite = p1; * break; * case InputManager.PlayerID.Player2: * cannon1Sprite.GetComponent<SpriteRenderer>().sprite = p2; * break; * case InputManager.PlayerID.Player3: * cannon1Sprite.GetComponent<SpriteRenderer>().sprite = p3; * break; * case InputManager.PlayerID.Player4: * cannon1Sprite.GetComponent<SpriteRenderer>().sprite = p4; * break; * } * break;*/ switch (oldColor) { //old runner becomes new cannon case InputManager.PlayerColor.Red: cannon1Sprite.GetComponent <SpriteRenderer>().sprite = p1; //r break; case InputManager.PlayerColor.Blue: cannon1Sprite.GetComponent <SpriteRenderer>().sprite = p2; //b break; case InputManager.PlayerColor.Green: cannon1Sprite.GetComponent <SpriteRenderer>().sprite = p3; //g break; case InputManager.PlayerColor.Yellow: cannon1Sprite.GetComponent <SpriteRenderer>().sprite = p4; //y break; } break; case InputManager.ControlID.Cannon2: /* * switch (oldRunnerID) { //old runner becomes new cannon * case InputManager.PlayerID.Player1: * cannon2Sprite.GetComponent<SpriteRenderer>().sprite = p1; * break; * case InputManager.PlayerID.Player2: * cannon2Sprite.GetComponent<SpriteRenderer>().sprite = p2; * break; * case InputManager.PlayerID.Player3: * cannon2Sprite.GetComponent<SpriteRenderer>().sprite = p3; * break; * case InputManager.PlayerID.Player4: * cannon2Sprite.GetComponent<SpriteRenderer>().sprite = p4; * break; * } * break;*/ switch (oldColor) { //old runner becomes new cannon case InputManager.PlayerColor.Red: cannon2Sprite.GetComponent <SpriteRenderer>().sprite = p1; break; case InputManager.PlayerColor.Blue: cannon2Sprite.GetComponent <SpriteRenderer>().sprite = p2; break; case InputManager.PlayerColor.Green: cannon2Sprite.GetComponent <SpriteRenderer>().sprite = p3; break; case InputManager.PlayerColor.Yellow: cannon2Sprite.GetComponent <SpriteRenderer>().sprite = p4; break; } break; case InputManager.ControlID.Cannon3: /* * switch (oldRunnerID) { //old runner becomes new cannon * case InputManager.PlayerID.Player1: * cannon3Sprite.GetComponent<SpriteRenderer>().sprite = p1_l; * break; * case InputManager.PlayerID.Player2: * cannon3Sprite.GetComponent<SpriteRenderer>().sprite = p2_l; * break; * case InputManager.PlayerID.Player3: * cannon3Sprite.GetComponent<SpriteRenderer>().sprite = p3_l; * break; * case InputManager.PlayerID.Player4: * cannon3Sprite.GetComponent<SpriteRenderer>().sprite = p4_l; * break; * } * break;*/ switch (oldColor) { //old runner becomes new cannon case InputManager.PlayerColor.Red: cannon3Sprite.GetComponent <SpriteRenderer>().sprite = p1_l; break; case InputManager.PlayerColor.Blue: cannon3Sprite.GetComponent <SpriteRenderer>().sprite = p2_l; break; case InputManager.PlayerColor.Green: cannon3Sprite.GetComponent <SpriteRenderer>().sprite = p3_l; break; case InputManager.PlayerColor.Yellow: cannon3Sprite.GetComponent <SpriteRenderer>().sprite = p4_l; break; } break; } //change sprite related to cannon //setSprite() //change cat //change cat depending on new playerid Vector3 dir = Vector3.zero; Debug.Log("CURR DIRECTION: " + gameObject.GetComponent <Rigidbody>().velocity); setSprite(RunnerAnimation.R.getSprite(newRunnerID, dir)); InputManager.S.swapPlayer(cID); timeLastSwap = Time.time; }
// Update is called once per frame void Update() { Quaternion curr_base_rot = cannon_base.GetComponent <Transform>().rotation; Quaternion curr_barrel_rot = cannon_barrel.GetComponent <Transform>().rotation; if (curr_base_rot != base_rotation || curr_barrel_rot != barrel_rotation) { moving = true; } else if (curr_base_rot == base_rotation && curr_barrel_rot == barrel_rotation) { moving = false; } base_rotation = curr_base_rot; barrel_rotation = curr_barrel_rot; InputManager.PlayerColor pclr = InputManager.S.getPlayerColorWithControlID(curr_CID); Sprite changeme = spritetochange.GetComponent <SpriteRenderer>().sprite; if (moving) //if (Input.anyKey || Input.GetAxis("Horizontal") > 0 || Input.GetAxis("Horizontal") < 0 || Input.GetAxis("Vertical") > 0 || Input.GetAxis("Vertical") < 0) { if (Time.time - curr_time > 0.25f) { curr_time = Time.time; //Debug.Log("SOMETHING IS BEING PRESSED"); //Debug.Log(pclr); //Debug.Log(changeme == red[0]); //yield return new WaitForSeconds(1); if (pclr == InputManager.PlayerColor.Red) { if (changeme == red[0]) { spritetochange.GetComponent <SpriteRenderer>().sprite = red[1]; } else if (changeme == red[1]) { spritetochange.GetComponent <SpriteRenderer>().sprite = red[2]; } else if (changeme == red[2]) { spritetochange.GetComponent <SpriteRenderer>().sprite = red[1]; } } else if (pclr == InputManager.PlayerColor.Blue) { if (changeme == blue[0]) { spritetochange.GetComponent <SpriteRenderer>().sprite = blue[1]; } else if (changeme == blue[1]) { spritetochange.GetComponent <SpriteRenderer>().sprite = blue[2]; } else { spritetochange.GetComponent <SpriteRenderer>().sprite = blue[1]; } } else if (pclr == InputManager.PlayerColor.Green) { if (changeme == green[0]) { spritetochange.GetComponent <SpriteRenderer>().sprite = green[1]; } else if (changeme == green[1]) { spritetochange.GetComponent <SpriteRenderer>().sprite = green[2]; } else { spritetochange.GetComponent <SpriteRenderer>().sprite = green[1]; } } else if (pclr == InputManager.PlayerColor.Yellow) { if (changeme == yellow[0]) { spritetochange.GetComponent <SpriteRenderer>().sprite = yellow[1]; } else if (changeme == yellow[1]) { spritetochange.GetComponent <SpriteRenderer>().sprite = yellow[2]; } else { spritetochange.GetComponent <SpriteRenderer>().sprite = yellow[1]; } } } } else { if (pclr == InputManager.PlayerColor.Red) { spritetochange.GetComponent <SpriteRenderer>().sprite = red[0]; } else if (pclr == InputManager.PlayerColor.Blue) { spritetochange.GetComponent <SpriteRenderer>().sprite = blue[0]; } else if (pclr == InputManager.PlayerColor.Green) { spritetochange.GetComponent <SpriteRenderer>().sprite = green[0]; } else if (pclr == InputManager.PlayerColor.Yellow) { spritetochange.GetComponent <SpriteRenderer>().sprite = yellow[0]; } } }