diff --git a/game/engines/default/engine/ai/simple.lua b/game/engines/default/engine/ai/simple.lua index 6a18390b340ec498598b346187b049660ef2ccae..bf8ddaef7b5553988a0d110863b99fff9ac6d1c4 100644 --- a/game/engines/default/engine/ai/simple.lua +++ b/game/engines/default/engine/ai/simple.lua @@ -24,12 +24,13 @@ local Astar = require "engine.Astar" newAI("move_simple", function(self) if self.ai_target.actor then - local tx, ty - -- Move towards the last seen position if we have one - if self.ai_state.target_last_seen and type(self.ai_state.target_last_seen) == "table" then - tx, ty = self.ai_state.target_last_seen.x, self.ai_state.target_last_seen.y - else - tx, ty = self:aiSeeTargetPos(self.ai_target.actor) + local tx, ty = self:aiSeeTargetPos(self.ai_target.actor) + + if not self:hasLOS(self.ai_target.actor.x, self.ai_target.actor.y) then + -- Move towards the last seen position if we have one + if self.ai_state.target_last_seen and type(self.ai_state.target_last_seen) == "table" then + tx, ty = self.ai_state.target_last_seen.x, self.ai_state.target_last_seen.y + end end return self:moveDirection(tx, ty) end diff --git a/game/modules/tome/class/NicerTiles.lua b/game/modules/tome/class/NicerTiles.lua index 51de7cd06f747e9e8ecf1e22027916ce556263cc..cbb574554db6189ce69f4ce06479dcc6a116ae92 100644 --- a/game/modules/tome/class/NicerTiles.lua +++ b/game/modules/tome/class/NicerTiles.lua @@ -350,20 +350,20 @@ end local defs = { grass = { method="borders", type="grass", forbid={lava=true, rock=true}, - default8={add_mos={{image="terrain/grass/grass_2_%02d.png", display_y=-1}}, min=1, max=5}, - default2={add_mos={{image="terrain/grass/grass_8_%02d.png", display_y=1}}, min=1, max=5}, - default4={add_mos={{image="terrain/grass/grass_6_%02d.png", display_x=-1}}, min=1, max=5}, - default6={add_mos={{image="terrain/grass/grass_4_%02d.png", display_x=1}}, min=1, max=4}, - - default1={add_mos={{image="terrain/grass/grass_9_%02d.png", display_x=-1, display_y=1}}, min=1, max=3}, - default3={add_mos={{image="terrain/grass/grass_7_%02d.png", display_x=1, display_y=1}}, min=1, max=3}, - default7={add_mos={{image="terrain/grass/grass_3_%02d.png", display_x=-1, display_y=-1}}, min=1, max=3}, - default9={add_mos={{image="terrain/grass/grass_1_%02d.png", display_x=1, display_y=-1}}, min=1, max=3}, - - default1i={add_mos={{image="terrain/grass/grass_inner_1_%02d.png", display_x=-1, display_y=1}}, min=1, max=3}, - default3i={add_mos={{image="terrain/grass/grass_inner_3_%02d.png", display_x=1, display_y=1}}, min=1, max=3}, - default7i={add_mos={{image="terrain/grass/grass_inner_7_%02d.png", display_x=-1, display_y=-1}}, min=1, max=3}, - default9i={add_mos={{image="terrain/grass/grass_inner_9_%02d.png", display_x=1, display_y=-1}}, min=1, max=3}, + default8={add_mos={{image="terrain/grass/grass_2_%02d.png", display_y=-1}}, min=1, max=2}, + default2={add_mos={{image="terrain/grass/grass_8_%02d.png", display_y=1}}, min=1, max=2}, + default4={add_mos={{image="terrain/grass/grass_6_%02d.png", display_x=-1}}, min=1, max=2}, + default6={add_mos={{image="terrain/grass/grass_4_%02d.png", display_x=1}}, min=1, max=2}, + + default1={add_mos={{image="terrain/grass/grass_9_%02d.png", display_x=-1, display_y=1}}, min=1, max=1}, + default3={add_mos={{image="terrain/grass/grass_7_%02d.png", display_x=1, display_y=1}}, min=1, max=1}, + default7={add_mos={{image="terrain/grass/grass_3_%02d.png", display_x=-1, display_y=-1}}, min=1, max=1}, + default9={add_mos={{image="terrain/grass/grass_1_%02d.png", display_x=1, display_y=-1}}, min=1, max=1}, + + default1i={add_mos={{image="terrain/grass/grass_inner_1_%02d.png", display_x=-1, display_y=1}}, min=1, max=2}, + default3i={add_mos={{image="terrain/grass/grass_inner_3_%02d.png", display_x=1, display_y=1}}, min=1, max=2}, + default7i={add_mos={{image="terrain/grass/grass_inner_7_%02d.png", display_x=-1, display_y=-1}}, min=1, max=2}, + default9i={add_mos={{image="terrain/grass/grass_inner_9_%02d.png", display_x=1, display_y=-1}}, min=1, max=2}, water8={add_mos={{image="terrain/grass/grass_2_%02d.png", display_y=-1}}, min=1, max=1}, water2={add_mos={{image="terrain/grass/grass_8_%02d.png", display_y=1}}, min=1, max=1}, diff --git a/game/modules/tome/data/general/grids/forest.lua b/game/modules/tome/data/general/grids/forest.lua index caa3a0177c5abe985ea059dd5eab933582bbe538..a70ad48b7320372277dd5e51ab2da18c51e42ffd 100644 --- a/game/modules/tome/data/general/grids/forest.lua +++ b/game/modules/tome/data/general/grids/forest.lua @@ -25,10 +25,10 @@ newEntity{ name = "grass", image = "terrain/grass.png", display = '.', color=colors.LIGHT_GREEN, back_color={r=44,g=95,b=43}, grow = "TREE", - nice_tiler = { method="replace", base={"GRASS_PATCH", 70, 1, 12}}, + nice_tiler = { method="replace", base={"GRASS_PATCH", 100, 1, 14}}, nice_editer = grass_editer, } -for i = 1, 12 do newEntity{ base = "GRASS", define_as = "GRASS_PATCH"..i, image = "terrain/grass"..(i<7 and "" or "2")..".png" } end +for i = 1, 14 do newEntity{ base = "GRASS", define_as = "GRASS_PATCH"..i, image = ("terrain/grass/grass_main_%02d.png"):format(i) } end newEntity{ define_as = "TREE", @@ -44,7 +44,7 @@ newEntity{ nice_tiler = { method="replace", base={"TREE", 100, 1, 30}}, nice_editer = grass_editer, } -for i = 1, 30 do newEntity{ base="TREE", define_as = "TREE"..i, image = "terrain/grass.png", add_displays = class:makeTrees("terrain/tree_alpha", 13, 9)} end +for i = 1, 30 do newEntity{ base="TREE", define_as = "TREE"..i, image = "terrain/grass.png", add_displays = class:makeTrees("terrain/tree_alpha", 14, 9)} end newEntity{ define_as = "HARDTREE", @@ -60,7 +60,7 @@ newEntity{ nice_tiler = { method="replace", base={"HARDTREE", 100, 1, 30}}, nice_editer = grass_editer, } -for i = 1, 30 do newEntity{ base="HARDTREE", define_as = "HARDTREE"..i, image = "terrain/grass.png", add_displays = class:makeTrees("terrain/tree_alpha", 13, 9) } end +for i = 1, 30 do newEntity{ base="HARDTREE", define_as = "HARDTREE"..i, image = "terrain/grass.png", add_displays = class:makeTrees("terrain/tree_alpha", 14, 9) } end newEntity{ define_as = "FLOWER", diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_1_01.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_1_01.png new file mode 100644 index 0000000000000000000000000000000000000000..e33854136e8c84827678794a7c7891e9663300fb Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_1_01.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_2_01.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_2_01.png new file mode 100644 index 0000000000000000000000000000000000000000..276ebb8697cf4b4f947e66a09e5ac6f1a414950f Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_2_01.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_2_02.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_2_02.png new file mode 100644 index 0000000000000000000000000000000000000000..a017483766aebb611844987f077982fd197617c2 Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_2_02.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_3_01.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_3_01.png new file mode 100644 index 0000000000000000000000000000000000000000..75c4a9c7dc91ea4cc182cf29c9826d1a39a3e7c4 Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_3_01.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_4_01.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_4_01.png new file mode 100644 index 0000000000000000000000000000000000000000..660b4c605b3b74daf408e73ec4d1e20eef046f05 Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_4_01.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_4_02.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_4_02.png new file mode 100644 index 0000000000000000000000000000000000000000..48f70758fb9e84115ecb6da7eb9ce6b5978aab91 Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_4_02.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_6_01.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_6_01.png new file mode 100644 index 0000000000000000000000000000000000000000..8d2879e22324180f9437c28d0c463e559ff00c18 Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_6_01.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_6_02.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_6_02.png new file mode 100644 index 0000000000000000000000000000000000000000..4723d272dc602d031d761326cc9ac9f2b39ab314 Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_6_02.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_7_01.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_7_01.png new file mode 100644 index 0000000000000000000000000000000000000000..c4946b2131e21db9267df3ad0dd303afc141b322 Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_7_01.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_8_01.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_8_01.png new file mode 100644 index 0000000000000000000000000000000000000000..dd7baa808541734aa9190dcab45d09c8e013cba5 Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_8_01.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_8_02.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_8_02.png new file mode 100644 index 0000000000000000000000000000000000000000..c2820b53785a5f22a5785c71d5696604f5d30233 Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_8_02.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_9_01.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_9_01.png new file mode 100644 index 0000000000000000000000000000000000000000..e7a9568dff632ae95d55449b22f3834a4a32ee37 Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_9_01.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_inner_1_01.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_inner_1_01.png new file mode 100644 index 0000000000000000000000000000000000000000..0172704dd9435e8eaf41d072851f1739c70f11ea Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_inner_1_01.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_inner_1_02.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_inner_1_02.png new file mode 100644 index 0000000000000000000000000000000000000000..012ff81f6244059b37be2eded58277c308feca6d Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_inner_1_02.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_inner_3_01.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_inner_3_01.png new file mode 100644 index 0000000000000000000000000000000000000000..1e3d521baf124e3529b7f15f81257f3e1f0d810c Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_inner_3_01.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_inner_3_02.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_inner_3_02.png new file mode 100644 index 0000000000000000000000000000000000000000..d85ed0f5dc55f7adc7ff1a10555f328e4375fd4c Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_inner_3_02.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_inner_7_01.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_inner_7_01.png new file mode 100644 index 0000000000000000000000000000000000000000..e797aa19afdd205193859f950215175bcd6afac3 Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_inner_7_01.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_inner_7_02.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_inner_7_02.png new file mode 100644 index 0000000000000000000000000000000000000000..e9e806eceaa936c6a49aff10c977c60bb72aa825 Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_inner_7_02.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_inner_9_01.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_inner_9_01.png new file mode 100644 index 0000000000000000000000000000000000000000..b590b34c5a9fd6c7e69b8c4a022e09e4648035e4 Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_inner_9_01.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_inner_9_02.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_inner_9_02.png new file mode 100644 index 0000000000000000000000000000000000000000..e22894ec745428676b153c319f1ec21c63947661 Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_inner_9_02.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_01.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_01.png new file mode 100644 index 0000000000000000000000000000000000000000..7902643691d825a225ff2c88b1130f4098724c28 Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_01.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_02.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_02.png new file mode 100644 index 0000000000000000000000000000000000000000..5a0e93a527d64b385ccbe018b5ee4d54a1a81ea2 Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_02.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_03.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_03.png new file mode 100644 index 0000000000000000000000000000000000000000..1e8faa2794081e603550128be335da991ae92ce2 Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_03.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_04.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_04.png new file mode 100644 index 0000000000000000000000000000000000000000..bb79e2cf8360780800a7c8cc6c3e4d6950947783 Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_04.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_05.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_05.png new file mode 100644 index 0000000000000000000000000000000000000000..22dc82254bfa57703a4f05f461abd10d14cf3711 Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_05.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_06.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_06.png new file mode 100644 index 0000000000000000000000000000000000000000..aa233b3ac23fcd1ccff7015a2602ebeda935f307 Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_06.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_07.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_07.png new file mode 100644 index 0000000000000000000000000000000000000000..d5dc72d09bbab45a52e93e13dff67e80a73cc043 Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_07.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_08.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_08.png new file mode 100644 index 0000000000000000000000000000000000000000..547ffc94bed2cab96c6d4b960d1aba6cd8f4b1bb Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_08.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_09.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_09.png new file mode 100644 index 0000000000000000000000000000000000000000..da5808196e89070acc9baa0d6c074d7aa5cecf70 Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_09.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_10.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_10.png new file mode 100644 index 0000000000000000000000000000000000000000..73b72406c23f7cc14ea960b6563d20374a4cd7b2 Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_10.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_11.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_11.png new file mode 100644 index 0000000000000000000000000000000000000000..171b073e7e3ee621b09d0abaa8795a78ad6bf98a Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_11.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_12.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_12.png new file mode 100644 index 0000000000000000000000000000000000000000..ac7f6c9a1ffbb04a39d9c367a07a306edb9f6379 Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_12.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_13.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_13.png new file mode 100644 index 0000000000000000000000000000000000000000..ce36b71c828dc00fbd6c60dc3a70733cd8d7f1ac Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_13.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_14.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_14.png new file mode 100644 index 0000000000000000000000000000000000000000..03706494495dc300aea55e31d5cb6de7bc414a6c Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/grass/grass_main_14.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/tree_alpha14.png b/game/modules/tome/data/gfx/shockbolt/terrain/tree_alpha14.png new file mode 100644 index 0000000000000000000000000000000000000000..21faeee50061f22993f6205e37b0e6ebac6bf5eb Binary files /dev/null and b/game/modules/tome/data/gfx/shockbolt/terrain/tree_alpha14.png differ