public bool isWalkable(int tileX, int tileY) { if (tileX < 0 || tileY < 0 || tileX >= tilemap.widthInTiles || tileY >= tilemap.heightInTiles) { return(false); //For minimap drawing } return(tilemap.getFrameNum(tileX, tileY) != 1); }
public World(int level) { string beginningMessage = ""; if (beginningMessages.Length > level) { beginningMessage = beginningMessages[level]; } beginningLabel = new FLabel("Large", beginningMessage); beginningLabel.alpha = 1.0f; beginningLabel.y = -70; beginningLabelShadow = new FLabel("Large", beginningMessage); beginningLabelShadow.color = Color.black; beginningLabelShadow.SetPosition(beginningLabel.GetPosition()); beginningLabelShadow.x += 1; beginningLabelShadow.y += -1; this.currentLevelNum = level; string levelName = "Maps/map" + level; this.startNumPlayers = enemiesOnLevel[level]; clock = new Clock(); clock.enableSound(); enemyClock = new EnemyClock(); gui = new FCamObject(); gui.AddChild(clock); gui.AddChild(enemyClock); setClock(clock); Futile.stage.AddChild(playerLayer); tmxMap.LoadTMX(levelName); tilemap = (FTilemap)(tmxMap.getLayerNamed("Tilemap")); FTilemap objectLayer = (FTilemap)(tmxMap.getLayerNamed("Objects")); for (int xInd = 0; xInd < objectLayer.widthInTiles; xInd++) { for (int yInd = 0; yInd < objectLayer.heightInTiles; yInd++) { switch (objectLayer.getFrameNum(xInd, yInd)) { case 0: break; case 10: FNode newSpawn = new FNode(); newSpawn.x = xInd * tilemap._tileWidth + tilemap._tileWidth / 2; newSpawn.y = -yInd * tilemap._tileHeight - tilemap._tileHeight / 2; spawnPoints.Add(newSpawn); break; case 11: playerSpawn = new FNode(); playerSpawn.x = xInd * tilemap._tileWidth + tilemap._tileWidth / 2; playerSpawn.y = -yInd * tilemap._tileHeight - tilemap._tileHeight / 2; break; } } } this.miniMap = new Minimap(this); playerLayer.AddChild(tmxMap); tilemap.clipNode = gui; Player player = new Player(true); gui.follow(player); addPlayer(player); player.setScale(2.0f, true); miniMap.setFollow(player); for (int ind = 0; ind < startNumPlayers; ind++) { Player p = new Player(); addPlayer(p); } Futile.stage.AddChild(gui); gui.AddChild(new MuteMusicButton()); gui.AddChild(miniMap); gui.AddChild(beginningLabelShadow); gui.AddChild(beginningLabel); }