Ivan Savenko 
							
						 
					 
					
						
						
							
						
						3dd4fa2528 
					 
					
						
						
							
							Reduce usage of pointers to VLC entities  
						
						... 
						
						
						
						Final goal (of multiple PR's) is to remove all remaining pointers from
serializeable game state, and replace them with either identifiers or
with shared/unique pointers.
CGTownInstance::town and CGHeroInstance::type members have been removed.
Now this data is computed dynamically using subID member.
VLC entity of a town can now be accessed via following methods:
- getFactionID() returns ID of a faction
- getFaction() returns pointer to a faction
- getTown() returns pointer to a town
VLC entity of a hero can now be accessed via following methods:
- getHeroTypeID() returns ID of a hero
- getHeroClassID() returns ID of a hero class
- getHeroType() returns pointer to a hero
- getHeroClass() returns pointer to a hero class 
						
						
					 
					
						2024-10-10 12:28:08 +00:00 
						 
				 
			
				
					
						
							
							
								Ivan Savenko 
							
						 
					 
					
						
						
							
						
						c0f5c7c0ea 
					 
					
						
						
							
							Replace pointer with reference in pack apply functions  
						
						
						
						
					 
					
						2024-10-07 14:59:46 +00:00 
						 
				 
			
				
					
						
							
							
								Laserlicht 
							
						 
					 
					
						
						
							
						
						e6cb87abac 
					 
					
						
						
							
							cast only on self  
						
						
						
						
					 
					
						2024-09-28 17:32:53 +02:00 
						 
				 
			
				
					
						
							
							
								Laserlicht 
							
						 
					 
					
						
						
							
						
						0aaafc4c8a 
					 
					
						
						
							
							cast without skip  
						
						
						
						
					 
					
						2024-09-14 15:10:24 +02:00 
						 
				 
			
				
					
						
							
							
								Ivan Savenko 
							
						 
					 
					
						
						
							
						
						8225eb454e 
					 
					
						
						
							
							Added GameSettings to gamestate, potentially allowing to define game  
						
						... 
						
						
						
						settings per map (or in random map template) 
						
						
					 
					
						2024-09-05 15:16:27 +00:00 
						 
				 
			
				
					
						
							
							
								godric3 
							
						 
					 
					
						
						
							
						
						c34956e912 
					 
					
						
						
							
							introduce getModScope method toEntity class and subclasses  
						
						
						
						
					 
					
						2024-08-10 16:08:04 +02:00 
						 
				 
			
				
					
						
							
							
								Ivan Savenko 
							
						 
					 
					
						
						
							
						
						34b6eaa25e 
					 
					
						
						
							
							Integrating changes from PR  #4251  - add logging for rng  
						
						
						
						
					 
					
						2024-07-16 15:31:58 +00:00 
						 
				 
			
				
					
						
							
							
								Ivan Savenko 
							
						 
					 
					
						
						
							
						
						63bcf7d83c 
					 
					
						
						
							
							Replaced most of usages of CRandomGenerator with vstd::RNG in library  
						
						
						
						
					 
					
						2024-07-16 13:13:07 +00:00 
						 
				 
			
				
					
						
							
							
								Ivan Savenko 
							
						 
					 
					
						
						
							
						
						60a51e98de 
					 
					
						
						
							
							Remove usage of std::function from CRandomGenerator  
						
						
						
						
					 
					
						2024-07-16 13:13:07 +00:00 
						 
				 
			
				
					
						
							
							
								Alexander Wilms 
							
						 
					 
					
						
						
							
						
						02e429e973 
					 
					
						
						
							
							Fix typos using  https://github.com/crate-ci/typos  
						
						... 
						
						
						
						Changes were reviewed manually 
						
						
					 
					
						2024-06-24 03:47:19 +02:00 
						 
				 
			
				
					
						
							
							
								Ivan Savenko 
							
						 
					 
					
						
						
							
						
						0d427980bc 
					 
					
						
						
							
							Entities are now non-copyable  
						
						
						
						
					 
					
						2024-05-17 14:47:09 +00:00 
						 
				 
			
				
					
						
							
							
								Ivan Savenko 
							
						 
					 
					
						
						
							
						
						07813c9a79 
					 
					
						
						
							
							Removed non-functional updateEntity in VLC  
						
						
						
						
					 
					
						2024-05-16 22:05:26 +00:00 
						 
				 
			
				
					
						
							
							
								Ivan Savenko 
							
						 
					 
					
						
						
							
						
						10b35ceecb 
					 
					
						
						
							
							Replaced assertions with exceptions for invalid input in RNG  
						
						
						
						
					 
					
						2024-02-19 00:35:21 +02:00 
						 
				 
			
				
					
						
							
							
								Ivan Savenko 
							
						 
					 
					
						
						
							
						
						a9866bb5c6 
					 
					
						
						
							
							Added RandomGeneratorUtil::nextItemWeighted convenience method  
						
						
						
						
					 
					
						2024-01-31 00:17:40 +02:00 
						 
				 
			
				
					
						
							
							
								Ivan Savenko 
							
						 
					 
					
						
						
							
						
						bd5682ecc3 
					 
					
						
						
							
							Merge remote-tracking branch 'vcmi/master' into develop  
						
						
						
						
					 
					
						2024-01-19 13:49:54 +02:00 
						 
				 
			
				
					
						
							
							
								Ivan Savenko 
							
						 
					 
					
						
						
							
						
						1194419884 
					 
					
						
						
							
							Added option to allow self-casting  
						
						
						
						
					 
					
						2024-01-16 15:13:00 +02:00 
						 
				 
			
				
					
						
							
							
								Ivan Savenko 
							
						 
					 
					
						
						
							
						
						0d0d3d8c80 
					 
					
						
						
							
							Renamed speed -> getMovementRange, remove misleading default parameter  
						
						
						
						
					 
					
						2024-01-14 17:14:36 +02:00 
						 
				 
			
				
					
						
							
							
								Alexander Wilms 
							
						 
					 
					
						
						
							
						
						d2b105f216 
					 
					
						
						
							
							CLoggerBase: Use IvanSavenko's single-statement macro so that ct100 is not immediately destroyed  
						
						
						
						
					 
					
						2024-01-14 14:48:48 +00:00 
						 
				 
			
				
					
						
							
							
								Alexander Wilms 
							
						 
					 
					
						
						
							
						
						f81a0cb4b6 
					 
					
						
						
							
							CLoggerBase: Remove semicolon from RAII_TRACE definition  
						
						... 
						
						
						
						Fixes the following SonarCloud issue:
Modify the macro definition so that it needs to be followed by a semicolon, or remove this empty statement.
Empty statements should be removed cpp:S1116
https://sonarcloud.io/organizations/vcmi/rules?open=cpp%3AS1116&rule_key=cpp%3AS1116  
						
						
					 
					
						2024-01-13 18:13:56 +00:00 
						 
				 
			
				
					
						
							
							
								Laserlicht 
							
						 
					 
					
						
						
							
						
						8d75c30dca 
					 
					
						
						
							
							remove default value  
						
						
						
						
					 
					
						2023-12-16 19:54:45 +01:00 
						 
				 
			
				
					
						
							
							
								Laserlicht 
							
						 
					 
					
						
						
							
						
						56562ad8dc 
					 
					
						
						
							
							date time format  
						
						
						
						
					 
					
						2023-12-16 18:57:38 +01:00 
						 
				 
			
				
					
						
							
							
								Ivan Savenko 
							
						 
					 
					
						
						
							
						
						abad4b01ce 
					 
					
						
						
							
							Remove explicit convesion to int in operators  
						
						
						
						
					 
					
						2023-11-15 15:55:19 +02:00 
						 
				 
			
				
					
						
							
							
								Ivan Savenko 
							
						 
					 
					
						
						
							
						
						c7676bde53 
					 
					
						
						
							
							Serialize Enitity classes by their ID  
						
						
						
						
					 
					
						2023-11-08 21:27:05 +02:00 
						 
				 
			
				
					
						
							
							
								Ivan Savenko 
							
						 
					 
					
						
						
							
						
						0a10fc30b8 
					 
					
						
						
							
							(lib) Bonus subtype is now stored as metaidentifier that can store any  
						
						... 
						
						
						
						other identifier inside it 
						
						
					 
					
						2023-10-22 16:54:43 +03:00 
						 
				 
			
				
					
						
							
							
								Ivan Savenko 
							
						 
					 
					
						
						
							
						
						f39fbe5151 
					 
					
						
						
							
							Merge pull request  #2757  from IvanSavenko/filesystem_refactor  
						
						... 
						
						
						
						Filesystem refactor - part 1 
						
						
					 
					
						2023-09-07 10:51:02 +03:00 
						 
				 
			
				
					
						
							
							
								Ivan Savenko 
							
						 
					 
					
						
						
							
						
						3a88180494 
					 
					
						
						
							
							Separated game and battle callback (server & client only)  
						
						
						
						
					 
					
						2023-09-06 16:03:39 +03:00 
						 
				 
			
				
					
						
							
							
								Ivan Savenko 
							
						 
					 
					
						
						
							
						
						8dfdfffd87 
					 
					
						
						
							
							Use ResourcePath for audio files  
						
						
						
						
					 
					
						2023-09-04 18:22:34 +03:00 
						 
				 
			
				
					
						
							
							
								Ivan Savenko 
							
						 
					 
					
						
						
							
						
						e54287ea5d 
					 
					
						
						
							
							Converted remaining identifier to new system  
						
						
						
						
					 
					
						2023-08-25 13:38:02 +03:00 
						 
				 
			
				
					
						
							
							
								Ivan Savenko 
							
						 
					 
					
						
						
							
						
						0240ee886d 
					 
					
						
						
							
							Converted (almost) all namespace enum's to enum classes  
						
						
						
						
					 
					
						2023-08-25 13:38:02 +03:00 
						 
				 
			
				
					
						
							
							
								Ivan Savenko 
							
						 
					 
					
						
						
							
						
						62cd8b12d4 
					 
					
						
						
							
							Converted several namespace enums to enum class  
						
						
						
						
					 
					
						2023-08-25 13:38:02 +03:00 
						 
				 
			
				
					
						
							
							
								Ivan Savenko 
							
						 
					 
					
						
						
							
						
						ec8d31bbfc 
					 
					
						
						
							
							First step at unifying game identifiers code  
						
						
						
						
					 
					
						2023-08-25 13:38:01 +03:00 
						 
				 
			
				
					
						
							
							
								Ivan Savenko 
							
						 
					 
					
						
						
							
						
						b0eec85aca 
					 
					
						
						
							
							Merge pull request  #2632  from rilian-la-te/resist-rework-pt1  
						
						... 
						
						
						
						Spell resistance rework: part 1 
						
						
					 
					
						2023-08-25 01:13:57 +03:00 
						 
				 
			
				
					
						
							
							
								Ivan Savenko 
							
						 
					 
					
						
						
							
						
						d83aa828f6 
					 
					
						
						
							
							Fix turn ending  
						
						
						
						
					 
					
						2023-08-24 23:34:33 +03:00 
						 
				 
			
				
					
						
							
							
								Ivan Savenko 
							
						 
					 
					
						
						
							
						
						c4bc6840ea 
					 
					
						
						
							
							Moved management of turn order into a new class  
						
						
						
						
					 
					
						2023-08-24 23:34:33 +03:00 
						 
				 
			
				
					
						
							
							
								Konstantin 
							
						 
					 
					
						
						
							
						
						d746a96d55 
					 
					
						
						
							
							vcmi: use SpellSchool identifier instead of enum  
						
						... 
						
						
						
						Use identifier instead of enum inside callbacks. It is better and more
expandable solution. 
						
						
					 
					
						2023-08-23 17:53:09 +03:00 
						 
				 
			
				
					
						
							
							
								Konstantin 
							
						 
					 
					
						
						
							
						
						8724181a0f 
					 
					
						
						
							
							vcmi: spell resistance rework  
						
						... 
						
						
						
						Now instead of XXX_IMMUNITY bonuses we have 2 bonuses with spellSchool
subtype: SPELL_SCHOOL_IMMUNITY and NEGATIVE_EFFECT_IMMUNITY.
All previous bonuses of subtype 0 is covered by SPELL_SCHOOL_IMMUNITY,
and all previous bonuses of subtype 1 is covered by
NEGATIVE_EFFECT_IMMUNITY. Unit tests are updated accordingly. 
						
						
					 
					
						2023-08-23 17:52:16 +03:00 
						 
				 
			
				
					
						
							
							
								Michael 
							
						 
					 
					
						
						
							
						
						d2bbe0f35a 
					 
					
						
						
							
							starttime in foldername  
						
						
						
						
					 
					
						2023-08-23 01:47:55 +02:00 
						 
				 
			
				
					
						
							
							
								Michael 
							
						 
					 
					
						
						
							
						
						52f00ec308 
					 
					
						
						
							
							extra function: getFormattedDateTime  
						
						
						
						
					 
					
						2023-08-12 01:13:03 +02:00 
						 
				 
			
				
					
						
							
							
								Ivan Savenko 
							
						 
					 
					
						
						
							
						
						1bf6bbd9b6 
					 
					
						
						
							
							Significantly simplified threading model in battles  
						
						
						
						
					 
					
						2023-07-18 19:55:59 +03:00 
						 
				 
			
				
					
						
							
							
								Ivan Savenko 
							
						 
					 
					
						
						
							
						
						3913b8e98c 
					 
					
						
						
							
							Heroes placed on water in map will be automatically given boat  
						
						
						
						
					 
					
						2023-06-20 19:37:27 +03:00 
						 
				 
			
				
					
						
							
							
								Ivan Savenko 
							
						 
					 
					
						
						
							
						
						2636a0dcc3 
					 
					
						
						
							
							Moved MetaString to a new file  
						
						
						
						
					 
					
						2023-06-20 19:37:27 +03:00 
						 
				 
			
				
					
						
							
							
								Ivan Savenko 
							
						 
					 
					
						
						
							
						
						fc190b14bb 
					 
					
						
						
							
							Spell shrines can now be configured in json  
						
						
						
						
					 
					
						2023-06-16 17:59:10 +03:00 
						 
				 
			
				
					
						
							
							
								Konstantin 
							
						 
					 
					
						
						
							
						
						fbc05c70ac 
					 
					
						
						
							
							vcmi: camelCase methods of new classes  
						
						... 
						
						
						
						Also use EGameSettings for clamping morale and luck 
						
						
					 
					
						2023-05-02 12:09:13 +03:00 
						 
				 
			
				
					
						
							
							
								Konstantin 
							
						 
					 
					
						
						
							
						
						a6de9097be 
					 
					
						
						
							
							vcmi: rename HeroBonus.h to Bonus.h  
						
						
						
						
					 
					
						2023-05-02 11:20:58 +03:00 
						 
				 
			
				
					
						
							
							
								Konstantin 
							
						 
					 
					
						
						
							
						
						b6eb2dc060 
					 
					
						
						
							
							vcmi: rename IFactionMember and ICreature  
						
						
						
						
					 
					
						2023-05-02 00:54:53 +03:00 
						 
				 
			
				
					
						
							
							
								Konstantin 
							
						 
					 
					
						
						
							
						
						a2d4c72016 
					 
					
						
						
							
							vcmi: morale and luck now also IFactionMember  
						
						... 
						
						
						
						Not all bonus bearers have morale and luck, only faction members 
						
						
					 
					
						2023-05-02 00:53:51 +03:00 
						 
				 
			
				
					
						
							
							
								Konstantin P 
							
						 
					 
					
						
						
							
						
						4b2a09dae7 
					 
					
						
						
							
							FactionMember: move code around  
						
						
						
						
					 
					
						2023-05-02 00:53:50 +03:00 
						 
				 
			
				
					
						
							
							
								Konstantin 
							
						 
					 
					
						
						
							
						
						af25ad0866 
					 
					
						
						
							
							vcmi: split creatures and faction members  
						
						
						
						
					 
					
						2023-05-02 00:53:50 +03:00 
						 
				 
			
				
					
						
							
							
								Konstantin 
							
						 
					 
					
						
						
							
						
						f4f0fd5945 
					 
					
						
						
							
							vcmi: magicResistance is IFactionMember property  
						
						... 
						
						
						
						It is no reason to keep it inside IBonusBearer 
						
						
					 
					
						2023-05-02 00:53:50 +03:00 
						 
				 
			
				
					
						
							
							
								Konstantin 
							
						 
					 
					
						
						
							
						
						4f7035d3ff 
					 
					
						
						
							
							vcmi: add IFactionMember abstract class  
						
						
						
						
					 
					
						2023-05-02 00:53:50 +03:00