- Neue Wirkung für AdW/RdU. Wird in den settings aktiviert

(siehe vin3-settings).

  Auswertungen müssen unbedingt geprüft werden!
This commit is contained in:
Christian Schlittchen 2002-11-27 19:35:36 +00:00
parent dfc0053f43
commit 6458ff490d
12 changed files with 49 additions and 3 deletions

View File

@ -91,10 +91,13 @@ spy(region * r, unit * u)
* Wahrnehmung als das Ziel Tarnung + Spionage/2 hat */
observe = eff_skill(target, SK_OBSERVATION, r)
- (effskill(u, SK_STEALTH) + eff_skill(u, SK_SPY, r)/2);
#if NEWATSROI == 0
if (invisible(u) >= u->number &&
get_item(target, I_AMULET_OF_TRUE_SEEING) == 0) {
observe = min(observe, 0);
}
#endif
/* Anschließend wird - unabhängig vom Erfolg - gewürfelt, ob der
* Spionageversuch bemerkt wurde. Die Wahrscheinlich dafür ist (100 -

View File

@ -90,9 +90,12 @@ slipthru(const region * r, const unit * u, const building * b)
for (u2 = r->units; u2; u2 = u2->next)
if (usiege(u2) == b) {
#if NEWATSROI == 0
if (invisible(u) >= u->number &&
!get_item(u2, I_AMULET_OF_TRUE_SEEING))
continue;
#endif
o = eff_skill(u2, SK_OBSERVATION, r);

View File

@ -829,9 +829,12 @@ cansee(const faction * f, const region * r, const unit * u, int modifier)
cansee = true;
break;
}
#if NEWATSROI == 0
if (invisible(u) >= u->number
&& !get_item(u2, I_AMULET_OF_TRUE_SEEING))
continue;
#endif
o = eff_skill(u2, SK_OBSERVATION, r);
#if NIGHTEYES
@ -890,8 +893,11 @@ cansee(faction * f, region * r, unit * u, int modifier)
}
else
xcheck = true;
#if NEWATSROI == 0
if (ring && !get_item(u2, I_AMULET_OF_TRUE_SEEING))
continue;
#endif
o = eff_skill(u2, SK_OBSERVATION, r);
#if NIGHTEYES
@ -935,9 +941,12 @@ cansee_durchgezogen(const faction * f, const region * r, const unit * u, int mod
cansee = true;
break;
}
#if NEWATSROI == 0
if (invisible(u) >= u->number
&& !get_item(u2, I_AMULET_OF_TRUE_SEEING))
continue;
#endif
o = eff_skill(u2, SK_OBSERVATION, r);

View File

@ -33,6 +33,7 @@ typedef struct skillmod_data {
skill_t skill;
int (*special)(const struct unit * u, const struct region * r, skill_t sk, int value);
double multiplier;
int number;
int bonus;
int flags;
} skillmod_data;

View File

@ -8854,7 +8854,7 @@ spell spelldaten[] =
{SPL_INVISIBILITY2_ILLAUN, "Erschaffe eine Sphäre der Unsichtbarkeit",
"Mit diesem Spruch kann der Zauberer eine Sphäre der Unsichtbarkeit "
"erschaffen. Die Späre macht ihren Träger sowie einhundert weitere "
"erschaffen. Die Späre macht ihren Träger sowie neunundneunzig weitere "
"Personen in derselben Einheit unsichtbar.",
NULL,
NULL,

View File

@ -964,9 +964,24 @@ item_modification(const unit *u, skill_t sk, int val)
if(sk == SK_SPY && get_item(u, I_PRESSCARD) >= u->number) {
val = val * 2;
}
if(sk == SK_STEALTH && get_item(u, I_PRESSCARD) >= u->number) {
if(sk == SK_STEALTH) {
#if NEWATSROI == 1
if(get_item(u, I_RING_OF_INVISIBILITY)
+ 100 * get_item(u, I_SPHERE_OF_INVISIBILITY) >= u->number) {
val += ROIBONUS;
}
#endif
if(get_item(u, I_PRESSCARD) >= u->number) {
val = 0;
}
}
#if NEWATSROI == 1
if(sk == SK_OBSERVATION) {
if(get_item(u, I_AMULET_OF_TRUE_SEEING) >= u->number) {
val += ATSBONUS;
}
}
#endif
return val;
}
@ -1067,8 +1082,13 @@ eff_skill(const unit * u, skill_t sk, const region * r)
int
invisible(const unit *u)
{
#if NEWATSROI == 1
return 0;
#else
return get_item(u, I_RING_OF_INVISIBILITY)
+ 100 * get_item(u, I_SPHERE_OF_INVISIBILITY);
#endif
}
boolean

View File

@ -40,6 +40,7 @@
#define RESOURCE_QUANTITY 0.5
#define TEACHDIFFERENCE 2
#define GIVERESTRICTION 3
#define NEWATSROI 0
#define CHECK_OVERLOAD_ON_ENTER

View File

@ -41,5 +41,6 @@
#define TEACHDIFFERENCE 2
#define MAXAGE 8
#define GIVERESTRICTION 3
#define NEWATSROI 0
#define MAILITPATH "/usr/sbin:$HOME/tutorial/bin:/bin:/usr/bin:/usr/local/bin"

View File

@ -40,6 +40,11 @@
#define RESOURCE_QUANTITY 0.5
#define TEACHDIFFERENCE 2
#define GIVERESTRICTION 0
#define NEWATSROI 1
#if NEWATSROI == 1
#define ATSBONUS 2
#define ROIBONUS 4
#endif
#define ALLIANCES
#undef ALLIANCEJOIN

View File

@ -33,5 +33,6 @@
#define RECRUITFRACTION 20
#define CATAPULT_AMMUNITION 0
#define CHANGED_CROSSBOWS 0
#define NEWATSROI 0
#define MAILITPATH "/usr/sbin:$HOME/bin:/bin:/usr/bin:/usr/local/bin"

View File

@ -35,6 +35,7 @@
#define RECRUITFRACTION 40
#define CATAPULT_AMMUNITION 1
#define CHANGED_CROSSBOWS 1
#define NEWATSROI 0
#define VICTORY_CONDITION VICTORY_MURDER
#define VICTORY_DELAY 4

View File

@ -33,5 +33,6 @@
#define RECRUITFRACTION 20
#define CATAPULT_AMMUNITION 0
#define CHANGED_CROSSBOWS 0
#define NEWATSROI 0
#define MAILITPATH "/usr/sbin:$HOME/bin:/bin:/usr/bin:/usr/local/bin"