|
|
|
@ -136,12 +136,15 @@ func init_level_character() -> void:
|
|
|
|
|
|
|
|
|
|
|
|
func init_level_main() -> void:
|
|
|
|
func init_level_main() -> void:
|
|
|
|
var level_main: GridMap = %LevelGridMain as GridMap
|
|
|
|
var level_main: GridMap = %LevelGridMain as GridMap
|
|
|
|
|
|
|
|
mark_white_list.clear()
|
|
|
|
|
|
|
|
mark_black_list.clear()
|
|
|
|
|
|
|
|
grid_main_cache_cells.clear()
|
|
|
|
var id_min: Vector3i = Util.get_level_grid_pos2(pos_min())
|
|
|
|
var id_min: Vector3i = Util.get_level_grid_pos2(pos_min())
|
|
|
|
var id_max: Vector3i = Util.get_level_grid_pos2(pos_max())
|
|
|
|
var id_max: Vector3i = Util.get_level_grid_pos2(pos_max())
|
|
|
|
# 正前面
|
|
|
|
# 正前面
|
|
|
|
for x in range(id_min.x, id_max.x+1):
|
|
|
|
for x in range(id_min.x, id_max.x+1):
|
|
|
|
for y in range(id_min.y, id_max.y+1):
|
|
|
|
for y in range(id_min.y, id_max.y+1):
|
|
|
|
var pos: Vector3i = Vector3i(x, id_max.z, y)
|
|
|
|
var pos: Vector3i = Vector3i(x, y, id_max.z)
|
|
|
|
add_grid_main_cache_cell(level_main, pos)
|
|
|
|
add_grid_main_cache_cell(level_main, pos)
|
|
|
|
# 底面黑块
|
|
|
|
# 底面黑块
|
|
|
|
for x in range(id_min.x, id_max.x+1):
|
|
|
|
for x in range(id_min.x, id_max.x+1):
|
|
|
|
@ -153,7 +156,7 @@ func init_level_main() -> void:
|
|
|
|
mark_black_list.append(pos)
|
|
|
|
mark_black_list.append(pos)
|
|
|
|
# 底面黑块延申空气墙
|
|
|
|
# 底面黑块延申空气墙
|
|
|
|
for mark_black in mark_black_list:
|
|
|
|
for mark_black in mark_black_list:
|
|
|
|
for y in range(id_min.y, id_max.y -1):
|
|
|
|
for y in range(id_min.y, id_max.y):
|
|
|
|
var pos: Vector3i = Vector3i(mark_black.x, y, mark_black.z)
|
|
|
|
var pos: Vector3i = Vector3i(mark_black.x, y, mark_black.z)
|
|
|
|
add_grid_main_cache_cell(level_main, pos)
|
|
|
|
add_grid_main_cache_cell(level_main, pos)
|
|
|
|
mark_white_list.append(pos)
|
|
|
|
mark_white_list.append(pos)
|
|
|
|
|