From 76b632b72777f16962e9f65ab5bcecb58f733f4d Mon Sep 17 00:00:00 2001 From: Benjamin Date: Sun, 17 Nov 2024 13:43:12 +0100 Subject: [PATCH] added achievement and custom game rule --- common/achievements/achievements.txt | 11 +++++++ common/game_rules/00_game_rules.txt | 16 ++++++++++ common/raids/destroy_ring_air.txt | 6 ++++ .../diplomacy_scripted_triggers.txt | 28 ++++++++++++++---- gfx/achievements/why_didnt_they_just.dds | Bin 0 -> 4224 bytes gfx/achievements/why_didnt_they_just_grey.dds | Bin 0 -> 5616 bytes .../why_didnt_they_just_not_eligible.dds | Bin 0 -> 5616 bytes .../english/achievements_l_english.yml | 7 ++++- .../english/custom_game_rules_l_english.yml | 8 ++++- patch_notes.txt | 3 +- 10 files changed, 70 insertions(+), 9 deletions(-) create mode 100644 gfx/achievements/why_didnt_they_just.dds create mode 100644 gfx/achievements/why_didnt_they_just_grey.dds create mode 100644 gfx/achievements/why_didnt_they_just_not_eligible.dds diff --git a/common/achievements/achievements.txt b/common/achievements/achievements.txt index 93df132ac..28b17db1c 100644 --- a/common/achievements/achievements.txt +++ b/common/achievements/achievements.txt @@ -435,4 +435,15 @@ ELU_every_hole_is_home = { state = 142 } } +} + +why_didnt_they_just = { + possible = { + achievement_standard_possible_check = yes + NOT = { tag = MOR } + } + + happened = { + has_country_flag = ring_destroyed_with_eagles + } } \ No newline at end of file diff --git a/common/game_rules/00_game_rules.txt b/common/game_rules/00_game_rules.txt index 8b76666e0..055e2b0ea 100644 --- a/common/game_rules/00_game_rules.txt +++ b/common/game_rules/00_game_rules.txt @@ -844,5 +844,21 @@ enable_ring_mechanic = { allow_achievements = no } } +cohesive_factions_restriction = { + name = "COHESIVE_FACTIONS_RESTRICTION" + group = "LOTR_MOD_RULES" + default = { + name = YES + text = "COHESIVE_FACTIONS_RESTRICTION_YES" + desc = "COHESIVE_FACTIONS_RESTRICTION_YES_DESC" + allow_achievements = yes + } + option = { + name = NO + text = "COHESIVE_FACTIONS_RESTRICTION_NO" + desc = "COHESIVE_FACTIONS_RESTRICTION_NO_DESC" + allow_achievements = no + } +} #We could add stuff for political advisor visibility filters here too, in the future diff --git a/common/raids/destroy_ring_air.txt b/common/raids/destroy_ring_air.txt index b49434430..c6e21bbe4 100644 --- a/common/raids/destroy_ring_air.txt +++ b/common/raids/destroy_ring_air.txt @@ -138,6 +138,10 @@ types = { } } actor_effects = { + var:actor_country = { + set_country_flag = ring_destroyed_with_eagles + ring_remove_ring = yes + } raid_damage_units = { plane_loss = 1.0 ratio = yes @@ -157,6 +161,7 @@ types = { } raid_add_unit_experience = 0.75 var:actor_country = { + set_country_flag = ring_destroyed_with_eagles ring_remove_ring = yes } } @@ -178,6 +183,7 @@ types = { } raid_add_unit_experience = 1.0 var:actor_country = { + set_country_flag = ring_destroyed_with_eagles ring_remove_ring = yes } } diff --git a/common/scripted_triggers/diplomacy_scripted_triggers.txt b/common/scripted_triggers/diplomacy_scripted_triggers.txt index 1c2833ffe..c35a15e82 100644 --- a/common/scripted_triggers/diplomacy_scripted_triggers.txt +++ b/common/scripted_triggers/diplomacy_scripted_triggers.txt @@ -670,9 +670,17 @@ DIPLOMACY_JOIN_FACTION_ENABLE_TRIGGER = { always = no } } - OR = { - FROM = { has_common_enemy = yes } - FROM = { in_faction_neighbouring_root = yes } + if = { + limit = { + has_game_rule = { + rule = cohesive_factions_restriction + option = YES + } + } + OR = { + FROM = { has_common_enemy = yes } + FROM = { in_faction_neighbouring_root = yes } + } } } DIPLOMACY_OFFER_JOIN_FACTION_ENABLE_TRIGGER = { @@ -692,9 +700,17 @@ DIPLOMACY_OFFER_JOIN_FACTION_ENABLE_TRIGGER = { always = no } } - OR = { - FROM = { has_common_enemy = yes } - FROM = { has_neighbour_in_roots_faction = yes } + if = { + limit = { + has_game_rule = { + rule = cohesive_factions_restriction + option = YES + } + } + OR = { + FROM = { has_common_enemy = yes } + FROM = { has_neighbour_in_roots_faction = yes } + } } } DIPLOMACY_CREATE_FACTION_ACTION_ENABLE_TRIGGER = { diff --git a/gfx/achievements/why_didnt_they_just.dds b/gfx/achievements/why_didnt_they_just.dds new file mode 100644 index 0000000000000000000000000000000000000000..b5bef2a805db3ec63103de09687158a5783b8131 GIT binary patch literal 4224 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 literal 0 HcmV?d00001 diff --git a/gfx/achievements/why_didnt_they_just_grey.dds b/gfx/achievements/why_didnt_they_just_grey.dds new file mode 100644 index 0000000000000000000000000000000000000000..04018b1640912c0b37803d14a7c1767fc1009ff5 GIT binary patch literal 5616 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 PKPH6wpI5OSNs|5xvafKK literal 0 HcmV?d00001 diff --git a/gfx/achievements/why_didnt_they_just_not_eligible.dds b/gfx/achievements/why_didnt_they_just_not_eligible.dds new file mode 100644 index 0000000000000000000000000000000000000000..3e6fa6a46430c24901f61c5bd170702cb43b41fe GIT binary patch literal 5616 zcmaJ_eNaW4Bf2O zF%4hwX{pBD%Bo#kbw(O0;6r5FZG^hzqrBO5ELvM@jIAGJjjbujVyQHUz}x#^&wX*a zQ-|REIOm>wf9LC-n++RYU}_OUkI{)J2mh~p5Uu>ef5V@GLjL(Y{3%$!asF>V_lv^a5;7nu%e$J$Aa<(Z$dLlY!R`wS6nsCEtEUx3e>kb3zZ$Sd`? z8HAFEyi)JvY~k=`kSphFd-&xMz&ci-S9_zxe+7dM+8E4S26FL|E_+Aw6giLP9i9pn ztLIVdm6@#5z~9N)DS7l0N#$RlKfhF?0ee0}i`Ek!@B+@i1W1Q5B;_oXiuL$z9*>);C-TyLR<$U+s9!vuk zKj5iH_==csct!^KV3V+^xxI(@M`~hduiHY-n}_Yy>)lr1-N|wKX)|T405SS(k3OV{*amk7orkLerVqD?|yTwOx8!5ZZn}WGx5g{ zM+I6=?I;I(g;luTuWxSvEcy{L#l^SaOeB5BJvF}m-43%T_K@5cU%<9jxnr-R>J zh=IM^41@g9{>%e!FXX?I^V93s=jHb>pwD4^MmCaoQn`1s=Wce9_))o% zwsxwW_+t?JV@dK`L|=(VyVx-X_99-vIEtNp;aL$IaE zRw5STkc>UX<3gw+igx?0ST6E509$FR1=*&9GA)Nxh$gzLUGnB%)^0Kb@S8 zMP6|f;;;0Rc>WyjKlh*c@G`8wbl_b|xd;KbW;nTUI6MGY$sgnmyH#wb#5v;<6|+=r zgOSJ!d<^R94g4A8!X~@9XKs$vhhTG;}knEVi(>^YqX0|M32+uY$f3Z?V0T~#*-=EKCQETUj+@J5DThsFoz~eReKDCsQ{^Rq^-@hcED+NC1 z-);-(fA)Mn9VM#$%AU_WQokCOrFzqn(!jokb)&?ytA+Vz|3N3W?b@^BuzvqRNh{Cv zCj;j<#{62h0yVN<-KSP%LIdPZwC1<87Pmq3@x<4GV__y9rU?~L#_808MJe9_9c+>S@^&{v5w$$+^?q8`mV>Y#Zx84Wks-F=~u&lc=i}z#UBZ20n%R<@=6==5Rp#wg0-!tbAi=E9j5c=-68M?{5Q+^|F+u zf|=S<249vapaQvQSz(qLV%q2 zBCfX!nbsN5A1bv|#^Nmjz#42nDvp!;TGBF9!*EX`$esAU?@e9P0a(Z0X8a>}ZI8s? zR%-(Op-ia{$(R+2wMr3e)lz4i_0ca$=yWy}~S7if!X=T4BH+R9U$GeH|0?~% z<(?+*FXg=&OG_mA*I0n@!_5`J80kWKyYMyq5t{}d0cnB%?tJ#Khklj zds@_bZ*I)M_gxs|qQS{^bUTRsN_~sgY*yz<=Q}Oh;ELoupznOwp>>5vJf8;_=6_`# zYI{8Kadm$xSDaSY``uJ-@>^;@m6|aB1oge@_d4jlDRmy%u){%zRxT#_nfDilYHnBW zd%@+P%S=Wi-ha}HkD$Eo(v~d|VE+_6Pxs8p+u^)-vT;X=U%$yguaiyXAjk7HgM3={fp1?Yf-`p zlCR2rSTc2QaAE&RtB#el=LR-bj!i7&U;3`L?Bj)1(_qhs?aQVTGS4dYlbNaJ!<)GO zxNJj&uhL&8Z~SI2tjGPAwlvI<`w7=06AX5zsrw7`&`{VtIEKG`o84Efe1A01)wb>O zR}1}TX$4PJR5cK+yx;m;_8teh4$lwk?i^|W+?e5@b;E~(fK%}M^p#s_xW6yh%i|pM z?9RED-{qn>9ygdRPvX)){@!^91B1M(@%wD-4^rhXBHXKpEuhPB7Qp+We~+hjsE1O&-TG$2&#ew4CqP>HRvtSu~W7 z?oIpg;llYObBnfNknw`IeFaF=