diff main.lua @ 19:57eeed74a575

Added text
author Radomir Dopieralski <sheep-devel@sheep.art.pl>
date Sat, 15 Dec 2012 20:36:10 +0100
parents 6186b0aa73e1
children d16e33662aa0
line wrap: on
line diff
--- a/main.lua	Sat Dec 15 19:12:04 2012 +0100
+++ b/main.lua	Sat Dec 15 20:36:10 2012 +0100
@@ -39,23 +39,24 @@
         end
     end
     function villain.sprite:update(dt)
-        local villain = self
-        if love.keyboard.isDown("up") then villain:walk(dt, 1) end
-        if love.keyboard.isDown("right") then villain:walk(dt, 2) end
-        if love.keyboard.isDown("down") then villain:walk(dt, 3) end
-        if love.keyboard.isDown("left") then villain:walk(dt, 4) end
-        if villain.x + tx < scroll_margin then
-            tx = tx + dt * scroll_speed
+        local map_w = MAP.width * MAP.tileWidth
+        local map_h = MAP.height * MAP.tileHeight
+        if love.keyboard.isDown("up") then self:walk(dt, 1) end
+        if love.keyboard.isDown("right") then self:walk(dt, 2) end
+        if love.keyboard.isDown("down") then self:walk(dt, 3) end
+        if love.keyboard.isDown("left") then self:walk(dt, 4) end
+        if self.x + tx < scroll_margin then
+            tx = math.min(tx + dt * scroll_speed, 0)
         else
-            if villain.x + tx > 800 - 64 - scroll_margin then
-                tx = tx - dt * scroll_speed
+            if self.x + tx > 800 - 64 - scroll_margin then
+                tx = math.max(tx - dt * scroll_speed, 800 - map_w)
             end
         end
-        if villain.y + ty < scroll_margin then
-            ty = ty + dt * scroll_speed
+        if self.y + ty < scroll_margin then
+            ty = math.min(ty + dt * scroll_speed, 0)
         else
-            if villain.y + ty > 600 - 64 - scroll_margin then
-                ty = ty - dt * scroll_speed
+            if self.y + ty > 600 - 64 - scroll_margin then
+                ty = math.max(ty - dt * scroll_speed, 600 - map_h)
             end
         end
         sprite.Sprite.update(self, dt)
@@ -64,25 +65,40 @@
 end
 
 function love.load()
+    love.graphics.setFont(love.graphics.newFont('pf_tempesta_seven_extended_bold.ttf'))
     SHADOW_IMAGE = love.graphics.newImage('shadow.png')
     MOBS_IMAGE = love.graphics.newImage('mobs.png')
-    MAP = ATL.Loader.load('level01.tmx') 
+    load_map('level01.tmx')
+    local music = love.audio.newSource('walktune.xm', 'static')
+    music:setLooping(true)
+    music:play()
+end
+
+function load_map(filename)
+    SPRITES = {}
+    SHADOWS = {}
+    MAP = ATL.Loader.load(filename) 
     MAP.drawObjects = false
     MAP.layers['control'].visible = false
     for i, data in pairs(MAP.layers['mobs'].objects) do
         if data.name == 'villain' then
-            local mob = newMob(data.x, data.y, '1-2,1')
-            makeVillain(mob)
+            makeVillain(newMob(data.x, data.y, '1-2,1'))
         else
-            local mob = newMob(data.x, data.y, data.properties.cells or '1-2,2')
+            newMob(data.x, data.y, data.properties.cells or '1-2,2')
         end
     end
-    local music = love.audio.newSource('walktune.xm', 'static')
-    music:setLooping(true)
-    music:play()
-
 end
 
+function draw_text()
+    text = "Lorem ipsum dolor sit ament conectetur adipiscit elit.\nLorem ipsum dolor sit ament conectetur adipiscit elit."
+    love.graphics.setColor(0, 0, 0)
+    love.graphics.print(text, 3, 3)
+    love.graphics.print(text, 5, 3)
+    love.graphics.print(text, 3, 5)
+    love.graphics.print(text, 5, 5)
+    love.graphics.setColor(255, 255, 255)
+    love.graphics.print(text, 4, 4)
+end
 
 function love.draw()
     love.graphics.translate(math.floor(tx), math.floor(ty))
@@ -99,6 +115,8 @@
             layer:draw()
         end
     end
+    love.graphics.translate(-math.floor(tx), -math.floor(ty))
+    draw_text()
 end