mirror of
https://github.com/nolen777/eagle0.git
synced 2026-07-28 21:55:42 +00:00
Compare commits
2
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
91c990da04 | ||
|
|
f15aab6fe7 |
@@ -179,8 +179,10 @@ namespace eagle {
|
||||
case SealedValueOneofCase.SpendOnFeastsQuest: return "Host Feasts";
|
||||
case SealedValueOneofCase.SendSuppliesQuest: return "Send Supplies";
|
||||
case SealedValueOneofCase.RestProvinceQuest: return "Rest Province";
|
||||
case SealedValueOneofCase.ReconSpecificProvincesQuest: return "Recon Provinces";
|
||||
case SealedValueOneofCase.ReconProvincesQuest: return "Recon Provinces";
|
||||
case SealedValueOneofCase.RepairDevastationQuest: return "Repair Devastation";
|
||||
case SealedValueOneofCase.ReconSpecificProvincesQuest:
|
||||
return "Recon Specific Provinces";
|
||||
}
|
||||
|
||||
throw new ArgumentException($"unknown quest {quest}");
|
||||
|
||||
+8
-1
@@ -425,9 +425,16 @@ namespace eagle {
|
||||
return $"Keep {provinceName} at rest for {quest.ComponentCount} months ({quest.ComponentsFulfilled}/{quest.ComponentCount})";
|
||||
}
|
||||
|
||||
case SealedValueOneofCase.ReconProvincesQuest: {
|
||||
var details = quest.Details.ReconProvincesQuest;
|
||||
return $"Recon {details.TargetProvinceCount} provinces ({quest.ComponentsFulfilled}/{quest.ComponentCount})";
|
||||
}
|
||||
|
||||
case SealedValueOneofCase.ReconSpecificProvincesQuest: {
|
||||
var details = quest.Details.ReconSpecificProvincesQuest;
|
||||
return $"Recon {details.TargetProvinceCount} provinces ({quest.ComponentsFulfilled}/{quest.ComponentCount})";
|
||||
var provinceNames =
|
||||
details.TargetProvinceIds.Select(pid => model.Provinces[pid].Name);
|
||||
return $"Recon {string.Join(", ", provinceNames)} ({quest.ComponentsFulfilled}/{quest.ComponentCount})";
|
||||
}
|
||||
|
||||
case SealedValueOneofCase.RepairDevastationQuest: {
|
||||
|
||||
@@ -58,8 +58,9 @@ message QuestDetails {
|
||||
SpendOnFeastsQuest spend_on_feasts_quest = 41;
|
||||
SendSuppliesQuest send_supplies_quest = 42;
|
||||
RestProvinceQuest rest_province_quest = 43;
|
||||
ReconSpecificProvincesQuest recon_specific_provinces_quest = 44;
|
||||
ReconProvincesQuest recon_provinces_quest = 44;
|
||||
RepairDevastationQuest repair_devastation_quest = 45;
|
||||
ReconSpecificProvincesQuest recon_specific_provinces_quest = 46;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -233,10 +234,14 @@ message RestProvinceQuest {
|
||||
int32 target_province_id = 1;
|
||||
}
|
||||
|
||||
message ReconSpecificProvincesQuest {
|
||||
message ReconProvincesQuest {
|
||||
int32 target_province_count = 1;
|
||||
}
|
||||
|
||||
message RepairDevastationQuest {
|
||||
int32 target_devastation_repaired = 1;
|
||||
}
|
||||
|
||||
message ReconSpecificProvincesQuest {
|
||||
repeated int32 target_province_ids = 1;
|
||||
}
|
||||
+1
-1
@@ -220,7 +220,7 @@ case class CheckForFulfilledQuestsAction(
|
||||
false // action quest - fulfilled in ControlWeatherCommand
|
||||
// Note: WinBattlesQuest is handled by ComponentQuest case above
|
||||
// Note: SpendOnFeastsQuest, SendSuppliesQuest, RestProvinceQuest,
|
||||
// ReconSpecificProvincesQuest, RepairDevastationQuest are ComponentQuests
|
||||
// ReconProvincesQuest, ReconSpecificProvincesQuest, RepairDevastationQuest are ComponentQuests
|
||||
case _: ApprehendOutlawQuest =>
|
||||
false // action quest - fulfilled in ApprehendOutlawCommand
|
||||
}
|
||||
|
||||
+7
-1
@@ -335,11 +335,17 @@ case class DivineMessagePromptGenerator(
|
||||
s"$divinedHeroName wants to see ${targetProvince.name} kept at rest for $componentCount months."
|
||||
)
|
||||
|
||||
case ReconSpecificProvincesQuest(componentCount, _, targetProvinceCount) =>
|
||||
case ReconProvincesQuest(componentCount, _, targetProvinceCount) =>
|
||||
TextGenerationSuccess(
|
||||
s"$divinedHeroName wants $actingHeroName to recon $targetProvinceCount provinces."
|
||||
)
|
||||
|
||||
case ReconSpecificProvincesQuest(componentCount, _, targetProvinceIds) =>
|
||||
val provinceNames = targetProvinceIds.map(pid => gameState.provinces(pid).name)
|
||||
TextGenerationSuccess(
|
||||
s"$divinedHeroName wants $actingHeroName to recon the following provinces: ${provinceNames.mkString(", ")}."
|
||||
)
|
||||
|
||||
case RepairDevastationQuest(_, _, targetDevastationRepaired) =>
|
||||
TextGenerationSuccess(
|
||||
s"$divinedHeroName wants to see $targetDevastationRepaired devastation repaired across the realm."
|
||||
|
||||
+7
-1
@@ -343,11 +343,17 @@ object QuestEndedGeneratorUtilities {
|
||||
unaffiliatedHeroName <- unaffiliatedHeroNameResult
|
||||
} yield s"$unaffiliatedHeroName wanted to see ${targetProvince.name} kept at rest for $componentCount months."
|
||||
|
||||
case ReconSpecificProvincesQuest(componentCount, _, targetProvinceCount) =>
|
||||
case ReconProvincesQuest(componentCount, _, targetProvinceCount) =>
|
||||
for {
|
||||
unaffiliatedHeroName <- unaffiliatedHeroNameResult
|
||||
} yield s"$unaffiliatedHeroName wanted ${faction.name} to recon $targetProvinceCount provinces."
|
||||
|
||||
case ReconSpecificProvincesQuest(componentCount, _, targetProvinceIds) =>
|
||||
val provinceNames = targetProvinceIds.map(pid => gameState.provinces(pid).name)
|
||||
for {
|
||||
unaffiliatedHeroName <- unaffiliatedHeroNameResult
|
||||
} yield s"$unaffiliatedHeroName wanted ${faction.name} to recon the following provinces: ${provinceNames.mkString(", ")}."
|
||||
|
||||
case RepairDevastationQuest(_, _, targetDevastationRepaired) =>
|
||||
for {
|
||||
unaffiliatedHeroName <- unaffiliatedHeroNameResult
|
||||
|
||||
@@ -25,6 +25,7 @@ import net.eagle0.eagle.common.unaffiliated_hero_quest.{
|
||||
MobilizeProvincesQuest as MobilizeProvincesQuestProto,
|
||||
Quest as QuestProto,
|
||||
QuestDetails as QuestDetailsProto,
|
||||
ReconProvincesQuest as ReconProvincesQuestProto,
|
||||
ReconSpecificProvincesQuest as ReconSpecificProvincesQuestProto,
|
||||
ReleaseAllPrisonersQuest as ReleaseAllPrisonersQuestProto,
|
||||
ReleasePrisonerQuest as ReleasePrisonerQuestProto,
|
||||
@@ -238,9 +239,15 @@ object QuestConverter {
|
||||
componentCount = q.componentCount,
|
||||
componentsFulfilled = q.componentsFulfilled
|
||||
)
|
||||
case q: ReconProvincesQuest =>
|
||||
QuestProto(
|
||||
details = ReconProvincesQuestProto(q.targetProvinceCount),
|
||||
componentCount = q.componentCount,
|
||||
componentsFulfilled = q.componentsFulfilled
|
||||
)
|
||||
case q: ReconSpecificProvincesQuest =>
|
||||
QuestProto(
|
||||
details = ReconSpecificProvincesQuestProto(q.targetProvinceCount),
|
||||
details = ReconSpecificProvincesQuestProto(q.targetProvinceIds),
|
||||
componentCount = q.componentCount,
|
||||
componentsFulfilled = q.componentsFulfilled
|
||||
)
|
||||
@@ -469,14 +476,23 @@ object QuestConverter {
|
||||
componentsFulfilled = questProto.componentsFulfilled,
|
||||
targetProvinceId = targetProvinceId
|
||||
)
|
||||
case ReconSpecificProvincesQuestProto(
|
||||
case ReconProvincesQuestProto(
|
||||
targetProvinceCount,
|
||||
_ /* unknownFieldSet */
|
||||
) =>
|
||||
ReconProvincesQuest(
|
||||
componentCount = questProto.componentCount,
|
||||
componentsFulfilled = questProto.componentsFulfilled,
|
||||
targetProvinceCount = targetProvinceCount
|
||||
)
|
||||
case ReconSpecificProvincesQuestProto(
|
||||
targetProvinceIds,
|
||||
_ /* unknownFieldSet */
|
||||
) =>
|
||||
ReconSpecificProvincesQuest(
|
||||
componentCount = questProto.componentCount,
|
||||
componentsFulfilled = questProto.componentsFulfilled,
|
||||
targetProvinceCount = targetProvinceCount
|
||||
targetProvinceIds = targetProvinceIds.toVector
|
||||
)
|
||||
case RepairDevastationQuestProto(
|
||||
targetDevastationRepaired,
|
||||
|
||||
@@ -201,7 +201,7 @@ case class RestProvinceQuest(
|
||||
this.copy(componentsFulfilled = componentsFulfilled)
|
||||
}
|
||||
|
||||
case class ReconSpecificProvincesQuest(
|
||||
case class ReconProvincesQuest(
|
||||
override val componentCount: Int,
|
||||
override val componentsFulfilled: Int,
|
||||
targetProvinceCount: Int
|
||||
@@ -210,6 +210,15 @@ case class ReconSpecificProvincesQuest(
|
||||
this.copy(componentsFulfilled = componentsFulfilled)
|
||||
}
|
||||
|
||||
case class ReconSpecificProvincesQuest(
|
||||
override val componentCount: Int,
|
||||
override val componentsFulfilled: Int,
|
||||
targetProvinceIds: Vector[ProvinceId]
|
||||
) extends ComponentQuest {
|
||||
override def withComponentsFulfilled(componentsFulfilled: Int): Quest =
|
||||
this.copy(componentsFulfilled = componentsFulfilled)
|
||||
}
|
||||
|
||||
case class RepairDevastationQuest(
|
||||
override val componentCount: Int,
|
||||
override val componentsFulfilled: Int,
|
||||
|
||||
Reference in New Issue
Block a user