1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-06-17 00:07:41 +02:00
Commit Graph

74 Commits

Author SHA1 Message Date
5f181e25af vcmi: modernize lib/mapObjects 2023-02-14 14:39:56 +03:00
d82822d37a Fix reset of rewardable objects with reset period of 1 day 2023-01-28 13:12:03 +02:00
7a9e5e4e30 Cleanup & consistency changes 2023-01-25 00:38:50 +02:00
af5ff0c9df Remove no longer used code 2023-01-24 23:34:02 +02:00
44bdd2cbf3 Implemented selectable messages for visited & empty state 2023-01-24 23:31:07 +02:00
ca6947b2cc Fixed Tree of Knowledge component 2023-01-24 17:35:06 +02:00
c793527b44 Added "days since start of the game" limiter. Fixes Water Wheel 2023-01-24 16:54:14 +02:00
ca521fb129 Removed incomplete functionality from rewardable object 2023-01-24 16:29:05 +02:00
c9dcb921ab Implemented "changeCreatures" option for Stables 2023-01-24 16:18:59 +02:00
ecbcafefbc It is now possible to configure what exactly will be reset in object 2023-01-24 13:54:03 +02:00
0c70822928 Implemented logical expression (allOf/anyOf/noneOf) for limiters 2023-01-23 23:54:54 +02:00
f8f6df02f3 Removed remaining hardcoded objects 2023-01-23 15:27:27 +02:00
62e127fb59 Bonusing objects are now configured in json 2023-01-23 01:05:10 +02:00
bfd6c40f25 Moved all once-per-hero visitable (sans Tree) to config 2023-01-22 22:58:53 +02:00
a6bda58276 Moved CGOnceVisitable to config 2023-01-22 20:26:19 +02:00
9f3f9cc563 Added some missing functionality for configurable object 2023-01-22 02:08:58 +02:00
83bb70cd8a All CGPickable objects are now fully configurable 2023-01-21 16:45:04 +02:00
388ed88b5d All artifact strings now pass through translator 2023-01-20 15:18:36 +02:00
7c0d5666a0 Return string by copy to fix cases when string is constructed on stack 2023-01-01 20:55:43 +02:00
85d7b470d4 Access to quests texts is now processed via translator 2023-01-01 14:56:45 +02:00
7a35bcc812 Merge pull request #1221 from IvanSavenko/warnings_fix
Fix remaining compiler warnings
2022-12-29 21:51:55 +02:00
b030a88ca5 fix gold check for School of War 2022-12-29 01:45:51 +04:00
2855606a88 Enabled & fixed -Woverloaded-virtual warning from gcc/cland
- fixed almost all instances of overloaded-virtual warning
- cleared up inheritance & method overrides in code affected by warning
2022-12-07 21:50:45 +02:00
17f9c3af23 Library of Enlightenment fix
Do not offer choice between multiple identical option if hero is qualified
to receive multiple of them due to diplomacy skill
2022-12-06 18:08:10 +02:00
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
6cd810e065 fix showing "visited" message for Warrior's Tomb 2022-09-21 15:19:04 +03:00
7dc05d8e81 Support rewardable objects 2022-09-15 11:05:13 +03:00
3d2dc2335b Switch ObjectTemplate to shared_ptr<const> (#870) 2022-09-11 16:13:53 +03:00
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
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
5718048752 Fix magic school gold payment 2019-03-11 18:56:05 +01:00
b00e935e4d Warnings fixes (#538)
Warnings fixes
* Suppress `missing-braces` for Clang
* Fixed many C4275 warnings
* Fixed almost all Clang/GCC warnings
* Silence most frequent MSVC warning.
* Fixed some pessimizing-move warnings
* Fixed some unused capture warnings
2019-01-19 13:52:02 +03:00
c5ca75bc53 CRewardableObject: remove now unused soundID 2018-01-02 09:49:04 +01:00
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
7d8adcc083 Add missing artifact name in wagon text, fix #2763 2017-10-05 14:52:51 +02:00
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
61e241308d Logging cleanup 2017-08-10 19:52:05 +03:00
8314e8234f Fix water wheel gold amount (#348) 2017-07-18 15:00:30 +03:00
f1e5797834 Code style: move or add licensing information on top of every file 2017-07-14 01:26:03 +03:00
3216422307 Fixed a few CWE-457 2016-11-27 22:07:01 +03:00
24585cde87 complete fix for http://bugs.vcmi.eu/view.php?id=2507 2016-10-11 18:19:42 +03:00
5c3f84138b fixed random reward generation in CGVisitableOPW 2016-10-11 18:00:54 +03:00
7db7ece143 Do not send netpack inside netpack handler. 2016-10-09 19:38:13 +03:00
bb890098df Fix regression for week-visitable objects 2016-10-09 18:51:41 +03:00
bb05db90e5 CRewardableObject::onHeroVisit: avoid crash on pickable objects
Missed this problem when tested #214
2016-09-23 11:47:07 +03:00
97d358b70f Marking visited for team
Also no longer gives reward every player
2016-09-20 22:05:44 +02:00
28d859419c Revert the old code 2016-09-16 22:01:21 +02:00
29d6fb0f04 Properly check if corpse was visited
Fixes two issues:
- corpse without loot couldn't be marked as visited
- taking loot from once visitable objects marked them as visited for all players
2016-09-16 20:59:07 +02:00
c8faca8f39 Refactoring: only use RNGs explicitly to avoid bug prone code in future
Now server-side code should always use CRandomGenerator::getDefault which is serialized in GH.
CGameState::getRandomGenerator should be only used from GS code and CPackForClient-based applyGs.
2016-09-11 00:10:46 +03:00
2ba3b20928 Multiple changes to RNG usage to both client and server
Server should never use RNG from CGameState directly.
Instead server get's own RNG that's state is secret for client.
2016-09-09 23:16:42 +03:00