public void ChangeInputValue() { Transform healthbox = this.transform.parent.parent; SetHealth healthScript = healthbox.GetComponent <SetHealth>(); if (this.name == "InputName") { healthScript.nameForHealth = this.GetComponent <InputField>().text; } else if (this.name == "InputHealth") { healthScript.health = int.Parse(this.GetComponent <InputField>().text); } }
public void NotifySetHealth(IAttackableUnit u) { var sh = new SetHealth(u); _packetHandlerManager.BroadcastPacketVision(u, sh, Channel.CHL_S2C); }
public void NotifySetHealth(int userId, uint netId) { var setHealthPacket = new SetHealth(netId); _packetHandlerManager.SendPacket(userId, setHealthPacket, Channel.CHL_S2C); }
public void NotifySetHealth(int userId, IAttackableUnit unit) { var setHealthPacket = new SetHealth(unit); _packetHandlerManager.SendPacket(userId, setHealthPacket, Channel.CHL_S2C); }
public override bool HandlePacket(Peer peer, byte[] data) { var start = new StatePacket2(PacketCmd.PKT_S2C_StartSpawn); _game.PacketHandlerManager.sendPacket(peer, start, Channel.CHL_S2C); _logger.LogCoreInfo("Spawning map"); int playerId = 0; foreach (var p in _playerManager.GetPlayers()) { var spawn = new HeroSpawn(p.Item2, playerId++); _game.PacketHandlerManager.sendPacket(peer, spawn, Channel.CHL_S2C); var info = new AvatarInfo(p.Item2); _game.PacketHandlerManager.sendPacket(peer, info, Channel.CHL_S2C); } var peerInfo = _playerManager.GetPeerInfo(peer); var bluePill = _itemManager.GetItemType(_game.Map.MapGameScript.BluePillId); var itemInstance = peerInfo.Champion.getInventory().SetExtraItem(7, bluePill); var buyItem = new BuyItemResponse(peerInfo.Champion, itemInstance); _game.PacketHandlerManager.sendPacket(peer, buyItem, Channel.CHL_S2C); // Runes byte runeItemSlot = 14; foreach (var rune in peerInfo.Champion.RuneList._runes) { var runeItem = _itemManager.GetItemType(rune.Value); var newRune = peerInfo.Champion.getInventory().SetExtraItem(runeItemSlot, runeItem); _playerManager.GetPeerInfo(peer).Champion.GetStats().AddModifier(runeItem); runeItemSlot++; } // Not sure why both 7 and 14 skill slot, but it does not seem to work without it var skillUp = new SkillUpResponse(peerInfo.Champion.NetId, 7, 1, (byte)peerInfo.Champion.getSkillPoints()); _game.PacketHandlerManager.sendPacket(peer, skillUp, Channel.CHL_GAMEPLAY); skillUp = new SkillUpResponse(peerInfo.Champion.NetId, 14, 1, (byte)peerInfo.Champion.getSkillPoints()); _game.PacketHandlerManager.sendPacket(peer, skillUp, Channel.CHL_GAMEPLAY); peerInfo.Champion.GetStats().setSpellEnabled(7, true); peerInfo.Champion.GetStats().setSpellEnabled(14, true); peerInfo.Champion.GetStats().setSummonerSpellEnabled(0, true); peerInfo.Champion.GetStats().setSummonerSpellEnabled(1, true); var objects = _game.ObjectManager.GetObjects(); foreach (var kv in objects) { if (kv.Value is LaneTurret) { var turret = kv.Value as LaneTurret; var turretSpawn = new TurretSpawn(turret); _game.PacketHandlerManager.sendPacket(peer, turretSpawn, Channel.CHL_S2C); // Fog Of War var fogOfWarPacket = new FogUpdate2(turret, _networkIdManager); _game.PacketHandlerManager.broadcastPacketTeam(turret.Team, fogOfWarPacket, Channel.CHL_S2C); // To suppress game HP-related errors for enemy turrets out of vision var setHealthPacket = new SetHealth(turret); _game.PacketHandlerManager.sendPacket(peer, setHealthPacket, Channel.CHL_S2C); foreach (var item in turret.Inventory) { if (item == null) { continue; } _game.PacketNotifier.NotifyItemBought(turret, item as Item); } continue; } else if (kv.Value is LevelProp) { var levelProp = kv.Value as LevelProp; var levelPropSpawnPacket = new LevelPropSpawn(levelProp); _game.PacketHandlerManager.sendPacket(peer, levelPropSpawnPacket, Channel.CHL_S2C); continue; } else if (kv.Value is Champion) { var champion = kv.Value as Champion; if (champion.IsVisibleByTeam(peerInfo.Champion.Team)) { var enterVisionPacket = new EnterVisionAgain(champion); _game.PacketHandlerManager.sendPacket(peer, enterVisionPacket, Channel.CHL_S2C); } } else if (kv.Value is Inhibitor || kv.Value is Nexus) { var inhibtor = kv.Value as AttackableUnit; var minionSpawnPacket = new MinionSpawn2(inhibtor.NetId); _game.PacketHandlerManager.sendPacket(peer, minionSpawnPacket, Channel.CHL_S2C); var setHealthPacket = new SetHealth(inhibtor.NetId); _game.PacketHandlerManager.sendPacket(peer, setHealthPacket, Channel.CHL_S2C); continue; } else if (kv.Value is Projectile) { var projectile = kv.Value as Projectile; if (projectile.IsVisibleByTeam(peerInfo.Champion.Team)) { var spawnProjectilePacket = new SpawnProjectile(projectile); _game.PacketHandlerManager.sendPacket(peer, spawnProjectilePacket, Channel.CHL_S2C); } continue; } else { _logger.LogCoreWarning("Object of type: " + kv.Value.GetType() + " not handled in HandleSpawn."); } } // TODO shop map specific? // Level props are just models, we need button-object minions to allow the client to interact with it if (peerInfo != null && peerInfo.Team == TeamId.TEAM_BLUE) { // Shop (blue team) var minionSpawnPacket = new MinionSpawn2(0xff10c6db); _game.PacketHandlerManager.sendPacket(peer, minionSpawnPacket, Channel.CHL_S2C); var setHealthPacket = new SetHealth(0xff10c6db); _game.PacketHandlerManager.sendPacket(peer, setHealthPacket, Channel.CHL_S2C); } else if (peerInfo != null && peerInfo.Team == TeamId.TEAM_PURPLE) { // Shop (purple team) var minionSpawnPacket = new MinionSpawn2(0xffa6170e); _game.PacketHandlerManager.sendPacket(peer, minionSpawnPacket, Channel.CHL_S2C); var setHealthPacket = new SetHealth(0xffa6170e); _game.PacketHandlerManager.sendPacket(peer, setHealthPacket, Channel.CHL_S2C); } var endSpawnPacket = new StatePacket(PacketCmd.PKT_S2C_EndSpawn); return(_game.PacketHandlerManager.sendPacket(peer, endSpawnPacket, Channel.CHL_S2C)); }
public void notifySetHealth(Unit u) { var sh = new SetHealth(u); _game.PacketHandlerManager.broadcastPacketVision(u, sh, Channel.CHL_S2C); }
public unsafe bool HandlePacket(ENetPeer *peer, byte[] data, Game game) { var start = new StatePacket2(PacketCmdS2C.PKT_S2C_StartSpawn); bool p1 = PacketHandlerManager.getInstace().sendPacket(peer, start, Channel.CHL_S2C); Logger.LogCoreInfo("Spawning map"); int playerId = 0; ClientInfo playerInfo = null; foreach (var p in game.getPlayers()) { if (p.Item2.getPeer() == peer) { playerInfo = p.Item2; } var spawn = new HeroSpawn(p.Item2, playerId++); PacketHandlerManager.getInstace().sendPacket(peer, spawn, Channel.CHL_S2C); var info = new PlayerInfo(p.Item2); PacketHandlerManager.getInstace().sendPacket(peer, info, Channel.CHL_S2C); p.Item2.getChampion().getStats().setSummonerSpellEnabled(0, true); p.Item2.getChampion().getStats().setSummonerSpellEnabled(1, true); // TODO: Recall slot } var objects = game.getMap().getObjects(); foreach (var kv in objects) { var t = kv.Value as Turret; if (t != null) { var turretSpawn = new TurretSpawn(t); PacketHandlerManager.getInstace().sendPacket(peer, turretSpawn, Channel.CHL_S2C); // To suppress game HP-related errors for enemy turrets out of vision var sh = new SetHealth(t); PacketHandlerManager.getInstace().sendPacket(peer, sh, Channel.CHL_S2C); continue; } var lp = kv.Value as LevelProp; if (lp != null) { var lpsPacket = new SpawnParticle.LevelPropSpawn(lp); PacketHandlerManager.getInstace().sendPacket(peer, lpsPacket, Channel.CHL_S2C); } } // Level props are just models, we need button-object minions to allow the client to interact with it //if (playerInfo != null && playerInfo.getTeam() == TeamId.TEAM_BLUE) { // Shop (blue team) var ms1 = new MinionSpawn2(0xff10c6db); PacketHandlerManager.getInstace().sendPacket(peer, ms1, Channel.CHL_S2C); var sh1 = new SetHealth2(0xff10c6db); PacketHandlerManager.getInstace().sendPacket(peer, sh1, Channel.CHL_S2C); // Vision for hardcoded objects // Top inhib var ms2 = new MinionSpawn2(0xffd23c3e); PacketHandlerManager.getInstace().sendPacket(peer, ms2, Channel.CHL_S2C); var sh2 = new SetHealth2(0xffd23c3e); PacketHandlerManager.getInstace().sendPacket(peer, sh2, Channel.CHL_S2C); // Mid inhib var ms3 = new MinionSpawn2(0xff4a20f1); PacketHandlerManager.getInstace().sendPacket(peer, ms3, Channel.CHL_S2C); var sh3 = new SetHealth2(0xff4a20f1); PacketHandlerManager.getInstace().sendPacket(peer, sh3, Channel.CHL_S2C); // Bottom inhib var ms4 = new MinionSpawn2(0xff9303e1); PacketHandlerManager.getInstace().sendPacket(peer, ms4, Channel.CHL_S2C); var sh4 = new SetHealth2(0xff9303e1); PacketHandlerManager.getInstace().sendPacket(peer, sh4, Channel.CHL_S2C); // Nexus var ms5 = new MinionSpawn2(0xfff97db5); PacketHandlerManager.getInstace().sendPacket(peer, ms5, Channel.CHL_S2C); var sh5 = new SetHealth2(0xfff97db5); PacketHandlerManager.getInstace().sendPacket(peer, sh5, Channel.CHL_S2C); } // else if (playerInfo != null && playerInfo.getTeam() == TeamId.TEAM_PURPLE) { // Shop (purple team) var ms1 = new MinionSpawn2(0xffa6170e); PacketHandlerManager.getInstace().sendPacket(peer, ms1, Channel.CHL_S2C); var sh1 = new SetHealth2(0xffa6170e); PacketHandlerManager.getInstace().sendPacket(peer, sh1, Channel.CHL_S2C); // Vision for hardcoded objects // Top inhib var ms2 = new MinionSpawn2(0xff6793d0); PacketHandlerManager.getInstace().sendPacket(peer, ms2, Channel.CHL_S2C); var sh2 = new SetHealth2(0xff6793d0); PacketHandlerManager.getInstace().sendPacket(peer, sh2, Channel.CHL_S2C); // Mid inhib var ms3 = new MinionSpawn2(0xffff8f1f); PacketHandlerManager.getInstace().sendPacket(peer, ms3, Channel.CHL_S2C); var sh3 = new SetHealth2(0xffff8f1f); PacketHandlerManager.getInstace().sendPacket(peer, sh3, Channel.CHL_S2C); // Bottom inhib var ms4 = new MinionSpawn2(0xff26ac0f); PacketHandlerManager.getInstace().sendPacket(peer, ms4, Channel.CHL_S2C); var sh4 = new SetHealth2(0xff26ac0f); PacketHandlerManager.getInstace().sendPacket(peer, sh4, Channel.CHL_S2C); // Nexus var ms5 = new MinionSpawn2(0xfff02c0f); PacketHandlerManager.getInstace().sendPacket(peer, ms5, Channel.CHL_S2C); var sh5 = new SetHealth2(0xfff02c0f); PacketHandlerManager.getInstace().sendPacket(peer, sh5, Channel.CHL_S2C); } var end = new StatePacket(PacketCmdS2C.PKT_S2C_EndSpawn); bool p2 = PacketHandlerManager.getInstace().sendPacket(peer, end, Channel.CHL_S2C); return(p1 && p2); }
public bool HandlePacket(Peer peer, byte[] data) { var start = new StatePacket2(PacketCmdS2C.PKT_S2C_StartSpawn); _game.PacketHandlerManager.sendPacket(peer, start, Channel.CHL_S2C); _logger.LogCoreInfo("Spawning map"); int playerId = 0; foreach (var p in _playerManager.GetPlayers()) { var spawn = new HeroSpawn(p.Item2, playerId++); _game.PacketHandlerManager.sendPacket(peer, spawn, Channel.CHL_S2C); var info = new PlayerInfo(p.Item2); _game.PacketHandlerManager.sendPacket(peer, info, Channel.CHL_S2C); } var peerInfo = _playerManager.GetPeerInfo(peer); var bluePill = _itemManager.GetItemType(_game.Map.GetBluePillId()); var itemInstance = peerInfo.Champion.getInventory().SetExtraItem(7, bluePill); var buyItem = new BuyItemAns(peerInfo.Champion, itemInstance); _game.PacketHandlerManager.sendPacket(peer, buyItem, Channel.CHL_S2C); // Runes byte runeItemSlot = 14; foreach (var rune in peerInfo.Champion.RuneList._runes) { var runeItem = _itemManager.GetItemType(rune.Value); var newRune = peerInfo.Champion.getInventory().SetExtraItem(runeItemSlot, runeItem); _playerManager.GetPeerInfo(peer).Champion.GetStats().AddBuff(runeItem); runeItemSlot++; } // Not sure why both 7 and 14 skill slot, but it does not seem to work without it var skillUp = new SkillUpPacket(peerInfo.Champion.NetId, 7, 1, (byte)peerInfo.Champion.getSkillPoints()); _game.PacketHandlerManager.sendPacket(peer, skillUp, Channel.CHL_GAMEPLAY); skillUp = new SkillUpPacket(peerInfo.Champion.NetId, 14, 1, (byte)peerInfo.Champion.getSkillPoints()); _game.PacketHandlerManager.sendPacket(peer, skillUp, Channel.CHL_GAMEPLAY); peerInfo.Champion.GetStats().setSpellEnabled(7, true); peerInfo.Champion.GetStats().setSpellEnabled(14, true); peerInfo.Champion.GetStats().setSummonerSpellEnabled(0, true); peerInfo.Champion.GetStats().setSummonerSpellEnabled(1, true); var objects = _game.Map.GetObjects(); foreach (var kv in objects) { if (kv.Value is LaneTurret) { var t = kv.Value as LaneTurret; var turretSpawn = new TurretSpawn(t); _game.PacketHandlerManager.sendPacket(peer, turretSpawn, Channel.CHL_S2C); // Fog Of War var fow = new FogUpdate2(t); _game.PacketHandlerManager.broadcastPacketTeam(t.Team, fow, Channel.CHL_S2C); // To suppress game HP-related errors for enemy turrets out of vision var sh = new SetHealth(t); _game.PacketHandlerManager.sendPacket(peer, sh, Channel.CHL_S2C); foreach (var item in t.Inventory) { if (item == null) { continue; } _game.PacketNotifier.notifyItemBought(t, item as Item); } continue; } else if (kv.Value is LevelProp) { var lp = kv.Value as LevelProp; var lpsPacket = new LevelPropSpawn(lp); _game.PacketHandlerManager.sendPacket(peer, lpsPacket, Channel.CHL_S2C); } else if (kv.Value is Inhibitor || kv.Value is Nexus) { var inhib = kv.Value as Unit; var ms = new MinionSpawn2(inhib.NetId); _game.PacketHandlerManager.sendPacket(peer, ms, Channel.CHL_S2C); var sh = new SetHealth(inhib.NetId); _game.PacketHandlerManager.sendPacket(peer, sh, Channel.CHL_S2C); } } // TODO shop map specific? // Level props are just models, we need button-object minions to allow the client to interact with it if (peerInfo != null && peerInfo.Team == TeamId.TEAM_BLUE) { // Shop (blue team) var ms1 = new MinionSpawn2(0xff10c6db); _game.PacketHandlerManager.sendPacket(peer, ms1, Channel.CHL_S2C); var sh1 = new SetHealth(0xff10c6db); _game.PacketHandlerManager.sendPacket(peer, sh1, Channel.CHL_S2C); } else if (peerInfo != null && peerInfo.Team == TeamId.TEAM_PURPLE) { // Shop (purple team) var ms1 = new MinionSpawn2(0xffa6170e); _game.PacketHandlerManager.sendPacket(peer, ms1, Channel.CHL_S2C); var sh1 = new SetHealth(0xffa6170e); _game.PacketHandlerManager.sendPacket(peer, sh1, Channel.CHL_S2C); } var end = new StatePacket(PacketCmdS2C.PKT_S2C_EndSpawn); return(_game.PacketHandlerManager.sendPacket(peer, end, Channel.CHL_S2C)); }
public static void notifySetHealth(Unit u) { var sh = new SetHealth(u); PacketHandlerManager.getInstace().broadcastPacketVision(u, sh, Channel.CHL_S2C); }
public bool HandlePacket(Peer peer, byte[] data, Game game) { var start = new StatePacket2(PacketCmdS2C.PKT_S2C_StartSpawn); game.PacketHandlerManager.sendPacket(peer, start, Channel.CHL_S2C); Logger.LogCoreInfo("Spawning map"); int playerId = 0; foreach (var p in game.GetPlayers()) { var spawn = new HeroSpawn(p.Item2, playerId++); game.PacketHandlerManager.sendPacket(peer, spawn, Channel.CHL_S2C); var info = new PlayerInfo(p.Item2); game.PacketHandlerManager.sendPacket(peer, info, Channel.CHL_S2C); } var peerInfo = game.GetPeerInfo(peer); var bluePill = game.ItemManager.GetItemType(game.GetMap().GetBluePillId()); var itemInstance = peerInfo.GetChampion().Inventory.SetExtraItem(7, bluePill); var buyItem = new BuyItemAns(peerInfo.GetChampion(), itemInstance); game.PacketHandlerManager.sendPacket(peer, buyItem, Channel.CHL_S2C); // Not sure why both 7 and 14 skill slot, but it does not seem to work without it var skillUp = new SkillUpPacket(peerInfo.GetChampion().getNetId(), 7, 1, (byte)peerInfo.GetChampion().getSkillPoints()); game.PacketHandlerManager.sendPacket(peer, skillUp, Channel.CHL_GAMEPLAY); skillUp = new SkillUpPacket(peerInfo.GetChampion().getNetId(), 14, 1, (byte)peerInfo.GetChampion().getSkillPoints()); game.PacketHandlerManager.sendPacket(peer, skillUp, Channel.CHL_GAMEPLAY); peerInfo.GetChampion().GetStats().setSpellEnabled(7, true); peerInfo.GetChampion().GetStats().setSpellEnabled(14, true); peerInfo.GetChampion().GetStats().setSummonerSpellEnabled(0, true); peerInfo.GetChampion().GetStats().setSummonerSpellEnabled(1, true); var objects = game.GetMap().GetObjects(); foreach (var kv in objects) { if (kv.Value is Turret) { var t = kv.Value as Turret; var turretSpawn = new TurretSpawn(t); game.PacketHandlerManager.sendPacket(peer, turretSpawn, Channel.CHL_S2C); // To suppress game HP-related errors for enemy turrets out of vision var sh = new SetHealth(t); game.PacketHandlerManager.sendPacket(peer, sh, Channel.CHL_S2C); continue; } else if (kv.Value is LevelProp) { var lp = kv.Value as LevelProp; var lpsPacket = new LevelPropSpawn(lp); game.PacketHandlerManager.sendPacket(peer, lpsPacket, Channel.CHL_S2C); } else if (kv.Value is Inhibitor || kv.Value is Nexus) { var inhib = kv.Value as Unit; var ms = new MinionSpawn2(inhib.getNetId()); game.PacketHandlerManager.sendPacket(peer, ms, Channel.CHL_S2C); var sh = new SetHealth(inhib.getNetId()); game.PacketHandlerManager.sendPacket(peer, sh, Channel.CHL_S2C); } } // TODO shop map specific? // Level props are just models, we need button-object minions to allow the client to interact with it if (peerInfo != null && peerInfo.GetTeam() == TeamId.TEAM_BLUE) { // Shop (blue team) var ms1 = new MinionSpawn2(0xff10c6db); game.PacketHandlerManager.sendPacket(peer, ms1, Channel.CHL_S2C); var sh1 = new SetHealth(0xff10c6db); game.PacketHandlerManager.sendPacket(peer, sh1, Channel.CHL_S2C); } else if (peerInfo != null && peerInfo.GetTeam() == TeamId.TEAM_PURPLE) { // Shop (purple team) var ms1 = new MinionSpawn2(0xffa6170e); game.PacketHandlerManager.sendPacket(peer, ms1, Channel.CHL_S2C); var sh1 = new SetHealth(0xffa6170e); game.PacketHandlerManager.sendPacket(peer, sh1, Channel.CHL_S2C); } var end = new StatePacket(PacketCmdS2C.PKT_S2C_EndSpawn); return(game.PacketHandlerManager.sendPacket(peer, end, Channel.CHL_S2C)); }
void Update() { //Health health = GameObject.Find("Health_bar").GetComponent <Health_Controller>().health_this; //Horizontal movement float hInput = Input.GetAxis("Horizontal"); rb.AddForce(new Vector2(hInput * modstats[0, 0], 0)); //Cannon rotation lookDirection = Camera.main.ScreenToWorldPoint(Input.mousePosition) - transform.position; lookAngle = Mathf.Atan2(lookDirection.y, lookDirection.x) * Mathf.Rad2Deg; cannon_Transform.rotation = Quaternion.Euler(0f, 0f, lookAngle + 90f); //Bend if (Input.GetKeyDown(KeyCode.C)) { gameObject.GetComponent <Transform>().localScale = new Vector3(standard_size.x, Mathf.Abs(gameObject.GetComponent <Transform>().localScale.y - 1.5f), 1); } if (Input.GetKeyDown(KeyCode.X)) { gameObject.GetComponent <Transform>().localScale = new Vector3(Mathf.Abs(gameObject.GetComponent <Transform>().localScale.x - 1.5f), standard_size.y, 1); } //Fire + Fire improvement if (Input.GetMouseButton(0) && gameObject.transform.localScale.x == 1 && gameObject.transform.localScale.y == 1) { if (watch_fire <= 0) { Fire(cannon_Transform_Top, lookDirection.normalized, Quaternion.Euler(0f, 0f, lookAngle - 90f), bullet_Gameobject); rb.AddForce(-lookDirection.normalized * 3 * watch_fire, ForceMode2D.Impulse); watch_fire = modstats[1, 0]; } } if (watch_fire > 0) { watch_fire -= 1 * Time.deltaTime; } //Jump ray RaycastHit2D fireRay = Physics2D.Raycast(cannon_Transform_Top.position, lookDirection.normalized); Debug.DrawRay(cannon_Transform_Top.position, lookDirection.normalized, Color.green); //Mira if (fireRay.point == null) { mira_Gameobject.transform.position = new Vector2(-22, 22); mira_Gameobject.SetActive(false); } else if (fireRay.point != null) { mira_Gameobject.SetActive(true); mira_Gameobject.transform.position = fireRay.point; } //Jump if (Input.GetKey(KeyCode.Space) && watch_Jump <= 0) { //Increse Force & Set up a limit if (power_Jump < 3) { power_Jump += 3 * Time.deltaTime; } } else if (!Input.GetKey(KeyCode.Space) && watch_Jump <= 0 && fireRay.transform != null) { jumped_GameObject = GameObject.Find(fireRay.transform.name); if (jumped_GameObject.GetComponent <SetHealth>() != null && power_Jump > 0) { //Jump Enemy jumped_rb = jumped_GameObject.GetComponent <Rigidbody2D>(); health_Enemy_script = jumped_GameObject.GetComponent <SetHealth>(); if (power_Jump > 0) { jumped_rb.AddForce (new Vector2( -jumped_GameObject.transform.position.x + transform.position.x, -jumped_GameObject.transform.position.y + transform.position.y).normalized *power_Jump * 2 * ((health_Enemy_script.healthset) - health / fireRay.distance) ); } } if (power_Jump > 0 && (jumped_GameObject.tag == "Walls" || jumped_GameObject.GetComponent <SetHealth>() == null)) { //Normal Jump jumped_GameObject = null; jumped_rb = null; if (fireRay.distance <= 1) { rb.AddForce(-lookDirection.normalized * 5 * power_Jump, ForceMode2D.Impulse); watch_Jump = 2; power_Jump = 0; } } } //EXP////////////////////////////////////////////////////////////////////////////////////////////// if (exp_Float >= 1) { exp_Float = 0; level += 1; disposable_level += 1; Instantiate(levelUp_prefab, new Vector3(this.transform.position.x + .5f, this.transform.position.y + 1f, 0), Quaternion.Euler(0, 0, 0)); } if (disposable_level > 0) { //Improve speed (1) if (Input.GetKeyDown(KeyCode.Alpha1)) { disposable_level--; modstats[0, 0] *= 1.2f; } //Improve fire rate (2) else if (Input.GetKeyDown(KeyCode.Alpha2)) { disposable_level--; if (modstats[1, 0] > 0.1f) { modstats[1, 0] -= modstats[1, 1] / 10; } } //Give health (3) else if (Input.GetKeyDown(KeyCode.Alpha3)) { disposable_level--; Instantiate(givenhealthGameObject); } } if (Input.GetKeyDown(KeyCode.L)) { exp_Float = 1; } exp_Transform.localScale = new Vector3(exp_Float, exp_Float, 0); //Sand watch if (watch_Jump > 0) { watch_Jump -= 1 * Time.deltaTime; } }