private void SetColorByType() { Color color = InvadersController.GetColorByInvaderType(Type); Renderer.color = color; DestroyEffect.startColor = color; WaveDamageEffect.startColor = color; }
private IEnumerator Shoot() { yield return(new WaitForSeconds(ShootInterval * Random.value)); var shoot = Instantiate <GameObject>(ShootPrefab); shoot.transform.position = ThisTransform.position; Vector2 subVector = shoot.transform.position - PlayerTr.position; float angle = Mathf.Atan2(subVector.y, subVector.x) * Mathf.Rad2Deg; shoot.transform.rotation = Quaternion.Euler(0f, 0f, angle); shoot.GetComponentInChildren <SpriteRenderer>().color = InvadersController.GetColorByInvaderType(Type); shoot.GetComponentInChildren <TrailRenderer>().material.color = InvadersController.GetColorByInvaderType(Type); }
public override void Install() { // create player var player = new Player() { Index = 1, Name = $"Player {((InvadersWorld)World).CurrentPlayer}", Color = ConsoleColor.White, Lives = 3, Score = 0, KeyMap = new KeyboardKeyMap[] { new KeyboardKeyMap(ConsoleKey.LeftArrow, Command.Left), new KeyboardKeyMap(ConsoleKey.RightArrow, Command.Right), new KeyboardKeyMap(ConsoleKey.Spacebar, Command.Fire) } }; World.Players.Add(player); // create arena Arena = new Arena(Config.DataFolder, new Point(0, 0), new Size(World.Size.Width, World.Size.Height - 2)); World.Elements.Add(Arena); // create defender ship defender = new DefenderShip(player, new Point(10, 35), Arena.Size); World.Elements.Add(defender); // create barriers for (int b = 0; b < 4; b++) { World.Elements.Add(new Barrier(new Point(9 + b * 23, 32))); } // create invaders ships var invaders = new List <InvaderShip>(); // for (int row = 0; row < 1; row++) { for (int col = 0; col < 5; col++) { invaders.Add(new InvaderShipSquid(new Point(col * 14 + 1, 3 + row * 5), Arena.Size)); } } // for (int row = 1; row < 2; row++) { for (int col = 0; col < 6; col++) { invaders.Add(new InvaderShipCrab(new Point(col * 12, 3 + row * 5), Arena.Size)); } } // for (int row = 2; row < 4; row++) { for (int col = 0; col < 7; col++) { invaders.Add(new InvaderShipOctopus(new Point(col * 10 + 1, 3 + row * 5 + 1), Arena.Size)); } } World.Elements.AddRange(invaders); // World.Elements.Add(new InvaderShipUFO(new Point(-16, 0), Arena.Size)); // create invaders fleet controller fleet = new InvadersController(invaders, 800 - Index * 250, Arena.Size); // lives World.Elements.Add(new LivesBox(player, new Point(2, World.Size.Height - 2))); // score World.Elements.Add(new ScoreBox(player, new Point(83, World.Size.Height - 2), 20)); // level World.Elements.Add(new LevelBox(Index, new Point(47, World.Size.Height - 2), 20)); }
// Use this for initialization void Start() { spriteRenderer = GetComponent <SpriteRenderer> (); MessageController = FindObjectOfType(typeof(MessageController)) as MessageController; invadersController = FindObjectOfType(typeof(InvadersController)) as InvadersController; }
private void SetRandomType() { Type = InvadersController.GetRandomType(); }