1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2024-12-01 07:49:55 +00:00
Commit Graph

996 Commits

Author SHA1 Message Date
Arthur O'Dwyer
1761b02b90 Rationalize some std::exception stuff. 2021-03-21 17:57:09 -04:00
Zeno Rogue
242b601a51 added hr_exception_str 2021-03-21 10:44:38 +01:00
Zeno Rogue
5f86ed6b4b fixed more fallthroughs, added exception hr_wrong_geometry 2021-03-12 22:59:24 +01:00
Zeno Rogue
e4947acef7 illegal cases in binarytiling.cpp now throw hr_wrong_dir() 2021-03-12 15:30:12 +01:00
Zeno Rogue
f180f447e6 11.4g 2021-03-09 16:29:05 +01:00
Zeno Rogue
0020957906 finalizer struct, and fixed animations breaking 2021-03-06 11:47:54 +01:00
Zeno Rogue
42c6f2774a 11.4f 2021-02-07 22:55:11 +01:00
Zeno Rogue
015f6227fa redone basic graphics settings (vsync, resolution, fullscreen, gl/aa) 2021-02-07 22:55:10 +01:00
Zeno Rogue
992c44c7e6 11.4e 2020-12-31 19:19:19 +01:00
Zeno Rogue
ec70119c3e moved vr_scale_factor and vr_zshift to pconf, and added some new projection parameters for the future 2020-12-31 19:11:13 +01:00
Zeno Rogue
f664e8fbce hassert: implemented without println 2020-12-25 06:06:09 +01:00
Zeno Rogue
075d9002c2 fixed hassert 2020-12-25 00:03:27 +01:00
Zeno Rogue
b0d60f42f9 11.4d 2020-11-22 20:00:43 +01:00
Zeno Rogue
665d52eeae 11.4c 2020-11-19 18:16:59 +01:00
Zeno Rogue
54cb73e0fd 11.4b 2020-11-10 15:41:05 +01:00
Zeno Rogue
b1cb66e468
Merge pull request #129 from Quuxplusone/unordered-map
Remove USE_UNORDERED_MAP because it has bit-rotted.
2020-11-05 20:03:13 +01:00
Zeno Rogue
67af738cd6 11.4a 2020-11-05 18:53:37 +01:00
Zeno Rogue
9b6d78b7ed 11.4 2020-11-02 11:47:57 +01:00
Zeno Rogue
8c4b700466 show_hyperboloid_flat option 2020-11-01 20:10:08 +01:00
Zeno Rogue
96d28d173a MXDIM, and some extra comments 2020-11-01 17:37:51 +01:00
Arthur O'Dwyer
d163a01b8a Remove USE_UNORDERED_MAP because it has bit-rotted.
Trying to compile with `-DUSE_UNORDERED_MAP` produces lots of compiler errors
like these, because of missing `std::hash` specializations.
Also, `#define unordered_map map` is just evil!

