From c937f59536f23cdefe7ee3f1a578627c68af7cc7 Mon Sep 17 00:00:00 2001 From: CTD Date: Thu, 25 Sep 2014 09:54:52 +0200 Subject: [PATCH] =?UTF-8?q?XML=20Option=20hinzugef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Das Segeln nur 1 Skill Level verliert ist Default und somit an. --- src/kernel/unit.c | 15 ++++++++------- src/settings.h | 3 --- 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/src/kernel/unit.c b/src/kernel/unit.c index b7bd1ab43..09c821b70 100644 --- a/src/kernel/unit.c +++ b/src/kernel/unit.c @@ -1280,12 +1280,11 @@ static int att_modification(const unit * u, skill_t sk) return (int)result; } -int -get_modifier(const unit * u, skill_t sk, int level, const region * r, -bool noitem) +int get_modifier(const unit * u, skill_t sk, int level, const region * r, bool noitem) { int bskill = level; int skill = bskill; + int hunger_red_skill = -1; if (r && sk == SK_STEALTH) { plane *pl = rplane(r); @@ -1302,16 +1301,18 @@ bool noitem) } skill = skillmod(u->attribs, u, r, sk, skill, SMF_ALWAYS); -#ifdef HUNGER_REDUCES_SKILL - if (fval(u, UFL_HUNGER)) { - if (sk == SK_SAILING && skill > 2) { + if (hunger_red_skill == -1) { + hunger_red_skill = get_param_int(global.parameters, "rules.hunger.reduces_skill", 2); + } + + if (fval(u, UFL_HUNGER) && hunger_red_skill) { + if (sk == SK_SAILING && skill > 2 && hunger_red_skill == 2) { skill = skill - 1; } else { skill = skill / 2; } } -#endif return skill - bskill; } diff --git a/src/settings.h b/src/settings.h index 552e4c1c9..d682d8119 100644 --- a/src/settings.h +++ b/src/settings.h @@ -29,9 +29,6 @@ #define BATTLE_KILLS_PEASANTS 20 #define PEASANTLUCK 10 -#define HUNGER_REDUCES_SKILL /* Hunger reduziert den Talentwert - auf die Hälfte */ - #define ASTRAL_ITEM_RESTRICTIONS /* keine grossen dinge im astralraum */ #define NEW_DAEMONHUNGER_RULE #define NEW_COMBATSKILLS_RULE