Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package;
- import flixel.FlxG;
- import flixel.FlxObject;
- import flixel.FlxState;
- import flixel.addons.editors.ogmo.FlxOgmo3Loader;
- import flixel.group.FlxGroup.FlxTypedGroup;
- import flixel.tile.FlxTilemap;
- class PlayState extends FlxState
- {
- var player:Player;
- var map:FlxOgmo3Loader;
- var walls:FlxTilemap;
- public var coins:FlxTypedGroup<Coin>;
- override public function create()
- {
- map = new FlxOgmo3Loader(AssetPaths.turnbasedRPG__ogmo, AssetPaths.room_001__json);
- walls = map.loadTilemap(AssetPaths.tiles__png, "walls");
- walls.follow();
- walls.setTileProperties(1, FlxObject.NONE);
- walls.setTileProperties(2, FlxObject.ANY);
- add(walls);
- player = new Player(0);
- map.loadEntities(placeEntities, "entities");
- add(player);
- coins = new FlxTypedGroup<Coin>();
- FlxG.camera.follow(player, TOPDOWN, 1);
- super.create();
- }
- function placeEntities(entity:EntityData)
- {
- if (entity.name == "player")
- {
- player.setPosition(entity.x, entity.y);
- }
- else if (entity.name == "coin")
- {
- coins.add(new Coin(entity.x, entity.y));
- }
- }
- function playerTouchCoin(player:Player, coin:Coin)
- {
- if (player.alive && player.exists && coin.alive && coin.exists)
- {
- coin.kill();
- }
- }
- override public function update(elapsed:Float)
- {
- super.update(elapsed);
- FlxG.collide(player, walls);
- FlxG.overlap(player, coins, playerTouchCoin);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment