mirror of
				https://github.com/vcmi/vcmi.git
				synced 2025-10-31 00:07:39 +02:00 
			
		
		
		
	Remove few more implicit conversions
This commit is contained in:
		| @@ -77,7 +77,7 @@ void CSkill::registerIcons(const IconRegistar & cb) const | ||||
| { | ||||
| 	for(int level = 1; level <= 3; level++) | ||||
| 	{ | ||||
| 		int frame = 2 + level + 3 * id; | ||||
| 		int frame = 2 + level + 3 * id.getNum(); | ||||
| 		const LevelInfo & skillAtLevel = at(level); | ||||
| 		cb(frame, 0, "SECSK32", skillAtLevel.iconSmall); | ||||
| 		cb(frame, 0, "SECSKILL", skillAtLevel.iconMedium); | ||||
|   | ||||
| @@ -144,12 +144,12 @@ CFaction::~CFaction() | ||||
|  | ||||
| int32_t CFaction::getIndex() const | ||||
| { | ||||
| 	return index; | ||||
| 	return index.getNum(); | ||||
| } | ||||
|  | ||||
| int32_t CFaction::getIconIndex() const | ||||
| { | ||||
| 	return index; //??? | ||||
| 	return index.getNum(); //??? | ||||
| } | ||||
|  | ||||
| std::string CFaction::getJsonKey() const | ||||
| @@ -172,8 +172,8 @@ void CFaction::registerIcons(const IconRegistar & cb) const | ||||
| 		cb(info.icons[1][0] + 2, 0, "ITPA", info.iconSmall[1][0]); | ||||
| 		cb(info.icons[1][1] + 2, 0, "ITPA", info.iconSmall[1][1]); | ||||
|  | ||||
| 		cb(index, 1, "CPRSMALL", info.towerIconSmall); | ||||
| 		cb(index, 1, "TWCRPORT", info.towerIconLarge); | ||||
| 		cb(index.getNum(), 1, "CPRSMALL", info.towerIconSmall); | ||||
| 		cb(index.getNum(), 1, "TWCRPORT", info.towerIconLarge); | ||||
|  | ||||
| 	} | ||||
| } | ||||
| @@ -734,7 +734,7 @@ void CTownHandler::loadBuilding(CTown * town, const std::string & stringID, cons | ||||
|  | ||||
| 	ret->town->buildings[ret->bid] = ret; | ||||
|  | ||||
| 	registerObject(source.meta, ret->town->getBuildingScope(), ret->identifier, ret->bid); | ||||
| 	registerObject(source.meta, ret->town->getBuildingScope(), ret->identifier, ret->bid.getNum()); | ||||
| } | ||||
|  | ||||
| void CTownHandler::loadBuildings(CTown * town, const JsonNode & source) | ||||
| @@ -1115,10 +1115,10 @@ void CTownHandler::loadObject(std::string scope, std::string name, const JsonNod | ||||
| 	if (object->town) | ||||
| 	{ | ||||
| 		auto & info = object->town->clientInfo; | ||||
| 		info.icons[0][0] = 8 + object->index * 4 + 0; | ||||
| 		info.icons[0][1] = 8 + object->index * 4 + 1; | ||||
| 		info.icons[1][0] = 8 + object->index * 4 + 2; | ||||
| 		info.icons[1][1] = 8 + object->index * 4 + 3; | ||||
| 		info.icons[0][0] = 8 + object->index.getNum() * 4 + 0; | ||||
| 		info.icons[0][1] = 8 + object->index.getNum() * 4 + 1; | ||||
| 		info.icons[1][0] = 8 + object->index.getNum() * 4 + 2; | ||||
| 		info.icons[1][1] = 8 + object->index.getNum() * 4 + 3; | ||||
|  | ||||
| 		VLC->identifiers()->requestIdentifier(scope, "object", "town", [=](si32 index) | ||||
| 		{ | ||||
| @@ -1142,7 +1142,7 @@ void CTownHandler::loadObject(std::string scope, std::string name, const JsonNod | ||||
| 		}); | ||||
| 	} | ||||
|  | ||||
| 	registerObject(scope, "faction", name, object->index); | ||||
| 	registerObject(scope, "faction", name, object->index.getNum()); | ||||
| } | ||||
|  | ||||
| void CTownHandler::loadObject(std::string scope, std::string name, const JsonNode & data, size_t index) | ||||
| @@ -1158,10 +1158,10 @@ void CTownHandler::loadObject(std::string scope, std::string name, const JsonNod | ||||
| 	if (object->town) | ||||
| 	{ | ||||
| 		auto & info = object->town->clientInfo; | ||||
| 		info.icons[0][0] = (GameConstants::F_NUMBER + object->index) * 2 + 0; | ||||
| 		info.icons[0][1] = (GameConstants::F_NUMBER + object->index) * 2 + 1; | ||||
| 		info.icons[1][0] = object->index * 2 + 0; | ||||
| 		info.icons[1][1] = object->index * 2 + 1; | ||||
| 		info.icons[0][0] = (GameConstants::F_NUMBER + object->index.getNum()) * 2 + 0; | ||||
| 		info.icons[0][1] = (GameConstants::F_NUMBER + object->index.getNum()) * 2 + 1; | ||||
| 		info.icons[1][0] = object->index.getNum() * 2 + 0; | ||||
| 		info.icons[1][1] = object->index.getNum() * 2 + 1; | ||||
|  | ||||
| 		VLC->identifiers()->requestIdentifier(scope, "object", "town", [=](si32 index) | ||||
| 		{ | ||||
| @@ -1173,7 +1173,7 @@ void CTownHandler::loadObject(std::string scope, std::string name, const JsonNod | ||||
| 		}); | ||||
| 	} | ||||
|  | ||||
| 	registerObject(scope, "faction", name, object->index); | ||||
| 	registerObject(scope, "faction", name, object->index.getNum()); | ||||
| } | ||||
|  | ||||
| void CTownHandler::loadRandomFaction() | ||||
|   | ||||
| @@ -571,6 +571,12 @@ public: | ||||
|  | ||||
| 	static std::string encode(int32_t index); | ||||
| 	static si32 decode(const std::string & identifier); | ||||
|  | ||||
| 	// TODO: Remove | ||||
| 	constexpr operator int32_t () const | ||||
| 	{ | ||||
| 		return num; | ||||
| 	} | ||||
| }; | ||||
|  | ||||
| class MapObjectSubID : public Identifier<MapObjectSubID> | ||||
| @@ -594,6 +600,12 @@ public: | ||||
| 		this->num = value.getNum(); | ||||
| 		return *this; | ||||
| 	} | ||||
|  | ||||
| 	// TODO: Remove | ||||
| 	constexpr operator int32_t () const | ||||
| 	{ | ||||
| 		return num; | ||||
| 	} | ||||
| }; | ||||
|  | ||||
| class DLL_LINKAGE RoadId : public Identifier<RoadId> | ||||
|   | ||||
| @@ -52,10 +52,10 @@ public: | ||||
| 		num += change; | ||||
| 	} | ||||
|  | ||||
| 	constexpr operator int32_t () const | ||||
| 	{ | ||||
| 		return num; | ||||
| 	} | ||||
| //	constexpr operator int32_t () const | ||||
| //	{ | ||||
| //		return num; | ||||
| //	} | ||||
|  | ||||
| 	friend std::ostream& operator<<(std::ostream& os, const IdentifierBase& dt) | ||||
| 	{ | ||||
|   | ||||
| @@ -117,7 +117,7 @@ std::vector<JsonNode> CObjectClassesHandler::loadLegacyData() | ||||
| 		tmpl->readTxt(parser); | ||||
| 		parser.endLine(); | ||||
|  | ||||
| 		std::pair<si32, si32> key(tmpl->id.num, tmpl->subid); | ||||
| 		std::pair key(tmpl->id, tmpl->subid); | ||||
| 		legacyTemplates.insert(std::make_pair(key, std::shared_ptr<const ObjectTemplate>(tmpl))); | ||||
| 	} | ||||
|  | ||||
|   | ||||
| @@ -74,7 +74,7 @@ class DLL_LINKAGE CObjectClassesHandler : public IHandlerBase | ||||
| 	std::map<std::string, std::function<TObjectTypeHandler()> > handlerConstructors; | ||||
|  | ||||
| 	/// container with H3 templates, used only during loading, no need to serialize it | ||||
| 	using TTemplatesContainer = std::multimap<std::pair<si32, si32>, std::shared_ptr<const ObjectTemplate>>; | ||||
| 	using TTemplatesContainer = std::multimap<std::pair<MapObjectID, MapObjectSubID>, std::shared_ptr<const ObjectTemplate>>; | ||||
| 	TTemplatesContainer legacyTemplates; | ||||
|  | ||||
| 	TObjectTypeHandler loadSubObjectFromJson(const std::string & scope, const std::string & identifier, const JsonNode & entry, ObjectClass * obj, size_t index); | ||||
|   | ||||
| @@ -49,7 +49,7 @@ CGDwelling::~CGDwelling() = default; | ||||
| FactionID CGDwelling::randomizeFaction(CRandomGenerator & rand) | ||||
| { | ||||
| 	if (ID == Obj::RANDOM_DWELLING_FACTION) | ||||
| 		return FactionID(subID); | ||||
| 		return FactionID(subID.getNum()); | ||||
|  | ||||
| 	assert(ID == Obj::RANDOM_DWELLING || ID == Obj::RANDOM_DWELLING_LVL); | ||||
| 	assert(randomizationInfo.has_value()); | ||||
| @@ -138,7 +138,7 @@ void CGDwelling::pickRandomObject(CRandomGenerator & rand) | ||||
| 		auto testID = [&](const Obj & primaryID) -> MapObjectSubID | ||||
| 		{ | ||||
| 			auto dwellingIDs = VLC->objtypeh->knownSubObjects(primaryID); | ||||
| 			for (si32 entry : dwellingIDs) | ||||
| 			for (MapObjectSubID entry : dwellingIDs) | ||||
| 			{ | ||||
| 				const auto * handler = dynamic_cast<const DwellingInstanceConstructor *>(VLC->objtypeh->getHandlerFor(primaryID, entry).get()); | ||||
|  | ||||
|   | ||||
| @@ -43,8 +43,8 @@ class DLL_LINKAGE ObjectTemplate | ||||
|  | ||||
| public: | ||||
| 	/// H3 ID/subID of this object | ||||
| 	Obj id; | ||||
| 	si32 subid; | ||||
| 	MapObjectID id; | ||||
| 	MapObjectSubID subid; | ||||
| 	/// print priority, objects with higher priority will be print first, below everything else | ||||
| 	si32 printPriority; | ||||
| 	/// animation file that should be used to display object | ||||
|   | ||||
| @@ -707,7 +707,7 @@ void CMapLoaderH3M::readDisposedHeroes() | ||||
| 		for(int g = 0; g < disp; ++g) | ||||
| 		{ | ||||
| 			map->disposedHeroes[g].heroId = reader->readHero(); | ||||
| 			map->disposedHeroes[g].portrait.setNum(reader->readHeroPortrait()); | ||||
| 			map->disposedHeroes[g].portrait = reader->readHeroPortrait(); | ||||
| 			map->disposedHeroes[g].name = readLocalizedString(TextIdentifier("header", "heroes", map->disposedHeroes[g].heroId)); | ||||
| 			reader->readBitmaskPlayers(map->disposedHeroes[g].players, false); | ||||
| 		} | ||||
|   | ||||
| @@ -127,10 +127,10 @@ rmg::Area & Zone::freePaths() | ||||
|  | ||||
| FactionID Zone::getTownType() const | ||||
| { | ||||
| 	return FactionID(townType); | ||||
| 	return townType; | ||||
| } | ||||
|  | ||||
| void Zone::setTownType(si32 town) | ||||
| void Zone::setTownType(FactionID town) | ||||
| { | ||||
| 	townType = town; | ||||
| } | ||||
|   | ||||
| @@ -59,7 +59,7 @@ public: | ||||
| 	void fractalize(); | ||||
| 	 | ||||
| 	FactionID getTownType() const; | ||||
| 	void setTownType(si32 town); | ||||
| 	void setTownType(FactionID town); | ||||
| 	TerrainId getTerrainType() const; | ||||
| 	void setTerrainType(TerrainId terrain); | ||||
| 		 | ||||
| @@ -108,7 +108,7 @@ protected: | ||||
| 	std::vector<int3> possibleQuestArtifactPos; | ||||
| 	 | ||||
| 	//template info | ||||
| 	si32 townType; | ||||
| 	FactionID townType; | ||||
| 	TerrainId terrainType; | ||||
| }; | ||||
|  | ||||
|   | ||||
| @@ -179,7 +179,7 @@ void TownPlacer::addNewTowns(int count, bool hasFort, const PlayerColor & player | ||||
| { | ||||
| 	for(int i = 0; i < count; i++) | ||||
| 	{ | ||||
| 		si32 subType = zone.getTownType(); | ||||
| 		FactionID subType = zone.getTownType(); | ||||
| 		 | ||||
| 		if(totalTowns>0) | ||||
| 		{ | ||||
|   | ||||
| @@ -155,8 +155,8 @@ void TreasurePlacer::addAllPossibleObjects() | ||||
| 		if(dwellingType == Obj::CREATURE_GENERATOR1) | ||||
| 		{ | ||||
| 			//don't spawn original "neutral" dwellings that got replaced by Conflux dwellings in AB | ||||
| 			static int elementalConfluxROE[] = {7, 13, 16, 47}; | ||||
| 			for(int & i : elementalConfluxROE) | ||||
| 			static MapObjectSubID elementalConfluxROE[] = {7, 13, 16, 47}; | ||||
| 			for(auto const & i : elementalConfluxROE) | ||||
| 				vstd::erase_if_present(subObjects, i); | ||||
| 		} | ||||
| 		 | ||||
| @@ -918,7 +918,7 @@ char TreasurePlacer::dump(const int3 & t) | ||||
| 	return Modificator::dump(t); | ||||
| } | ||||
|  | ||||
| void ObjectInfo::setTemplates(si32 type, si32 subtype, TerrainId terrainType) | ||||
| void ObjectInfo::setTemplates(MapObjectID type, MapObjectSubID subtype, TerrainId terrainType) | ||||
| { | ||||
| 	auto templHandler = VLC->objtypeh->getHandlerFor(type, subtype); | ||||
| 	if(!templHandler) | ||||
|   | ||||
| @@ -29,7 +29,7 @@ struct ObjectInfo | ||||
| 	//ui32 maxPerMap; //unused | ||||
| 	std::function<CGObjectInstance *()> generateObject; | ||||
| 	 | ||||
| 	void setTemplates(si32 type, si32 subtype, TerrainId terrain); | ||||
| 	void setTemplates(MapObjectID type, MapObjectSubID subtype, TerrainId terrain); | ||||
| }; | ||||
|  | ||||
| class TreasurePlacer: public Modificator | ||||
|   | ||||
		Reference in New Issue
	
	Block a user