]> gitweb.factorcode.org Git - factor.git/blob - extra/jamshred/game/game.factor
Merge branch 'master' of git://factorcode.org/git/factor into experimental
[factor.git] / extra / jamshred / game / game.factor
1 ! Copyright (C) 2007 Alex Chapman
2 ! See http://factorcode.org/license.txt for BSD license.
3 USING: accessors kernel opengl arrays sequences jamshred.log jamshred.player jamshred.tunnel math.vectors ;
4 IN: jamshred.game
5
6 TUPLE: jamshred tunnel players running quit ;
7
8 : <jamshred> ( -- jamshred )
9     <random-tunnel> "Player 1" <player> 2dup swap play-in-tunnel 1array f f
10     jamshred boa ;
11
12 : jamshred-player ( jamshred -- player )
13     ! TODO: support more than one player
14     players>> first ;
15
16 : jamshred-update ( jamshred -- )
17     dup running>> [
18         jamshred-player update-player
19     ] [ drop ] if ;
20
21 : toggle-running ( jamshred -- )
22     dup running>> [
23         f >>running drop
24     ] [
25         [ jamshred-player moved ]
26         [ t >>running drop ] bi
27     ] if ;
28
29 : mouse-moved ( x-radians y-radians jamshred -- )
30     jamshred-player -rot turn-player ;
31