Commit Graph

365 Commits

Author SHA1 Message Date
Zeno Rogue 34dc8fcc6e various fixes related to product spaces, especially product+inverse 2020-10-06 21:11:27 +02:00
Zeno Rogue fb06570c83 fixed a bug with loading saves 2020-08-05 01:17:19 +02:00
Zeno Rogue a66136625d save/load arb geometry 2020-08-02 12:56:43 +02:00
Zeno Rogue 3505f17460 redone modecode 2020-08-02 12:55:37 +02:00
Zeno Rogue 5795e5447d fixed a crash on universal cover 2020-07-28 22:06:14 +02:00
Zeno Rogue 351eda2b5d generalized PSL to ~SL (discrepancies still appear) 2020-07-24 02:30:50 +02:00
Zeno Rogue e90e0f861e auto-reset variation to variation_for when setting geometry 2020-07-13 00:56:00 +02:00
Zeno Rogue 1f1e7d9bbf inverse tessellation operators 2020-07-12 21:39:34 +02:00
Zeno Rogue e7a4c645b8 auto-increase texture step in 2D ideal 2020-05-29 10:47:18 +02:00
Zeno Rogue 7e416eaef2 EX default_model() 2020-05-25 02:32:29 +02:00
Zeno Rogue 8641eafd96 xcode no_code listed explicitly if not assigned 2020-05-16 11:24:30 +02:00
Zeno Rogue 021dd34647 Merge branch 'master' of https://github.com/zenorogue/hyperrogue 2020-05-15 11:55:14 +02:00
Zeno Rogue 4a8e3285c7 fixed a potential buffer overflow in loadsave() 2020-05-15 11:52:51 +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 6f6586b3f2
Merge branch 'master' into hooks-naming 2020-04-19 13:39:07 +02:00
Zeno Rogue db4be83091 all save boxes are now named (fakeboxes start with @) 2020-04-17 15:04:27 +02:00
Zeno Rogue 85a404bfe8 CA awards Orb of Aether automatically 2020-04-12 20:38:17 +02: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 934e3d9a42 Consistently name every hookset with prefix `hooks_`. NFC.
I'm sure this causes massive merge-conflicts in the non-public code,
but I think it'd be a good idea, if only to avoid confusion between
e.g. `clearMemory` and the-variable-formerly-known-as `clearmemory`.
2020-04-12 10:49:32 -04:00
Zeno Rogue 50c6a4d366 added hooks_initialize 2020-04-11 00:42:53 +02:00
Zeno Rogue 721a4beddc auto-switch to pure 2020-04-11 00:42:41 +02:00
Zeno Rogue 6feec1307f brief fixup 2020-03-27 21:51:21 +01:00
Zeno Rogue 920f26e1e7 brief fixup 2020-03-27 21:49:57 +01:00
Zeno Rogue a331779e72 one more fixup 2020-03-27 20:37:43 +01:00
Zeno Rogue d21ffedcb5 added some comments to system.cpp; also fixed a bug with the three new orbs not being saved correctly in OSM 2020-03-27 20:21:08 +01:00
Zeno Rogue 67f64e2d91 load/save stuff is now in namespace scores 2020-03-27 20:05:58 +01:00
Zeno Rogue 63c9cc1060 removed tactic::trailer 2020-03-27 19:57:57 +01:00
Zeno Rogue 32baf01192 removed the variable 'showoff' 2020-03-27 19:53:59 +01:00
Zeno Rogue a2b7da728a unused variable 'gamecount' removed 2020-03-27 19:46:36 +01:00
Zeno Rogue c6f9b1b7e2 added some comments in system 2020-03-27 19:39:46 +01:00
Zeno Rogue 4d4c904d3b neon_mode is now an enum 2020-03-27 19:38:15 +01:00
Arthur O'Dwyer af69faa646 Fix a harmless misuse of `DEBBI`. 2020-03-23 14:39:30 -04:00
Arthur O'Dwyer a0da10b408 Remove extraneous semicolons to quiet pedantic GCC warnings. 2020-03-23 14:38:57 -04:00
Zeno Rogue 85e6be8cab do not reset whichShape to 0 in special geometries 2020-03-21 19:06:54 +01:00
Zeno Rogue 0d87481d29 fixed revolvers 2020-03-11 10:27:33 +01:00
Zeno Rogue ca7f0cb4c3 achievement_gain_once 2020-03-07 04:47:11 +01:00
Zeno Rogue d18a05558a Safety in Farlands return to Icy 2020-03-07 04:47:10 +01:00
Zeno Rogue e564622a48 rewritten undo: part 1 2020-03-07 04:47:10 +01:00
Zeno Rogue 6317101d66 Orb of Plague 2020-03-07 04:47:10 +01:00
Zeno Rogue 02017ef88b load/save boxes for the new features 2020-03-07 04:47:10 +01:00
Zeno Rogue 2ccb48f765 WFC can be experimented with 2020-03-07 04:47:10 +01:00
Zeno Rogue 9c25804a05 added dual geometry puzzle generator 2020-01-28 17:58:55 +01:00
Zeno Rogue 27e19ca5ca mapeditor:: canvas_default_wall can be set now 2020-01-28 17:58:55 +01:00
Zeno Rogue 5382038c4e field quotient discovery 2020-01-16 17:13:57 +01:00
Zeno Rogue 3330d6060b minor fixes to OINF 2019-12-27 23:00:38 +01:00
Zeno Rogue 17ffe53839 clearing:: clear memory on new game 2019-12-27 14:02:21 +01:00
Zeno Rogue 70910539b3 do not save arb tilings 2019-12-27 02:08:19 +01:00
Zeno Rogue 5940851f59 arb:: reset to pure 2019-12-27 01:52:28 +01:00
Zeno Rogue e9862831ca performing product on Catalan tilings no longer drops 'dual' 2019-12-27 01:52:14 +01:00
Zeno Rogue 6c61162392 merge 2019-12-26 22:40:41 +01:00
Zeno Rogue 4848cb1b87 show the big numbers in the Clearing 2019-12-25 21:57:25 +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 f772f9b7fd replaced 'archimedean' with 'arcm::in()' 2019-12-14 11:57:23 +01:00
Zeno Rogue 26fb19e7a8 subdivided game.cpp; split movepcto into separate functions 2019-12-08 20:07:02 +01:00
Zeno Rogue ddb5d07ff6 cleanup in Euclidean 2019-12-08 10:59:09 +01:00
Zeno Rogue be71cd0d97 RPM and OSM are no longer considered incompatible 2019-11-30 18:06:48 +01:00
Zeno Rogue d63b14da5c PIU now works in the underlying map -- underlying geometry only is too fragile 2019-11-30 18:06:47 +01:00
Zeno Rogue 1329ec6b04 setting Euclidean no longer sets bitruncated 2019-11-30 18:06:47 +01:00
Zeno Rogue 1cba452f07 rewritten the Euclidean geometry 2019-11-30 18:06:47 +01:00
Zeno Rogue a1fbfb2946 gp:: adjm to fix the confusion in quotient spaces 2019-11-30 18:05:23 +01:00
Zeno Rogue 7246605329 do not do walls if walls not implemented 2019-10-12 13:47:41 +02:00
Zeno Rogue 8ebeb60bcb increased default vid.texture_step in paracompact honeycombs 2019-10-12 13:13:09 +02:00
Zeno Rogue b5f6e6f3f5 inforder basics 2019-10-10 13:08:06 +02:00
Zeno Rogue d400bc845e selecting bounded geometry no longer disables racing 2019-10-06 12:13:30 +02:00
Zeno Rogue 3d1d799153 improved default model selection 2019-10-06 12:10:43 +02:00
Zeno Rogue 7ed8e16974 racing in bounded worlds 2019-09-28 14:18:58 +02:00
Zeno Rogue 77aa05c3f9 racing no longer disables S2xE 2019-09-27 18:19:16 +02:00
Zeno Rogue 1359dfcd62 setting Racing while in Solv no longer resets geometry 2019-09-27 18:04:49 +02:00
Zeno Rogue bfa29e6d47 improved some messages 2019-09-12 22:50:16 +02:00
Zeno Rogue 08fa984b5c fixed 'heptagonal mode' in the start menu 2019-09-12 22:50:16 +02:00
Zeno Rogue d5a99e67e0 more intuitive tiling selection 2019-09-12 22:50:16 +02:00
Zeno Rogue be17f575ca experimental maps are not saved in saveStats 2019-09-12 22:50:16 +02:00
Zeno Rogue 848eb8f48b export everything: modules compiled separately 2019-09-12 22:50:16 +02:00
Zeno Rogue 82f24b4b6c exporting necessary stuff all over (in progress) 2019-09-12 22:50:16 +02:00
Zeno Rogue 9647cbd47e added #include hyper.h to all cpp files 2019-09-12 22:50:16 +02:00
Zeno Rogue 98ddecc63e removed init.cpp 2019-09-12 22:50:16 +02:00
Zeno Rogue 4dc5ae455c fixed a crash when switching Archimedean modes 2019-09-12 22:50:15 +02:00
Zeno Rogue 8adaa7fe49 welcome messages for the new geometries 2019-09-12 22:50:15 +02:00
Zeno Rogue c766e27bf2 geodesic movement cannot be disabled in SL 2019-09-12 22:50:15 +02:00
Zeno Rogue 2e066c106c renamed gSL2 to gRotSpace 2019-09-12 22:50:15 +02:00
Zeno Rogue d046211a9c better flagging of geometries, and isometry spaces nicely selectable 2019-09-12 22:50:15 +02:00
Zeno Rogue 689020ee6d starting in Crossroads II now works in hybrid 2019-09-12 22:50:15 +02:00
Zeno Rogue a0140254c8 slr:: works with bitruncated tilings (Archimedean not tested) 2019-09-12 22:50:15 +02:00
Zeno Rogue 61ea588ffb shmup for product: player movement 2019-09-12 22:50:15 +02:00
Zeno Rogue d4ac431004 slr:: default texturestep 4 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 7aed1b8551 modecode for product geometries 2019-09-12 22:50:14 +02:00
Zeno Rogue 63bd06e75c product games not saved 2019-09-12 22:50:14 +02:00
Zeno Rogue 50fdc8324e modecode() returns modecode_t not int 2019-09-12 22:50:14 +02:00
Zeno Rogue ce36413968 product:: incompatible with Shmup -- disable other for now 2019-09-12 22:50:14 +02:00
Zeno Rogue 1a1725dec8 product:: selectable from menu 2019-09-12 22:50:14 +02:00
Zeno Rogue 96bf478482 renamed DIM to GDIM 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 ad03115097 further cleanup 2019-09-12 22:50:13 +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 c2d56fb9bc autohdr.h applied in more files 2019-09-12 22:50:12 +02:00
Zeno Rogue 8ac64fc2a0 nilv:: Nil shader, and improved geodesics 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 bbabd47ad0 solv:: fixmatrix 2019-09-12 22:50:10 +02:00
Zeno Rogue 598603c937 geodesics in Sol 2019-09-12 22:50:09 +02:00
Zeno Rogue cf496e8940 kite-and-dart tiling 2019-09-12 22:50:09 +02:00
Zeno Rogue 47fd094c6f binary4 (WIP) 2019-09-12 22:50:09 +02:00
Zeno Rogue 3db34f26ac fixed a bug with bad start in Euclidean Crossroads 2019-09-12 22:50:08 +02:00
Zeno Rogue 5d88c1706a unambiguous sword in non-{4,3,*} 3D geometreis 2019-09-12 22:50:08 +02:00
Zeno Rogue 3a4e84effe Orb of the Sword in non-shmup 3D geometries 2019-09-12 22:50:08 +02:00
Zeno Rogue d5d3d396b6 fixed a crash when using formula pattern in spherical geometry 2019-09-12 22:50:06 +02:00
Zeno Rogue 06301d73fc new memory handling 2019-09-12 22:50:05 +02:00
Zeno Rogue 5110a29d4d dual:: cshpos fixup to save all 2019-09-12 22:50:04 +02:00
Zeno Rogue a49de4530f dual:: added some missing gd->store's 2019-09-12 22:50:04 +02:00
Zeno Rogue 8d9a5da7c1 do not savestats in dualmode 2019-09-12 22:50:04 +02:00
Zeno Rogue 69e76b550c dual:: selectable from the menu 2019-09-12 22:50:03 +02:00
Zeno Rogue 8295251cdc multigame support, including dualmode 2019-09-12 22:50:03 +02:00
Zeno Rogue 13a044154b sword:: accurate sword angles 2019-09-12 22:50:03 +02:00
Zeno Rogue 2b1aebb9b4 chaosmode variants (CLI only for now) 2019-09-12 22:50:03 +02:00
Zeno Rogue b6e303ec7d MAJOR refactoring: all geometry-dependent data (tessf, geom3::, shapes, hpc) are now contained in a structure 2019-09-12 22:50:03 +02:00
Zeno Rogue ec621c64d2 11.0x 2019-09-12 22:50:01 +02:00
Zeno Rogue c4469d9185 selecting a (horo)cyclic/equidistant-based land in the Experiments in Geometry while in standard geometry works now 2019-09-12 22:50:01 +02:00
Zeno Rogue df3e21b310 debug cleanup 2019-09-12 22:50:00 +02:00
Zeno Rogue 1c4d86e0e9 3D graphics in 2D (first commit) 2019-09-12 22:43:01 +02:00
Zeno Rogue c8e950cd40 added some missing CAP_ and MAXMDIM guards 2019-09-12 22:43:01 +02:00
Zeno Rogue 64671ec83e no more createAlternateMap in quotient geometries 2019-09-12 22:43:01 +02:00
Zeno Rogue cffb895c72 fixed generation in spherical minefield 2019-09-12 22:42:59 +02:00
Zeno Rogue 14b32ced68 auto-charged teleport in bounded minefield 2019-09-12 22:42:59 +02:00
Zeno Rogue 039118425c 3D:: alternate minefield adjacency rule 2019-09-12 22:42:59 +02:00
Zeno Rogue 6b82757016 save Narcissist and Mirror Spirit kills 2019-09-12 22:42:59 +02:00
Zeno Rogue 57f2891826 bounded Minefield now works according to the standard Minesweeper rules 2019-09-12 22:42:58 +02:00
Zeno Rogue 5356eba11c Asteroids 2019-09-12 22:42:58 +02:00
Zeno Rogue 1521af65fe 3d:: fixed switching to mdPerspsective 2019-09-12 22:38:47 +02:00
Zeno Rogue 46ae64e945 3d:: native perspective is now pmodel == mdPerspective, and other models work too 2019-09-12 22:38:47 +02:00
Zeno Rogue d9b90d8a8e 3D:: two-player uses split screen 2019-09-12 22:38:45 +02:00
Zeno Rogue cb8e34204f two more Euclidean honeycombs; also split buildpolys into subfunctions 2019-09-12 22:38:43 +02:00
? fe174d8873 3D:: elliptic space 2019-09-12 22:38:40 +02:00
? 33d4854c14 3D:: 120-cell 2019-09-12 22:38:40 +02:00
? 7110be2032 3D:: cube tiling 2019-09-12 22:38:40 +02:00
? d08e58f404 3d:: 2D/3D is now selectable at runtime 2019-09-12 22:38:40 +02:00
? aa3e14549e tactic:: no createAlternateMap on start in binary 2019-09-12 22:38:39 +02:00
? b25730d5c9 geometry flags part 1 2019-09-12 22:38:39 +02:00
Zeno Rogue e36246e392 saveboxes added 2019-09-12 22:38:38 +02:00
Zeno Rogue 8225593756 racing:: not available in bounded words (disabled in menu, changing geometry disables racing 2019-04-29 17:19:05 +02:00
Zeno Rogue a6ffdc8676 racing:: failure now uses gamegen_failure flag -- no more game starting multiple times 2019-04-29 17:19:05 +02:00
Zeno Rogue 04f26cdf1d racing:: failure now uses gamegen_failure flag -- no more game starting multiple times 2019-04-29 17:19:05 +02:00
Zeno Rogue cd01e6bbf1 racing:: made the current version compile without CAP_RACING 2019-04-29 17:19:05 +02:00
Zeno Rogue 29c0b899dc racing:: track selection; can be now set as a special game mode 2019-04-29 17:19:05 +02:00
Zeno Rogue c67d7e06c6 racing:: remembering ghost, track selection (with times), completion percentage shown 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