1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-12-20 20:23:03 +02:00
Commit Graph

429 Commits

Author SHA1 Message Date
Tomasz Zieliński
97b0fa16ae Fill obstacles as one operation (for undo).
However, it works only for obstacles on one type of terrain.
2022-09-06 20:51:45 +02:00
nordsoft
8903d2edaf Fix crash in rmg 2022-09-05 20:54:24 +04:00
nordsoft
5839ba4ce8 Minor fixes 2022-09-05 05:50:21 +04:00
nordsoft
149790ad2d Merge remote-tracking branch 'upstream/features/new-terrains' into cpp-map-editor
# Conflicts:
#	config/randomMap.json
#	config/terrains.json
#	lib/rmg/CMapGenerator.cpp
#	lib/rmg/CMapGenerator.h
#	lib/rmg/ObjectManager.cpp
#	lib/rmg/ObjectManager.h
#	lib/rmg/ObstaclePlacer.cpp
#	lib/rmg/ObstaclePlacer.h
#	lib/rmg/RmgArea.h
#	lib/rmg/RmgMap.cpp
#	lib/rmg/RmgMap.h
#	lib/rmg/RoadPlacer.cpp
#	lib/rmg/RoadPlacer.h
#	lib/rmg/Zone.cpp
#	lib/rmg/Zone.h
2022-09-04 15:54:37 +04:00
DjWarmonger
dac4628c45
Mine roads (#808)
* Create dirt roads to mines if there are no roads in a zone.
2022-09-04 09:54:06 +03:00
nordsoft
ff6cd104cf Implemented automatic obstacle placement 2022-09-03 16:27:06 +04:00
nordsoft
0fffa846b4 Implemented object placement and filtering 2022-09-03 08:12:07 +04:00
nordsoft
be6a7d1836 Randomly shuffle required objects to avoid patterns 2022-09-01 13:26:11 +03:00
nordsoft
f3caa3d7bb Progress bar for random map loading 2022-08-31 01:24:12 +04:00
nordsoft
68b106fdc1 Generate random maps from map editor 2022-08-30 17:08:33 +04:00
Nordsoft91
47d3539f41 Fix problems with water zone (#784) 2022-08-29 08:53:36 +03:00
Nordsoft91
f668c65eb2 Fix RMG bug with incorrect town placement (#779)
* Fix RMG bug with incorrect town placement
* Readability tweak
2022-08-29 08:53:36 +03:00
Nordsoft91
f3f1fb8033 Improve treasure placement logic (#775)
Improve treasure placement logic (#775)
2022-08-29 08:53:36 +03:00
Nordsoft91
ae63e0c30e Fix problem with empty areas (#772)
* Fixes for obstacles and treasures
2022-08-29 08:53:36 +03:00
Nordsoft91
9ec0ca332c Fix for sealed-off treasures (#771)
Fix for sealer-off treasures
2022-08-29 08:53:36 +03:00
Nordsoft91
c0db4f1d96 Random map generator refactoring (#762)
random map generator refactoring and improvements
2022-08-29 08:53:36 +03:00
Andrii Danylchenko
ac2bd4f79c battlefields in VLC and custom bonuses for terrain patches 2022-08-29 08:53:35 +03:00
Nordsoft91
5151da59a7 New terrain support - part 1 (#755)
Initial support of new terrains
2022-08-29 08:53:35 +03:00
nordsoft
b0526ca51b Refactoring 2022-08-27 21:25:24 +04:00
nordsoft
035857c190 Fix problems with water zone 2022-08-27 03:21:27 +04:00
Nordsoft91
4458cdf6c9
Fix RMG bug with incorrect town placement (#779)
* Fix RMG bug with incorrect town placement
* Readability tweak
2022-08-22 14:32:54 +03:00
Nordsoft91
d79d788e6f
Improve treasure placement logic (#775)
Improve treasure placement logic (#775)
2022-08-20 13:17:27 +03:00
Nordsoft91
3fa22ebcb0
Fix problem with empty areas (#772)
* Fixes for obstacles and treasures
2022-08-11 14:29:39 +03:00
Nordsoft91
457def94ae
Fix for sealed-off treasures (#771)
Fix for sealer-off treasures
2022-08-09 15:12:58 +03:00
Nordsoft91
6da7c9ccb5
Random map generator refactoring (#762)
random map generator refactoring and improvements
2022-08-09 08:54:32 +03:00
Andrii Danylchenko
232010c5de battlefields in VLC and custom bonuses for terrain patches 2022-07-02 14:47:40 +03:00
Nordsoft91
5f1c5c6731
New terrain support - part 1 (#755)
Initial support of new terrains
2022-06-20 17:39:50 +03:00
Nordsoft91
5054ee011a Rmg water support (#751)
* Roads added to shipyard
* Load general rmg parameters from config
* Fix issue with default zone guard
* Move magic numbers related to balance to randomMap.json
2022-06-11 18:40:24 +03:00
Nordsoft91
5c1a66ab69 Rmg water support (#745)
* RMG: water support and refactoring
* Fix seers hut bug
2022-06-11 18:40:24 +03:00
Nordsoft91
9d06e51631
Place proper towns in underground (#743)
Implement feature of proper town selection in underground and surface
* Some minor refactoring of rmg
2022-05-28 16:03:50 +03:00
Nordsoft91
a8265c7052
[0002285] Implement feature with extra resources near mines (#742)
* RMG: clear start position
* [0002285] some heaps of resources are placed nearby mines
* Fix leak in case of inability to place resource
* Fix indentation according to vcmi style
* Add constant for random amount of resources
* Code review fixes
2022-05-23 13:08:36 +03:00
Konstantin
c6b198ce14
Warning fix (I moved C++17 and CI to another branch) (#739)
* clang warning fixes
* use CMake 3.10 due to MXE CI does not have 3.13 yet

Co-authored-by: Konstantin <rilian@niisi.ras.ru>
2022-05-19 15:14:50 +03:00
Andrii Danylchenko
8b11b42aaf Fix RMG to place special dwellings like elemental conflux 2022-04-09 10:57:24 +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
55b3f0b24c Fix: Map objects sometimes do not increment primary skills for some heroes 2021-02-13 00:24:14 +03:00
Dmitry Orlov
3cb0dfb143 Fix: RMG issues: 1) hota 2) assertions 2020-10-25 01:03:32 +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
laikh
edc1d06f4e Random Map Generator Option: Allow having more computer only players than human/computer players
Remove unused variable humanPlayersCount and function getHumanOnlyPlayerCount()
2020-07-07 19:45:53 +08:00
Michał Kalinowski
ac6b477aa2 Simplify statements
-Simplify return statements across the code
2019-03-31 09:43:14 +03:00
Alexander Shishkin
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
Michał Janiszewski
7be9aa4868 Prevent shadowing of function arguments by local vars 2018-10-29 16:56:14 +01:00
Alexander Shishkin
f563712782
fix formatting
Co-Authored-By: godric3 <godric3@users.noreply.github.com>
2018-10-28 16:36:11 +01:00
godric3
7ded9dbda8 Fix crash when generating random map with random number of players 2018-10-27 18:18:08 +02:00
DJWarmonger
273802c92c I have no idea what I'm doing 2018-07-26 12:14:29 +02:00
Johannes 'josch' Schauer
95bec98936
lib/rmg/CRmgTemplateZone.cpp: Remove a variable that was introduced in 2016 but never used 2018-04-19 15:07:21 +02:00
Johannes 'josch' Schauer
56fefca806
lib/rmg/CRmgTemplateZone.cpp: Add parenthesis to make operator precedence unambiguous 2018-04-19 15:06:26 +02:00
Arseniy Shestakov
ac66fc7f42 Full rework of pre-game interface and networking
New features for players:
* Loading for multiplayer. Any save could be used for multiplayer.
* Restart for multiplayer. All clients will restart together.
* Loading from single save.
* Hotseat mixed with network game. Multiple players per client.
* Now connection to server could be cancelled.
* Return to menu on disconnections instead of crashes.
* Restoring of last selected map, save or campaign on next run.

TLDR on important changes in engine code:
* UI: work with server separated from UI
* UI: all explitic blitting replaced with IntObject's
* UI: all new code use smart pointers instead of DISPOSE
* Gameplay always start through lobby controlled by server.
* Threads receiving netpacks now shared for lobby and gameplay.
* Campaigns: heroes for crossover now serialized as JsonNode.
2018-04-04 14:24:26 +07:00
AlexVinS
9d108d59db Redone RMG template serialization using JSON serializer, added tests 2018-03-10 19:36:19 +03:00
AlexVinS
26aad17295 Actually copy zone data from map generator template
* fixes https://bugs.vcmi.eu/view.php?id=2482
2018-03-05 17:05:48 +03:00
Nikolay Shalakin
3795985de9 Eliminate warnings / errors. Pull request #388 2018-02-11 15:17:14 +03:00