From 394209fbe5c61e93f52085e700309ae4ba17318f Mon Sep 17 00:00:00 2001 From: baylej Date: Tue, 25 Aug 2015 03:30:06 +0200 Subject: [PATCH] Buggy ignition of swamp tiles --- src/objects/villager.cpp | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/objects/villager.cpp b/src/objects/villager.cpp index 709f7ef..7073226 100644 --- a/src/objects/villager.cpp +++ b/src/objects/villager.cpp @@ -69,6 +69,16 @@ void Flame::update() { auto ptr = shared_from_this(); if ((long)(al_get_time() * 1000) > this->startTime + 4000) { + glm::vec2 dir = getUnitDirectionVector(); + + glm::vec2 pos = position + dir * 20.f; + Tile *t = game.map_.pwhat(pos.x, pos.y); + if (!t->ignited()) t->ignite(1000); + + pos = position + dir * 40.f; + t = game.map_.pwhat(pos.x, pos.y); + if (!t->ignited()) t->ignite(1000); + this->game.removeObject(ptr); } } @@ -76,7 +86,7 @@ void Flame::update() { // ---- ALLEGRO_BITMAP* Villager::sprite = NULL; -TriObject Villager::fov(10*32., 5*32., PI); +TriObject Villager::fov(6*32., 5*32., PI); Villager::Villager(glm::vec2 spawnPosition, Game &game): Character(glm::vec2(30, 30), game) { this->position = spawnPosition;