forked from github/server
bugfix old lua versions
removing some instances of oldterrain() calls kingdoms: removing assert on missing old races kingdoms: handling missing potions gracefully
This commit is contained in:
parent
aa4fda7e26
commit
3ae0abad4b
|
@ -1875,7 +1875,7 @@ buy(unit * u, request ** buyorders, struct order * ord)
|
||||||
|
|
||||||
if (u->race == new_race[RC_INSECT]) {
|
if (u->race == new_race[RC_INSECT]) {
|
||||||
/* entweder man ist insekt, oder... */
|
/* entweder man ist insekt, oder... */
|
||||||
if (rterrain(r) != T_SWAMP && rterrain(r) != T_DESERT && !rbuildings(r)) {
|
if (r->terrain != newterrain(T_SWAMP) && rterrain(r) != T_DESERT && !rbuildings(r)) {
|
||||||
cmistake(u, ord, 119, MSG_COMMERCE);
|
cmistake(u, ord, 119, MSG_COMMERCE);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -2165,7 +2165,7 @@ sell(unit * u, request ** sellorders, struct order * ord)
|
||||||
/* In der Region muß es eine Burg geben. */
|
/* In der Region muß es eine Burg geben. */
|
||||||
|
|
||||||
if (u->race == new_race[RC_INSECT]) {
|
if (u->race == new_race[RC_INSECT]) {
|
||||||
if (rterrain(r) != T_SWAMP && rterrain(r) != T_DESERT && !rbuildings(r)) {
|
if (r->terrain != newterrain(T_SWAMP) && rterrain(r) != T_DESERT && !rbuildings(r)) {
|
||||||
cmistake(u, ord, 119, MSG_COMMERCE);
|
cmistake(u, ord, 119, MSG_COMMERCE);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1379,7 +1379,7 @@ randomevents(void)
|
||||||
set_string(&u->name, "Seeschlange");
|
set_string(&u->name, "Seeschlange");
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((rterrain(r) == T_GLACIER || rterrain(r) == T_SWAMP || rterrain(r) == T_DESERT) && rand() % 10000 < (5 + 100 * chaosfactor(r)))
|
if ((rterrain(r) == T_GLACIER || r->terrain == newterrain(T_SWAMP) || rterrain(r) == T_DESERT) && rand() % 10000 < (5 + 100 * chaosfactor(r)))
|
||||||
{
|
{
|
||||||
if (chance(0.80)) {
|
if (chance(0.80)) {
|
||||||
u = createunit(r, findfaction(MONSTER_FACTION), nrand(60, 20) + 1, new_race[RC_FIREDRAGON]);
|
u = createunit(r, findfaction(MONSTER_FACTION), nrand(60, 20) + 1, new_race[RC_FIREDRAGON]);
|
||||||
|
|
|
@ -460,7 +460,6 @@ void
|
||||||
build_road(region * r, unit * u, int size, direction_t d)
|
build_road(region * r, unit * u, int size, direction_t d)
|
||||||
{
|
{
|
||||||
int n, left;
|
int n, left;
|
||||||
terrain_t rt = rterrain(r);
|
|
||||||
region * rn = rconnect(r,d);
|
region * rn = rconnect(r,d);
|
||||||
|
|
||||||
if (!eff_skill(u, SK_ROAD_BUILDING, r)) {
|
if (!eff_skill(u, SK_ROAD_BUILDING, r)) {
|
||||||
|
@ -482,7 +481,7 @@ build_road(region * r, unit * u, int size, direction_t d)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (rt == T_SWAMP) {
|
if (r->terrain == newterrain(T_SWAMP)) {
|
||||||
/* wenn kein Damm existiert */
|
/* wenn kein Damm existiert */
|
||||||
static const struct building_type * bt_dam;
|
static const struct building_type * bt_dam;
|
||||||
if (!bt_dam) bt_dam = bt_find("dam");
|
if (!bt_dam) bt_dam = bt_find("dam");
|
||||||
|
@ -491,7 +490,7 @@ build_road(region * r, unit * u, int size, direction_t d)
|
||||||
cmistake(u, u->thisorder, 132, MSG_PRODUCE);
|
cmistake(u, u->thisorder, 132, MSG_PRODUCE);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
} else if (rt == T_DESERT) {
|
} else if (r->terrain == newterrain(T_DESERT)) {
|
||||||
static const struct building_type * bt_caravan;
|
static const struct building_type * bt_caravan;
|
||||||
if (!bt_caravan) bt_caravan = bt_find("caravan");
|
if (!bt_caravan) bt_caravan = bt_find("caravan");
|
||||||
assert(bt_caravan);
|
assert(bt_caravan);
|
||||||
|
@ -500,7 +499,7 @@ build_road(region * r, unit * u, int size, direction_t d)
|
||||||
cmistake(u, u->thisorder, 133, MSG_PRODUCE);
|
cmistake(u, u->thisorder, 133, MSG_PRODUCE);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
} else if (rt == T_GLACIER) {
|
} else if (r->terrain == newterrain(T_GLACIER)) {
|
||||||
static const struct building_type * bt_tunnel;
|
static const struct building_type * bt_tunnel;
|
||||||
if (!bt_tunnel) bt_tunnel = bt_find("tunnel");
|
if (!bt_tunnel) bt_tunnel = bt_find("tunnel");
|
||||||
assert(bt_tunnel);
|
assert(bt_tunnel);
|
||||||
|
|
|
@ -176,15 +176,14 @@ skill_mod(const race * rc, skill_t sk, const struct terrain_type * terrain)
|
||||||
|
|
||||||
if (rc == new_race[RC_DWARF]) {
|
if (rc == new_race[RC_DWARF]) {
|
||||||
if (sk==SK_TACTICS) {
|
if (sk==SK_TACTICS) {
|
||||||
terrain_t t = oldterrain(terrain);
|
if (terrain == newterrain(T_MOUNTAIN) || fval(terrain, ARCTIC_REGION))
|
||||||
if (t == T_MOUNTAIN || t == T_GLACIER || t == T_ICEBERG_SLEEP) ++result;
|
++result;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (rc == new_race[RC_INSECT]) {
|
else if (rc == new_race[RC_INSECT]) {
|
||||||
terrain_t t = oldterrain(terrain);
|
if (terrain == newterrain(T_MOUNTAIN) || fval(terrain, ARCTIC_REGION))
|
||||||
if (t == T_MOUNTAIN || t == T_GLACIER || t == T_ICEBERG_SLEEP || t == T_ICEBERG)
|
|
||||||
--result;
|
--result;
|
||||||
else if (t == T_DESERT || t == T_SWAMP)
|
else if (terrain == newterrain(T_DESERT) || terrain == newterrain(T_SWAMP))
|
||||||
++result;
|
++result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -138,7 +138,7 @@ init_terrains(void)
|
||||||
if (newterrain!=NULL) {
|
if (newterrain!=NULL) {
|
||||||
newterrains[t] = newterrain;
|
newterrains[t] = newterrain;
|
||||||
} else {
|
} else {
|
||||||
log_error(("missing classic terrain %s\n", terraindata[t]));
|
log_warning(("missing classic terrain %s\n", terraindata[t]));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -565,7 +565,6 @@ race_compat(void)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
log_error(("could not find old race %s\n", oldracenames[i]));
|
log_error(("could not find old race %s\n", oldracenames[i]));
|
||||||
assert(rc);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1523,7 +1523,7 @@ sp_create_irongolem(castorder *co)
|
||||||
int number = lovar(force*8*RESOURCE_QUANTITY);
|
int number = lovar(force*8*RESOURCE_QUANTITY);
|
||||||
if (number<1) number = 1;
|
if (number<1) number = 1;
|
||||||
|
|
||||||
if (rterrain(r) == T_SWAMP) {
|
if (r->terrain == newterrain(T_SWAMP)) {
|
||||||
cmistake(mage, co->order, 188, MSG_MAGIC);
|
cmistake(mage, co->order, 188, MSG_MAGIC);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -1585,7 +1585,7 @@ sp_create_stonegolem(castorder *co)
|
||||||
int number = lovar(co->force*5*RESOURCE_QUANTITY);
|
int number = lovar(co->force*5*RESOURCE_QUANTITY);
|
||||||
if (number<1) number = 1;
|
if (number<1) number = 1;
|
||||||
|
|
||||||
if (rterrain(r) == T_SWAMP) {
|
if (r->terrain == newterrain(T_SWAMP)) {
|
||||||
cmistake(mage, co->order, 188, MSG_MAGIC);
|
cmistake(mage, co->order, 188, MSG_MAGIC);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -1724,7 +1724,7 @@ sp_great_drought(castorder *co)
|
||||||
cansee(u->faction, r, mage, 0)? unitname(mage) : "Jemand",
|
cansee(u->faction, r, mage, 0)? unitname(mage) : "Jemand",
|
||||||
regionname(r, u->faction));
|
regionname(r, u->faction));
|
||||||
if (!fval(r->terrain, SEA_REGION)){
|
if (!fval(r->terrain, SEA_REGION)){
|
||||||
if(rterrain(r) == T_SWAMP && terraform){
|
if (r->terrain == newterrain(T_SWAMP) && terraform) {
|
||||||
scat(" Eis schmilzt und verwandelt sich in Morast. Reißende "
|
scat(" Eis schmilzt und verwandelt sich in Morast. Reißende "
|
||||||
"Ströme spülen die mageren Felder weg und ersäufen "
|
"Ströme spülen die mageren Felder weg und ersäufen "
|
||||||
"Mensch und Tier. Was an Bauten nicht den Fluten zum Opfer "
|
"Mensch und Tier. Was an Bauten nicht den Fluten zum Opfer "
|
||||||
|
@ -2676,7 +2676,7 @@ sp_summondragon(castorder *co)
|
||||||
|
|
||||||
f = findfaction(MONSTER_FACTION);
|
f = findfaction(MONSTER_FACTION);
|
||||||
|
|
||||||
if(rterrain(r) != T_SWAMP && rterrain(r) != T_DESERT
|
if (r->terrain != newterrain(T_SWAMP) && rterrain(r) != T_DESERT
|
||||||
&& rterrain(r) != T_GLACIER){
|
&& rterrain(r) != T_GLACIER){
|
||||||
report_failure(mage, co->order);
|
report_failure(mage, co->order);
|
||||||
return 0;
|
return 0;
|
||||||
|
|
|
@ -687,7 +687,7 @@ road_decay(void)
|
||||||
|
|
||||||
for (r=regions;r;r=r->next) {
|
for (r=regions;r;r=r->next) {
|
||||||
boolean half = false;
|
boolean half = false;
|
||||||
if (rterrain(r) == T_SWAMP) {
|
if (r->terrain == newterrain(T_SWAMP)) {
|
||||||
/* wenn kein Damm existiert */
|
/* wenn kein Damm existiert */
|
||||||
if (!buildingtype_exists(r, bt_dam)) {
|
if (!buildingtype_exists(r, bt_dam)) {
|
||||||
half = true;
|
half = true;
|
||||||
|
|
|
@ -457,23 +457,23 @@ usage(const char * prog, const char * arg)
|
||||||
static void
|
static void
|
||||||
setLuaString(lua_State * luaState, const char * name, const char * value)
|
setLuaString(lua_State * luaState, const char * name, const char * value)
|
||||||
{
|
{
|
||||||
#ifdef LUBIND_OLD
|
#ifdef LUABIND_OLD
|
||||||
luabind::object globals = luabind::get_globals(luaState);
|
luabind::object g = luabind::get_globals(luaState);
|
||||||
#else
|
#else
|
||||||
luabind::object globals = luabind::globals(luaState);
|
luabind::object g = luabind::globals(luaState);
|
||||||
#endif
|
#endif
|
||||||
globals[name] = value;
|
g[name] = value;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
setLuaNumber(lua_State * luaState, const char * name, double value)
|
setLuaNumber(lua_State * luaState, const char * name, double value)
|
||||||
{
|
{
|
||||||
#if BOOST_VERSION > 103002
|
#ifdef LUABIND_OLD
|
||||||
luabind::object globals = luabind::globals(luaState);
|
luabind::object g = luabind::get_globals(luaState);
|
||||||
#else
|
#else
|
||||||
luabind::object globals = luabind::get_globals(luaState);
|
luabind::object g = luabind::globals(luaState);
|
||||||
#endif
|
#endif
|
||||||
globals[name] = value;
|
g[name] = value;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
|
|
Loading…
Reference in New Issue