DjWarmonger 10 年之前
父節點
當前提交
a832b7efee
共有 3 個文件被更改,包括 7 次插入5 次删除
  1. 1 1
      config/objects/moddables.json
  2. 6 2
      lib/mapObjects/ObjectTemplate.cpp
  3. 0 2
      lib/rmg/CRmgTemplateZone.cpp

+ 1 - 1
config/objects/moddables.json

@@ -157,7 +157,7 @@
 		"base" : {
 			"base" : {
 				"visitableFrom" : [ "---", "+++", "+++" ],
-				"mask" : [ "VVV", "VAV" ]
+				"mask" : [ "VVV", "VVV", "VAV" ]
 			}
 		},
 		"types" : {

+ 6 - 2
lib/mapObjects/ObjectTemplate.cpp

@@ -249,7 +249,11 @@ void ObjectTemplate::readJson(const JsonNode &node)
 			usedTiles[mask.size() - 1 - i][line.size() - 1 - j] = charToTile(line[j]);
 	}
 
-	printPriority = node["zIndex"].Float();
+	const JsonNode zindex = node["zIndex"];
+	if (!zindex.isNull())
+		printPriority = node["zIndex"].Float();
+	else
+		printPriority = 0; //default value
 }
 
 ui32 ObjectTemplate::getWidth() const
@@ -332,7 +336,7 @@ int3 ObjectTemplate::getBlockMapOffset() const
 				return int3(w, h, 0);
 		}
 	}
-	return int3(-1,-1,-1);
+	return int3(0,0,0);
 }
 
 bool ObjectTemplate::isVisitableFrom(si8 X, si8 Y) const

+ 0 - 2
lib/rmg/CRmgTemplateZone.cpp

@@ -801,12 +801,10 @@ bool CRmgTemplateZone::createTreasurePile(CMapGenerator* gen, int3 &pos, float m
 			oiptr->maxPerZone--;
 			if (!oiptr->maxPerZone)
 				possibleObjects.erase(oiptr);
-			//TODO
 
 			//update treasure pile area
 			int3 visitablePos = info.nextTreasurePos;
 
-			//TODO: actually we need to check is object is either !blockVisit or removable after visit - this means object below can be accessed
 			if (oi.templ.isVisitableFromTop())
 				info.visitableFromTopPositions.insert(visitablePos); //can be accessed from any direction
 			else