forked from github/server
bug 2221: buildings cannot exceed maxsize.
* enable the allies.lua tests
This commit is contained in:
parent
b88f9e8610
commit
42e17f3ba9
|
@ -5519,7 +5519,7 @@ msgstr "aquarians"
|
|||
|
||||
msgctxt "iteminfo"
|
||||
msgid "fairyboot"
|
||||
msgstr "These leather boots are embroidere with unicorn hair and allow their wearer to walk at twice his normal speed."
|
||||
msgstr "These leather boots are embroidered with unicorn hair and allow their wearer to walk at twice his normal speed."
|
||||
|
||||
msgctxt "spell"
|
||||
msgid "skillmod"
|
||||
|
|
|
@ -29,6 +29,25 @@ function test_castle_names()
|
|||
assert_equal("citadel", b:get_typename(6250))
|
||||
end
|
||||
|
||||
function test_build_tunnel_limited()
|
||||
-- bug 2221
|
||||
local r = region.create(0, 0, "plain")
|
||||
local b = building.create(r, "tunnel")
|
||||
local f = faction.create('human')
|
||||
local u = unit.create(f, r, 2)
|
||||
u:set_skill('building', 6, true)
|
||||
u:add_item('stone', 22)
|
||||
u:add_item('log', 10)
|
||||
u:add_item('iron', 2)
|
||||
u:add_item('money', 700)
|
||||
u.building = b
|
||||
u.name = 'Xolgrim'
|
||||
u:add_order('MACHE 2 BURG ' .. itoa36(b.id))
|
||||
b.size = 99
|
||||
process_orders()
|
||||
assert_equal(100, b.size)
|
||||
end
|
||||
|
||||
function test_build_castle_one_stage()
|
||||
local r = region.create(0, 0, 'plain')
|
||||
local f = faction.create('human')
|
||||
|
|
|
@ -1,3 +1,6 @@
|
|||
require 'tests.e2.buildings'
|
||||
require 'tests.e2.allies'
|
||||
require 'tests.e2.quit'
|
||||
require 'tests.e2.movement'
|
||||
require 'tests.e2.carts'
|
||||
require 'tests.e2.quit'
|
||||
|
@ -5,7 +8,6 @@ require 'tests.e2.astral'
|
|||
require 'tests.e2.spells'
|
||||
require 'tests.e2.e2features'
|
||||
require 'tests.e2.insects'
|
||||
require 'tests.e2.buildings'
|
||||
require 'tests.e2.production'
|
||||
require 'tests.e2.adamantium'
|
||||
require 'tests.e2.undead'
|
||||
|
|
|
@ -810,25 +810,13 @@ build_building(unit * u, const building_type * btype, int id, int want, order *
|
|||
}
|
||||
built = b->size;
|
||||
}
|
||||
if (n <= 0 || n == INT_MAX) {
|
||||
if (b == NULL) {
|
||||
if (btype->maxsize > 0) {
|
||||
n = btype->maxsize - built;
|
||||
}
|
||||
else {
|
||||
n = INT_MAX;
|
||||
}
|
||||
}
|
||||
else {
|
||||
if (b->type->maxsize > 0) {
|
||||
n = b->type->maxsize - built;
|
||||
}
|
||||
else {
|
||||
n = INT_MAX;
|
||||
}
|
||||
|
||||
if (btype->maxsize > 0) {
|
||||
int remain = btype->maxsize - built;
|
||||
if (remain < n) {
|
||||
n = remain;
|
||||
}
|
||||
}
|
||||
|
||||
built = build_stages(u, btype, built, n, basesk, &skills);
|
||||
|
||||
if (built < 0) {
|
||||
|
|
Loading…
Reference in New Issue