浏览代码

开发:z值按照实际的来

xlxin 1 年之前
父节点
当前提交
b26c9f9691
共有 1 个文件被更改,包括 10 次插入2 次删除
  1. 10 2
      TileManor/scripts/conv_lvs.py

+ 10 - 2
TileManor/scripts/conv_lvs.py

@@ -84,18 +84,20 @@ def conver_json_to_proto(tDir, tFileName, outDir):
                 y = (int)(i / (int)(levelData.tileWidth))
                 stacked_map[(x, y)] = 0
 
-    # 处理各层的tile数据
+    # 处理各层的tile数据,并去掉中间的空层
     cntTiles = 0
+    z = 0
     for item in jsonData['layers']:
         name = item['name']
         if not name.startswith('Tile_'):
             # stacked
             continue
-        z = int(name[5:])
         data = item['data']
+        is_empty = True
         for i in range(0, len(data)):
             if data[i] == 0:
                 continue
+            is_empty = False
             tile = levelData.tiles.add()
             tile.x = (int)(i % levelData.tileWidth)
             tile.y = (int)(i / (int)(levelData.tileWidth))
@@ -119,6 +121,10 @@ def conver_json_to_proto(tDir, tFileName, outDir):
             if tile.y > maxY:
                 maxY = tile.y
             cntTiles += 1
+        if not is_empty:
+            z += 1
+    print('Tile 总数: %d' % (cntTiles,))
+    print('Tile 总数: %d' % (cntTiles,))
     print('Tile 总数: %d' % (cntTiles,))
     if cntTiles%3 != 0:
         print('Error: Tile总数不是3的倍数 3: %d' % (cntTiles,))
@@ -140,6 +146,8 @@ def conver_json_to_proto(tDir, tFileName, outDir):
         print("位置冲突:", p, ps)
     if len(pos_conflict) > 0:
         exit(1)
+    # 刷新io缓冲区
+    sys.stdout.flush()
     time.sleep(3)
 
     # 根据上面的布局信息,计算每个tile的几个信息: