package { import flash.ui.Keyboard; import net.flashpunk.Entity; import net.flashpunk.FP; import net.flashpunk.Graphic; import net.flashpunk.graphics.Spritemap; import net.flashpunk.utils.Input; import net.flashpunk.utils.Key; public class Nebula extends Entity { [Embed(source="playerSpritesheets/tracer sheet.png")] public const Tracer:Class public var tracer:Spritemap; [Embed(source="playerSpritesheets/water sheet.png")] public const Water:Class public var water:Spritemap; [Embed(source="playerSpritesheets/fire sheet.png")] public const Fire:Class public var fire:Spritemap; [Embed(source="playerSpritesheets/air sheet.png")] public const Air:Class public var air:Spritemap; [Embed(source="playerSpritesheets/elec sheet.png")] public const Electric:Class public var elec:Spritemap; [Embed(source="playerSpritesheets/ultima sheet.png")] public const Ultima:Class public var ultima:Spritemap; public function Nebula() { //Tracer anim anim:tracer = new Spritemap(Tracer, 128, 128); anim:tracer.add("TracerBase", [00,01,02,03,04,05,06,07,08,09,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30], 60); anim:tracer.add("TracerAilLeft", [41,42,43,44,45,46,47,48,49,50], 10, false); anim:tracer.add("TracerAilRight", [31,32,33,34,35,36,37,38,39,40], 10, false); anim:tracer.add("TracerFast", [51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70], 120, false); anim:tracer.add("TracerSlow", [71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90], 20, false); //Water anim anim:water = new Spritemap(Water, 128, 128); anim:water.add("WaterBase", [00,01,02,03,04,05,06,07,08,09,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30], 60); anim:water.add("WaterAilLeft", [41,42,43,44,45,46,47,48,49,50], 10, false); anim:water.add("WaterAilRight", [31,32,33,34,35,36,37,38,39,40], 10, false); anim:water.add("WaterFast", [51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70], 120, false); anim:water.add("WaterSlow", [71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90], 20, false); //Fire anim anim:fire = new Spritemap(Fire, 128, 128); anim:fire.add("FireBase", [00,01,02,03,04,05,06,07,08,09,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30], 60); anim:fire.add("FireAilLeft", [41,42,43,44,45,46,47,48,49,50], 10, false); anim:fire.add("FireAilRight", [31,32,33,34,35,36,37,38,39,40], 10, false); anim:fire.add("FireFast", [51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70], 120, false); anim:fire.add("FireSlow", [71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90], 20, false); //Air anim anim:air = new Spritemap(Air, 128, 128); anim:air.add("AirBase", [00,01,02,03,04,05,06,07,08,09,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30], 60); anim:air.add("AirAilLeft", [41,42,43,44,45,46,47,48,49,50], 10, false); anim:air.add("AirAilRight", [31,32,33,34,35,36,37,38,39,40], 10, false); anim:air.add("AirFast", [51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70], 120, false); anim:air.add("AirSlow", [71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90], 20, false); //Electric anim anim:elec = new Spritemap(Electric, 128, 128); anim:elec.add("ElecBase", [00,01,02,03,04,05,06,07,08,09,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30], 60); anim:elec.add("ElecAilLeft", [41,42,43,44,45,46,47,48,49,50], 10, false); anim:elec.add("ElecAilRight", [31,32,33,34,35,36,37,38,39,40], 10, false); anim:elec.add("ElecFast", [51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70], 120, false); anim:elec.add("ElecSlow", [71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90], 20, false); //Ultima anim anim:ultima = new Spritemap(Ultima, 128, 128); anim:ultima.add("UltimaBase", [00,01,02,03,04,05,06,07,08,09,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30], 60); anim:ultima.add("UltimaAilLeft", [41,42,43,44,45,46,47,48,49,50], 10, false); anim:ultima.add("UltimaAilRight", [31,32,33,34,35,36,37,38,39,40], 10, false); anim:ultima.add("UltimaFast", [51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70], 120, false); anim:ultima.add("UltimaSlow", [71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90], 20, false); } override public function update():void { //Weapon change buttons if (Input.check(Key.Q)) { graphic = tracer; anim:water.play("TracerBase"); } if (Input.check(Key.W)) { graphic = water; anim:water.play("WaterBase"); } if (Input.check(Key.E)) { graphic = fire; anim:fire.play("FireBase"); } if (Input.check(Key.R)) { graphic = air; anim:air.play("AirBase"); } if (Input.check(Key.T)) { graphic = elec; anim:elec.play("ElecBase"); } if (Input.check(Key.Y)) { graphic = ultima; anim:ultima.play("UltimaBase"); } //Movement and Action buttons if (Input.check(Key.LEFT)) { moveBy(-8,0); anim:tracer.play("TracerAilLeft"); anim:water.play("WaterAilLeft"); anim:fire.play("FireAilLeft"); anim:air.play("AirAilLeft"); anim:elec.play("ElecAilLeft"); anim:ultima.play("UltimaAilLeft"); } if (Input.check(Key.RIGHT)) { moveBy(8,0); anim:tracer.play("TracerAilRight"); anim:water.play("WaterAilRight"); anim:fire.play("FireAilRight"); anim:air.play("AirAilRight"); anim:elec.play("ElecAilRight"); anim:ultima.play("UltimaAilRight"); } if (Input.check(Key.UP)) { moveBy(0,-8); anim:tracer.play("TracerFast"); anim:water.play("WaterFast"); anim:fire.play("FireFast"); anim:air.play("AirFast"); anim:elec.play("ElecFast"); anim:ultima.play("UltimaFast"); } if (Input.check(Key.DOWN)) { moveBy(0,8); anim:tracer.play("TracerSlow"); anim:water.play("WaterSlow"); anim:fire.play("FireSlow"); anim:air.play("AirSlow"); anim:elec.play("ElecSlow"); anim:ultima.play("UltimaSlow"); } if (Input.released(Key.ANY)) { anim:tracer.play("TracerBase"); anim:water.play("WaterBase"); anim:fire.play("FireBase"); anim:air.play("AirBase"); anim:elec.play("ElecBase"); anim:ultima.play("UltimaBase"); } } } }