ソースを参照

vcmi: skill-agnostic diplomacy

This is simple and will work.
Konstantin 2 年 前
コミット
c64d05c419
3 ファイル変更3 行追加3 行削除
  1. 1 2
      config/skills.json
  2. 1 0
      lib/HeroBonus.h
  3. 1 1
      lib/mapObjects/MiscObjects.cpp

+ 1 - 2
config/skills.json

@@ -110,8 +110,7 @@
 		"base" : {
 			"effects" : {
 				"main" : {
-					"subtype" : "skill.diplomacy",
-					"type" : "SECONDARY_SKILL_PREMY",
+					"type" : "WANDERING_CREATURES_JOIN_BONUS",
 					"valueType" : "BASE_NUMBER"
 				},
 				"surr" : {

+ 1 - 0
lib/HeroBonus.h

@@ -337,6 +337,7 @@ public:
 	BONUS_NAME(PERCENTAGE_DAMAGE_BOOST) /*skill-agnostic archery and offence, subtype is 0 for offence and 1 for archery*/\
 	BONUS_NAME(LEARN_MEETING_SPELL_LIMIT) /*skill-agnostic scholar, subtype is -1 for all, TODO for others (> 0)*/\
 	BONUS_NAME(ROUGH_TERRAIN_DISCOUNT) /*skill-agnostic pathfinding*/\
+	BONUS_NAME(WANDERING_CREATURES_JOIN_BONUS) /*skill-agnostic diplomacy*/\
 	/* end of list */
 
 

+ 1 - 1
lib/mapObjects/MiscObjects.cpp

@@ -311,7 +311,7 @@ int CGCreature::takenAction(const CGHeroInstance *h, bool allowJoin) const
 	if(count*2 > totalCount)
 		sympathy++; // 2 - hero have similar creatures more that 50%
 
-	int diplomacy = h->valOfBonuses(Bonus::SECONDARY_SKILL_PREMY, SecondarySkill::DIPLOMACY);
+	int diplomacy = h->valOfBonuses(Bonus::WANDERING_CREATURES_JOIN_BONUS);
 	int charisma = powerFactor + diplomacy + sympathy;
 
 	if(charisma < character)