flesh out protocol description

This commit is contained in:
Sam Caldwell 2015-10-20 11:36:37 -04:00
parent e2ffe9bef6
commit 89cff7adc8
1 changed files with 56 additions and 1 deletions

View File

@ -1 +1,56 @@
#lang prospect
#lang prospect
(require racket
"./geometry.rkt"
"./periodic_timer.rkt")
#|
Layers:
- External Events
* key press/release
- Ground
corresponds to computer itself - device drivers and applications
- Game
running application
per-game state, such as score and count-of-deaths
process which spawns levels
- Level
model of the game world
actors represent entities in the world, mostly
misc actors do physicsish things
title Jump Sequence
Player -> Physics: (jump 'player)
note right of Physics: Considers the request.
note right of Physics: Denied -- Player is not on a surface.
Player -> Physics: (jump 'player)
note right of Physics: Considers the request.
note right of Physics: Accepted.
note right of Physics: Updates velocity, position
Physics -> Subscribers: (vel 'player ...)
Physics -> Subscribers: (pos 'player ...)
title Display Control Updates
Physics -> DisplayCtl: (pos 'player ...)
note right of DisplayCtl: Compares player pos to level size
DisplayCtl -> Subscribers: (at-meta (at-meta (scroll-offset ...)))
|#