Commit Graph

14 Commits

Author SHA1 Message Date
ALONSO Laurent
da703c1159 Scenario Editor: continue to regroup some static variables in a class,
gfxsheets.hpp: do not remove party sheet when we enter a scenario,
+ minor cleanings...
2022-06-30 01:10:46 -04:00
ALONSO Laurent
386632131c ScenEditor: create a class to store some static buttons and scrollbars
+ begin to use it, to be continued...
2022-06-30 01:10:46 -04:00
ALONSO Laurent
8efa23debb boe.actions.cpp: correct a mistake when using arrows to move target
Scenario Editor: some cleaning + reset the terrain center correctly if it is
  outside the terrain bounds...
2022-06-30 01:10:46 -04:00
ALONSO Laurent
8e2cdca1f8 try to clean a little the code... 2022-06-30 01:10:46 -04:00
ALONSO Laurent
f3a96391b5 vector2d: try to protect the access against bad index, to be improved...
+ details rewriting
2022-06-30 01:10:46 -04:00
1d61d48ec3 Enable UI scaling in the scenario and implement Linux menus
Patch from @x-qq
Addresses #195

Note: UI scaling for the scenario editor still needs some work,
but it's basically functional.
2020-01-28 20:13:24 -05:00
c2ce2a2cd1 Split up the graphtool files 2017-04-14 15:43:07 -04:00
82abdab695 Major code reorganization
This commit only updates the XCode project for the changes.
A later commit each will update it for scons and MSVC.

A few actual changes are mixed in:
- Add a prefix header for a handful of common definitions
- Moved current_cursor into the Cursor class as a static member
- Removed the make_cursor_sword and make_cursor_watch functions
- Include tests in the All target
- Remove redundant -l flags for Common and Common-Party (since they're included in the Link phases anyway)
2017-04-14 00:24:29 -04:00
8b792aea75 Eliminate some offscreen surfaces in the scenario editor
- This fixes an issue where parts of the UI were filled with black or random noise.
- This also creates some noticeable lag while drawing, though.
2016-04-29 13:36:31 -04:00
7f00d0c775 Change image resource type from sf::Image to sf::Texture
This includes an added optimization to the resource manager - it now uses unordered (hash) maps instead of ordered (tree) maps to keep track of loaded resources and paths, for the average constant lookup time.
2015-10-05 23:57:42 -04:00
c68b01c3a2 Make roads an overlay instead of a terrain trim type
Game:
- Roads now show on the automap again!
- Possible fix for undetected issue in displaying outdoor special spots
- Road conversion code for legacy scenarios now applied in towns too

Editor:
- New tool for placing roads, works the same as special dots
- Roads appear at all zoom levels

Other:
- Removed all terrain graphics that used the small road dot, replacing them with blank (white) space
- Make obvious out-of-bounds array accesses an error in the project settings
2015-09-27 22:37:12 -04:00
efa1428fda Small code simplification (remove Draw_Some_Item in editor code) 2015-08-31 01:09:28 -04:00
a990921e90 Several tweaks/fixes
- Nuke some uses of strcpy, sprintf, etc; current info strings in the scenario editor are now stored as std::string instead of C-strings.
- A smarter method of calculating the "erase" terrain for a given terrain type. In case of impassable spaces, trims, and walkways, instead of using the ground terrain, the trim terrain (if any) is used as the erase terrain; if there's no trim, ground 0 (cave, by default) is used. The method of determining if two terrains are essentially the same (ie, whether to paint or erase) has also been improved a little.
- Also, to reduce confusion, the erase terrain is now shown beneath the paint terrain.

Terrain changes:
- Add "archetype" flag as a better way of determining which amongst a set of terrains sharing the same ground type should be considered as the most basic terrain of that ground type. It's automatically applied to any terrains using original graphics when importing an old scenario; generally, any with no terrain special will be marked as an archetype, but if the lava graphic was used, it's instead any with a terrain special. It's a crude method that may easily break, but probably not possible to do better.
- When importing old scenarios, set the two walkways to be separate ground types while the crops should have grass as their ground, and the conveyors have cave.
- Fix fly, boat, block horse LEDs not being cleared if a terrain lacks that flag when using the arrow buttons. This could lead to terrains accidentally picking up the flags of nearby terrains in the list.
- Fix the block horse flag was not correctly saved when closing the dialog.
- Fix the block horse flag not being correctly loaded from the scenario file
2015-06-11 22:32:28 -04:00
01d317b007 .h -> .hpp 2015-06-08 22:14:43 -04:00