DjWarmonger 15 lat temu
rodzic
commit
e0dc6573bf
2 zmienionych plików z 18 dodań i 12 usunięć
  1. 9 4
      hch/CObjectHandler.cpp
  2. 9 8
      lib/map.cpp

+ 9 - 4
hch/CObjectHandler.cpp

@@ -3271,14 +3271,19 @@ void CGSeerHut::initObj()
 	seerName = VLC->generaltexth->seerNames[ran()%VLC->generaltexth->seerNames.size()];
 	textOption = ran()%3;
 	progress = 0;
-	if (missionType && !isCustom)
+	if (missionType)
 	{
-		firstVisitText = VLC->generaltexth->quests[missionType-1][0][textOption];
-		nextVisitText = VLC->generaltexth->quests[missionType-1][1][textOption];
-		completedText = VLC->generaltexth->quests[missionType-1][2][textOption];
+		if (!isCustom)
+		{
+		
+			firstVisitText = VLC->generaltexth->quests[missionType-1][0][textOption];
+			nextVisitText = VLC->generaltexth->quests[missionType-1][1][textOption];
+			completedText = VLC->generaltexth->quests[missionType-1][2][textOption];
+		}
 	}
 	else
 		firstVisitText = VLC->generaltexth->seerEmpty[textOption];
+
 }
 
 const std::string & CGSeerHut::getHoverText() const

+ 9 - 8
lib/map.cpp

@@ -1045,21 +1045,21 @@ void Mapa::readHeader( const unsigned char * bufor, int &i)
 	i+=31; //omitting NULLS
 
 	allowedArtifact.resize(ARTIFACTS_QUANTITY);
-	for(unsigned int x=0;x<allowedArtifact.size();x++)
+	for (unsigned int x=0; x<allowedArtifact.size(); x++)
 		allowedArtifact[x] = true;
 
 	//reading allowed artifacts:  17 or 18 bytes
-	if(version!=RoE)
+	if (version!=RoE)
 	{
 		ist=i; //starting i for loop
-		for(i; i<ist+(version==AB ? 17 : 18); ++i)
+		for (i; i<ist+(version==AB ? 17 : 18); ++i)
 		{
 			unsigned char c = bufor[i];
-			for(int yy=0; yy<8; ++yy)
+			for (int yy=0; yy<8; ++yy)
 			{
-				if((i-ist)*8+yy < ARTIFACTS_QUANTITY)
+				if ((i-ist)*8+yy < ARTIFACTS_QUANTITY)
 				{
-					if(c == (c|((unsigned char)intPow(2, yy))))
+					if (c == (c|((unsigned char)intPow(2, yy))))
 						allowedArtifact[(i-ist)*8+yy] = false;
 				}
 			}
@@ -1831,6 +1831,7 @@ void Mapa::readObjects( const unsigned char * bufor, int &i)
 				nobj = new CGMagicWell();
 				break;
 			}
+		case 15: //Cover of darkness
 		case 58: //Redwood Observatory
 		case 60: //Pillar of Fire
 			{
@@ -2094,9 +2095,9 @@ void Mapa::loadQuest(CQuest * guard, const unsigned char * bufor, int & i)
 	guard->nextVisitText = readString(bufor,i);
 	guard->completedText = readString(bufor,i);
 	if (guard->firstVisitText.size() && guard->nextVisitText.size() && guard->completedText.size())
-		guard->isCustom = false; //randomize all if any text is missing
-	else
 		guard->isCustom = true;
+	else
+		guard->isCustom = false;  //randomize all if any text is missing
 }
 
 TerrainTile & Mapa::getTile( int3 tile )