| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
* 2d/mouse.scm (mouse-move-hook, mouse-press-hook)
(mouse-click-hook): New hooks.
|
|
|
|
| |
* 2d/keyboard.scm (key-press-hook, key-release-hook): New hooks.
|
|
|
|
| |
* 2d/game.scm (handle-event): Fix bug.
|
|
|
|
|
|
| |
* 2d/repl/repl.scm (add-to-repl-mvar): New procedure.
(poll-interval): New variable.
(flush-repl): Schedule in paused-agenda.
|
|
|
|
|
| |
* 2d/game.scm (paused-agenda): New variable.
(tick): Tick paused-agenda.
|
|
|
|
|
|
|
|
|
| |
* 2d/game.scm (start-game-loop): Don't spawn REPL.
(update-and-render, tick): Don't run REPL.
(run-repl-thunk, run-repl): Move.
* 2d/repl/repl.scm: (run-repl-thunk, flush-repl): Add.
(flush-repl): Schedule REPL to be run within main loop.
|
| |
|
|
|
|
|
|
|
|
|
| |
* 2d/game.scm (accumulator): New parameter.
(draw-hook): Change to arity 2.
(current-fps, accumulate-fps!, game-fps): Delete.
(game-loop, update-and-render): Drop accumulator formal parameter.
* 2d/fps.scm: New module.
|
|
|
|
|
|
| |
* 2d/game.scm (handle-events, read-input): Rename it.
(event-handlers, register-event-handler, handle-event): Use a hash table
instead of an alist.
|
|
|
|
|
|
|
|
| |
* 2d/game.scm (%state): Replace with game-loop-status.
(game-loop-status): New parameter.
(run-game-loop): Set status to running.
(game-running?, game-paused?, pause-game, resume-game, quit-game): Use
parameter.
|
|
|
|
|
| |
* 2d/game.scm (run-game-loop): Compute tick-interval.
(update, update-and-render, tick): Use tick-interval parameter.
|
|
|
|
|
|
|
| |
* 2d/game.scm (run-game, run-game-loop): Rename and remove draw callback
parameter.
(draw-hook): New hook.
(draw): Run draw hook.
|
|
|
|
| |
* 2d/agenda.scm (make-time-segment, wait): Change docstrings.
|
|
|
|
| |
* 2d/agenda.scm (make-time-segment, wait): Use cut.
|
|
|
|
|
| |
* 2d/agenda.scm (update-agenda, tick-agenda!): Rename.
(clear-agenda, clear-agenda!): Rename.
|
|
|
|
| |
* 2d/agenda.scm: Export *global-agenda* and current-agenda.
|
|
|
|
|
|
|
|
| |
* 2d/agenda.scm (agenda-schedule, schedule): Rename.
(agenda-schedule-interval, schedule-interval): Rename.
(schedule-next, schedule-every): New procedures.
* 2d/sprite.scm: Use schedule-every.
* 2d/time.scm (time-every): Use schedule-interval.
|
|
|
|
|
|
| |
* 2d/agenda.scm (*current-agenda*, current-agenda): Rename and make
parameter.
(*global-agenda*, global-agenda): Rename it.
|
| |
|
|
|
|
|
| |
* 2d/signals.scm (signal-connections): Delete it.
(signal-inputs, signal-outputs): New procedures.
|
|
|
|
|
|
|
|
| |
* 2d/game.scm (game-draw): Add signal.
(run-game): Remove update callback.
(draw): Use alpha value.
(update): Remove call to obsolete update callback.
(update-and-render): Pass alpha value.
|
|
|
|
|
|
|
| |
* 2d/time.scm (time-interval): Rename to time-every.
(time-every): Use make-root-signal.
(time-each): New name for the old time-every.
(time-delay): Rewrite it.
|
|
|
|
|
| |
* 2d/keyboard.scm (key-last-down, key-last-up, key-down?)
(key-directions): Rewrite signals.
|
|
|
|
|
| |
* 2d/mouse.scm (mouse-x, mouse-y): New signals.
(mouse-position): Define in terms of signal-map.
|
|
|
|
|
| |
* 2d/window.scm (window-width, window-height): New signals.
(window-position): Define in terms of signal-map.
|
|
|
|
| |
* 2d/signals.scm: Remove duplicate export.
|
|
|
|
| |
* 2d/signals.scm (signal-do): Fix bug.
|
|
|
|
| |
* 2d/signals.scm (signal-fold): Reverse callback args.
|
|
|
|
| |
* 2d/signals.scm (signal-map): Fix bug.
|
|
|
|
| |
* 2d/signals.scm: Rewrite module.
|
|
|
|
| |
* 2d/signals.scm (signal-and, signal-or): Remove them.
|
|
|
|
| |
* 2d/signals.scm (signal-liftn): New procedure.
|
|
|
|
|
|
|
| |
* 2d/signals.scm (make-signal): Change parameter list.
* 2d/mouse.scm (mouse-position): Remove #:init keyword.
* 2d/time.scm (time-interval, time-delay): Remove #:init keyword.
* 2d/window.scm (window-size): Remove #:init keyword.
|
|
|
|
| |
* 2d/signals.scm (signal-do): New procedure.
|
|
|
|
| |
* 2d/window.scm: Open window on import.
|
|
|
|
| |
* 2d/signals.scm (signal-merge): Accept many signals.
|
|
|
|
| |
* 2d/signals.scm (signal-when, signal-unless): New procedures.
|
|
|
|
| |
* 2d/time.scm (time-delay): Set initial signal value.
|
|
|
|
| |
* 2d/signals.scm (signal-connect!): Use signal-receive!
|
|
|
|
| |
* 2d/math.scm (clamp): New procedure.
|
|
|
|
| |
* 2d/signals.scm (signal-count): Rewrite.
|
|
|
|
| |
* 2d/signals.scm (signal-constant): Rewrite.
|
|
|
|
| |
* 2d/time.scm (time-interval, time-every): Add signal parameter.
|
|
|
|
| |
* 2d/signals.scm (signal-fold): New procedure.
|
|
|
|
|
|
|
|
|
|
|
| |
* 2d/game.scm (register-event-handler): New procedure.
(mouse-*, key-*, window-*): Remove signals.
* 2d/window.scm (window-size): New signal.
* 2d/mouse.scm: New module.
* 2d/keyboard.scm: New module.
|
|
|
|
|
|
|
| |
* 2d/actions.scm: Delete it.
* 2d/observer.scm: Delete it.
* 2d/scene.scm: Delete it.
* 2d/stage.scm: Delete it.
|
|
|
|
| |
* 2d/window.scm (with-window): Use dynamic-wind.
|
|
|
|
|
| |
* 2d/game.scm (key-directions, key-wasd): New procedures.
(arrows, key-arrows): Renamed.
|
|
|
|
| |
* 2d/time.scm: New module.
|
| |
|