Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package;
- import flixel.effects.particles.FlxEmitter;
- import flixel.FlxG;
- import flixel.FlxSprite;
- import flixel.group.FlxTypedGroup;
- import flixel.tile.FlxTilemap;
- import flixel.util.FlxRandom;
- import flixel.util.FlxSpriteUtil;
- import flixel.util.FlxVelocity;
- class FalseSpawnerZ extends FlxSprite
- {
- public static var _single:FalseSpawnerZ;
- private var _timer:Float;
- private var _player:Player;
- private var _map:FlxTilemap;
- private var _stage:Int;
- private var _bots:FlxTypedGroup<ZombieChibi>;
- public var isSpawning:Bool;
- private var _open:Bool;
- public function new(X:Int, Y:Int, ThePlayer:Player, Bots:FlxTypedGroup<ZombieChibi>, AMap:FlxTilemap, Stage:Int )
- {
- super(X, Y);
- _single = this;
- loadGraphic(AssetPaths.BoneSpawner__png , true);
- _player = ThePlayer;
- _map = AMap;
- _stage = Stage;
- _bots = Bots;
- _timer = FlxRandom.floatRanged(0, 20);
- isSpawning = false;
- //0123
- animation.add("open", [0, 1, 2, 3, 1,0], 40, false);
- animation.add("close", [1, 3, 2, 1, 0], 40, false);
- }
- override public function destroy():Void
- {
- super.destroy();
- }
- override public function update():Void
- {
- _timer += FlxG.elapsed;
- //Original 6,5
- var limit:Float = 5;
- if (isOnScreen()) limit = 3;
- if (_timer > limit)
- {
- _timer = 0;
- makeBot();
- isSpawning = true;
- } else isSpawning = false;
- if (_timer > limit - 0.35)
- {
- if (!_open)
- {
- _open = true;
- animation.play("open");
- }
- }
- else if (_timer > 1)
- {
- if (_open)
- {
- animation.play("close");
- _open = false;
- }
- }
- super.update();
- }
- override public function kill():Void
- {
- super.kill();
- }
- public function makeBot():Void
- {
- var enemy:ZombieChibi = new ZombieChibi(x, y, _player, _map);
- _bots.add(enemy);
- FlxVelocity.moveTowardsObject(enemy, _player, 38);
- }
- private function turnOffSlowMo():Void
- {
- FlxG.timeScale = 1.0;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment