end
redef class Dino
+ # Notice: This method only implements the basic drawing feature, it is
+ # redefed in `fancy_dino`. If the `fancy_dino` module is imported by
+ # user methods, this code is dead and will never be executed.
redef fun draw( display, imgs, turn )
do
var spos = pos.to_screen( display )
end
end
+redef class Bush
+ redef fun draw( display, imgs, turn )
+ do
+ var spos = pos.to_screen( display )
+ var img = imgs.bush_img
+ display.blit_centered( img, spos.x.to_i, spos.y.to_i )
+ end
+end
+
class ImageSet
var javelin_img : Image
var dino_img : Image
var dino_dead_img : Image
+ var dino_shadow : Image
var caveman_img : Image
var caveman_afraid_img : Image
var caveman_ready_img : Image
var blood_img : Image
+ var bush_img : Image
var life_img : Image
var life_empty_img : Image
var start_over_img : Image
fun start_over_path : String is abstract
+ var numbers: NumberImages
+
init ( app : App )
do
javelin_img = app.load_image( "images/javelin.png" )
dino_img = app.load_image( "images/dino.png" )
dino_dead_img = app.load_image( "images/dino_dead.png" )
+ dino_shadow = app.load_image( "images/shadow.png" )
caveman_img = app.load_image( "images/caveman.png" )
caveman_afraid_img = app.load_image( "images/caveman_afraid.png" )
caveman_ready_img = app.load_image( "images/caveman_ready.png" )
blood_img = app.load_image( "images/blood.png" )
+ bush_img = app.load_image( "images/bush.png" )
life_img = app.load_image( "images/life.png" )
life_empty_img = app.load_image( "images/life_empty.png" )
you_won_img = app.load_image( "images/you_won.png" )
you_lost_img = app.load_image( "images/you_lost.png" )
start_over_img = app.load_image( start_over_path )
+
+ numbers = app.load_numbers("images/#.png")
end
end
-
redef class Game
fun draw( display : Display, imgs : ImageSet, turn : Turn )
do
- display.clear( 0.0, 0.5, 0.1 )
+ display.clear(0.05, 0.45, 0.1)
# entities (dino, cavemen and javelins)
for e in entities do
display.blit_centered( imgs.life_empty_img, display.width*(empty+1)/11, display.top_offset )
end
+ # display score
+ display.blit_number(imgs.numbers, score.item, display.width/11, display.top_offset+32)
+
# game over messages
if over then
var concl_img : Image