mirror of
https://github.com/flynx/Course-JavaScript.git
synced 2025-10-29 02:50:09 +00:00
some refactoring...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
This commit is contained in:
parent
2ab556118f
commit
a76b97a271
@ -10,6 +10,7 @@
|
|||||||
|
|
||||||
</style>
|
</style>
|
||||||
<script>
|
<script>
|
||||||
|
//---------------------------------------------------------------------
|
||||||
|
|
||||||
// XXX automate clearing of handlers...
|
// XXX automate clearing of handlers...
|
||||||
function makeEvent(handler_attr){
|
function makeEvent(handler_attr){
|
||||||
@ -93,14 +94,10 @@ var Snake = {
|
|||||||
// head...
|
// head...
|
||||||
var direction = cell.direction
|
var direction = cell.direction
|
||||||
var next =
|
var next =
|
||||||
direction == 'n' ?
|
direction == 'n' ? (i < w ? l - w + i : i - w)
|
||||||
(i < w ? l - w + i : i - w)
|
: direction == 's' ? (i > (l-w) ? i - (l-w) : i + w)
|
||||||
: direction == 's' ?
|
: direction == 'e' ? ((i+1)%w == 0 ? i - (w-1) : i + 1)
|
||||||
(i > (l-w) ? i - (l-w) : i + w)
|
: direction == 'w' ? (i%w == 0 ? i + (w-1) : i - 1)
|
||||||
: direction == 'e' ?
|
|
||||||
((i+1)%w == 0 ? i - (w-1) : i + 1)
|
|
||||||
: direction == 'w' ?
|
|
||||||
(i%w == 0 ? i + (w-1) : i - 1)
|
|
||||||
: null
|
: null
|
||||||
|
|
||||||
if(next != null){
|
if(next != null){
|
||||||
@ -267,19 +264,23 @@ var Snake = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//---------------------------------------------------------------------
|
||||||
|
|
||||||
var HANDLER_SET = false
|
var HANDLER_SET = false
|
||||||
var KEY_CONFIG = {
|
var KEY_CONFIG = {
|
||||||
ArrowLeft: 'left',
|
ArrowLeft: ['left'],
|
||||||
ArrowRight: 'right',
|
ArrowRight: ['right'],
|
||||||
}
|
}
|
||||||
function kbHandler(event){
|
function kbHandler(event){
|
||||||
var action = KEY_CONFIG[event.key]
|
var action = KEY_CONFIG[event.key]
|
||||||
action
|
action
|
||||||
&& action in Snake
|
&& action in Snake
|
||||||
&& Snake[action]()
|
&& Snake[action[0]].apply(Snake, action.slice(1))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//---------------------------------------------------------------------
|
||||||
|
|
||||||
function setup(){
|
function setup(){
|
||||||
Snake
|
Snake
|
||||||
.setup('.snake')
|
.setup('.snake')
|
||||||
@ -309,6 +310,8 @@ function setup(){
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//---------------------------------------------------------------------
|
||||||
|
|
||||||
function test(game){
|
function test(game){
|
||||||
return Snake
|
return Snake
|
||||||
.setup(game || '.snake')
|
.setup(game || '.snake')
|
||||||
@ -327,6 +330,8 @@ function test(game){
|
|||||||
.start()
|
.start()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//---------------------------------------------------------------------
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<head> <title>Simple Snake</title> </head>
|
<head> <title>Simple Snake</title> </head>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user