```
./nonisotropic.cpp:875:36: note: in instantiation of template class 'std::__1::unordered_map<hr::nilv::mvec, hr::heptagon *,
      std::__1::hash<hr::nilv::mvec>, std::__1::equal_to<hr::nilv::mvec>, std::__1::allocator<std::__1::pair<const hr::nilv::mvec, hr::heptagon
      *> > >' requested here
    unordered_map<mvec, heptagon*> at;
                                   ^

./nonisotropic.cpp:239:58: note: in instantiation of template class 'std::__1::unordered_map<std::__1::pair<hr::heptagon *, hr::heptagon *>,
      hr::heptagon *, std::__1::hash<std::__1::pair<hr::heptagon *, hr::heptagon *> >, std::__1::equal_to<std::__1::pair<hr::heptagon *,
      hr::heptagon *> >, std::__1::allocator<std::__1::pair<const std::__1::pair<hr::heptagon *, hr::heptagon *>, hr::heptagon *> > >'
      requested here
    unordered_map<pair<heptagon*, heptagon*>, heptagon*> at;
                                                         ^

./nonisotropic.cpp:457:49: error: no matching member function for call to 'iadj'
      while(h1->distance < h2->distance) back = iadj(h2, down) * back, h2 = h2->cmove(down);
                                                ^~~~
cell.cpp:42:15: note: candidate function not viable: no known conversion from 'hr::sn::hrmap_solnih' to 'hr::hrmap' for object argument
  transmatrix iadj(heptagon *h, int d) {
              ^
cell.cpp:41:22: note: candidate function not viable: no known conversion from 'hr::sn::hrmap_solnih' to 'hr::hrmap' for object argument
  struct transmatrix iadj(cell *c, int i) { cell *c1 = c->cmove(i); return adj(c1, c->c.spin(i)); }
                     ^
```
2020-10-19 13:15:29 -04:00
Zeno Rogue
b09b2375bc 11.3z1 2020-09-21 12:59:05 +02:00
Zeno Rogue
d87287c155 web:: offer_download and offer_choose_file 2020-09-21 12:00:52 +02:00
Zeno Rogue
e3a45b0141 11.3z 2020-09-17 04:37:57 +02:00
Zeno Rogue
cea3da31fc separated highlight 2020-09-16 23:49:17 +02:00
Zeno Rogue
2e47adef1c new projections based on cartography 2020-09-16 23:49:17 +02:00
Zeno Rogue
db646aba5d hook deletion 2020-09-11 11:17:12 +02:00
Zeno Rogue
18ab187547 rotational model of Nil, and change Nil rotation 2020-09-11 11:13:18 +02:00
Zeno Rogue
dac3a3260a 11.3y 2020-08-20 16:49:47 +02:00
Zeno Rogue
644d20cd89 smartrange area-based 2020-08-20 16:49:47 +02:00
Zeno Rogue
38a5b4d1f8 added a noniso honeycomb viz to the presentation, and noniso slides are now in a common folder 2020-08-10 18:09:19 +02:00
Zeno Rogue
1ac2805b7f 11.3w 2020-08-05 01:31:41 +02:00
Zeno Rogue
2349d57f44 11.3v 2020-08-02 13:47:46 +02:00
Zeno Rogue
c1ac290491 11.3u 2020-07-29 23:03:09 +02:00
Zeno Rogue
7cdf941441 11.3t 2020-07-28 22:06:14 +02:00
Zeno Rogue
ccfcb2eaeb 11.3s 2020-07-25 02:28:12 +02:00
Zeno Rogue
36055d993e 11.3r 2020-07-13 01:33:09 +02:00
Zeno Rogue
f36eb9ddfe removed the macro VALENCE 2020-07-13 00:54:25 +02:00
Zeno Rogue
1f1e7d9bbf inverse tessellation operators 2020-07-12 21:39:34 +02:00
Zeno Rogue
fa1cc8b44c missing 11.3q 2020-07-12 21:39:34 +02:00
Zeno Rogue
89585f004b fixed some guards (in progress) 2020-07-03 14:42:33 +02:00
Zeno Rogue
3f95a0fce8 11.3p 2020-06-06 19:19:31 +02:00
Zeno Rogue
b4b891a6dc arb:: counts as weirdhyperbolic 2020-06-03 11:45:18 +02:00
Zeno Rogue
ff893eb5f6 11.3o 2020-05-31 17:22:18 +02:00
Zeno Rogue
823eb8ad79 11.3n 2020-05-29 10:47:36 +02:00
Zeno Rogue
4958bc45d3 11.3m 2020-05-16 12:04:40 +02:00
Zeno Rogue
5ec85100e9
Merge branch 'master' into mymake 2020-05-15 12:14:04 +02:00
Zeno Rogue
daeff80ff5
Merge pull request #108 from Quuxplusone/ifdef
Move all defaulting-of-`CAP_FOO` to sysconfig.h
2020-05-15 11:32:38 +02:00
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