Konstantin
5f181e25af
vcmi: modernize lib/mapObjects
2023-02-14 14:39:56 +03:00
Ivan Savenko
e87adf334d
Fix loading of vcmi json maps
2023-01-26 23:32:56 +02:00
Ivan Savenko
8b2d336562
Fix initialization of visitDir in templates
2023-01-26 23:32:56 +02:00
Ivan Savenko
a3846f1b31
Fix incorrect identifiers format
2023-01-26 23:32:56 +02:00
Ivan Savenko
eebc6fd625
Map object use format mod:object (or mod:object.subobject)
2023-01-26 23:32:56 +02:00
Ivan Savenko
bc27faea57
All objects will register single name per object type
2023-01-26 23:32:55 +02:00
Ivan Savenko
f71cbc5d9b
Fixed loading of object names
2023-01-26 23:27:26 +02:00
Ivan Savenko
b13637cdd5
Fix regressions in RMG & map editor
2023-01-26 23:27:26 +02:00
Ivan Savenko
6f324216db
Bugfixing
2023-01-26 23:27:24 +02:00
Ivan Savenko
6c472339ce
Refactoring of ObjectClassesHandler
2023-01-26 23:26:49 +02:00
Ivan Savenko
c5f72ccdc7
Names for object supertypes are passed through translator
2023-01-26 23:19:53 +02:00
Ivan Savenko
f8f6df02f3
Removed remaining hardcoded objects
2023-01-23 15:27:27 +02:00
Ivan Savenko
62e127fb59
Bonusing objects are now configured in json
2023-01-23 01:05:10 +02:00
Ivan Savenko
a6bda58276
Moved CGOnceVisitable to config
2023-01-22 20:26:19 +02:00
Ivan Savenko
83bb70cd8a
All CGPickable objects are now fully configurable
2023-01-21 16:45:04 +02:00
Ivan Savenko
47c1803c42
Finalization of refactoring:
...
- Entity interface now has getNameTranslated & getNameTextID methods
- Entity interface no longer has getName method
- removed (most) usages of normalizeIndentifier workaround method
- all moddable objects have identifier in form of mod:name
- all moddable object register strings in form of mod.type.name
2023-01-20 15:18:36 +02:00
Ivan Savenko
2cbe6bcb47
Added common method to get names of hardcoded mod scopes
2022-12-07 15:18:19 +02:00
nordsoft
8d1024fcfc
Clear error message
2022-12-03 20:56:05 +04:00
Ivan Savenko
5cd405bce8
Fixed meta field handling in JsonUtils::inherit function, removed
...
workarounds
2022-11-30 17:38:53 +02:00
Ivan Savenko
36ae26bc37
Fixed several scenarios which could lead to json with incorrectly set
...
mod origin info, leading to non-resolving identifiers
2022-11-29 22:34:32 +02:00
Ivan Savenko
abe11aaf54
Introduced "map" scope for accessing identifier on map loading.
...
Currently it allows access to all mods, should be restricted to mods
that map depends on
2022-11-29 22:33:08 +02:00
lainon
7fdad4e0f6
Code refactor following C++ standard and condition fixes
2022-11-15 03:20:55 +03:00
Tomasz Zieliński
8c481dff46
Fix incorrect templates for mines in HoTA
2022-10-08 12:42:10 +03:00
Andrey Filipenkov
acfdbe87fe
remove duplicate entry
2022-10-01 16:01:02 +03:00
Tomasz Zieliński
20c102e648
Remove T prefix from new typedefs
2022-09-29 11:44:46 +02:00
Tomasz Zieliński
475f835769
More style tweaks
2022-09-28 11:38:08 +02:00
Tomasz Zieliński
f386f42166
Merge remote-tracking branch 'origin/develop' into terrain-rewrite
...
# Conflicts:
# lib/Terrain.cpp
# lib/Terrain.h
# lib/battle/CBattleInfoEssentials.cpp
# lib/rmg/ObstaclePlacer.cpp
# lib/rmg/RiverPlacer.cpp
2022-09-27 07:50:17 +02:00
Tomasz Zieliński
4ea57ea7fc
A variety of suggested style tweaks
2022-09-25 09:33:56 +02:00
Andrey Filipenkov
ff635edc0b
wrap all library code into namespace if VCMI_LIB_NAMESPACE is defined
...
preparation for having client and server in a single process
2022-09-24 15:55:21 +03:00
Tomasz Zieliński
c9c4603f75
Firts working version that launches original maps
2022-09-21 13:43:57 +02:00
Tomasz Zieliński
494b0f0226
First version that compiles
2022-09-21 11:34:23 +02:00
DjWarmonger
3d2dc2335b
Switch ObjectTemplate to shared_ptr<const> ( #870 )
2022-09-11 16:13:53 +03:00
Andrii Danylchenko
4b4cc3cf4b
battlefields in VLC and custom bonuses for terrain patches
2022-09-11 11:31:27 +03:00
Andrii Danylchenko
3b1d271ae0
allow configurable battleground graphics
2022-09-11 11:31:26 +03:00
Nordsoft91
aaa07e4d2e
New terrain support - part 1 ( #755 )
...
Initial support of new terrains
2022-09-11 11:31:26 +03:00
Andrii Danylchenko
9c8d776398
Merge branch 'develop' into handlersAbstraction
...
# Conflicts:
# CI/linux/before_install.sh
# CI/mac/before_install.sh
# CI/mxe/before_install.sh
# lib/CModHandler.cpp
# lib/mapObjects/CObjectClassesHandler.cpp
# lib/mapObjects/CObjectClassesHandler.h
# lib/mapObjects/CommonConstructors.cpp
# server/CGameHandler.cpp
# test/CMakeLists.txt
# test/spells/effects/TeleportTest.cpp
2021-07-16 00:32:13 +03:00
Dmitry Orlov
8b08973283
Fix: ID-collisions when processing large mods collections
2021-04-25 15:07:06 +03:00
AlexVinS
483a4689ce
Fixes for code review issues
2021-02-20 04:57:50 +03:00
AlexVinS
ecaa9f5d0b
Entities redesign and a few ERM features
...
* Made most Handlers derived from CHandlerBase and moved service API there.
* Declared existing Entity APIs.
* Added basic script context caching
* Started Lua script module
* Started Lua spell effect API
* Started script state persistence
* Started battle info callback binding
* CommitPackage removed
* Extracted spells::Caster to own header; Expanded Spell API.
* implemented !!MC:S, !!FU:E, !!FU:P, !!MA, !!VR:H, !!VR:C
* !!BU:C, !!BU:E, !!BU:G, !!BU:M implemented
* Allow use of "MC:S@varName@" to declare normal variable (technically v-variable with string key)
* Re-enabled VERM macros.
* !?GM0 added
* !?TM implemented
* Added !!MF:N
* Started !?OB, !!BM, !!HE, !!OW, !!UN
* Added basic support of w-variables
* Added support for ERM indirect variables
* Made !?FU regular trigger
* !!re (ERA loop receiver) implemented
* Fixed ERM receivers with zero args.
2021-02-14 19:05:43 +03:00
Dmitry Orlov
3cb0dfb143
Fix: RMG issues: 1) hota 2) assertions
2020-10-25 01:03:32 +03:00
Dmitry Orlov
bf07cd0ad9
Mod system improvement Part I : Old saves support & MSVS build fix
2020-10-07 15:12:32 +03:00
Dmitry Orlov
6a7296fbe9
Mod system improvement Part I : Fix redefined content handler assertion
2020-10-07 12:35:12 +03:00
John Bolton
a05ae78e67
Fixed lots of warnings.
...
Disabled the following (for MSVC only) that couldn't (or shouldn't) be fixed.
4003: not enough actual parameters for macro 'identifier'
4250: 'class1' : inherits 'class2::member' via dominance
4251: 'type' : class 'type1' needs to have dll-interface to be used by clients of class 'type2'
4275: non dll-interface class 'type1' used as base for dll-interface class 'type2'
2020-10-04 02:20:18 -07:00
Dydzio
b37ba8e046
Initial version of AI object value config
2018-07-28 00:43:56 +02:00
Dydzio
21c1f47a78
Fixes
2018-07-22 19:12:11 +02:00
Dydzio
2c1d91e2ff
Move object ID struct to lib
2018-07-22 18:38:45 +02:00
AlexVinS
6033d32b5b
Fixed https://bugs.vcmi.eu/view.php?id=2845
2018-01-09 10:14:56 +03:00
Arseniy Shestakov
f15cadc87b
Implement configurable object sounds: ambient, visit and removal
...
* If there more than one sound for visit or removal random is played
* At moment only the first ambient sound will be used
2018-01-02 09:49:03 +01:00
Michał Kalinowski
26a222ac62
Change JsonType to enum class ( #393 )
...
Change enum JsonType to enum class JsonType
2017-11-27 00:18:18 +03:00
AlexVinS
15138c23de
Finished conversion to new logging API
...
* removed logger streams
* (float3|int3)::operator() -> (float3|int3)::toString(), it was too ugly and confusing.
2017-08-11 23:06:27 +03:00