1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2024-11-01 03:46:16 +00:00
Commit Graph

998 Commits

Author SHA1 Message Date
Zeno Rogue
5de9c4cc16 added #define rotspace 2020-05-08 20:26:30 +02:00
Arthur O'Dwyer
f2b7746c1b Move all defaulting-of-CAP_FOO to sysconfig.h.
- The phrase `#ifdef CAP_` should never appear anywhere.

- The phrase `#ifndef CAP_` should appear only in sysconfig.h.

- The phrases `#if CAP_` and `#if !CAP_` may appear wherever,
    as long as "sysconfig.h" is included first.

The rules for `CAP_FOO` equally apply to `ISFOO`.

There are many one-off macros still tested with `#ifdef`,
including `HAVE_ACHIEVEMENTS`, `PRINT_ACHIEVEMENTS`,
`FAKEWEB`, `FAKE_SDL`, `EASY`, and `WHATEVER`. I don't
have much grasp on what these are used for or how they're
configured, so I'm leaving them alone.
2020-05-03 15:12:12 -04:00
Zeno Rogue
cef94da632 11.3l 2020-05-01 18:58:16 +02:00
Zeno Rogue
e59a2ad517 11.3k 2020-04-22 01:46:45 +02:00
Zeno Rogue
6f6586b3f2
Merge branch 'master' into hooks-naming 2020-04-19 13:39:07 +02:00
Zeno Rogue
ad233a1e19 drawing tool 2020-04-17 20:04:33 +02:00
Zeno Rogue
d7ceb89ed8 MDIM is now constant 3 if MAXMDIM == 3 2020-04-17 15:37:31 +02:00
Zeno Rogue
0472bf764f moved all projection-related parameters to a special struct; another copy of that struct created for rug 2020-04-17 00:53:58 +02:00
Arthur O'Dwyer
d1458b3ee5 Replace the hookset typedef with a full-blown class type. NFC.
This restricts the "API surface area" of `hookset` to just these three
accessor methods; there's no longer any way to break into a hookset and
iterate it manually, or erase elements from a hookset, or ask for its
size, or anything else that you could have done given the raw `std::map *`.
2020-04-12 10:50:43 -04:00
Arthur O'Dwyer
0d42168139 Make hookset<T> a pointer type, just like purehookset.
No more declaring `hookset<T> *hooks_foo`; now it's just
`hookset<T> hooks_foo` at global scope. This clears the way to
make `hookset<T>` into a class type if we want.
2020-04-12 10:50:18 -04:00
Arthur O'Dwyer
84881f0e04 Remove a stray #include <functional> from hyper.h.
This seems to be causing `hookset` to use `std::function` instead of
`hr::function`. Removing this one line shrinks the normal hyperrogue
binary from 9695484 bytes to 9669956 bytes.
2020-04-12 10:49:00 -04:00
Arthur O'Dwyer
6e4b6ee93c Remove the definition of _Unwind_Resume on OSX.
This is unnecessary for me when using Makefile.simple, as far as I can tell.
And it's actively harmful when using "mymake", because then we get this
non-inline variable defined in every .o file, which leads to
multiple-definition errors at link time.

