forked from github/server
refactoring ship speed, extract total skills of sailors into a function.
This commit is contained in:
parent
eb1d3e4664
commit
afbc4c816b
|
@ -5854,11 +5854,10 @@
|
||||||
das 50fache und auch im Kampf werden sich die
|
das 50fache und auch im Kampf werden sich die
|
||||||
erhöhte Kraft und die trollisch zähe Haut
|
erhöhte Kraft und die trollisch zähe Haut
|
||||||
positiv auswirken.</text>
|
positiv auswirken.</text>
|
||||||
<text locale="en">This artifact gives the one wearing it
|
<text locale="en">This artifact gives the wearer
|
||||||
the strength of a cavetroll. He will be able to
|
the strength of a cavetroll. He will be able to
|
||||||
carry fifty times as much as normal and also in
|
carry fifty times his normal load, as well as
|
||||||
combat his enhanced strength and tough troll
|
gain strength and tough troll skin in combat.</text>
|
||||||
skin will serve him well.</text>
|
|
||||||
</string>
|
</string>
|
||||||
<string name="auraleak">
|
<string name="auraleak">
|
||||||
<text locale="de">Der Schwarzmagier kann mit diesem
|
<text locale="de">Der Schwarzmagier kann mit diesem
|
||||||
|
@ -5868,7 +5867,7 @@
|
||||||
Region werden einen Großteil ihrer Aura
|
Region werden einen Großteil ihrer Aura
|
||||||
verlieren.</text>
|
verlieren.</text>
|
||||||
<text locale="en">With this dark ritual the
|
<text locale="en">With this dark ritual the
|
||||||
chaossorcerer causes a deep rift to appear in
|
chaos sorcerer causes a deep rift to appear in
|
||||||
the astral balance that will tear all magical
|
the astral balance that will tear all magical
|
||||||
power from a region. All spellcasters in that
|
power from a region. All spellcasters in that
|
||||||
region will lose most of their aura.</text>
|
region will lose most of their aura.</text>
|
||||||
|
|
|
@ -348,10 +348,6 @@ int shipspeed(const ship * sh, const unit * u)
|
||||||
c = c->nexthash;
|
c = c->nexthash;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef SHIPSPEED
|
|
||||||
k *= SHIPSPEED;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (sh->damage>0) {
|
if (sh->damage>0) {
|
||||||
int size = sh->size * DAMAGE_SCALE;
|
int size = sh->size * DAMAGE_SCALE;
|
||||||
k *= (size - sh->damage);
|
k *= (size - sh->damage);
|
||||||
|
|
|
@ -1807,7 +1807,7 @@ void scale_number(unit * u, int n)
|
||||||
|
|
||||||
const struct race *u_irace(const struct unit *u)
|
const struct race *u_irace(const struct unit *u)
|
||||||
{
|
{
|
||||||
if (u->irace && skill_enabled(SK_STEALTH)) {
|
if (u->irace) {
|
||||||
return u->irace;
|
return u->irace;
|
||||||
}
|
}
|
||||||
return u->_race;
|
return u->_race;
|
||||||
|
|
|
@ -4582,7 +4582,7 @@ int sp_illusionary_shapeshift(castorder * co)
|
||||||
irace = u_irace(u);
|
irace = u_irace(u);
|
||||||
if (irace == u_race(u)) {
|
if (irace == u_race(u)) {
|
||||||
trigger *trestore = trigger_changerace(u, NULL, irace);
|
trigger *trestore = trigger_changerace(u, NULL, irace);
|
||||||
add_trigger(&u->attribs, "timer", trigger_timeout((int)power + 2,
|
add_trigger(&u->attribs, "timer", trigger_timeout((int)power + 3,
|
||||||
trestore));
|
trestore));
|
||||||
u->irace = rc;
|
u->irace = rc;
|
||||||
}
|
}
|
||||||
|
|
81
src/spy.c
81
src/spy.c
|
@ -214,7 +214,6 @@ int setstealth_cmd(unit * u, struct order *ord)
|
||||||
char token[64];
|
char token[64];
|
||||||
const char *s;
|
const char *s;
|
||||||
int level, rule;
|
int level, rule;
|
||||||
const race *trace;
|
|
||||||
|
|
||||||
init_order(ord);
|
init_order(ord);
|
||||||
s = gettoken(token, sizeof(token));
|
s = gettoken(token, sizeof(token));
|
||||||
|
@ -237,47 +236,51 @@ int setstealth_cmd(unit * u, struct order *ord)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
trace = findrace(s, u->faction->locale);
|
if (skill_enabled(SK_STEALTH)) { /* hack! E3 erlaubt keine Tarnung */
|
||||||
if (trace) {
|
const race *trace;
|
||||||
/* demons can cloak as other player-races */
|
|
||||||
if (u_race(u) == get_race(RC_DAEMON)) {
|
trace = findrace(s, u->faction->locale);
|
||||||
race_t allowed[] = { RC_DWARF, RC_ELF, RC_ORC, RC_GOBLIN, RC_HUMAN,
|
if (trace) {
|
||||||
RC_TROLL, RC_DAEMON, RC_INSECT, RC_HALFLING, RC_CAT, RC_AQUARIAN,
|
/* demons can cloak as other player-races */
|
||||||
NORACE
|
if (u_race(u) == get_race(RC_DAEMON)) {
|
||||||
};
|
race_t allowed[] = { RC_DWARF, RC_ELF, RC_ORC, RC_GOBLIN, RC_HUMAN,
|
||||||
int i;
|
RC_TROLL, RC_DAEMON, RC_INSECT, RC_HALFLING, RC_CAT, RC_AQUARIAN,
|
||||||
for (i = 0; allowed[i] != NORACE; ++i)
|
NORACE
|
||||||
if (get_race(allowed[i]) == trace)
|
};
|
||||||
break;
|
int i;
|
||||||
if (get_race(allowed[i]) == trace) {
|
for (i = 0; allowed[i] != NORACE; ++i)
|
||||||
u->irace = trace;
|
if (get_race(allowed[i]) == trace)
|
||||||
if (u_race(u)->flags & RCF_SHAPESHIFTANY && get_racename(u->attribs))
|
break;
|
||||||
set_racename(&u->attribs, NULL);
|
if (get_race(allowed[i]) == trace) {
|
||||||
|
u->irace = trace;
|
||||||
|
if (u_race(u)->flags & RCF_SHAPESHIFTANY && get_racename(u->attribs))
|
||||||
|
set_racename(&u->attribs, NULL);
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Singdrachen koennen sich nur als Drachen tarnen */
|
||||||
|
if (u_race(u) == get_race(RC_SONGDRAGON)
|
||||||
|
|| u_race(u) == get_race(RC_BIRTHDAYDRAGON)) {
|
||||||
|
if (trace == get_race(RC_SONGDRAGON) || trace == get_race(RC_FIREDRAGON)
|
||||||
|
|| trace == get_race(RC_DRAGON) || trace == get_race(RC_WYRM)) {
|
||||||
|
u->irace = trace;
|
||||||
|
if (u_race(u)->flags & RCF_SHAPESHIFTANY && get_racename(u->attribs))
|
||||||
|
set_racename(&u->attribs, NULL);
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Daemomen und Illusionsparteien koennen sich als andere race tarnen */
|
||||||
|
if (u_race(u)->flags & RCF_SHAPESHIFT) {
|
||||||
|
if (playerrace(trace)) {
|
||||||
|
u->irace = trace;
|
||||||
|
if ((u_race(u)->flags & RCF_SHAPESHIFTANY) && get_racename(u->attribs))
|
||||||
|
set_racename(&u->attribs, NULL);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Singdrachen koennen sich nur als Drachen tarnen */
|
|
||||||
if (u_race(u) == get_race(RC_SONGDRAGON)
|
|
||||||
|| u_race(u) == get_race(RC_BIRTHDAYDRAGON)) {
|
|
||||||
if (trace == get_race(RC_SONGDRAGON) || trace == get_race(RC_FIREDRAGON)
|
|
||||||
|| trace == get_race(RC_DRAGON) || trace == get_race(RC_WYRM)) {
|
|
||||||
u->irace = trace;
|
|
||||||
if (u_race(u)->flags & RCF_SHAPESHIFTANY && get_racename(u->attribs))
|
|
||||||
set_racename(&u->attribs, NULL);
|
|
||||||
}
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Daemomen und Illusionsparteien koennen sich als andere race tarnen */
|
|
||||||
if (u_race(u)->flags & RCF_SHAPESHIFT) {
|
|
||||||
if (playerrace(trace)) {
|
|
||||||
u->irace = trace;
|
|
||||||
if ((u_race(u)->flags & RCF_SHAPESHIFTANY) && get_racename(u->attribs))
|
|
||||||
set_racename(&u->attribs, NULL);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (findparam(s, u->faction->locale)) {
|
switch (findparam(s, u->faction->locale)) {
|
||||||
|
|
Loading…
Reference in New Issue