forked from github/server
Merge remote-tracking branch 'eressea/master'
This commit is contained in:
commit
3ac22cb97a
|
@ -697,7 +697,7 @@ end
|
|||
|
||||
function test_golem_use_four_iron()
|
||||
local r0 = region.create(0, 0, "plain")
|
||||
local f1 = faction.create("noreply@eressea.de", "dwarf", "de")
|
||||
local f1 = faction.create("noreply@eressea.de", "halfling", "de")
|
||||
local u1 = unit.create(f1, r0, 3)
|
||||
u1.race = "irongolem"
|
||||
u1:set_skill("weaponsmithing", 1)
|
||||
|
|
|
@ -656,7 +656,7 @@ use_birthdayamulet(unit * u, const struct item_type *itype, int amount,
|
|||
#define FL_ITEM_MOUNT ((1<<4) | FL_ITEM_ANIMAL) /* ist ein Reittier */
|
||||
|
||||
/* ------------------------------------------------------------- */
|
||||
/* Kann auch von Nichtmagier benutzt werden, modifiziert Taktik für diese
|
||||
/* Kann auch von Nichtmagier benutzt werden, modifiziert Taktik fuer diese
|
||||
* Runde um -1 - 4 Punkte. */
|
||||
static int
|
||||
use_tacticcrystal(unit * u, const struct item_type *itype, int amount,
|
||||
|
@ -667,8 +667,8 @@ use_tacticcrystal(unit * u, const struct item_type *itype, int amount,
|
|||
int duration = 1; /* wirkt nur eine Runde */
|
||||
curse *c;
|
||||
float effect;
|
||||
float power = 5; /* Widerstand gegen Antimagiesprüche, ist in diesem
|
||||
Fall egal, da der curse für den Kampf gelten soll,
|
||||
float power = 5; /* Widerstand gegen Antimagiesprueche, ist in diesem
|
||||
Fall egal, da der curse fuer den Kampf gelten soll,
|
||||
der vor den Antimagiezaubern passiert */
|
||||
|
||||
effect = (float)(rng_int() % 6 - 1);
|
||||
|
@ -685,8 +685,8 @@ use_tacticcrystal(unit * u, const struct item_type *itype, int amount,
|
|||
|
||||
typedef struct t_item {
|
||||
const char *name;
|
||||
/* [0]: Einzahl für eigene; [1]: Mehrzahl für eigene;
|
||||
* [2]: Einzahl für Fremde; [3]: Mehrzahl für Fremde */
|
||||
/* [0]: Einzahl fuer eigene; [1]: Mehrzahl fuer eigene;
|
||||
* [2]: Einzahl fuer Fremde; [3]: Mehrzahl fuer Fremde */
|
||||
bool is_resource;
|
||||
skill_t skill;
|
||||
int minskill;
|
||||
|
@ -712,7 +712,7 @@ static int
|
|||
mod_dwarves_only(const unit * u, const region * r, skill_t sk, int value)
|
||||
{
|
||||
unused_arg(r);
|
||||
if (u->faction->race == get_race(RC_DWARF)) {
|
||||
if (u_race(u) == get_race(RC_DWARF) || (u_race(u)->flags & RCF_IRONGOLEM)) {
|
||||
return value;
|
||||
}
|
||||
return -118;
|
||||
|
@ -779,7 +779,7 @@ use_warmthpotion(struct unit *u, const struct item_type *itype, int amount,
|
|||
if (u->faction->race == get_race(RC_INSECT)) {
|
||||
fset(u, UFL_WARMTH);
|
||||
} else {
|
||||
/* nur für insekten: */
|
||||
/* nur fuer insekten: */
|
||||
cmistake(u, ord, 163, MSG_EVENT);
|
||||
return ECUSTOM;
|
||||
}
|
||||
|
|
|
@ -69,7 +69,7 @@ OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|||
|
||||
attrib_type at_creator = {
|
||||
"creator"
|
||||
/* Rest ist NULL; temporäres, nicht alterndes Attribut */
|
||||
/* Rest ist NULL; temporaeres, nicht alterndes Attribut */
|
||||
};
|
||||
|
||||
#define UMAXHASH MAXUNITS
|
||||
|
@ -619,7 +619,7 @@ void usetcontact(unit * u, const unit * u2)
|
|||
}
|
||||
|
||||
bool ucontact(const unit * u, const unit * u2)
|
||||
/* Prüft, ob u den Kontaktiere-Befehl zu u2 gesetzt hat. */
|
||||
/* Prueft, ob u den Kontaktiere-Befehl zu u2 gesetzt hat. */
|
||||
{
|
||||
attrib *ru;
|
||||
if (u->faction == u2->faction)
|
||||
|
@ -776,7 +776,7 @@ ship *leftship(const unit * u)
|
|||
{
|
||||
attrib *a = a_find(u->attribs, &at_leftship);
|
||||
|
||||
/* Achtung: Es ist nicht garantiert, daß der Rückgabewert zu jedem
|
||||
/* Achtung: Es ist nicht garantiert, dass der Rueckgabewert zu jedem
|
||||
* Zeitpunkt noch auf ein existierendes Schiff zeigt! */
|
||||
|
||||
if (a)
|
||||
|
@ -789,7 +789,7 @@ void u_set_building(unit * u, building * b)
|
|||
{
|
||||
assert(!u->building); /* you must leave first */
|
||||
u->building = b;
|
||||
if (b && !b->_owner) {
|
||||
if (b && (!b->_owner || b->_owner->number <= 0)) {
|
||||
building_set_owner(u);
|
||||
}
|
||||
}
|
||||
|
@ -798,7 +798,7 @@ void u_set_ship(unit * u, ship * sh)
|
|||
{
|
||||
assert(!u->ship); /* you must leave_ship */
|
||||
u->ship = sh;
|
||||
if (sh && !sh->_owner) {
|
||||
if (sh && !sh->_owner || sh->_owner->number <= 0) {
|
||||
ship_set_owner(u);
|
||||
}
|
||||
}
|
||||
|
@ -930,7 +930,7 @@ void transfermen(unit * u, unit * u2, int n)
|
|||
if (n == 0)
|
||||
return;
|
||||
assert(n > 0);
|
||||
/* "hat attackiert"-status wird übergeben */
|
||||
/* "hat attackiert"-status wird uebergeben */
|
||||
|
||||
if (u2) {
|
||||
skill *sv, *sn;
|
||||
|
@ -1016,7 +1016,7 @@ void transfermen(unit * u, unit * u2, int n)
|
|||
set_number(u2, u2->number + n);
|
||||
hp -= u->hp;
|
||||
u2->hp += hp;
|
||||
/* TODO: Das ist schnarchlahm! und gehört nicht hierhin */
|
||||
/* TODO: Das ist schnarchlahm! und gehoert nicht hierhin */
|
||||
a = a_find(u2->attribs, &at_effect);
|
||||
while (a && a->type == &at_effect) {
|
||||
attrib *an = a->next;
|
||||
|
@ -1050,7 +1050,7 @@ struct building *inside_building(const struct unit *u)
|
|||
/* Unterhalt nicht bezahlt */
|
||||
return NULL;
|
||||
} else if (u->building->size < u->building->type->maxsize) {
|
||||
/* Gebäude noch nicht fertig */
|
||||
/* Gebaeude noch nicht fertig */
|
||||
return NULL;
|
||||
} else {
|
||||
int p = 0, cap = buildingcapacity(u->building);
|
||||
|
@ -1118,7 +1118,7 @@ void u_setfaction(unit * u, faction * f)
|
|||
}
|
||||
}
|
||||
|
||||
/* vorsicht Sprüche können u->number == RS_FARVISION haben! */
|
||||
/* vorsicht Sprueche koennen u->number == RS_FARVISION haben! */
|
||||
void set_number(unit * u, int count)
|
||||
{
|
||||
assert(count >= 0);
|
||||
|
@ -1268,8 +1268,8 @@ static int att_modification(const unit * u, skill_t sk)
|
|||
}
|
||||
|
||||
/* TODO hier kann nicht mit get/iscursed gearbeitet werden, da nur der
|
||||
* jeweils erste vom Typ C_GBDREAM zurückgegen wird, wir aber alle
|
||||
* durchsuchen und aufaddieren müssen */
|
||||
* jeweils erste vom Typ C_GBDREAM zurueckgegen wird, wir aber alle
|
||||
* durchsuchen und aufaddieren muessen */
|
||||
if (u->region) {
|
||||
double bonus = 0, malus = 0;
|
||||
attrib *a = a_find(u->region->attribs, &at_curse);
|
||||
|
@ -1278,7 +1278,7 @@ static int att_modification(const unit * u, skill_t sk)
|
|||
if (curse_active(c) && c->type == gbdream_ct) {
|
||||
double mod = curse_geteffect(c);
|
||||
unit *mage = c->magician;
|
||||
/* wir suchen jeweils den größten Bonus und den größten Malus */
|
||||
/* wir suchen jeweils den groesten Bonus und den groesten Malus */
|
||||
if (mod > bonus) {
|
||||
if (mage == NULL || mage->number == 0
|
||||
|| alliedunit(mage, u->faction, HELP_GUARD)) {
|
||||
|
@ -1489,7 +1489,7 @@ unit *create_unit(region * r, faction * f, int number, const struct race *urace,
|
|||
if (r)
|
||||
move_unit(u, r, NULL);
|
||||
|
||||
/* u->race muss bereits gesetzt sein, wird für default-hp gebraucht */
|
||||
/* u->race muss bereits gesetzt sein, wird fuer default-hp gebraucht */
|
||||
/* u->region auch */
|
||||
u->hp = unit_max_hp(u) * number;
|
||||
|
||||
|
@ -1505,7 +1505,7 @@ unit *create_unit(region * r, faction * f, int number, const struct race *urace,
|
|||
/* erbt Kampfstatus */
|
||||
setstatus(u, creator->status);
|
||||
|
||||
/* erbt Gebäude/Schiff */
|
||||
/* erbt Gebaeude/Schiff */
|
||||
if (creator->region == r) {
|
||||
if (creator->building) {
|
||||
u_set_building(u, creator->building);
|
||||
|
@ -1686,7 +1686,7 @@ int unit_max_hp(const unit * u)
|
|||
p = pow(effskill(u, SK_STAMINA) / 2.0, 1.5) * 0.2;
|
||||
h += (int)(h * p + 0.5);
|
||||
}
|
||||
/* der healing curse verändert die maximalen hp */
|
||||
/* der healing curse veraendert die maximalen hp */
|
||||
if (heal_ct) {
|
||||
curse *c = get_curse(u->region->attribs, heal_ct);
|
||||
if (c) {
|
||||
|
|
Loading…
Reference in New Issue