Maybe it's no longer needed?
2020-04-12 09:56:46 -04:00
Zeno Rogue
348f1afcb0 updated Android to 11.3i 2020-04-07 22:46:45 +02:00
Zeno Rogue
3eca481b75 11.3h 2020-04-06 13:23:10 +02:00
Zeno Rogue
8b7f2f3969 11.3g 2020-04-05 10:58:56 +02:00
Zeno Rogue
af10592616 moved binsearch to hyper.h 2020-03-31 20:06:18 +02:00
Zeno Rogue
0f3b00835e perfect forwarding in callhooks and callhandlers 2020-03-29 14:06:52 +02:00
Zeno Rogue
81c350d5dd more brief 2020-03-27 21:48:31 +01:00
Zeno Rogue
8b37a9ffbf added inline for voidp 2020-03-27 19:39:33 +01:00
Zeno Rogue
b5a70c1bc6
Merge pull request #92 from Quuxplusone/pedantic
Add `-pedantic` to the Makefile, and fix all resulting warnings
2020-03-27 12:04:40 +01:00
Zeno Rogue
bcc96ffa11 11.3f 2020-03-25 13:52:32 +01:00
Arthur O'Dwyer
7a706478dc Add a helper function voidp to silence GCC warnings about %p.
We must fully qualify calls to `hr::voidp` because the expression
`voidp(x)` is ambiguous or worse. "/usr/include/zconf.h" defines
`voidp` in the global namespace as a typedef for `void*`.
We don't want an unsafe functional-style cast to `void*`;
we want to call our nice safe helper function. So we qualify the name.
2020-03-23 14:39:28 -04:00
Zeno Rogue
14d2237c01 11.3e 2020-03-22 12:03:09 +01:00
Zeno Rogue
aa8906d6dd added some documentation 2020-03-22 09:47:56 +01:00
Zeno Rogue
808bbe05a0 11.3d 2020-03-16 21:48:03 +01:00
Zeno Rogue
734fb385d4 11.3c 2020-03-12 10:35:54 +01:00
Zeno Rogue
b3c105de0c 11.3b 2020-03-11 11:36:37 +01:00
Zeno Rogue
6389614712 11.3a 2020-03-08 01:51:03 +01:00
Zeno Rogue
a961499fbe update 11.3 2020-03-07 04:47:11 +01:00
Zeno Rogue
db5bcef578 Orb of Empathy now protects your allies from your indirect attacks 2020-03-07 04:47:11 +01:00
Zeno Rogue
e564622a48 rewritten undo: part 1 2020-03-07 04:47:10 +01:00
Zeno Rogue
cca9dacf13 achievements and leaderboards for new treasures 2020-03-07 04:47:10 +01:00
Zeno Rogue
6317101d66 Orb of Plague 2020-03-07 04:47:10 +01:00
Zeno Rogue
99e64d862d shallow water graphics and mechanics 2020-03-07 04:47:09 +01:00
Zeno Rogue
8cba24fb20 11.2x 2020-02-07 19:45:47 +01:00
Zeno Rogue
ea29b1cb99 11.2w 2020-01-29 19:29:16 +01:00
Zeno Rogue
3500d67af6 11.2v and adjust to older compilers 2020-01-28 20:21:23 +01:00
Zeno Rogue
dfca9751d3 11.2u 2020-01-19 00:34:07 +01:00
Zeno Rogue
6f89d2176f removed the MAX_EDGE limitation 2020-01-18 16:59:16 +01:00
Zeno Rogue
7c9dd4ea59 11.2t 2020-01-16 17:26:47 +01:00
Zeno Rogue
0cd2765da4 11.2s 2020-01-06 22:12:44 +01:00
Zeno Rogue
717d7b8167 11.2r 2020-01-02 19:04:48 +01:00
Zeno Rogue
e53bdb7db1 11.2q 2019-12-27 23:40:06 +01:00
Zeno Rogue
87933c6487 11.2p 2019-12-27 12:51:07 +01:00
Zeno Rogue
cacfa8dee9 oldstyle joystick: smoothening input, ignoring next input 2019-12-27 11:57:08 +01:00
Zeno Rogue
6c61162392 merge 2019-12-26 22:40:41 +01:00
Zeno Rogue
f4613e9945 more bubbles, SE config 2019-12-25 23:04:07 +01:00
Zeno Rogue
b6f9298f0a removed classes.h 2019-12-23 22:21:04 +01:00
Zeno Rogue
91b22e2d62 fixup to TEMPLE_EACH remove 2019-12-14 12:35:28 +01:00
Zeno Rogue
769982040d renamed solnihv:: to sn:: and solnih to sn::in() 2019-12-14 12:28:45 +01:00
Zeno Rogue
3f0e8851ae removed #define ALPHA from hyper.h 2019-12-14 12:18:24 +01:00
Zeno Rogue
8cfc5a578f renamed penrose.cpp to kite.cpp and 'penrose' to 'kite::in()' 2019-12-14 12:12:24 +01:00
Zeno Rogue
d5c8aebf16 renamed binary:: to bt:: and binarytiling to bt::in() 2019-12-14 12:05:01 +01:00
Zeno Rogue
fe52cb6ea9 hassert macro 2019-12-14 11:57:23 +01:00
Zeno Rogue
059953fe58 removed hint def from hyper.h 2019-12-14 11:57:23 +01:00
Zeno Rogue
f772f9b7fd replaced 'archimedean' with 'arcm::in()' 2019-12-14 11:57:23 +01:00
Zeno Rogue
0a9ec78c18 remplace euclid6, euclid4, 'euclid && \!archimedean && \!penrose' with standard_tiling(), euc::in(dimension, s7) 2019-12-14 11:57:23 +01:00
Zeno Rogue
9736068810 11.2o 2019-12-08 20:07:02 +01:00
Zeno Rogue
26fb19e7a8 subdivided game.cpp; split movepcto into separate functions 2019-12-08 20:07:02 +01:00
Zeno Rogue
225c43b141 11.2n 2019-12-06 14:14:36 +01:00
Zeno Rogue
568593d7f8 11.2m 2019-11-30 19:01:01 +01:00
Zeno Rogue
1cba452f07 rewritten the Euclidean geometry 2019-11-30 18:06:47 +01:00
Zeno Rogue
5354c92c1a 11.2l 2019-11-23 23:48:09 +01:00
Zeno Rogue
b1f3686bdf 11.2k 2019-11-16 03:11:00 +01:00
Zeno Rogue
aa3bb4369e 11.2j 2019-11-15 14:30:07 +01:00
Zeno Rogue
cf66dade1a 11.2i 2019-11-03 14:55:43 +01:00
Zeno Rogue
ade5c9c39f 11.2h 2019-11-03 02:24:35 +01:00
Zeno Rogue
af5d961b1d 11.2g 2019-10-27 02:48:50 +01:00
Zeno Rogue
dd4602e139 11.2f 2019-10-26 18:39:30 +02:00
Zeno Rogue
ecdb1aa6e7 11.2e 2019-10-12 14:02:58 +02:00
Zeno Rogue
b33f85d423 shortcut macros cginf and cgflags 2019-10-10 13:49:35 +02:00
Zeno Rogue
43f629e9c4 inforder:: wall generation 2019-10-10 13:49:35 +02:00
Zeno Rogue
a5908620ce 11.2d 2019-10-06 13:05:53 +02:00
Zeno Rogue
5a4f936769 11.2c 2019-10-05 18:55:11 +02:00
Zeno Rogue
13ea55b233 fisheye has parameter 2019-10-05 12:32:16 +02:00
Zeno Rogue
c1a12172ae yet another weird bug 2019-10-03 20:31:28 +02:00
Zeno Rogue
d69cb4e946 SolN manifold 2019-10-03 20:10:48 +02:00
Zeno Rogue
46d127401e nih improvements 2019-10-02 19:22:43 +02:00
Zeno Rogue
d6ab96f821 non-isotropic hyperbolic space 2019-10-01 05:03:46 +02:00
Zeno Rogue
ddae7b9ce8 11.2b 2019-09-30 01:51:44 +02:00
Zeno Rogue
a4418d6dcc 11.2a 2019-09-28 17:33:59 +02:00
Zeno Rogue
44f42f7681 version 11.2 2019-09-13 19:54:55 +02:00
Zeno Rogue
a3d9711ec2 more adjustments to disabled CAP_* 2019-09-13 03:10:26 +02:00
Zeno Rogue
d1faa2011c updating emscripten build 2019-09-13 00:31:54 +02:00
Zeno Rogue
165a55d93c 11.1p 2019-09-12 22:50:16 +02:00
Zeno Rogue
19a54cfa9d hyper.h is now the only file to include 2019-09-12 22:50:16 +02:00
Zeno Rogue
b2fa6703f1 11.1o 2019-09-12 22:50:16 +02:00
Zeno Rogue
d046211a9c better flagging of geometries, and isometry spaces nicely selectable 2019-09-12 22:50:15 +02:00
Zeno Rogue
1e6970ca28 hybrid:: refactored the common parts of prod and sl2, also used them when applicable 2019-09-12 22:50:15 +02:00
Zeno Rogue
136b931609 PSL(2,R) 2019-09-12 22:50:15 +02:00
Zeno Rogue
a03eb0d913 fixed new geometry handling for Archimedean 2019-09-12 22:50:15 +02:00
Zeno Rogue
2f954d0538 nicer handling of WDIM, GDIM, MDIM, sig 2019-09-12 22:50:15 +02:00
Zeno Rogue
89413ae42a 11.1n 2019-09-12 22:50:15 +02:00
Zeno Rogue
59971b7048 11.1m 2019-09-12 22:50:15 +02:00
Zeno Rogue
161db58988 11.1l 2019-09-12 22:50:14 +02:00
Zeno Rogue
7aed1b8551 modecode for product geometries 2019-09-12 22:50:14 +02:00
Zeno Rogue
ecfef817a9 auto-adjusted plevel 2019-09-12 22:50:13 +02:00
Zeno Rogue
6958cbcbd9 product:: preliminary version (no turning) 2019-09-12 22:50:13 +02:00
Zeno Rogue
96bf478482 renamed DIM to GDIM 2019-09-12 22:50:13 +02:00
Zeno Rogue
21b6f22de4 11.1k 2019-09-12 22:50:13 +02:00
Zeno Rogue
2c073c1ec1 cleanup of mercator_fix 2019-09-12 22:50:13 +02:00
Zeno Rogue
1a7d7c8db8 11.1j 2019-09-12 22:50:13 +02:00
Zeno Rogue
437c4e4cdd flag 'experimental' for new geometries 2019-09-12 22:50:13 +02:00
Zeno Rogue
50e4990a76 improvements in documentation 2019-09-12 22:50:13 +02:00
Zeno Rogue
8b1c7bffe4 initial reformatting of comments for Doxygen 2019-09-12 22:50:13 +02:00
Zeno Rogue
0ef57dde15 further cleanup 2019-09-12 22:50:13 +02:00
Zeno Rogue
ad03115097 further cleanup 2019-09-12 22:50:13 +02:00
Zeno Rogue
609d1b91d3 further cleanup 2019-09-12 22:50:13 +02:00
Zeno Rogue
a0fcdb0c54 more header cleanup 2019-09-12 22:50:13 +02:00
Zeno Rogue
b0f2e7b6b9 header cleanup Yendor 2019-09-12 22:50:12 +02:00
Zeno Rogue
4ec7652861 cleanup mapeditor 2019-09-12 22:50:12 +02:00
Zeno Rogue
4422b910c0 header cleanup: rug 2019-09-12 22:50:12 +02:00
Zeno Rogue
6ed530c50c header cleanup (conformal/polygonal) 2019-09-12 22:50:12 +02:00
Zeno Rogue
aa1b3f3057 moved hyperpoint inlines to hyperpoint.cpp 2019-09-12 22:50:12 +02:00
Zeno Rogue
245ee5878f removed function dirfromto as it was equal to neighborId 2019-09-12 22:50:12 +02:00
Zeno Rogue
f723a8d419 further cleanup, separated multi.cpp from shmup.cpp 2019-09-12 22:50:12 +02:00
Zeno Rogue
a76a5dd265 further cleanup 2019-09-12 22:50:12 +02:00
Zeno Rogue
65c4e6a31c further cleanup 2019-09-12 22:50:12 +02:00
Zeno Rogue
05bd7a905c more header cleanup 2019-09-12 22:50:12 +02:00
Zeno Rogue
e1194ff588 more header cleanup 2019-09-12 22:50:12 +02:00
Zeno Rogue
a423dbd2da more header cleanup 2019-09-12 22:50:12 +02:00
Zeno Rogue
cb666fb24a more header shifting 2019-09-12 22:50:12 +02:00
Zeno Rogue
1c6b8ad3f0 utilities for printing moved to new file hprint.cpp 2019-09-12 22:50:12 +02:00
Zeno Rogue
c2d56fb9bc autohdr.h applied in more files 2019-09-12 22:50:12 +02:00
Zeno Rogue
a290f7c1c0 autoheader used for nisot 2019-09-12 22:50:12 +02:00
Zeno Rogue
ac680b39c2 started using auto-header generator 2019-09-12 22:50:12 +02:00
Zeno Rogue
f4eda1d76e removed function fixdir 2019-09-12 22:50:12 +02:00
Zeno Rogue
b57c4c8d4e walker now automatically fixes spin 2019-09-12 22:50:12 +02:00
Zeno Rogue
661743a19b removed the obsolete *MovR functions 2019-09-12 22:50:12 +02:00
Zeno Rogue
ef89c7ed9d removed functions fix6 and fix7 2019-09-12 22:50:12 +02:00
Zeno Rogue
c131e21198 namespace hyperpoint_vec removed 2019-09-12 22:50:12 +02:00
Zeno Rogue
d77c44e48b 11.1i 2019-09-12 22:50:12 +02:00
Zeno Rogue
60bf28f359 transmatrix back to old definition (some weird bugs?) but improved 2019-09-12 22:50:12 +02:00
Zeno Rogue
602e6f27db generating various lands in Sol 2019-09-12 22:50:12 +02:00
Zeno Rogue
4d66505b66 nilv:: simpler honeycomb 2019-09-12 22:50:11 +02:00
Zeno Rogue
8ac64fc2a0 nilv:: Nil shader, and improved geodesics 2019-09-12 22:50:11 +02:00
Zeno Rogue
4f27b12ca2 nilv:: preliminary implementation 2019-09-12 22:50:11 +02:00
Zeno Rogue
ad5ec24e7b transmatrix now implemented as an array of hyperpoints 2019-09-12 22:50:11 +02:00
Zeno Rogue
14e86830b3 11.1h 2019-09-12 22:50:11 +02:00
Zeno Rogue
d612872d80 added missing inline 2019-09-12 22:50:11 +02:00
Zeno Rogue
40e5f7f930 celldistance now returns DISTANCE_UNKNOWN instead of 64 if it does not know 2019-09-12 22:50:11 +02:00
Zeno Rogue
bca567cc10 updir used in heptdistance 2019-09-12 22:50:11 +02:00
Zeno Rogue
a077e075b9 11.1g 2019-09-12 22:50:11 +02:00
Zeno Rogue
dc54135d5f radarrange configurable 2019-09-12 22:50:11 +02:00
Zeno Rogue
44b9968ff8 cleaned up invis_point -> point_behind and invalid_point(transmatrix), also implemented for Solv 2019-09-12 22:50:11 +02:00
Zeno Rogue
774c871c74 sol:: basic shmup works 2019-09-12 22:50:10 +02:00
Zeno Rogue
cc5768b6b3 fixup local_perspective 2019-09-12 22:50:10 +02:00
Zeno Rogue
3933447ffa fixup extern noclipped 2019-09-12 22:50:10 +02:00
Zeno Rogue
b898365d68 solv:: lazy version of inv_exp 2019-09-12 22:50:10 +02:00
Zeno Rogue
90aa7b5c02 solv:: removed ILP for simplicity and better performance 2019-09-12 22:50:10 +02:00