<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                小滿(bill man)個人原創,歡迎轉載,轉載請注明地址,小滿(bill man)的專欄地址http://blog.csdn.net/bill_man 之前的瓦片地圖集那篇當中講解過地圖有關類CCTMXTiledMap,但是還不夠詳細,在進行完一系列和該類有關的實例編寫和講解后,覺得有必要把CCTMXTiledMap補充進基礎知識部分。首先看api ![](https://box.kancloud.cn/2016-04-26_571f3f14b2459.gif) 可以看到,CCTMXTiledMap繼承于CCNode,這樣addchild等cocos2d-x中的基本類都可以使用。 首先來看聲明及初始化CCTMXTiledMap CCTMXTiledMap?*map?=?CCTMXTiledMap::tiledMapWithTMXFile("iso-test-zorder.tmx"); 很簡單,參數就是通過Tiles工具生成的.tmx文件(這個工具及其用法請看之前的瓦片地圖集那一節,這里就不再贅述了)。如果初始化了一個地圖,我們就可以通過addChild(map,?0,?kTagTileMap)把它加入到我們的層次和場景中,然后要在該場景中獲得這個地圖實例,我們可以通過CCTMXTiledMap*?map?=?(CCTMXTiledMap*)?getChildByTag(kTagTileMap)來獲得。 CCTMXTiledMap中的每一個tile都是CCSprite類型的,但是這個CCSprite并不是一直存在,而是當我們的程序中需要控制一個圖素時(更改圖素等),我們通過以下這個語句獲得圖素的CCSprite: CCSprite?*newadd?=?layer->tileAt(aimmapindex); 參數就是圖素的橫縱坐標索引值,獲得這個CCSprite后,我們就可以控制這個CCSprie旋轉,縮放,或者是給他掛上各種Action(通過runAction) 我們可以通過map->getMapSize().width和map->getMapSize().height獲得地圖橫縱的圖素個數。 我們可以通過map->getTileSize().width和map->getTileSize().height獲得地圖圖素的寬高。 我們可以通過map->getContentSize().width和map->getContentSize().height獲得整體地圖的寬高。但是這個有個問題,就是當我們進行整個的地圖縮放的時候,這個寬高值不會變化,我們必須通過map->getScale()獲得縮放參數并把它乘以寬高及獲得真實寬高。 關于地圖的gid,我對gid的理解就是每個圖素的索引,也就是說改變這個位置的gid值就改變了這個位置的圖素圖片,我們可以通過layer->tileGIDAt(ccp(mapindex.x,mapindex.y));來獲得在某個位置的地圖gid。并且可以通過layer->setTileGID(4,aimmapindex);設置某個位置的gid值,其中第一個參數為要設置的gid,第二個參數是本位置的寬高索引。 Gid還有個用途就是獲得地圖的屬性值,這個屬性值是通過Tiles工具來設置,用法如下: ~~~ CCMutableDictionary<string,CCString?*>?*tiledic?=?map->propertiesForGID(tilegid); CCString?*mvalue?=?tiledic->objectForKey("conflict"); int?mv?=?mvalue->toInt(); ~~~ 獲得的是個鍵值對,然后把它轉變為我們需要的類型。 如有錯誤之處,希望大家多多指正
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看