nick black
752c29e648
Tetris: fix line clearing of final column #421
2020-03-26 15:33:14 -04:00
nick black
e500d0f8f4
tetris: print user name above score #421
2020-03-26 00:49:32 -04:00
nick black
4f6275b738
tetris: tighten LockPiece() still further
2020-03-26 00:41:54 -04:00
nick black
e84b896835
tetris: tighten up LockPiece()
2020-03-26 00:38:41 -04:00
nick black
34e4a5dbb9
tetris: display score and level #421
2020-03-26 00:34:19 -04:00
nick black
4afa02a44f
Tetris: clear out lines #421
2020-03-26 00:10:22 -04:00
nick black
1cd9ec2b31
tetris: clear out lines #421
2020-03-25 23:23:02 -04:00
nick black
ee754ed241
Tetris: simplify MoveDown(), don't be stupid
2020-03-25 23:10:31 -04:00
nick black
fff9118e17
tetris: factor out LockPiece()
2020-03-25 23:03:56 -04:00
nick black
d120e74580
Tetris: end game at the correct failpoint #421
2020-03-25 22:28:36 -04:00
nick black
d491d532bb
Tetris: gradient stain on fixed pieces #421
2020-03-25 22:27:23 -04:00
nick black
5864b37d0a
Tetris: place new pieces on mults of 2 #421
2020-03-25 22:12:46 -04:00
nick black
b7c9746cf0
Tetris: always move in chunks of two columns #421
2020-03-25 22:09:56 -04:00
nick black
642741f2c9
Tetris: take upper halves into account for PieceStuck()
2020-03-25 22:05:29 -04:00
nick black
d5e0b24f01
Tetris: PieceStuck() learns of lower halves
2020-03-25 21:52:23 -04:00
nick black
25dd65a172
Tetris: render after creating a new piece
2020-03-25 21:44:53 -04:00
nick black
013e445209
add notcurses_multiselector(3) to notcurses(3)
2020-03-25 07:38:35 -04:00
Nick Black
f9c54761f5
Basic mandelbrot for n
ormal demo #145 ( #424 )
...
normal: working mandelbrot, very basic #145
2020-03-25 07:19:56 -04:00
Nick Black
de9158bd7b
More tetris work for book #421 ( #423 )
...
* tetris: use NES gravities
* tetris: use NES grav multiplier of 50ms
* tetris: implement move down #421
* README: mention notcurses-tetris #421
* tetris: use double box for boundary #421
* tetris: extract background.h
* tetris: break up into chunks suitable for book
* tetris: do the rotations
2020-03-25 04:06:38 -04:00
nick black
ae1421db15
ncvisual_render() API change/documentation #422
...
ncvisual_render() now returns the number of cells emitted
rather than just 0/-1. -1 is still returned on failure.
Rather than 0 for length meaning "all possible length", it
now means 0, and -1 means "all possible length". All demos,
tests, and PoCs have been updated. #422
2020-03-24 18:43:10 -04:00
Marek Habersack
73b13e0fd5
[C++] There can be only one stdplane
...
Fixes: https://github.com/dankamongmen/notcurses/issues/409
Standard planes can be duplicated but the copy must not be treated as a
standard plane. There can be only one :)
Make it so.
2020-03-24 16:33:58 -04:00
nick black
c43006c2bf
update symbol files for 1.2.4
2020-03-24 16:29:21 -04:00
nick black
7c6b655483
v1.2.4
2020-03-24 16:25:47 -04:00
nick black
4e7d918732
Merge branch 'master' of github.com:dankamongmen/notcurses
2020-03-24 01:17:28 -04:00
nick black
0432a8a444
poc/zalgo: center output
2020-03-24 01:17:15 -04:00
nick black
8113ce72c1
fix dumb error in ncplane_below() description
2020-03-23 12:46:35 -04:00
nick black
84ef40143e
tetris: eliminate compiler warning
2020-03-23 01:13:25 -04:00
Nick Black
2b7b384e91
Most of notcurses-tetris, mergedown fixes ( #420 )
...
* ncplane_mergedown() fix for small planes #417
* tetris game needed for the book
2020-03-23 01:12:09 -04:00
nick black
c3feca6ded
ncplane_polyfill: reject null glyph + test #418
2020-03-22 23:10:13 -04:00
nick black
3fff41ffa2
Doxygen: update INPUT for include hierarchy
2020-03-22 18:06:43 -04:00
Marek Habersack
ad93c03851
[C++] API sync
...
Added:
* Plane: mergedown (`ncplane_mergedown`)
2020-03-22 17:40:47 -04:00
Nick Black
52bdbc6724
ncplane_translate() accept NULL dest as standard plane #408 ( #411 )
...
* tetris man page
* tetris basic skeleton
* tetris: Ticker()
* README: fix up some obsolete terminology
* tetris: draw the game board
* tetris: add NewPiece()
* tetris: draw tetriminos
* tetris: check for stuck piece, move it down
* Accept NULL dst in ncplane_translate() #408
2020-03-22 17:33:08 -04:00
nick black
fbd222b04a
notcurses_init(): mention setlocale in error
...
If notcurses_init() fails due to a bad encoding, it's
probably because someone didn't call setlocale(3).
Make a suggestion in the error message. Resolves #414 .
2020-03-21 20:28:50 -04:00
nick black
060c0c2a47
README: WINDOW->plane in reel docs
2020-03-21 11:58:50 -04:00
nick black
7e71ad8e11
implement ncplane_mergedown() #361
2020-03-21 05:09:31 -04:00
nick black
38f4255dc0
Define ncplane_mergedown() #361
...
ncplane_mergedown() is similar to the "Merge down" operation
in the GIMP. It writes to the destination plane the result
of rendering the source and destination frames per se.
2020-03-21 05:09:31 -04:00
nick black
bb2c469168
Merge branch 'master' of github.com:dankamongmen/notcurses
2020-03-19 08:27:22 -04:00
nick black
12b601e02b
fallin': always push back NULLed out subwindows
...
I noticed while running benchmarks against ranges of widths that
we failed on certain widths. I traced this down to a repeatable
failure when run with the -c flag at the 104x52 resolution. At this
geometry and PRNG seed, we NULLed out the first subwindow of fallin',
but didn't recompress the window array. On the next loop we thus used
it again, and segfaulted out. This fixes that up. We now pass 100% of
the benchmarks, whereas we were failing about 3% before #407 .
2020-03-19 08:25:08 -04:00
nick black
6f9fdc115a
published next month! :D
2020-03-17 10:56:01 -04:00
nick black
bc3473da8a
demo: print unnecessary comma in JSON
2020-03-15 23:33:20 -04:00
Marek Habersack
f4b90a3587
Merge pull request #406 from dankamongmen/dankamongmen/ncpp
...
ncpp: stop() propagate out return value, public linkage
2020-03-15 20:55:31 +00:00
nick black
8312b88e3c
NotCurses::stop(): match original semantics
2020-03-15 01:21:55 -04:00
nick black
78fadafb8f
notcurses++ needs PUBLIC notcurses linkage
2020-03-15 01:19:47 -04:00
nick black
66bb614ab3
NotCurses::stop(): propogate out notcurses_stop() return value
2020-03-15 01:19:04 -04:00
Marek Habersack
3e78dd7d1f
[C++] API sync
...
New classes:
* MultiSelector (`ncmultiselector_*`)
Added:
* Direct: cursor_{enable,disable}
* Plane: high_gradient (`ncplane_highgradient`)
* Plane: high_gradient_sized (`ncplane_highgradient_sized`)
* Plane: rotate_cw (`ncplane_rotate_cw`)
* Plane: rotate_ccw (`ncplane_rotate_ccw`)
Updated:
* NotCurses: added all the margin initializers to the default options
2020-03-14 21:49:32 -04:00
nick black
ba90c70a47
ncplane_cursor_yx() takes const first argument
2020-03-14 21:15:37 -04:00
nick black
bdd7f9422a
python: add ncdirect_cursor_*()
2020-03-14 17:52:34 -04:00
nick black
db30bcf0d2
document new ncdirect functions for cursor #402
2020-03-13 09:56:46 -04:00
nick black
1b4333861a
add ncdirect_{en,dis}able_cursor() #402
2020-03-13 09:52:00 -04:00
nick black
d5d827f38e
adjust ncplane_yx() for margins
2020-03-13 06:53:52 -04:00