Zeno Rogue
1f31c2cd7a
more safe clipping in Sol
2020-04-29 15:19:25 +02:00
Zeno Rogue
6f6586b3f2
Merge branch 'master' into hooks-naming
2020-04-19 13:39:07 +02:00
Zeno Rogue
c24658bf38
more drawing tool improvements; no crash drawing tool; restart editors will ask for confirmation
2020-04-17 20:34:49 +02:00
Zeno Rogue
ad233a1e19
drawing tool
2020-04-17 20:04:33 +02:00
Zeno Rogue
14cb26b986
fixed the Handsome Gardener's Flower
2020-04-17 15:03:23 +02:00
Zeno Rogue
c0115e60e9
added some more debug lines to DF_GRAPH
2020-04-17 15:03:05 +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
Zeno Rogue
7f08ca01a2
fat edges are now printable
2020-04-15 16:21:30 +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
e4a8b73819
nisot:: nicer precision setting
2020-04-11 15:08:24 +02:00
Zeno Rogue
c0e0e1562f
export wrap_drawfullmap
2020-04-11 00:41:57 +02:00
Zeno Rogue
43fd94bed6
fixed flashes disappearing
2020-04-06 09:48:34 +02:00
Zeno Rogue
7fc0d5b051
less awkward map position in portrait
2020-04-06 09:13:20 +02:00
Zeno Rogue
cfbd5f830c
fixed some warnings and errors with ll to int assignment
2020-04-06 09:13:20 +02:00
Zeno Rogue
6817ed42ad
allowIncreasedSight now returns true after gameover
2020-04-02 12:56:26 +02:00
Arthur O'Dwyer
5cc8a41beb
Turn C-style casts into reinterpret_casts for clarity. NFC.
2020-03-23 14:48:41 -04:00
Arthur O'Dwyer
13bf666e29
Lambdas can't have default arguments until C++14.
...
Arguably this is a reason to upgrade from C++11 to C++14,
or to give up completely on `-pedantic`, but I think it's
easy enough to eliminate these few nits.
2020-03-23 14:38:57 -04:00
Arthur O'Dwyer
a0da10b408
Remove extraneous semicolons to quiet pedantic GCC warnings.
2020-03-23 14:38:57 -04:00
Zeno Rogue
8aaeb4ea69
sight range changing no longer considered cheating in arb
2020-03-22 12:02:58 +01:00
Zeno Rogue
c3fdc34f7c
fixed CAP_RAY guards
2020-03-21 19:05:17 +01:00
Zeno Rogue
5bd291784b
kite:: sidewalls were not arranged correctly
2020-03-21 09:28:16 +01:00
Zeno Rogue
f0e132f57a
replaced parameters of geo_dist in precise_mouseover to fix incorrect working sometimes
2020-03-07 04:47:11 +01:00
Zeno Rogue
1a7ba1b556
fixed/changed some descriptions
2020-03-07 04:47:11 +01:00
Zeno Rogue
5e48af2bb3
world turtles
2020-03-07 04:47:10 +01:00
Zeno Rogue
2585affdf3
factored out orb_auxiliary_color
2020-03-07 04:47:10 +01:00
Zeno Rogue
688fc50036
Orb of Plague improved
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
45bc731a5b
colored Frog Jump Legs
2020-03-07 04:47:10 +01:00
Zeno Rogue
a12bdf5d40
3D models for Frogs and Pikes
2020-03-07 04:47:10 +01:00
Zeno Rogue
0de0714ba5
colors for Orb of Chaos and Orb of Plague
2020-03-07 04:47:10 +01:00
Zeno Rogue
b34df21540
Eclectic in 3D
2020-03-07 04:47:10 +01:00
Zeno Rogue
d725c2b17c
Gold Ball looks like ball
2020-03-07 04:47:10 +01:00
Zeno Rogue
8fb66450dd
Rusalka/Topielec graphics
2020-03-07 04:47:10 +01:00
Zeno Rogue
5622901b5a
consistent coloring of Frog-orbs and Impact
2020-03-07 04:47:10 +01:00
Zeno Rogue
513750a028
vector graphics of Frogs and Pikes
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
5707fac1a7
new ring shape: shFrogRing
2020-03-07 04:47:09 +01:00
Zeno Rogue
8005b39f6f
ASCII/3D mode, also reacts to neon settings
2020-01-30 17:45:05 +01:00
Zeno Rogue
081fee1907
fixed lmouseover computation destroying dual geometry
2020-01-29 18:21:12 +01:00
Zeno Rogue
f05fa60400
added MAXMDIM guards
2020-01-29 18:18:51 +01:00
Zeno Rogue
be90304f12
better display of trapdoors in Zebra 3D
2020-01-28 17:58:55 +01:00
Zeno Rogue
b931e5e333
fixed z-fighting when drawing Onyx in 3D
2020-01-28 17:58:55 +01:00
Zeno Rogue
9f947c70a7
fat edges in linepatterns in 3D
2020-01-28 17:58:55 +01:00
Zeno Rogue
4b7739e80d
fixed a freeze when drawing offscreen grid lines
2020-01-19 11:49:35 +01:00
Zeno Rogue
2271a67506
removed the MAX_EDGE limit
2020-01-18 16:03:32 +01:00
Zeno Rogue
61261a5acc
removed debug
2020-01-02 17:20:37 +01:00
Zeno Rogue
f1dd349cee
static_bubbles (always false)
2020-01-02 16:54:28 +01:00
Zeno Rogue
7b6ffd689c
export drawPlayer
2020-01-02 16:54:16 +01:00
Zeno Rogue
a37457ead9
precise_width for nicer long lines
2020-01-02 16:51:32 +01:00
Zeno Rogue
3e33aadba4
gridline now automatically improves the precision when edges are long
2019-12-27 12:42:16 +01:00
Zeno Rogue
aeac634abd
downseek works in Euclidean now
2019-12-27 11:14:25 +01:00
Zeno Rogue
c247936e34
removed the functions queuechr -- use queuestr now
2019-12-26 23:38:28 +01:00
Zeno Rogue
c4528bf954
bubbles react to neon
2019-12-26 23:32:27 +01:00
Zeno Rogue
6c61162392
merge
2019-12-26 22:40:41 +01:00
Zeno Rogue
2f9419615d
fixed turn-based multiplayer
2019-12-26 10:29:41 +01:00
Zeno Rogue
b53b98f0d5
fixed a bug in drawBubble
2019-12-26 09:40:28 +01:00
Zeno Rogue
dd95d8070c
better bubbles
2019-12-25 23:10:36 +01:00
Zeno Rogue
e8ec32d078
text bubbles
2019-12-25 22:01:57 +01:00
Zeno Rogue
4848cb1b87
show the big numbers in the Clearing
2019-12-25 21:57:25 +01:00
Zeno Rogue
769982040d
renamed solnihv:: to sn:: and solnih to sn::in()
2019-12-14 12:28:45 +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
0a9ec78c18
remplace euclid6, euclid4, 'euclid && \!archimedean && \!penrose' with standard_tiling(), euc::in(dimension, s7)
2019-12-14 11:57:23 +01:00
Zeno Rogue
e5a2116958
fixed hunting flashes
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
8386a14d6a
'circles' are now drawn on all copies in quotient geometries
2019-12-06 14:03:02 +01:00
Zeno Rogue
415922ff1b
fixed precise_mouseover for hybrid (something weird there?) and confusing spaces
2019-12-06 13:05:54 +01:00
Zeno Rogue
ac9d18adfb
simplified the drawing algo for product
2019-12-06 11:47:26 +01:00
Zeno Rogue
99ab57086b
in_wallopt(): auto in racing
2019-12-06 11:45:19 +01:00
Zeno Rogue
1cba452f07
rewritten the Euclidean geometry
2019-11-30 18:06:47 +01:00
Zeno Rogue
622b683e33
drawcell parameter is now cell, not cellwalker (need to check half-elliptic)
2019-11-30 18:04:54 +01:00
Zeno Rogue
5a2a893254
fixup to 982f01e6e
: removed debug
2019-11-23 20:41:56 +01:00
Zeno Rogue
982f01e6e5
tracking the specific copy of the player in confusing geometries
2019-11-23 19:05:24 +01:00
Zeno Rogue
3139feb50c
animateMovement: correct even if moved to the same cell
2019-11-22 19:39:50 +01:00
Zeno Rogue
939c979f19
movement arrows drawn correctly only in the target direction even if multiple
2019-11-22 19:00:11 +01:00
Zeno Rogue
bf584b5429
more movei
2019-11-22 18:48:51 +01:00
Zeno Rogue
a1c7b8db3d
animateMov YA fixup
2019-11-22 16:46:37 +01:00
Zeno Rogue
441b6180db
removed old animateAttack
2019-11-22 16:46:25 +01:00
Zeno Rogue
d05ec40014
fixup animateMovement
2019-11-22 16:37:32 +01:00
Zeno Rogue
3078451283
used movei in movement animations; also replaced animateReplacement with indAnimateMovement
2019-11-22 16:32:05 +01:00
Zeno Rogue
2458ec715d
removed calc_relative_matrix with direction hint; used adj in more places
2019-11-22 14:34:56 +01:00
Zeno Rogue
8fad2bc9d5
replaced compute_relamatrix and some cases of calc_relativematrix with adj
2019-11-22 14:25:13 +01:00
Zeno Rogue
928e369977
ray:: stereo modes
2019-11-16 03:04:01 +01:00
Zeno Rogue
012d833f50
removed the tohex parameter
2019-11-14 19:33:55 +01:00
Zeno Rogue
3eee611eca
nisot::local_perspective moved to display_data
2019-11-14 17:20:55 +01:00
Zeno Rogue
aeaaf7586a
refactored map functions: ddspin, iddspin, spacedist, spin_angle, virtualRebase[simple], adj
2019-11-14 16:51:50 +01:00
Zeno Rogue
9f6f3232b5
the orientation after recentering is now always 'player facing upwards'
2019-11-14 00:43:36 +01:00
Zeno Rogue
109dd9823c
simplified ddspin/iddspin/cellgfxdist, replaced cellrelmatrix with adj/iadj
2019-11-14 00:27:59 +01:00
Zeno Rogue
ef9e2236ba
viewctr is no more... major reduction of redundancy/complexity
2019-11-14 00:26:50 +01:00
Zeno Rogue
add037d4e8
asonov:: changed direct checking of gArnoldCat to asonov::in()
2019-11-08 15:34:51 +01:00
Zeno Rogue
d199411248
new tiling: Arnold's cat
2019-11-08 15:01:03 +01:00
Zeno Rogue
a0edba1922
removed outlines from falling stuff
2019-11-03 14:19:56 +01:00
Zeno Rogue
43bf7c5cfe
fixed MAXMDIM guards
2019-11-03 14:19:11 +01:00
Zeno Rogue
bd7805e68d
ray:: namespace and basic configurator
2019-10-25 14:50:48 +02:00
Zeno Rogue
85a08d205d
refactored celldraw
2019-10-25 12:44:41 +02:00
Zeno Rogue
4d5fb13b32
removed BUILDZEBRA from drawcell
2019-10-25 09:22:19 +02:00
Zeno Rogue
fd8f363b8f
nil:: quotient spaces
2019-10-25 08:52:18 +02:00
Zeno Rogue
8337a83568
raycasting::: ray_comparison_mode
2019-10-23 23:10:50 +02:00
Zeno Rogue
be9cea07b3
raytracing:: better Solv, and Nil
2019-10-23 18:52:57 +02:00
Zeno Rogue
3943b1937b
raycaster for Solv
2019-10-22 22:42:48 +02:00
Zeno Rogue
ed5a86a1b8
raycasting:: Euclidean
2019-10-22 10:52:17 +02:00
Zeno Rogue
edbbb51135
basic raycaster implementation
2019-10-22 00:37:57 +02:00
Zeno Rogue
be3d755d09
exports for raycasting
2019-10-22 00:37:24 +02:00
Zeno Rogue
a6c01a2e96
animallegs cleanup NFC
2019-10-21 22:42:50 +02:00
Zeno Rogue
c527d4e613
ODS in hyperbolic
2019-10-21 22:42:27 +02:00
Zeno Rogue
09fcd14aa7
redesigned shader system
2019-10-21 22:34:20 +02:00
Zeno Rogue
4fc3c73855
fixed the racing marker in Crystal344
2019-10-12 14:40:33 +02:00
Zeno Rogue
94857cad86
fixed an issue in optimizeview for crystal334
2019-10-12 13:14:38 +02:00
Zeno Rogue
adee8aa699
wall optimization option (-wallopt): do not draw things behind walls
2019-10-12 11:21:00 +02:00
Zeno Rogue
07abd6384a
option 'permaside' (-pside) to permanently move the model to the left side
2019-10-07 00:08:37 +02:00
Zeno Rogue
5664e51bde
fixup
2019-10-06 15:02:47 +02:00
Zeno Rogue
216adba04c
in disk models of 3D, walls are still drawn if the adjacent cell is a wall but not drawn
2019-10-06 14:29:51 +02:00
Zeno Rogue
8674b3bc23
in randomwalk/total chaos modes, special graphics are no longer used for Warped Coast
2019-10-05 18:55:11 +02:00
Zeno Rogue
282ca884c4
less aggressive backwall optimization in Solv
2019-10-05 18:55:11 +02:00
Zeno Rogue
08108c342c
aura in the fisheye projection, also minor optimization
2019-10-05 12:33:00 +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
255186840f
ternary tiling
2019-09-30 23:36:15 +02:00
Zeno Rogue
b1273dd704
do not show Reptile Tail
2019-09-28 14:18:23 +02:00
Zeno Rogue
8d9511ae79
racing forces standard_centering in quotient/nil/hybrid geometries
2019-09-27 18:04:04 +02:00
Zeno Rogue
d1bf6fef5e
replaced product::product_sphere()
2019-09-12 22:50:16 +02:00
Zeno Rogue
0785d970f1
hybrid::fixed precise_mouseover
2019-09-12 22:50:16 +02:00
Zeno Rogue
3e6e1cd6ed
hybrid:: fixed queuecircleat
2019-09-12 22:50:16 +02:00
Zeno Rogue
f8963a1c75
rots:: show the underlying geometry
2019-09-12 22:50:16 +02:00
Zeno Rogue
8f8fb8a217
replaced hooks_startmenu and hooks_mainmenu with a general hooks_display_dialog
2019-09-12 22:50:16 +02:00
Zeno Rogue
f934943732
changed some shmup:: to multi::
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
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
f7c4d102df
slr:: movement animation (not rotation nor attack animation though)
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
a0140254c8
slr:: works with bitruncated tilings (Archimedean not tested)
2019-09-12 22:50:15 +02:00
Zeno Rogue
86967c1ee0
fixed the humanoid legs in product
2019-09-12 22:50:15 +02:00
Zeno Rogue
54b12a3c5e
fixed legs in product
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
ce46243b55
get_shiftview_of used gpush instead of rgpush; fixed wallradar
2019-09-12 22:50:15 +02:00
Zeno Rogue
a3da1d327d
disabled wall gridlines in 3D geometries
2019-09-12 22:50:15 +02:00
Zeno Rogue
50052f27f5
pointing-to-directions now checks for the cell which is the most towards the given direction
2019-09-12 22:50:15 +02:00
Zeno Rogue
96d7496043
refactored all the operations on View
2019-09-12 22:50:15 +02:00
Zeno Rogue
fd42b45fce
sl2:: 3d-models
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
0ab4a30406
product:: backwall optimization
2019-09-12 22:50:15 +02:00
Zeno Rogue
3aefce498c
product:: clipping fixup
2019-09-12 22:50:15 +02:00
Zeno Rogue
87ec57f974
clipping fixup
2019-09-12 22:50:15 +02:00
Zeno Rogue
9de77a2280
just in case, remove invalid points from radar
2019-09-12 22:50:15 +02:00
Zeno Rogue
b97666980e
fixed a bug with radarpoints obscuring screen due to NaNs
2019-09-12 22:50:15 +02:00
Zeno Rogue
21a38293d0
monster facing in product
2019-09-12 22:50:15 +02:00
Zeno Rogue
597140e28d
product:: wallradar and TPP
2019-09-12 22:50:15 +02:00
Zeno Rogue
47823ef0fb
cview() called outside of draw -- this way it works with product
2019-09-12 22:50:15 +02:00
Zeno Rogue
201098efe9
convenience functions zforward_dir and zpush0
2019-09-12 22:50:15 +02:00
Zeno Rogue
38ee044e70
product:: do not show marker under player
2019-09-12 22:50:14 +02:00
Zeno Rogue
b480286aa9
product:: move other face_the_player stuff
2019-09-12 22:50:14 +02:00
Zeno Rogue
4fd8a18e09
product:: fixed radar
2019-09-12 22:50:14 +02:00
Zeno Rogue
9c7c60dcfa
product: Orb of the Sword
2019-09-12 22:50:14 +02:00
Zeno Rogue
872abace91
product:: nice ivies
2019-09-12 22:50:14 +02:00
Zeno Rogue
4ba654600f
fixup to targetting
2019-09-12 22:50:14 +02:00
Zeno Rogue
2267355daa
product:: precise_mouseover fixed
2019-09-12 22:50:14 +02:00
Zeno Rogue
b0f954f422
product:: animations fixed
2019-09-12 22:50:14 +02:00
Zeno Rogue
890f23c00c
product:: darkval
2019-09-12 22:50:13 +02:00
Zeno Rogue
aaadf953ea
product:: item placement
2019-09-12 22:50:13 +02:00
Zeno Rogue
a2919f5a9c
product:: works for bitruncated tilings
2019-09-12 22:50:13 +02:00
Zeno Rogue
fb0f5872c8
3d models in product space
2019-09-12 22:50:13 +02:00
Zeno Rogue
00f4f4fca5
fully turnable product spaces
2019-09-12 22:50:13 +02:00
Zeno Rogue
6c19c6eadf
viewcenter() in product (fix for product)
2019-09-12 22:50:13 +02:00
Zeno Rogue
95da7ff09e
using viewcenter() consistently
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
4f88a7c727
disabled clipping test in mdPerspective in sol
2019-09-12 22:50:13 +02:00
Zeno Rogue
a1faa299df
nisot:: face_the_player implemented
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
609d1b91d3
further cleanup
2019-09-12 22:50:13 +02:00
Zeno Rogue
4ec7652861
cleanup mapeditor
2019-09-12 22:50:12 +02:00
Zeno Rogue
5ea055b39e
split namespace conformal into models and history
2019-09-12 22:50:12 +02:00
Zeno Rogue
19a01caf55
moved ctof to pattern2
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
c2d56fb9bc
autohdr.h applied in more files
2019-09-12 22:50:12 +02:00
Zeno Rogue
24a2e6178a
unused function displaynum removed
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
650e5a5c7f
fixed the 'targeted cell' in Sol/Nil
2019-09-12 22:50:12 +02:00
Zeno Rogue
2fbca25361
disabled heptamarkers blocking the view in 3D
2019-09-12 22:50:12 +02:00
Zeno Rogue
ad4c219002
improved Red Rock and other heights display in 3D
2019-09-12 22:50:12 +02:00
Zeno Rogue
32bf6e959e
nilv:: darkval
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
9350053c49
renamed mdSolPerspective to mdGeodesic
2019-09-12 22:50:11 +02:00
Zeno Rogue
4f27b12ca2
nilv:: preliminary implementation
2019-09-12 22:50:11 +02:00
Zeno Rogue
b6c2457a13
racing::standard_centering auto-disabled in Solv
2019-09-12 22:50:11 +02:00
Zeno Rogue
b97326cfa8
inscreenrange in sol now just returns gmatrix count
2019-09-12 22:50:11 +02:00
Zeno Rogue
e7cf9692d9
solv:: third person perspective works now
2019-09-12 22:50:11 +02:00
Zeno Rogue
e8edff6ef7
solv:: increased guaranteed drawing (without clipping) range
2019-09-12 22:50:11 +02:00
Zeno Rogue
01647a34cf
Yendor marker displays an approximate if celldistance returns DISTANCE_UNKNOWN
2019-09-12 22:50:11 +02:00