1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2024-11-16 02:04:48 +00:00
Commit Graph

705 Commits

Author SHA1 Message Date
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
Zeno Rogue
e4bcae6ae6 dialog::dialogcolor instead of 0xC0C0C0 2018-09-05 15:18:40 +02:00
Zeno Rogue
35353fe70e faster graphics with MINIMIZE_GL_CALLS 2018-09-04 23:27:27 +02:00
Zeno Rogue
5680ef3788 color_t used for outline 2018-09-04 21:43:43 +02:00
Zeno Rogue
1ab460ffb1 type color_t should now be consistently used for colors; reimplemented drawqueue in OO fashion 2018-09-04 19:53:42 +02:00
Zeno Rogue
4c01859192 struct archimedean_tiling exported in hyper.h 2018-09-03 16:32:34 +02:00
Zeno Rogue
59ff4c2266 depth inversion in rug (used in pentagonal exploration) 2018-09-03 16:32:11 +02:00
Zeno Rogue
b72259cc8e hyperweb: pathdist, cpdist, mpdist should be signed (unsigned frozen some geometries) 2018-09-02 15:08:51 +02:00
Zeno Rogue
8d806182d8 operators in hyper.h are inline 2018-09-01 13:50:56 +02:00
Zeno Rogue
fbca62fbec 10.4t 2018-08-31 19:20:53 +02:00
Zeno Rogue
a7f1e560c5 subcodes can be (de)selected in the pattern selection 2018-08-30 19:14:04 +02:00
Zeno Rogue
30a7248bf7 space message no longer always appears in shmup 2018-08-30 18:18:54 +02:00
Zeno Rogue
b2fd52eae5 fixed Orb of the Sword in shmup 2018-08-30 18:11:51 +02:00
Zeno Rogue
218709b899 Archimedean menu now displays 'chessboard', 'three colors' and 'football' colorings when available 2018-08-30 16:44:17 +02:00
Zeno Rogue
80e0ad5cd0 fixed some lands in Archimedean dual 2018-08-30 16:10:49 +02:00
Zeno Rogue
76c303f80a improved valence computation 2018-08-30 16:10:49 +02:00
Zeno Rogue
a04eef75a9 cth to handle heptspin/cellwalker translations in a nice way 2018-08-30 16:10:49 +02:00
Zeno Rogue
829850a701 dual tilings 2018-08-30 02:11:43 +02:00
Zeno Rogue
d95fc4b8d4 CHANGED_VARIATION now considers 'pure' to be the default variation of the binary and Archimedean tilings 2018-08-29 21:19:52 +02:00
Zeno Rogue
015e69cf30 simplified the scaling scode 2018-08-28 19:05:57 +02:00
Zeno Rogue
6de0f0a8aa instead of nonbitrunc, gp::on and irr::on, there is one variable, variation 2018-08-28 17:17:34 +02:00
Zeno Rogue
1af2c04407 enum class used for PPR 2018-08-28 14:27:23 +02:00
Zeno Rogue
f009e80689 crash fixed again 2018-08-28 13:47:51 +02:00
Zeno Rogue
25c09154dc fixed a crash when drawing inventory items while drawcell is also NULL; priority functions now use PPR_DEFAULT not -1; priority is passed as PPR not int 2018-08-28 13:45:11 +02:00
Zeno Rogue
c17efce3b5 PAT_TYPES now separate from PAT_NONE; PAT_* constants now use enum 2018-08-28 04:05:32 +02:00
Zeno Rogue
ff84f63abd Fixed mapediting floorshapes. Also works nicely for all geometries now. Enum used for shapegroups. 2018-08-27 19:27:35 +02:00
Zeno Rogue
aafa5c3157 10.4s 2018-08-24 23:54:32 +02:00
Zeno Rogue
8cc1b364d1 10.4r 2018-08-24 21:46:52 +02:00
Zeno Rogue
350ccd5b76 10.4q 2018-08-22 23:22:33 +02:00
Zeno Rogue
7df3a2471f fixed to compile in older compilers 2018-08-22 11:52:35 +02:00
Zeno Rogue
bb93bf9150 fixed uninitialized variable warning 2018-08-22 09:52:24 +02:00
Zeno Rogue
96d33046f2 removed from xpush0 and xspinpush0 2018-08-22 00:10:56 +02:00
Zeno Rogue
56c102de94 tailored allocation, and increased MAX_EDGE to 14 2018-08-22 00:00:59 +02:00
Zeno Rogue
cd91148459 arcm:: all patterns work 2018-08-20 15:24:44 +02:00
Zeno Rogue
ad8ef53d84 arcm:: correct Warped *Coast* generation (at least in some) 2018-08-20 12:06:19 +02:00
Zeno Rogue
625144195c major cleanup of texture remapping 2018-08-20 02:04:49 +02:00
Zeno Rogue
4d31e5a544 renamed 'syntetic' to 'archimedean' (enums/files/marcos/namespaces) 2018-08-19 23:06:32 +02:00
Zeno Rogue
453c06f9f9 functions with rotation parameters in S84-degree system have been removed or replaced in radian versions 2018-08-19 15:52:39 +02:00
Zeno Rogue
7bae01c168 synt:: replaced the combinatorial building process with floating-point-based one for hyperbolic geometry too 2018-08-19 00:27:20 +02:00
Zeno Rogue
99cad10617 svg::render now accepts a function to draw something else 2018-08-18 17:44:35 +02:00
Zeno Rogue
c6496de645 increased MAX_EDGE to 12 (still have to cut memory for more normal geometries 2018-08-18 17:40:54 +02:00
Zeno Rogue
a92cc33426 removed 'stdeuclid' and using 'masterless' since it was too similar to 'stdeuc' 2018-08-18 17:35:39 +02:00
Zeno Rogue
682f804576 major rewrite: unified the common parts of heptagon and cell via struct connection<T> and struct walker<T> 2018-08-18 00:46:45 +02:00
Zeno Rogue
a5a3cf1c87 floorshape gpside bound is MAX_EDGE not 8 2018-08-17 21:44:03 +02:00
Zeno Rogue
03f32c4f76 syntetic is weirdhyperbolic 2018-08-17 21:43:51 +02:00
Zeno Rogue
f60df73004 added missing declarations to hyper.h 2018-08-17 16:53:57 +02:00
Zeno Rogue
9faa285814 New file geometry2.cpp, with moved ggmatrix, relative_matrix, virtualRebase, and new get_corner_position family. Refactored in floorpatterns, textures, and grid to use get_corner_position family. 2018-08-17 16:47:06 +02:00
Zeno Rogue
749ad03138 syntetic tilings (WIP) 2018-08-17 13:29:00 +02:00
Zeno Rogue
eb57d160d0 binary_tiling_width parameter 2018-08-14 10:18:18 +02:00
Zeno Rogue
dac4f6fc75 texture:: vid.stretch parameter applied correctly 2018-08-14 09:15:17 +02:00
Zeno Rogue
4f3cc3783a binary tiling 2018-08-09 19:28:53 +02:00
Zeno Rogue
3b50632217 10.4p 2018-08-09 19:25:44 +02:00
Zeno Rogue
253c2d8b9b bitruncated irregular tilings 2018-08-05 05:07:34 +02:00
Zeno Rogue
bbebb55bd9 virtualRebase for hyperpoints (not transmatrices) 2018-08-04 22:36:08 +02:00
Zeno Rogue
7c16a9a32a texture aura option 2018-08-03 10:47:20 +02:00
Zeno Rogue
bd59b4e23a fixed singletype texture patterns 2018-08-02 22:25:08 +02:00
Zeno Rogue
6b4ed57152 fixed the orb drawings 2018-08-01 15:03:48 +02:00
Zeno Rogue
508cecb3b3 the cost of leaving Land of Power now happens before collecting items 2018-08-01 14:04:47 +02:00
Zeno Rogue
a50169e3d3 fixed the lines in the svg screenshots 2018-08-01 11:25:07 +02:00
Zeno Rogue
1b44899624 line quality option 2018-08-01 11:07:22 +02:00
Zeno Rogue
1e15992a22 added dialog::extra_options, and extra options in number dialogs now use this feature 2018-08-01 03:59:20 +02:00
Zeno Rogue
d005e549be 10.4o 2018-07-30 17:52:31 +02:00
Zeno Rogue
e27cd9b654 stretch factor in cylindrical equidistant and cylindrical equi-area models 2018-07-30 17:44:11 +02:00
Zeno Rogue
c252f1f09c 10.4n 2018-07-30 10:08:46 +02:00
Zeno Rogue
b3d074161e killing a tortoise with a saved baby now kills the baby too 2018-07-30 09:51:57 +02:00
Zeno Rogue
c70db33417 improved mobile compass 2018-07-23 16:17:49 +02:00
Zeno Rogue
3c6e3008eb hypot, asinh, and acosh are assumed to be in :: when NO_STD_HYPOT is specified 2018-07-23 16:17:49 +02:00
Zeno Rogue
6c0a052470 device orientation-based scrolling on mobiles 2018-07-23 16:17:49 +02:00
Zeno Rogue
1c8aa41965 NO_STD_HYPOT to prevent compilation errors when there is no std::hypot 2018-07-23 16:17:49 +02:00
Zeno Rogue
b502b7025d improvements to the mobile compass: can be used in modes other than MOVE (long click to switch mode to MOVE anyway); better arrow scaling 2018-07-22 15:54:44 +02:00
Zeno Rogue
5b41f5d157 highlight buttons on overview/PTM screens; improved zoom feature; fixed a bug with zoom spilling to the inventory screen 2018-07-22 12:54:05 +02:00
Zeno Rogue
4d2f79ba95 rewritten the system to display 3D. This fixes the spherical display not working in stereo mode, and is more clean. 2018-07-22 00:39:57 +02:00
Zeno Rogue
304e48d4b4 arg::cheat() is now inline 2018-07-21 18:03:53 +02:00
Zeno Rogue
190fa3ea1d irr:: horocycles 2018-07-21 17:46:14 +02:00
Zeno Rogue
f7e5f470dc irr:: celldist and (circular, not yet horocyclic) celldistAlt 2018-07-20 02:58:47 +02:00
Zeno Rogue
262d6f2a92 mode changes moved to config.cpp 2018-07-20 00:07:30 +02:00
Zeno Rogue
9d682aee45 moved more commandline options to their modules 2018-07-20 00:04:23 +02:00
Zeno Rogue
30cb9158cb moved svg and PNG screenshot to a new file screenshots.cpp; moved some commandline arguments from commandline.cpp to their respective modules 2018-07-19 23:46:58 +02:00
Arthur O'Dwyer
fbc7cd3212 Fix -Wempty-body warnings on GCC. 2018-07-17 16:53:46 -07:00
Zeno Rogue
566c466b66 loading/saving irregular maps to config and log (and recreate automatically)H 2018-07-17 14:28:49 +02:00
Zeno Rogue
9fc4e5524f irr:: ignore achievements/leaderboards; rewritten the modecode/finalAchievement code a bit 2018-07-17 14:18:41 +02:00
Zeno Rogue
f597e6bfd7 choose irregular from the Goldberg menu 2018-07-17 02:29:18 +02:00
Zeno Rogue
4d61f2169e irr:: Orb of the Sword and Kraken. 2018-07-16 21:41:59 +02:00
Zeno Rogue
9d2b145123 removed unused 2018-07-16 20:06:35 +02:00
Zeno Rogue
2b1d189074 geometry improvements 2018-07-16 20:06:21 +02:00
Zeno Rogue
c8c1e3a346 irregular grids 2018-07-16 20:05:23 +02:00
Zeno Rogue
4320119d02 calc_relative_matrix now accepts hyperpoint as the direction hint 2018-07-16 20:02:33 +02:00
Zeno Rogue
cedd78b3e7 10.4m 2018-07-16 19:54:31 +02:00
Zeno Rogue
a91195bda1 bugfix: Raging Bull / Orb of the Bull / Orb of Horns worked correctly only on hexagons and heptagonsm 2018-07-10 21:51:28 +02:00
Zeno Rogue
6c02c9879a gp:: drawrec(boundary) removed, no longer needed 2018-07-10 18:14:49 +02:00
Zeno Rogue
f94c85a4fa gp:: distance calculation 2018-07-10 18:03:41 +02:00
Zeno Rogue
d986ed7617 gp:: more concentrated tree 2018-07-10 18:01:42 +02:00
Zeno Rogue
ef182b225e all hr functions/variables used in rogueviz now listed in hyper.h 2018-07-09 21:02:23 +02:00
Zeno Rogue
6e4e9e0a46 SVG links no longer use an additional field in polytodraw -- they are a new type of polyunion now 2018-07-09 20:40:05 +02:00
Zeno Rogue
f721c243d2 removed DOSHMUP 2018-07-09 20:38:20 +02:00
Zeno Rogue
6303b8033b rogueviz:: help done via hooks 2018-07-09 20:09:56 +02:00
Zeno Rogue
3a8293df27 rogueviz:: tutorial, start/main menu, and welcome message done as hooks 2018-07-09 19:55:56 +02:00
Zeno Rogue
d523ceabfd rogueviz::shmup:: all references to rogueviz in shmup replaced with handlers 2018-07-09 19:32:34 +02:00
Zeno Rogue
508c63d731 calls to rogueviz::mark and rogueviz::fixparam from HR main are now replaced by hooks 2018-07-09 18:59:12 +02:00
Zeno Rogue
4d1e641663 part now works on unsigned col 2018-07-09 18:12:23 +02:00
Zeno Rogue
770dd20613 shift+f2 to shift+f4 can now disable HUD, FPS, and the map 2018-07-09 18:10:28 +02:00
Zeno Rogue
92f6521e42 arghex uses strtoll and returns unsigned 2018-07-09 18:07:47 +02:00
Zeno Rogue
27e0431e4e 10.4l 2018-07-08 14:34:05 +02:00
Zeno Rogue
837ce1d58a 10.4k 2018-07-07 11:15:57 +02:00
Zeno Rogue
98ea11de86 fixed the warnings about comparing int and bool 2018-07-07 11:05:48 +02:00
Zeno Rogue
45ddd6303e added a virtual destructor to supersaver to silence a warning 2018-07-03 12:00:02 +02:00
Zeno Rogue
e3d406c8dd 10.4j 2018-07-03 04:23:23 +02:00
Arthur O'Dwyer
1a93fbcd45 Stop using the deprecated std::random_shuffle, for the benefit of MSVC.
And generalize `hrandom_shuffle` to take an arbitrary `Iter`,
so that passing `vec.begin()` will work even with MSVC's
debug iterators. (Passing `&vec[0]` or `vec.data()` would work
either way, but I'd worry that someone would forget to do that
conscientiously every time.)
2018-06-29 14:20:03 -07:00
Zeno Rogue
0faccacaf6 10.4i 2018-06-29 12:30:56 +02:00
Zeno Rogue
9e44c593a0 10.4h 2018-06-28 15:08:38 +02:00
Zeno Rogue
cf8dffd6b8 fixed bugs with manual celllisters 2018-06-28 13:35:03 +02:00
Zeno Rogue
d11044a80a refactoring: sval/aitmp is no more, celllister(manual) used instead 2018-06-28 12:59:35 +02:00
Zeno Rogue
440940a945 10.4g 2018-06-24 01:23:06 +02:00
Zeno Rogue
f0e07c4b15 10.4f 2018-06-22 20:28:41 +02:00
Zeno Rogue
63869c6d33 renamed the size function to isize 2018-06-22 14:47:24 +02:00
Zeno Rogue
888d9ad3a7 made Xprintf inline to prevent double definition when linking HyperRogue with extra code 2018-06-22 02:01:31 +02:00
Zeno Rogue
da60a2f336 added some std features used in RogueViz 2018-06-22 02:00:26 +02:00
Zeno Rogue
8f8a259992 new quotient geometries 2018-06-22 01:48:46 +02:00
Zeno Rogue
09c2a2096b 10.4d 2018-06-18 17:54:38 +02:00
Zeno Rogue
25d972d144 also using other functions from cmath 2018-06-18 03:53:39 +02:00
Zeno Rogue
6d93ff4ab2 using std::abs 2018-06-18 03:43:23 +02:00
Zeno Rogue
d3200253db replacing with an explicit list 2018-06-17 18:32:06 +02:00
Zeno Rogue
b6f47dd907
Merge branch 'master' into makefile-fixes 2018-06-17 18:22:20 +02:00
Zeno Rogue
35301f0a68 movement animations now work in quotient geometries 2018-06-17 17:51:26 +02:00
Zeno Rogue
e743e18156 10.4c 2018-06-17 12:02:06 +02:00
Arthur O'Dwyer
db3e5d1009 Minor fixes for Mac and MinGW.
Eliminate a format-string warning by using less template magic:
https://stackoverflow.com/questions/12573968/how-to-use-gccs-printf-format-attribute-with-c11-variadic-templates

Fix one `%Ld` in `rogueviz.cpp` that should have been `%lld`.

Rename `savepng.c` into `savepng.cpp` so that we don't have to care about
the system's C compiler; it builds fine using the same C++ options as
HyperRogue itself.

Figure out how to get `-DCAP_PNG` and `-DCAP_ROGUEVIZ` working on Mac,
and document them.
Assume that roughly the same things should also work on MinGW.

Consistency on `STDSIZE`, even though it doesn't suffice for C++17 conformance.
It *almost* suffices; the one place where Clang still complains even with
`-std=c++17 -DSTDSIZE -Wno-sign-compare` is here:

    ./fieldpattern.cpp:757:51: error: non-constant-expression cannot be narrowed from type 'unsigned long' to 'int' in initializer list
          [-Wc++11-narrowing]
          ex.primes.emplace_back(primeinfo{nextprime, size(fp.matrices) / S7, (bool) fp.wsquare});
                                                      ^~~~~~~~~~~~~~~~~~~~~~

So, we fix that up too, in this patch.
2018-06-16 23:20:50 -07:00
Zeno Rogue
8cacb3c687 10.4b 2018-06-13 01:04:45 +02:00
Zeno Rogue
3881a7dd97 more cleanup with uniformizing the keys for 'back' and 'help' 2018-06-13 00:00:01 +02:00
Zeno Rogue
44affc3e9d resolved conflicts introduced by merging zenorogue/hyperrogue#21 2018-06-12 23:28:06 +02:00
Zeno Rogue
50eaba3efd changes from zenorogue/hyperrogue#27 2018-06-12 22:40:06 +02:00
Zeno Rogue
c5468db000 fixed some issues with adjacency taken into account incorrectly with Hedgehogs/Flailguards/Pikemen and Warp/halfvines 2018-06-12 16:05:39 +02:00
Zeno Rogue
7d04f92b55 added the Banach-Tarski animation to RogueViz 2018-06-11 02:24:10 +02:00
Zeno Rogue
4c619e60dd moved all the HyperRogue stuff except RogueViz to namespace 'hr' -- useful when using hr as a library 2018-06-11 01:58:31 +02:00
Zeno Rogue
c2e3ed54f0 cpp files no longer include other cpp files 2018-06-11 01:12:18 +02:00
Zeno Rogue
98246d3066 more cleanup in parameters, restartGame cleanup 2018-06-11 00:58:38 +02:00
Zeno Rogue
b294ec288d gp:: used 'char' which failed on Android where 'char' is unsigned. Fixed. Also improved Xprintf 2018-05-27 01:07:44 +02:00
Zeno Rogue
9fb73c79bb fixes to daily leaderboards 2018-05-27 01:06:12 +02:00
Zeno Rogue
6394fa4649 rewritten hyperpoint initializer in C++11 2018-05-26 01:11:50 +02:00
Zeno Rogue
aafe464bc6 added hooks_initgame, hooks_drawcell allows replacement 2018-05-26 01:11:19 +02:00
Zeno Rogue
5cd3ccabb8 refactored handle_event out of mainloopiter 2018-05-26 01:10:23 +02:00
Zeno Rogue
fc964ec7b2 simplified hyperpoint.cpp a bit 2018-05-20 15:30:43 +02:00
Zeno Rogue
9286134502 prevent_spawn_treasure in daily 2018-05-20 15:16:21 +02:00
Zeno Rogue
530c689c98 RogueViz fixes 2018-05-18 17:34:12 +02:00
Zeno Rogue
7e0a78f7bb some work on daily 2018-05-15 23:26:04 +02:00
Zeno Rogue
9b55240d1e leaderboards rewrite 2018-05-15 23:23:12 +02:00
Zeno Rogue
666ddb007e MAJOR REWRITE of floor patterns 2018-05-07 20:13:56 +02:00
Zeno Rogue
d0dc017ce3 fixed disabling CAP_RUG and CAP_TOUR 2018-05-07 20:09:58 +02:00
Zeno Rogue
1c07230f88 on-demand building of plainshapes 2018-05-04 12:20:50 +02:00
Zeno Rogue
c721851db1 general non-special-floor cleanup; standard and full floors are now perfect in gp 2018-05-04 02:46:44 +02:00
Zeno Rogue
a72dca5bc9 more exports 2018-05-04 02:40:46 +02:00
Zeno Rogue
47f0cc968f one_and_half flag 2018-05-01 19:34:57 +02:00
Zeno Rogue
5a9bc6c014 gSmallElliptic geometry 2018-05-01 19:34:09 +02:00
Zeno Rogue
460cda4d3e export XLATN 2018-05-01 00:22:58 +02:00
Zeno Rogue
67ad5f2f4b preparing for daily 2018-05-01 00:21:18 +02:00
Zeno Rogue
70bfe718ef map no longer disappears suddenly and irreparably if you scroll into the invisible region 2018-04-23 13:20:36 +02:00
Zeno Rogue
017d14e862 fix to last commit 2018-04-23 12:53:49 +02:00
Zeno Rogue
39916901ee improved square model in non-hyperbolic geometries 2018-04-23 12:50:51 +02:00
Zeno Rogue
2e2bb03edd tour:: better explained mode changes 2018-04-22 11:10:19 +02:00
Zeno Rogue
fea7392b01 export added 2018-04-21 17:57:42 +02:00
Zeno Rogue
ad93e77bcc canvas_invisible option 2018-04-21 17:57:30 +02:00
Zeno Rogue
edf4dd42cc fixed relative gmatrix computation in gp and line animation 2018-04-21 14:01:54 +02:00
Zeno Rogue
abbf536466 missing export for the debug commit 2018-04-21 12:17:33 +02:00
Zeno Rogue
5a3114d279 rogueviz:: made it compile with the changes elsewhere 2018-04-21 12:17:22 +02:00
Zeno Rogue
90cc9e1b49 conformal:: resizing the window works now 2018-04-21 12:14:25 +02:00
Zeno Rogue
2eaff9ac46 conformal:: more precise line animation 2018-04-21 12:12:52 +02:00
Zeno Rogue
f1bcd91de5 fisheye model 2018-04-18 20:52:17 +02:00
Zeno Rogue
d9381c7284 Clearing in bounded geometries 2018-04-14 10:24:02 +02:00
Zeno Rogue
e494eb0020 Fractal landscapes fixed in Goldberg heptagonal geometries 2018-04-13 13:19:45 +02:00
Zeno Rogue
210f9e80c7 More detailed land validity reporting 2018-04-13 13:08:41 +02:00
Zeno Rogue
854c1dd3d2 improved the 'full game' in weird CR4 2018-04-11 23:37:28 +02:00
Zeno Rogue
9d91390677 tactic:: removed lasttactic in favor of specialland. No more treasures on Crossroads in equid lands. Fixed warped walls and CR4 in a4. 2018-04-11 17:44:46 +02:00
Zeno Rogue
1f6ee5a408 ... but only increased 2018-04-11 15:49:49 +02:00
Zeno Rogue
848a135135 cleaner sightrange 2018-04-11 13:16:40 +02:00
Zeno Rogue
fa86a88ea3 gp:: removed the unused version of be_in_triangle 2018-04-11 00:55:05 +02:00
Zeno Rogue
ebda963d68 removed no longer productive 'overgenerate', improved the down/up limits of sightrange_bonus 2018-04-10 20:25:56 +02:00
Zeno Rogue
e41bc0b3b9 linepatterns:: works with gp, uses computed constants rather than hardcoded ones, extra horocycle linepattern, Goldberg pattern added 2018-04-10 17:57:33 +02:00
Zeno Rogue
9fd8713cbc gp:: correct long-distances in all Goldberg hyperbolic tilings 2018-04-10 17:06:04 +02:00
Zeno Rogue
90ff8c49dc marked land quality in gp, fixed some bugs 2018-04-10 08:05:35 +02:00
Zeno Rogue
e318a8e04a gp:: texture:: menu added 2018-04-10 05:12:40 +02:00
Zeno Rogue
033c626dfc restartGame, wrong mode, and resetModes now use constants instead of magic char names 2018-04-09 18:05:23 +02:00
Zeno Rogue
830785990c renamed whirl to goldberg 2018-04-09 17:40:12 +02:00
Zeno Rogue
63f50a1136 whirl:: fix ggshmup and calc_relative_matrix (also seems to fix nonbitrunc in general) 2018-04-06 23:20:04 +02:00
Zeno Rogue
90d4f0d613 whirl:: celldist and celldistAlt now work 2018-04-06 22:22:33 +02:00
Zeno Rogue
66a2f41cd6 more exports in hyper.h 2018-04-06 00:31:25 +02:00
Zeno Rogue
cf6bd4ee4a whirl:: more floor patterns working 2018-04-04 13:50:21 +02:00
Zeno Rogue
22a92059b6 whirl 2018-04-03 23:39:18 +02:00
Zeno Rogue
229f717678 split sight/game/generation range; bonuses instead of absolute values 2018-04-03 23:34:47 +02:00
Zeno Rogue
6399ef8180 exporting more in hyper.h 2018-03-30 00:20:50 +02:00
Zeno Rogue
7c84280b73 four new models, Mercator improved 2018-03-26 19:06:47 +02:00
Zeno Rogue
9af2566e5f lower halfplane model added 2018-03-25 15:27:42 +02:00
Zeno Rogue
a10491f3d6 improved the automatic rotation 2018-03-25 15:07:11 +02:00
Zeno Rogue
14c67bef0b cleanup of conformal/history menu 2018-03-25 14:04:40 +02:00
Zeno Rogue
2fb0469c3e fix last commit 2018-03-25 14:03:41 +02:00
Zeno Rogue
864cc38974 Added surfaces of constant negative curvature (surface.cpp) 2018-03-24 17:21:25 +01:00
Zeno Rogue
e24ae3f717 shmup replaced with random special mode in start menu; use current settings in the start menu 2018-03-24 16:00:13 +01:00
Zeno Rogue
e86f3be0b6 more functions exported 2018-03-24 15:18:53 +01:00
Zeno Rogue
39e77cee9f rug exports more to hyper.h; alt makes rotation slower 2018-03-24 15:17:17 +01:00
Zeno Rogue
d3c9bfdd92 improved the quality of 3D models from conformal menu 2018-03-24 15:15:30 +01:00
Zeno Rogue
74cc23f1c2 hemisphere model 2018-03-24 13:26:16 +01:00
Zeno Rogue
ac37b6df99 more elegant cellwalkers 2018-03-24 12:59:01 +01:00
Zeno Rogue
2c09c5ee56 structurized textures.cpp 2018-03-17 21:12:46 +01:00
Zeno Rogue
7ab6cb3c8b disabled game playing if 'renderonce' is on; in Android LR, clicking gives the menu instead of doing something else 2018-03-02 13:05:31 +01:00
Zeno Rogue
e45fb6bb20 added dragon dismounting easier 2018-02-27 23:43:21 +01:00
Zeno Rogue
c035888b67 [cont] rug ODS fixes 2018-02-27 19:34:29 +01:00
Zeno Rogue
97aa318f79 force_sphere_outline, fixed sphere outline in SVG 2018-02-26 13:17:06 +01:00
Zeno Rogue
9a1093fc6c cleanup: help. Also rug help displayed when rug is on 2018-02-26 13:15:33 +01:00
Zeno Rogue
283c6bba39 cleanup: arguments 2018-02-26 13:14:20 +01:00
Zeno Rogue
082bd44c2a fixed zoom while editing texture 2018-02-20 22:12:31 +01:00
Zeno Rogue
babb8fbde4 removed the EUCSCALE parameter for consistency 2018-02-20 11:15:08 +01:00
Zeno Rogue
c8d655184b when loading textures in the texture mode, you can now tune individual triangles 2018-02-13 23:25:44 +01:00
Zeno Rogue
bb5ac04875 more fixes to Emscripten CLI 2018-02-12 13:12:08 +01:00
Zeno Rogue
be06bd31ce Implemented the shmup versions of Ruined City and Jelly Kingdom. 2018-02-12 12:48:31 +01:00
Zeno Rogue
cab8a0a38f Works online now! 2018-02-11 19:08:17 +01:00
Zeno Rogue
d01d772669 more changes to make it work on iOS 2018-02-11 02:19:49 +01:00
Zeno Rogue
90d477d3dc CAP_BITFIELD can be disabled -- this helps with Emscripten 2018-02-10 18:21:46 +01:00
Zeno Rogue
1391a7fe4d more shader cleanup 2018-02-10 18:21:19 +01:00
Zeno Rogue
120797d7ce uniformizing vertex attribute arrays 2018-02-09 01:46:14 +01:00
Zeno Rogue
b693c3ca58 fixed a bug with cleaning quotient spaces 2018-02-08 22:27:48 +01:00
Zeno Rogue
2a59ff7ab2 CAP_TOUR guards added, more exported in hyper.h, general cleanup 2018-02-08 22:27:12 +01:00
Zeno Rogue
8f1c75404d getOrientation in headers/fake 2018-02-03 20:04:47 +01:00
Zeno Rogue
dcc3e11287 renderbuffer should work without OpenGL 2018-02-03 13:50:47 +01:00
Zeno Rogue
b3f047ea6a reworked 3D vision 2018-02-03 13:41:49 +01:00
Zeno Rogue
8ce3e6f703 refactored texture mapping -- can change the texture precision when already active now 2018-02-01 13:45:08 +01:00
Zeno Rogue
c2c9099ce8 exported more rug functions 2018-02-01 13:43:39 +01:00
Zeno Rogue
8e8ece7162 refactored drawing to a texture; HQ shots can now be saved using OpenGL 2018-02-01 13:42:47 +01:00
Zeno Rogue
22d3d2590f some work on the savemem feature 2018-01-26 01:45:49 +01:00
Zeno Rogue
2f9e5186f6 BARLEV may be predefined 2018-01-25 23:52:57 +01:00
Zeno Rogue
8713d34d19 'remove faraway cells from the memory' option 2018-01-25 19:49:19 +01:00
Zeno Rogue
3a52193426 external additions can wrap drawthemap 2018-01-25 17:22:04 +01:00
Zeno Rogue
ed82d5bae9 using arrays for items and kills 2018-01-25 17:20:41 +01:00
Zeno Rogue
65cac5073f missing add from extra commandline options 2018-01-25 17:20:13 +01:00
Zeno Rogue
5bd024dba3 attack animations 2018-01-25 17:19:50 +01:00
Zeno Rogue
7859455bfb added some declarations to hyper.h 2018-01-14 21:21:32 +01:00
Zeno Rogue
3095afc94b cellid / fixed some situations when the same seed did not reproduce the same game / fixed a bug with multi::cpid overflow / golems no longer consider Orbs of Safety safe 2018-01-13 19:23:02 +01:00
Zeno Rogue
51652304ad Crossroads IV in alternate hyperbolic geometries 2018-01-08 23:11:29 +01:00
Zeno Rogue
5bf6d54c7d changed chamfered to bitruncated 2018-01-06 22:34:03 +01:00
Zeno Rogue
f281123266 fixed screens not disappearing when restarting 2018-01-06 22:05:40 +01:00
Zeno Rogue
040470205f implemented new achievements 2018-01-04 22:02:31 +01:00
Zeno Rogue
71897fc7f9 missing commit 2018-01-04 21:24:13 +01:00
Zeno Rogue
495dbba809 renamed 'truncated' to 'chamfered' 2018-01-04 18:39:04 +01:00
Zeno Rogue
3412a50b3d line/circle tools added to the texture editor; grid color changing in texture editor 2018-01-04 12:25:02 +01:00
Zeno Rogue
a8460b1ac7 Theming Ruins. Implemented Orb of Slaying (also cleaning up some kill/stun/Vizier code). 2018-01-03 21:49:14 +01:00
Zeno Rogue
5f1b1a54eb Invinc monsters implemented 2018-01-02 11:15:42 +01:00
Zeno Rogue
9d1fe00d8f Orb of Magnetism. Orb of Phasing. Also fixed Aether in Whirlpool. 2017-12-30 23:47:10 +01:00
Zeno Rogue
154bd54607 fixed/extended the mouse zoom etc. 2017-12-30 17:00:35 +01:00
Zeno Rogue
d3e789bc93 Magnetic and Switch V1 2017-12-30 15:12:15 +01:00
Zeno Rogue
5f5c86e529 new land: Docks 2017-12-29 01:10:47 +01:00
Zeno Rogue
11569c693d big change: more configuration for the torus (and also Klein bottle) 2017-12-28 16:46:10 +01:00
Zeno Rogue
e0ec332602 implemented FOV measure, unified old rug::scale with modeldistance 2017-12-27 18:53:00 +01:00
Zeno Rogue
59b51e8a05 mouseh fix 2017-12-27 14:09:39 +01:00
Zeno Rogue
dbcd71cb45 used enum for geometry classes; moved from hyper.h to init.cpp 2017-12-27 11:57:30 +01:00
Zeno Rogue
ae70662495 moving the screen center 2017-12-25 10:26:50 +01:00
Zeno Rogue
8c7abbc33e list of colors and brush sizes 2017-12-22 22:34:01 +01:00
Zeno Rogue
dd108cde6b symmetric texture editing 2017-12-22 21:57:55 +01:00
Zeno Rogue
4bee0c85a7 undo in texture editor 2017-12-22 20:59:04 +01:00
Zeno Rogue
d5bca73757 added Domination to Snake Nest; set some data 2017-12-21 16:35:19 +01:00
Zeno Rogue
f7b5a1b44f save full texture images 2017-12-21 14:05:07 +01:00
Zeno Rogue
57a5337b9f CAP_TEXTURE can be off; right-size textures loaded without scaling; SPF_FULLSYM 2017-12-21 11:36:07 +01:00
Zeno Rogue
d0a925a8ca translating textures to a more general type 2017-12-19 16:40:24 +01:00
Zeno Rogue
49bd1a0b2b a menu for changing pattern geometries 2017-12-19 14:35:34 +01:00
Zeno Rogue
168d35cb17 drawing textures without OpenGL 2017-12-19 00:39:11 +01:00
Zeno Rogue
e5c22834fe texture editing improved 2017-12-18 23:42:08 +01:00
Zeno Rogue
3e0f751a2c texture editing 2017-12-18 00:24:56 +01:00
Zeno Rogue
bf24550e82 magic adjustment of textures 2017-12-16 09:03:50 +01:00
Zeno Rogue
e2080cd91e more intuitive file dialogs; texture config saving 2017-12-14 12:10:40 +01:00
Zeno Rogue
36fe8dd1d0 better cellcounting 2017-12-14 02:50:52 +01:00
Zeno Rogue
653069094b more work on the patterns 2017-12-09 20:02:56 +01:00
Zeno Rogue
9933f373d2 improvements to patterns; codenumbers also display directions 2017-12-09 08:06:41 +01:00
Zeno Rogue
4fa764c175 filedialog and infix moved from mapeditor.cpp to dialogs.cpp 2017-12-09 04:01:56 +01:00
Zeno Rogue
635d1f911c Refactoring: moved all the remaining pattern code from mapeditor to pattern2 2017-12-09 03:48:30 +01:00
Zeno Rogue
ecf631976f texture mode -- first commit 2017-12-09 02:20:10 +01:00
Zeno Rogue
87b6b8b372 Snakes Nest v1 2017-12-05 19:43:45 +01:00
Zeno Rogue
9b2f9ecc14 Pattern-related functions moved from cells and mapeditor to pattern2s; three-color patterns 2017-12-05 16:19:22 +01:00
Zeno Rogue
3e6baf4e21 improvements to start menu: can be called from main menu; resets all special modes; selecting shmup allows you to configure keys immediately 2017-12-03 19:51:45 +01:00
Zeno Rogue
2cec36efa9 bugfix to exports 2017-12-03 18:44:29 +01:00
Zeno Rogue
8638081319 missing exports 2017-12-03 18:25:31 +01:00
Zeno Rogue
c5324ff2f5 more pattern editing for g46 2017-12-03 12:59:57 +01:00
Zeno Rogue
d6376e1ddf emeraldpattern on a46; fixed/improved darkening when sidedialog not available; pattern dialogs are now sidedialogs 2017-12-03 11:48:02 +01:00
Zeno Rogue
5defb06d81 improved headers / conditional compilation 2017-12-02 00:31:36 +01:00
Zeno Rogue
d8a647d972 brightness behind the sphere configurable; works a bit better with transparency now 2017-11-13 12:23:42 +01:00
Zeno Rogue
d8a279b15d fixed issues with falling animations; fall for a longer time in non-hyperbolic 2017-11-13 11:57:05 +01:00
Zeno Rogue
a19d4d568b refactored mdEqui 2017-11-13 11:26:21 +01:00