add falling_enemies type to game (these enemies can be picked up and thrown), and thread fallingEnemies through enemy.sml to set up scaffolding for them
This commit is contained in:
@@ -2,8 +2,16 @@ structure GameUpdate =
|
||||
struct
|
||||
fun update (game, input) =
|
||||
let
|
||||
val {player, walls, wallTree, platforms, platformTree, enemies, graph} =
|
||||
game
|
||||
val
|
||||
{ player
|
||||
, walls
|
||||
, wallTree
|
||||
, platforms
|
||||
, platformTree
|
||||
, enemies
|
||||
, graph
|
||||
, fallingEnemies
|
||||
} = game
|
||||
|
||||
val enemyTree = Enemy.generateTree enemies
|
||||
val player = Player.runPhysicsAndInput (game, input, enemyTree)
|
||||
@@ -11,7 +19,7 @@ struct
|
||||
val projectiles = #projectiles player
|
||||
val projectileTree = Projectile.generateTree projectiles
|
||||
|
||||
val enemies = Enemy.updateEnemyList
|
||||
val (enemies, newFallingEnemies) = Enemy.updateEnemyList
|
||||
( Vector.length enemies - 1
|
||||
, enemies
|
||||
, projectiles
|
||||
@@ -23,7 +31,10 @@ struct
|
||||
, player
|
||||
, graph
|
||||
, []
|
||||
, []
|
||||
)
|
||||
|
||||
val fallingEnemies = Vector.fromList newFallingEnemies
|
||||
in
|
||||
{ player = player
|
||||
, walls = walls
|
||||
@@ -32,6 +43,7 @@ struct
|
||||
, platformTree = platformTree
|
||||
, enemies = enemies
|
||||
, graph = graph
|
||||
, fallingEnemies = fallingEnemies
|
||||
}
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user