1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2024-11-24 13:27:17 +00:00
Commit Graph

586 Commits

Author SHA1 Message Date
Zeno Rogue
c67d7e06c6 racing:: remembering ghost, track selection (with times), completion percentage shown 2019-04-29 17:19:05 +02:00
Zeno Rogue
27011f1cf0 racing:: measuring times 2019-04-29 17:19:05 +02:00
Zeno Rogue
410c05554c racing:: fixed some lands for racing 2019-04-29 17:19:05 +02:00
Zeno Rogue
d5ce7dc30b racing:: improved Euclidean track generation 2019-04-29 17:19:05 +02:00
Zeno Rogue
16a5e45c0a racing:: first commit 2019-04-29 17:19:05 +02:00
Zeno Rogue
74ad8ea135 brownian:: more serious work 2019-04-29 17:19:05 +02:00
Arthur O'Dwyer
9471ac4ff5 Rearrange some macros. No functional change intended. 2019-02-08 18:18:56 -05:00
Zeno Rogue
f546bba84a fixes for mobile 2019-02-08 16:57:19 +01:00
Zeno Rogue
fd9fca6129 redesigned the Experiment with Geometry menu 2019-02-08 16:55:00 +01:00
Zeno Rogue
952f1c44fe minor fixes to color handling 2019-02-06 18:54:29 +01:00
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
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
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
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
645e4fa56c shift+G screen is now editable 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
9ccf82d9dc texture:: 'paint textures' in main menu now starts Canvas automatically 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
c2dc4c8708 PHASE no longer needs using namespace arg 2019-02-06 18:48:52 +01:00
Zeno Rogue
74693f43e7 fixed crashes on the sphere 2019-02-06 18:48:52 +01:00
Zeno Rogue
3317e95bfb cellcount counted correctly 2019-02-06 18:48:52 +01:00
Zeno Rogue
b0b783b581 tailored_delete used for deleting cells and heptagons, so that there is no delete/delete[] mismatch 2019-02-06 18:48:52 +01:00
Zeno Rogue
e52f6a9bcb cleaned up geometry achievements, and added Crystal Camelot 2019-02-06 18:48:35 +01:00
Zeno Rogue
39ce061fa7 use_atan configurable for RotatedHyperboles 2019-02-06 16:39:08 +01:00
Zeno Rogue
b90e3a4ed2 improved reptilecheat 2019-02-06 16:37:35 +01:00
Zeno Rogue
3d76e90584 conical spirals and bands 2019-02-06 16:36:52 +01:00
Zeno Rogue
e2b262979b startgame animations 2019-02-06 16:36:52 +01:00
Zeno Rogue
cd001102f8 fixed bug in write_chars 2018-12-15 15:16:11 +01:00
Zeno Rogue
a18570f77a 10.4d 2018-12-14 19:30:54 +01:00
Zeno Rogue
db69276264 geometry specifics in mode code 2018-12-14 19:30:54 +01:00
Zeno Rogue
8a677c28fa inlines 2018-12-14 19:30:54 +01:00
Zeno Rogue
5d01ac0732 text improvements, PL/CZ translation update 2018-12-14 19:30:54 +01:00
Zeno Rogue
f22ec08f86 Warnings when hitting an ally. Better warnings 2018-12-14 19:30:54 +01:00
Zeno Rogue
4370a18763 added background to svg if transparent not set 2018-12-14 19:30:54 +01:00
Zeno Rogue
8ba603fba3 svg:: circles now have better linewidth 2018-12-14 19:30:22 +01:00
Zeno Rogue
473cd89d76 print walkers 2018-12-14 19:30:22 +01:00
Zeno Rogue
8d1e341555 web:: 'take screenshot' feature now creates a SVG file and opens it in a new window 2018-12-14 19:30:22 +01:00
Zeno Rogue
c73b598d93 screenshots are more configurable now 2018-12-14 19:30:17 +01:00
Zeno Rogue
f135ad54a7 fixed save format incompatibility in map editor 2018-12-14 19:27:12 +01:00
Zeno Rogue
86c9f84df8 now compiles in C++11 2018-12-14 19:27:12 +01:00
Zeno Rogue
ebfd17f6a1 10.5b 2018-12-14 19:27:12 +01:00
Zeno Rogue
b256ac70af improved key handling: numpad works as directions with numlock off and numbers with numlock on; shift+5 works now; better key assignments in crystal rug 2018-12-14 19:27:12 +01:00
Zeno Rogue
9b21b9c5a0 improved key handling: shift+5 works now, and better key assignments in crystal rug 2018-12-14 19:27:12 +01:00
Zeno Rogue
d8bf550d37 surface 3D graphics are now automatically disabled in rug (won't work correctly with quotient rugs anyway) and in pmodels which do not support it 2018-12-14 19:27:12 +01:00
Zeno Rogue
285211bcf3 invalid_point functions, and using them in smart_range and queuestr/chr 2018-12-14 19:27:12 +01:00
Zeno Rogue
0d558cb0e1 build_shortest_path function 2018-12-14 19:27:12 +01:00
Zeno Rogue
5221ac07a3 crystal:: celldist(ance) gives precise distance, heptdistance gives imprecise one 2018-12-14 19:27:12 +01:00
Zeno Rogue
05df60ae70 more lands implemented for cylinders 2018-12-14 19:27:12 +01:00
Zeno Rogue
aa1b102b78 crystal::rug:: correct centering 2018-12-14 19:27:12 +01:00
Zeno Rogue
18d5f8299b crystal:: more settings in config/params/CLI 2018-12-14 19:27:12 +01:00
Zeno Rogue
3e747a2d9d compass probability now can be changed from menu/commandline 2018-12-14 19:27:12 +01:00
Zeno Rogue
46256155d7 crystal:: compass generation 2018-12-14 19:27:12 +01:00
Zeno Rogue
79e396c742 crystal:: computing Round Table sizes (not tested) 2018-12-14 19:27:12 +01:00
Zeno Rogue
c4fae9dfef correct get_coord in Goldberg 2018-12-14 19:27:11 +01:00
Zeno Rogue
92eaf96930 crystal:: 3D mode works from the Rug menu, and linked to from its menu 2018-12-14 19:27:11 +01:00
Zeno Rogue
bc90d0a51a crystal:: now selectable from the geom exp menu 2018-12-14 19:27:11 +01:00
Zeno Rogue
d506c73571 crystal:: animates correctly 2018-12-14 19:27:11 +01:00
Zeno Rogue
50f37a6b63 crystal:: started working on lands (Camelot done) and distances 2018-12-14 19:27:11 +01:00
Zeno Rogue
000f271552 refactored buildCamelot as a separate function 2018-12-14 19:27:11 +01:00
Zeno Rogue
3182600a58 3D display of Crystal 2018-12-14 19:27:11 +01:00
Zeno Rogue
851e217a73 crystal:: automatically bitruncate with crystal's implementation 2018-12-14 19:27:11 +01:00
Zeno Rogue
fd3b030119 crystal:: added multi-dimensional geometries (referred to as crystal), available via CLI for now 2018-12-14 19:27:11 +01:00
Zeno Rogue
cd357303b9 cleaned up surface flags 2018-12-14 19:27:11 +01:00
Zeno Rogue
4bac862e53 improved the indentation in hstream 2018-12-11 22:10:53 +01:00
Zeno Rogue
c1aac5e664 a38 now actually checks that S3 == 3 2018-12-11 22:10:53 +01:00
Zeno Rogue
9b4a53783c removed MAX_S84 and some no longer used stuff using it 2018-12-11 22:10:53 +01:00
Zeno Rogue
f2ee616eab all Mobius bands implemented 2018-12-11 22:10:53 +01:00
Zeno Rogue
460eb19881 implemented new geometries: cylinder and (only one for now) Mobius band 2018-12-11 22:10:53 +01:00
Zeno Rogue
8866bc889d string editor now may restrict the available keys 2018-11-24 22:55:07 +01:00
Zeno Rogue
2fa265ac10 implemented a better system for logging and binary output 2018-11-24 21:23:02 +01:00
Zeno Rogue
64da329f8e added new quotient spaces: Bring's, Schmutz's M(2), Schmutz's M(3) 2018-11-23 23:46:26 +01:00
Zeno Rogue
b4671e4d50 standard draw algorithm no longer recursive; prettier gp::drawrec 2018-11-23 23:45:16 +01:00
Zeno Rogue
98a5fdb556 10.5a 2018-11-20 19:01:35 +01:00
Zeno Rogue
5e0bd401fc tiny bird and tiny shark shapes, for use in RogueViz 2018-11-20 00:20:11 +01:00
Zeno Rogue
248863ef08 10.5 2018-11-19 22:22:26 +01:00
Zeno Rogue
e25bc8e455 glhr:: shaderside projection for the half-plane model 2018-11-19 20:53:35 +01:00
Zeno Rogue
34cb90f97c fixed some exports 2018-11-18 18:26:56 +01:00
Zeno Rogue
50a86d1e88 glhr:: shader-side band now ignores depth 2018-11-18 18:26:56 +01:00
Zeno Rogue
8e2727882e shmup:: rewritten shmup configuration in OOP style 2018-11-18 18:26:56 +01:00
Zeno Rogue
eec70d7265 fixed subscreen computations 2018-11-18 18:26:56 +01:00
Zeno Rogue
d935febf09 refactored some global and stereo:: variables into display_data structure 2018-11-18 18:26:56 +01:00
Zeno Rogue
680dca90c8 shaderside projection 2018-11-18 18:26:55 +01:00
Zeno Rogue
5fe87e140f 10.4z 2018-11-11 12:55:36 +01:00
Zeno Rogue
7b4028418e arg:: most important dialogs can be launched from command line 2018-11-11 11:27:36 +01:00
Zeno Rogue
1d0b5878fc left-handed player characters 2018-11-11 11:27:36 +01:00
Zeno Rogue
048bd4ab36 cl parameters and param entries for spiralx and spiraly 2018-11-11 11:27:36 +01:00
Zeno Rogue
44c1b43b1c refactored do_draw(cell*, const transmatrix&) 2018-11-11 11:27:36 +01:00
Zeno Rogue
4ce6005597 a/b parameters, and parameters referring to each other 2018-11-11 11:27:36 +01:00
Zeno Rogue
d69e952729 animate parameters from the edit dialog 2018-11-11 11:27:36 +01:00
Zeno Rogue
549d86b15d arg:: shift_arg_formula used instead of argf 2018-11-11 11:27:36 +01:00
Zeno Rogue
c1af8f9d3a bandfixer (for normal geometries) 2018-11-11 11:27:35 +01:00
Zeno Rogue
41445f00ca model listing 2018-11-11 11:27:35 +01:00
Zeno Rogue
be51445b77 linepatterns:: width configurable 2018-11-11 11:27:35 +01:00
Zeno Rogue
dbba704d1c linepatterns:: added circles, radii, meridians, parallels 2018-11-11 11:27:35 +01:00
Zeno Rogue
c3c465f742 customizable colors for game objects 2018-11-11 11:27:29 +01:00
Zeno Rogue
f1b6cc0f48 ringcolor improvements 2018-11-11 11:25:59 +01:00
Zeno Rogue
d1d2a300c4 refactored the degree constant 2018-11-11 11:25:59 +01:00
Zeno Rogue
071e9a5cac moved draw_boundary and draw_model_elements from graph to hypgraph 2018-11-11 11:25:59 +01:00
Zeno Rogue
5978830e01 filled model drawing (for some models) 2018-11-11 11:25:59 +01:00
Zeno Rogue
b019cfcd4f refactored colortables 2018-11-11 11:25:59 +01:00
Zeno Rogue
d1f6b1fff3 help for formula parser 2018-11-11 11:25:59 +01:00
Zeno Rogue
077c7657b8 rogueviz:: a plugin to draw fundamental domains 2018-11-11 11:25:59 +01:00
Zeno Rogue
542e80081f conformal:: new models: formula and rotated hyperboles 2018-11-11 11:25:59 +01:00
Zeno Rogue
55fdd25a6c formula parser now understands complex numbers, and some extra functions including let(x=2, x*x) 2018-11-11 11:25:58 +01:00
Zeno Rogue
7e80be5a87 dialog:: abstracted string editing 2018-11-11 11:25:58 +01:00
Zeno Rogue
ade8bda5f9 fixed smart_range in Archimedean and binary tilings 2018-11-11 11:25:58 +01:00
Zeno Rogue
8e7abf6292 refactored gethyper 2018-11-11 11:25:58 +01:00
Zeno Rogue
69fb2c712f 10.4y 2018-11-11 11:25:58 +01:00
Zeno Rogue
c4e11f960a added menuitem_sightrange to hyper.h 2018-11-01 20:55:18 +01:00
Zeno Rogue
1ba1b141f3 smart display range 2018-11-01 19:07:50 +01:00
Zeno Rogue
163be02b75 10.4x 2018-10-28 04:06:59 +01:00
Zeno Rogue
acad978637 radius is now ld not int 2018-10-28 03:09:07 +01:00
Zeno Rogue
66910c757f implemented auras for Joukowsky projections in transition 2018-10-28 03:09:07 +01:00
Zeno Rogue
42540aa226 model transition for Joukowsky, inverted Joukowsky, and Band. 2018-10-28 03:09:07 +01:00
Zeno Rogue
804b489ebf improved hemisphere model; nicer handling of ballangle 2018-10-28 03:09:06 +01:00
Zeno Rogue
cbb53cfe68 Joukowsky transform, and better inverted Poincare 2018-10-28 03:09:06 +01:00
Zeno Rogue
8a37a43547 improved hyperboloid model 2018-10-23 20:08:57 +02:00
Zeno Rogue
0a54e56950 graph drawing in RogueViz 2018-10-23 17:07:42 +02:00
Zeno Rogue
6b47221a64 added using std::isinf to hyper.h 2018-10-23 17:03:58 +02:00
Zeno Rogue
a9535878c4 model orientation 2018-10-23 16:58:19 +02:00
Zeno Rogue
0cb2425c5a removed unused comment 2018-09-30 16:24:16 +02:00
Zeno Rogue
ce390de0d2 fixed curr_dist and horocycles in Canvas for Euclidedan 2018-09-28 12:27:44 +02:00
Zeno Rogue
2bdda23bc8 added some exports 2018-09-27 21:53:11 +02:00
Zeno Rogue
dee2b23991 replaced chosenDown with a better set of functions 2018-09-27 21:53:07 +02:00
Zeno Rogue
7058ccf747
Merge pull request #60 from Quuxplusone/polarb50
polara50 and polarb50 now consistently return bool, not int
2018-09-24 00:24:50 +02:00
Zeno Rogue
41ecd6c0c1 10.4w 2018-09-24 00:18:21 +02:00
Zeno Rogue
303cd41b3a command line option --killeach 2018-09-24 00:05:57 +02:00
Zeno Rogue
c8e604f408 reflect view in mirror walls during animation and just scrolling; better translate animation in memory saving mode 2018-09-24 00:00:04 +02:00
Zeno Rogue
b5542c66ba hyperbolic_celldistance algorithm implemented for all hyperbolic tilings (minor bugs known in irregular, still ugly in bitrunc a45) 2018-09-23 16:34:53 +02:00
Zeno Rogue
2587474115 fixed chosenDown for bitruncated a45 where there can be three parents 2018-09-23 16:34:53 +02:00
Zeno Rogue
0294c0acb1 options -pal and -palrgba now accept the pattern name 2018-09-21 21:31:11 +02:00
Zeno Rogue
c1de923454 extra features related to expansion 2018-09-21 19:51:13 +02:00
Zeno Rogue
a556ef0823 improvements in expansion 2018-09-13 20:38:06 +02:00
Zeno Rogue
9bf8842124 expansion is now computed exactly and for most geometries 2018-09-12 04:23:15 +02:00
Zeno Rogue
7345c14184 10.4v 2018-09-10 19:47:16 +02:00
Zeno Rogue
bb05d9ab80 some anim parameters are now saved in config 2018-09-10 19:47:14 +02:00
Zeno Rogue
7da2b7e9a1 argf now parses the given argument 2018-09-10 19:28:12 +02:00
Zeno Rogue
6f2deeafcc animation menu 2018-09-10 18:12:07 +02:00
Zeno Rogue
a1fe4333d5 remaning anim sync 2018-09-10 17:56:37 +02:00
Zeno Rogue
c9dbeec393 added some exports to hyper.h 2018-09-10 17:26:27 +02:00
Zeno Rogue
0dbe4822ec dialog:: refactored scaling in number dialogs 2018-09-10 16:47:28 +02:00
Zeno Rogue
5afb444847 10.4u 2018-09-07 18:12:57 +02:00
Zeno Rogue
04554a436f improved INVERSE issues in stereographic 2018-09-07 16:18:40 +02:00
Zeno Rogue
eb23dce2aa fixed help in RogueViz kohonen 2018-09-07 15:15:53 +02:00
Zeno Rogue
0d138f3c75 load/save compressed data in RogueViz kohonen 2018-09-07 15:15:00 +02:00
Zeno Rogue
621220cf13 hooks in drawmarkers 2018-09-06 22:34:35 +02:00
Arthur O'Dwyer
f84975d1d1 polara50 and polarb50 now consistently return bool, not int.
MSVC complains about constructions such as

    bool polara50(int);
    int polara50(cell *c) {
        // ...
        return polara50(someint);
    }
2018-09-05 22:28:35 -07:00
Zeno Rogue
ec84643070 open URLs from Emscripten 2018-09-05 15:34:13 +02:00
Zeno Rogue
be0c5e4a39 help extensions now can use addSelItem and color 2018-09-05 15:19:51 +02:00