void Update() { for (int i = musics.Count - 1; i >= 0; i--) { if (musics [i].GetComponent <AudioSource> ().volume < 1) { musics [i].GetComponent <AudioSource> ().volume += Mathf.Min(Time.deltaTime, 0.2f) / 4f; } if ((musics [i].GetComponent <AudioSource> ().time == musics [i].GetComponent <AudioSource> ().clip.length) && !musics [i].GetComponent <AudioSource> ().isPlaying) { GamePullController.DestroyAudio(musics[i]); musics.RemoveAt(i); } } for (int i = sounds.Count - 1; i >= 0; i--) { if ((sounds [i].GetComponent <AudioSource> ().time == sounds [i].GetComponent <AudioSource> ().clip.length) && !sounds [i].GetComponent <AudioSource> ().isPlaying) { GamePullController.DestroyAudio(sounds[i]); sounds.RemoveAt(i); } } }
public void Destroy() { GamePullController.DestroyImage(healthBarRed); GamePullController.DestroyImage(healthBarGreen); healthBarRed = null; healthBarGreen = null; }
public GUIButtonAlpha(string _texture, float?leftPos, float?topPos, float?rightPos, float?botPos, float widthInPixels, float heightInPixels, float _layer = 0, bool _useScale = false) : base(false) { gameObject = GamePullController.CreateButtonAlpha(); animation = new ObjectAnimation(gameObject); layer = _layer; useScale = _useScale; textureName = _texture; sizeInPixels = new Vector2(widthInPixels, heightInPixels); if (leftPos != null) { left = leftPos; } if (topPos != null) { top = topPos; } if (rightPos != null) { right = rightPos; } if (botPos != null) { bottom = botPos; } isClickable = true; GUIController.Add(gameObject, this); }
public static Transform CreateText(ref TextMesh textObject) { GameObject text = GamePullController.CreateText(); textObject = text.GetComponent <TextMesh> (); return(text.transform); }
public void Destroy() { UpdateController.StopAllTimers(); UpdateController.toFixedUpdate = null; UpdateController.toUpdate = null; GamePullController.Destroy(); }
public void Destroy(bool createTowerPlace = true) { if (createTowerPlace) { GameObject towerPlace = GamePullController.CreateImage(); towerPlace.GetComponent <BoxCollider> ().enabled = true; switch (color) { case TeamColor.Red: GameController.towerPlacesRed.Add(towerPlace); break; case TeamColor.Blue: GameController.towerPlacesBlue.Add(towerPlace); break; } towerPlace.transform.position = towerPlacePosition; towerPlace.GetComponent <Renderer>().material.mainTexture = Resources.Load("Textures/Towers/TowerPlace" + color) as Texture; towerPlace.transform.localScale = new Vector3(3.08f * Settings.FhdToHD, 4.13f * Settings.FhdToHD, 1); towerPlace.name = "TowerPlace" + color; } GameController.towers.Remove(this); GameController.towersDictionary.Remove(gameObject); GamePullController.DestroyImage(gameObject); }
public GUIText() { gameObject = GamePullController.CreateText(); OnLanguageChange(); GUIController.Add(this); isClickable = false; }
public override void Destroy() { GamePullController.DestroyButton(gameObject); animation.Destroy(); isStatic = false; GUIController.Remove(gameObject, this); }
public void Destroy() { OptionsController.instance.Destroy(); UpdateController.StopAllTimers(); UpdateController.toFixedUpdate = null; UpdateController.toUpdate = null; GamePullController.Destroy(); }
public GUIImage(bool make = true) { if (make) { gameObject = GamePullController.CreateImage(); GUIController.Add(this); isClickable = false; } }
public void ClearSounds() { foreach (var s in sounds) { GamePullController.DestroyAudio(s); } sounds.Clear(); }
public GUIButtonAlpha() : base(false) { gameObject = GamePullController.CreateButtonAlpha(); animation = new ObjectAnimation(gameObject); isClickable = true; GUIController.Add(gameObject, this); }
public HealthBar() { healthBarRed = GamePullController.CreateImage(); healthBarGreen = GamePullController.CreateImage(); healthBarRed.GetComponent <Renderer> ().material.mainTexture = ResourcesController.Load("Textures/HealthBars/HealthBarRed") as Texture; healthBarGreen.GetComponent <Renderer> ().material.mainTexture = ResourcesController.Load("Textures/HealthBars/HealthBarGreen") as Texture; healthBarRed.transform.localScale = new Vector3(size.x, size.y, 1); healthBarGreen.transform.localScale = new Vector3(size.x, size.y, 1); health = 1; }
public void Destroy() { cogwheel1.rotation = 0; cogwheel2.rotation = 0; cogwheel3.rotation = 0; cogwheel1 = null; cogwheel2 = null; cogwheel3 = null; UpdateController.StopAllTimers(); UpdateController.toFixedUpdate = null; UpdateController.toUpdate = null; GamePullController.Destroy(); }
public override void Destroy() { if (isExpensive) { GamePullController.DestroyImageAlphaExpensive(gameObject); } else { GamePullController.DestroyImageAlpha(gameObject); } GUIController.Remove(this); }
public GUIImageAlpha(bool _isExpensive = false) : base(false) { if (isExpensive) { gameObject = GamePullController.CreateImageAlphaExpensive(); } else { gameObject = GamePullController.CreateImageAlpha(); } isExpensive = _isExpensive; GUIController.Add(this); }
public Missile(string _towerType, Texture _texture, Vector2 _position, Vector2 _size, float _damage, float _speed, Killable _target) { towerType = _towerType; gameObject = GamePullController.CreateImage(); GameController.missiles.Add(this); mapPosition = _position; damage = _damage; target = _target; texture = _texture; size = _size; speed = _speed; layer = _target.layer; }
public Bomb(Vector2 position) { gameObject = GamePullController.CreateImage(); texture = Resources.Load("Textures/UserInterface/Bomb") as Texture; animation = new ObjectAnimation(gameObject); animation.Load("Bomb"); animation.Play(-2); size = new Vector2(1, 1); mapPosition = position; layer = 0.5f; BombsController.bombs.Add(this); }
public void Destroy() { if (rootImage != null) { rootImage.Destroy(); } GameController.unitsToDestroy.Add(this); GamePullController.DestroyImage(gameObject); objectAnimation.Destroy(); GameController.unitsDictionary.Remove(gameObject); gameObject = null; objectAnimation = null; healthBar = null; shadow = null; }
protected override void Kill() { if (isKilling) { return; } isKilling = true; objectAnimation.Load((Random.value > 0.5f?"Bang":"BangNoFire"), 20); objectAnimation.Play(-1, Destroy); gameObject.transform.localScale = new Vector3(1.5f, 1.5f, 1); if (shadow != null) { GamePullController.DestroyImage(shadow); } }
public GameObject CreateAudio(string name, bool isLoop = false, bool isMusic = false) { var audio = GamePullController.CreateAudio(); audio.GetComponent <AudioSource> ().clip = ResourcesController.Load("Audio/" + name) as AudioClip; audio.GetComponent <AudioSource> ().loop = isLoop; audio.GetComponent <AudioSource> ().Play(); (isMusic?musics:sounds).Add(audio); audio.GetComponent <AudioSource> ().mute = (isMusic && !Settings.music) || (!isMusic && !Settings.sounds); if (isMusic) { audio.GetComponent <AudioSource> ().volume = 0; } return(audio); }
public Tower(string _type, Colorable.TeamColor _color) { reloadTime = 0.6f; type = _type; color = _color; gameObject = GamePullController.CreateImage(); animation = new ObjectAnimation(gameObject); gameObject.name += "Tower"; gameObject.GetComponent <BoxCollider> ().enabled = true; texture = Resources.Load("Textures/Towers/" + type + "Tower") as Texture; attackAnimaton = type + "TowerAttack"; attackAnimatonTime = 0.2f; try { damage = BalanceSettings.damage [type]; damageDelta = BalanceSettings.deltaDamage [type]; attackRange = BalanceSettings.attackRange [type]; attackSpeed = BalanceSettings.attackSpeed [type]; } catch (Exception) { Debug.LogError("Wrong tower type: " + type); } layer = 6; size = new Vector2(texture.width / 50f, texture.height / 50f) / 2f * Settings.FhdToHD; GameController.towers.Add(this); GameController.towersDictionary.Add(gameObject, this); buffs = new Dictionary <Buff, float> (GameController.buffs[color]); foreach (var buff in TowersSettings.Buffs(type)) { buffs.Add((Buff)Enum.Parse(typeof(Buff), buff), 1); } }
private void Create() { if (UpdateController.themeName != "GlobalMapTheme") { if (UpdateController.theme != null) { AudioController.instance.RemoveAudio(UpdateController.theme); } UpdateController.theme = AudioController.instance.CreateAudio("GlobalMapTheme", true, true); UpdateController.themeName = "GlobalMapTheme"; } var background0 = new GUIImage(); background0.texture = Resources.Load("Interface/StartMenu/Background0") as Texture; background0.layer = -5; background0.sizeInMeters = new Vector2(-1, -1); background0.positionInMeters = new Vector2(0, 0) * Settings.FhdToHD; var background1 = new GUIImage(); background1.texture = Resources.Load("Interface/StartMenu/Background1") as Texture; background1.layer = -3; background1.sizeInMeters = new Vector2(-1, -1); background1.positionInMeters = new Vector2(0, 0) * Settings.FhdToHD; var greenWater = new GUIButtonAlpha(); greenWater.texture = Resources.Load("Interface/StartMenu/GreenWater") as Texture; greenWater.layer = -4; greenWater.sizeInMeters = new Vector2(-1, -1); greenWater.positionInMeters = new Vector2(16.73f, -7.5f) * Settings.FhdToHD; greenWater.gameObject.name += "Through"; greenWater.OnClick = (t) => { MakeBubble(); }; var red = new GUIImage(); red.texture = Resources.Load("Interface/StartMenu/Red") as Texture; red.layer = -4; red.sizeInMeters = new Vector2(-1, -1); red.positionInMeters = new Vector2(-3.94f, -0.25f) * Settings.FhdToHD; var green = new GUIImage(); green.texture = Resources.Load("Interface/StartMenu/Green") as Texture; green.layer = -4; green.sizeInMeters = new Vector2(-1, -1); green.positionInMeters = new Vector2(6.02f, -0.25f) * Settings.FhdToHD; var redHotspot = new GUIImage(); redHotspot.texture = Resources.Load("Interface/StartMenu/Hotspot") as Texture; redHotspot.layer = -3.9f; redHotspot.sizeInMeters = new Vector2(-1, -1); redHotspot.positionInMeters = new Vector2(-4.24f, -0.19f) * Settings.FhdToHD; var greenHotspot = new GUIImage(); greenHotspot.texture = Resources.Load("Interface/StartMenu/Hotspot") as Texture; greenHotspot.layer = -3.9f; greenHotspot.sizeInMeters = new Vector2(-1, -1); greenHotspot.positionInMeters = new Vector2(5.73f, -0.19f) * Settings.FhdToHD; startArrow = new GUIImage(); startArrow.texture = Resources.Load("Interface/StartMenu/Arrow1") as Texture; startArrow.layer = -3.8f; startArrow.sizeInMeters = new Vector2(-1, -1); startArrow.positionInMeters = new Vector2(1.06f, -2.22f) * Settings.FhdToHD; secondArrow = new GUIImage(); secondArrow.texture = Resources.Load("Interface/StartMenu/Arrow0") as Texture; secondArrow.layer = -3.8f; secondArrow.sizeInMeters = new Vector2(-1, -1); secondArrow.positionInMeters = new Vector2(-6.9f, 7.74f) * Settings.FhdToHD; start = new GUIButton(); start.texture = Resources.Load("$" + Settings.language + "/Interface/StartMenu/Start") as Texture; start.layer = -2; start.sizeInMeters = new Vector2(-1, -1); start.positionInMeters = new Vector2(1.08f, -5.3f) * Settings.FhdToHD; start.OnButtonDown = (t) => { start.texture = Resources.Load("$" + Settings.language + "/Interface/StartMenu/StartPushed") as Texture; }; start.OnButtonUp = (t) => { start.texture = Resources.Load("$" + Settings.language + "/Interface/StartMenu/Start") as Texture; }; start.OnClick = (t) => { if (!GamePullController.isPreordered) { var toPreorder = new List <GamePullController.PreoderItem> (); toPreorder.Add(new GamePullController.PreoderItem("GUIImage", 70, () => {})); toPreorder.Add(new GamePullController.PreoderItem("Text", 10, () => {})); toPreorder.Add(new GamePullController.PreoderItem("GUIImageAlpha", 4, () => {})); //toPreorder.Add (new GamePullController.PreoderItem ("Audio", 0, () => {})); GamePullController.Preorder(toPreorder, (done, total) => { loaded = done * 1f / total; }, () => { isNextSceneLoaded = true; }); } else { UpdateController.LaunchIt(10, 0.02f, (q) => { loaded = q / 9f; }, () => { isNextSceneLoaded = true; }); } }; cogwheel1 = new GUIImage(); cogwheel1.texture = Resources.Load("Interface/StartMenu/Cogwheel1") as Texture; cogwheel1.layer = -4.9f; cogwheel1.sizeInMeters = new Vector2(-1, -1); cogwheel1.positionInMeters = new Vector2(16.52f, 7.42f) * Settings.FhdToHD; cogwheel2 = new GUIImage(); cogwheel2.texture = Resources.Load("Interface/StartMenu/Cogwheel2") as Texture; cogwheel2.layer = -4; cogwheel2.sizeInMeters = new Vector2(-1, -1); cogwheel2.positionInMeters = new Vector2(13.82f, 3.25f) * Settings.FhdToHD; cogwheel3 = new GUIImage(); cogwheel3.texture = Resources.Load("Interface/StartMenu/Cogwheel0") as Texture; cogwheel3.layer = -4; cogwheel3.sizeInMeters = new Vector2(-1, -1); cogwheel3.positionInMeters = new Vector2(9.38f, 9.05f) * Settings.FhdToHD; text = new GUIImage(); text.texture = Resources.Load("$" + Settings.language + "/Interface/StartMenu/Text") as Texture; text.layer = -2; text.sizeInMeters = new Vector2(-1, -1); text.positionInMeters = new Vector2(-14.63f, 7.67f) * Settings.FhdToHD; var englishBox = new GUIButton(); englishBox.texture = Resources.Load("$English/Interface/StartMenu/Box") as Texture; englishBox.layer = -2; englishBox.sizeInMeters = new Vector2(-1, -1); englishBox.positionInMeters = new Vector2(-14.63f, 0.5f) * Settings.FhdToHD; englishBox.OnButtonDown = (t) => { englishBox.texture = Resources.Load("$English/Interface/StartMenu/BoxPushed") as Texture; }; englishBox.OnButtonUp = (t) => { englishBox.texture = Resources.Load("$English/Interface/StartMenu/Box") as Texture; }; englishBox.OnClick = (t) => { if (Settings.language == "English") { return; } RotateSecondArrow(); Settings.language = "English"; UpdateLanguage(); }; var russianBox = new GUIButton(); russianBox.texture = Resources.Load("$Russian/Interface/StartMenu/Box") as Texture; russianBox.layer = -2; russianBox.sizeInMeters = new Vector2(-1, -1); russianBox.positionInMeters = new Vector2(-14.63f, -4.8f) * Settings.FhdToHD; russianBox.OnButtonDown = (t) => { russianBox.texture = Resources.Load("$Russian/Interface/StartMenu/BoxPushed") as Texture; }; russianBox.OnButtonUp = (t) => { russianBox.texture = Resources.Load("$Russian/Interface/StartMenu/Box") as Texture; }; russianBox.OnClick = (t) => { if (Settings.language == "Russian") { return; } RotateSecondArrow(); Settings.language = "Russian"; UpdateLanguage(); }; selection = new GUIImage(); selection.texture = Resources.Load("Interface/StartMenu/Selection") as Texture; selection.layer = -1.5f; selection.sizeInMeters = new Vector2(-1, -1); selection.positionInMeters = new Vector2(-14.613f, 1.78f) * Settings.FhdToHD; UpdateLanguage(); UpdateController.Timer(0.1f, () => { new OptionsController(() => { Application.Quit(); }, null, false); }); loadingPosition = 0; loaded = 0; cogwheelsRotation = 0; secondArrowRotation = 0; secondArrowTargetRotation = 0; secondArrowSpeed = 0.2f; secondArrowCooldown = secondArrowMaxCooldown; bubblesCooldown = bubblesMaxCooldown; }
private void Destroy() { GameController.missilesToDestroy.Add(this); GamePullController.DestroyImage(gameObject); }
private static void ParseMap(string map) { var maps = map.Split('|'); int i = 0; GameController.RoadRed = new List <List <Vector3> >(); GameController.RoadBlue = new List <List <Vector3> >(); for (int q = 0; q < 6; q++) { GameController.RoadRed.Add(new List <Vector3>()); int lng = int.Parse(maps[i]); i++; for (int p = 0; p < lng; p++) { GameController.RoadRed[q].Add(ParseRoad(maps[i])); i++; } } for (int q = 0; q < 6; q++) { GameController.RoadBlue.Add(new List <Vector3>()); int lng = int.Parse(maps[i]); i++; for (int p = 0; p < lng; p++) { GameController.RoadBlue[q].Add(ParseRoad(maps[i])); i++; } } Logger.LogList(GameController.RoadBlue); Logger.LogList(GameController.RoadRed); for (; i < maps.Length - 1; i += 7) { switch (maps[i]) { case "Layer": GameObject mapPlane = GamePullController.CreateImage(); float x, y, w, h; w = float.Parse(maps[i + 5]); h = float.Parse(maps[i + 6]); x = float.Parse(maps[i + 3]); y = float.Parse(maps[i + 4]); mapPlane.transform.position = new Vector3(x, int.Parse(maps[i + 1]), y); mapPlane.transform.localScale = new Vector3(w, h, 1); mapPlane.name = "Map"; mapPlane.GetComponent <Renderer>().material.mainTexture = Resources.Load("Levels/Level" + level + "/" + maps[i + 2].Split('.')[0]) as Texture; if (maps[i + 2].Split('.')[0] == "Map") { GameController.mapWidth = w; GameController.mapHeight = h; } break; case "Tower": GameObject towerPlace = GamePullController.CreateImage(); towerPlace.gameObject.GetComponent <BoxCollider> ().enabled = true; switch (maps[i + 2]) { case "Red": GameController.towerPlacesRed.Add(towerPlace); break; case "Blue": GameController.towerPlacesBlue.Add(towerPlace); break; } towerPlace.transform.position = new Vector3(float.Parse(maps[i + 3]), float.Parse(maps[i + 1]), float.Parse(maps[i + 4])); towerPlace.GetComponent <Renderer>().material.mainTexture = Resources.Load("Textures/Towers/TowerPlace" + maps[i + 2]) as Texture; towerPlace.transform.localScale = new Vector3(3.08f * Settings.FhdToHD, 4.13f * Settings.FhdToHD, 1); towerPlace.name = "TowerPlace" + maps[i + 2]; break; default: /* * PointObject pointObject = new PointObject (PointObject.PointObjectType.Road, 0.6f, 0.6f, * new Vector2 (float.Parse (maps[i+3]), float.Parse (maps[i+4])), maps[i] + maps[i+2]); */ break; } } }
public override void Destroy() { GamePullController.DestroyButtonAlpha(gameObject); animation.Destroy(); GUIController.Remove(gameObject, this); }
public void Destroy() { animation.Destroy(); GamePullController.DestroyImage(gameObject); BombsController.bombs.Remove(this); }
public override void Destroy() { GUIController.Remove(this); GamePullController.DestroyText(gameObject); gameObject = null; }
public override void Destroy() { GamePullController.DestroyImage(gameObject); isStatic = false; GUIController.Remove(this); }
public void RemoveAudio(GameObject audio) { musics.Remove(audio); sounds.Remove(audio); GamePullController.DestroyAudio(audio); }