Skip to content
Snippets Groups Projects
Commit a815747e authored by dg's avatar dg
Browse files

test

git-svn-id: http://svn.net-core.org/repos/t-engine4@1001 51575b47-30f0-44d4-a5cc-537603b46e54
parent 954eaf29
No related branches found
No related tags found
No related merge requests found
......@@ -667,6 +667,9 @@ function _M:import(map, dx, dy, sx, sy, sw, sh)
for i = sx, sx + sw - 1 do for j = sy, sy + sh - 1 do
local x, y = dx + i, dy + j
self.map[x + y * self.w] = map.map[i + j * map.w]
for z, e in pairs(self.map[x + y * self.w]) do
if e.move then e:move(x, y, true) end
end
self.remembers(x, y, map.remembers(i, j))
self.seens(x, y, map.seens(i, j))
......
......@@ -21,6 +21,7 @@ require "engine.class"
local Savefile = require "engine.Savefile"
local Map = require "engine.Map"
local Astar = require "engine.Astar"
local print = function() end
--- Defines a zone: a set of levels, with depth, nps, objects, level generator, ...
module(..., package.seeall, class.make)
......@@ -157,6 +158,15 @@ function _M:checkFilter(e, filter)
return true
end
--- Return a string describing the filter
function _M:filterToString(filter)
local ps = ""
for what, check in pairs(filter) do
ps = ps .. what.."="..check..","
end
return ps
end
--- Picks an entity from a computed probability list
function _M:pickEntity(list)
if #list == 0 then return nil end
......
......@@ -18,9 +18,9 @@
-- darkgod@te4.org
defineTile('.', "FLOOR")
defineTile('#', "WALL")
defineTile('#', "FLOOR")
defineTile('X', "WALL")
defineTile('8', "FLOOR", {random_filter={add_levels=14}}, {random_filter={add_levels=20}})
defineTile('8', "FLOOR", {random_filter={add_levels=15}}, {random_filter={add_levels=20}})
return {
[[.......................................]],
......
......@@ -24,18 +24,21 @@ local list = {
return function(gen, id, lev, old_lev)
local vaultid = rng.table(list)
local vault_map = engine.Map.new(max_w, max_h)
local Static = require("engine.generator.map.Static")
local data = table.clone(gen.data)
data.map = "vaults/"..vaultid
local old_map = gen.level.map
gen.level.map = vault_map
local vault = Static.new(gen.zone, vault_map, gen.level, data)
vault:generate(lev, old_lev)
gen.level.map = old_map
local w = map.w
local h = map.h
local w = vault_map.w
local h = vault_map.h
return { name="greater_vault"..w.."x"..h, w=w, h=h, generator = function(self, x, y, is_lit)
gen.map:import(vault_map, x, y)
map:close()
vault_map:close()
-- Make it a room, and make it special so that we do not tunnel through
for i = x, x + w - 1 do for j = y, y + h - 1 do
gen.map.room_map[i][j].special = true
......
......@@ -25,15 +25,15 @@ return {
decay = {300, 800},
actor_adjust_level = function(zone, level, e) return zone.base_level + e:getRankLevelAdjust() + level.level-1 + rng.range(-1,2) end,
width = 50, height = 50,
all_remembered = true,
all_lited = true,
-- all_remembered = true,
-- all_lited = true,
persistant = "zone",
ambiant_music = "Swashing the buck.ogg",
generator = {
map = {
class = "engine.generator.map.Roomer",
nb_rooms = 10,
rooms = {"greater_vault"},
rooms = {"simple", "pilar", {"money_vault",5}},
lite_room_chance = 100,
['.'] = "FLOOR",
['#'] = "WALL",
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment