Arthur O'Dwyer
87240cf990
Replace std::function with hyper_function for a 37% speedup in compile time.
...
Before:
time c++ -O2 -DMAC -I/usr/local/include -std=c++11 -march=native
-W -Wall -Wextra -Werror -pedantic -Wno-format-pedantic
-Wno-missing-field-initializers -Wno-unused-parameter
-DCAP_GLEW=0 -DCAP_PNG=0 -c hyper.cpp -o hyper.o
real 2m22.508s
user 2m20.625s
sys 0m1.648s
After:
time c++ -O2 -DMAC -I/usr/local/include -std=c++11 -march=native
-W -Wall -Wextra -Werror -pedantic -Wno-format-pedantic
-Wno-missing-field-initializers -Wno-unused-parameter
-DCAP_GLEW=0 -DCAP_PNG=0 -c hyper.cpp -o hyper.o
real 1m30.515s
user 1m29.793s
sys 0m0.689s
Comparing object file size:
-rw-r--r-- 1 ajo staff 8215036 Jan 5 20:46 old-hyper.o
-rw-r--r-- 1 ajo staff 7538072 Jan 5 20:47 new-hyper.o
Comparing number of symbols:
nm old-hyper.o | wc -l => 12590
nm new-hyper.o | wc -l => 9742
No appreciable difference in link time; the linker takes less than
half a second in either case.
2019-02-06 18:48:53 +01:00
Arthur O'Dwyer
a478bb1485
Fix some minor std::function-related bugs.
...
Lambdas to be stored in `function<void()>` should not return `bool`.
Two uses of `std::function` could be just `function`, like everywhere
else in the codebase.
2019-02-06 18:48:53 +01:00
Zeno Rogue
26fe57ef92
mapeditor:: an option to change new canvas cells without clearing the map
2019-02-06 18:48:53 +01:00
Zeno Rogue
44c3e2eb0a
mapeditor:: no more crashing on 'c'opying outside of map
2019-02-06 18:48:53 +01:00
Zeno Rogue
9c47d67b89
fixed obsolete Bomberbird Egg reveal description
2019-02-06 18:48:53 +01:00
Zeno Rogue
94ce1eb541
fixed_facing option, not only in racing
2019-02-06 18:48:53 +01:00
Zeno Rogue
92d98847fb
fixed the issue with Orb of Aether being marked as used due to Minefield uncovering
2019-02-06 18:48:53 +01:00
Zeno Rogue
41ee2f4a7c
mapeditor saves color_formula
2019-02-06 18:48:53 +01:00
Zeno Rogue
daf9a5906a
mapeditor:: save more data: multiplayer positions, rosewaves, turncount (ocean waves), mutant ivy phase
2019-02-06 18:48:53 +01:00
Zeno Rogue
34256f8d68
wobbling added to moving humanoid characters
2019-02-06 18:48:53 +01:00
Zeno Rogue
730e7b5b99
number editor now accepts hex numbers, and uses hex as default when editing Tortoises
2019-02-06 18:48:53 +01:00
Zeno Rogue
35043b5528
tortoise flags are now editable with Shift+G and saved into saved levels
2019-02-06 18:48:53 +01:00
Zeno Rogue
78adac4e10
an option to disable wandering monsters; settings (reptilecheat, autocheat, safety etc) configurable in map editor; save items/kills and some other settings
2019-02-06 18:48:53 +01:00
Zeno Rogue
f58de16a2e
fixed a crash with bitfield_editor in Shift+G
2019-02-06 18:48:52 +01:00
Zeno Rogue
52f273e3f2
static with lambdas apparently does not work in old compilers
2019-02-06 18:48:52 +01:00
Zeno Rogue
645e4fa56c
shift+G screen is now editable
2019-02-06 18:48:52 +01:00
Zeno Rogue
35551f9dc9
improved welcome messages: Heptagonal Mode, (cheat mode on), Halloween only if eligible for achievement
2019-02-06 18:48:52 +01:00
Zeno Rogue
f6ce7c9039
crystal:: no more compasses in minefields
2019-02-06 18:48:52 +01:00
Zeno Rogue
7a589090d3
texture:: texture ghosts are now shown correctly
2019-02-06 18:48:52 +01:00
Zeno Rogue
34d4223bed
new color pattern: formula
2019-02-06 18:48:52 +01:00
Zeno Rogue
b751fa56c6
no more ambushes on compasses (matters in HG)
2019-02-06 18:48:52 +01:00
Zeno Rogue
5ec818a820
fixed confirmation required when saving from menu
2019-02-06 18:48:52 +01:00
Zeno Rogue
9ccf82d9dc
texture:: 'paint textures' in main menu now starts Canvas automatically
2019-02-06 18:48:52 +01:00
Zeno Rogue
cd2fa33bbc
no more alpha on floors while editing textures
2019-02-06 18:48:52 +01:00
Zeno Rogue
ca46a511fb
help for land no longer displays help for l, not specialland
2019-02-06 18:48:52 +01:00
Zeno Rogue
846032ece2
Blue Raiders now can destroy boats
2019-02-06 18:48:52 +01:00
Zeno Rogue
213cd2febf
Orb of Empathy works correctly with Orb of the Fish now
2019-02-06 18:48:52 +01:00
Zeno Rogue
dabadb0cf4
Graveyard no longer compatible with Ruined City
2019-02-06 18:48:52 +01:00
Zeno Rogue
923aae9cf1
Orb of Lava is now marked 'useless' in Graveyard
2019-02-06 18:48:52 +01:00
Zeno Rogue
681fd0f1c9
crystal:: Emerald Mine now uses random floors
2019-02-06 18:48:52 +01:00
Zeno Rogue
2407efc313
Camelot unlocked in geom-exp with treasure >= 1
2019-02-06 18:48:52 +01:00
Zeno Rogue
8ac1cf8731
fixed some issues with commandline arguments (svg shots made correctly from cli)
2019-02-06 18:48:52 +01:00
Zeno Rogue
40aea82374
fixed a crash in the Ivory Tower
2019-02-06 18:48:52 +01:00
Zeno Rogue
144d5335a6
rosemap now cleared correctly when clearing map
2019-02-06 18:48:52 +01:00
Zeno Rogue
34f9033c1c
better description of movement compass
2019-02-06 18:48:52 +01:00
Zeno Rogue
be1e300d8d
crystal:: ignore invisible floors in rug
2019-02-06 18:48:52 +01:00
Zeno Rogue
d3a3d4df5e
crystal:: coordinate computation is exported now
2019-02-06 18:48:52 +01:00
Zeno Rogue
f42fba3afe
you can no longer set compass size < 0
2019-02-06 18:48:52 +01:00
Zeno Rogue
c263fdb7f2
the game now uses the word 'pure' for non-bitruncated geometries
2019-02-06 18:48:52 +01:00
Zeno Rogue
70cd47e3a1
cli option -wsh works better now
2019-02-06 18:48:52 +01:00
Zeno Rogue
346e99385e
fixed the -wsh option
2019-02-06 18:48:52 +01:00
Zeno Rogue
c3087ad540
added new -wsh: '^' which draws no borders between full floors
2019-02-06 18:48:52 +01:00
Zeno Rogue
29cf07920c
no more crashes in some animations
2019-02-06 18:48:52 +01:00
Zeno Rogue
dde8b900d7
improved the hide_hud feature
2019-02-06 18:48:52 +01:00
Zeno Rogue
ee7a9722a9
fix an undefined behavior (crash on OSX after separate-area scenes in tutorial)
2019-02-06 18:48:52 +01:00
Zeno Rogue
c2dc4c8708
PHASE no longer needs using namespace arg
2019-02-06 18:48:52 +01:00
Zeno Rogue
9de7aa27c5
parser:: extra functions: to01 and ifp
2019-02-06 18:48:52 +01:00
Zeno Rogue
9f88c6b81c
graphical display of the paths for Orb of Air
2019-02-06 18:48:52 +01:00
Zeno Rogue
8c5b62e309
octagon geometry
2019-02-06 18:48:52 +01:00
Zeno Rogue
ac0430d350
crystal:: fixed crystal sides in crystal unittest
2019-02-06 18:48:52 +01:00