getFrameNum() 공개 메소드

public getFrameNum ( int givenX, int givenY ) : int
givenX int
givenY int
리턴 int
예제 #1
0
 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);
 }
예제 #2
0
    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);
    }