From 33ea7301d9ba3679a7ab283e7a6b20024177eab6 Mon Sep 17 00:00:00 2001
From: hexall90 <hexall90@gmail.com>
Date: Sun, 17 Sep 2017 23:10:42 +0200
Subject: [PATCH] progress on attackHandler

---
 src/SecExp/attackHandler.tw | 86 ++++++++++++++++++++++++++++++++++---
 src/SecExp/attackOptions.tw |  2 +-
 2 files changed, 80 insertions(+), 8 deletions(-)

diff --git a/src/SecExp/attackHandler.tw b/src/SecExp/attackHandler.tw
index 005093e0502..e1c18744e8a 100644
--- a/src/SecExp/attackHandler.tw
+++ b/src/SecExp/attackHandler.tw
@@ -27,9 +27,9 @@
 		<<set _slaveMod -= 0.10>>
 	<<elseif $authority <= 1000>>
 		<<set _slaveMod -= 0.25>>
-	<<elseif $authority >= 5000 && $authority < 10000>>
+	<<elseif $authority >= 5000 && $authority < 15000>>
 		<<set _slaveMod += 0.10>>
-	<<elseif $authority >= 10000>>
+	<<elseif $authority >= 15000>>
 		<<set _slaveMod += 0.25>>
 	<</if>>
 	<<if $PC.career == "escort" || $PC.career == "servant">>
@@ -41,9 +41,9 @@
 		<<set _militiaMod -= 0.10>>
 	<<elseif $rep <= 1000>>
 		<<set _militiaMod -= 0.25>>
-	<<elseif $rep >= 5000 && $rep < 10000>>
+	<<elseif $rep >= 5000 && $rep < 15000>>
 		<<set _militiaMod += 0.10>>
-	<<elseif $rep >= 10000>>
+	<<elseif $rep >= 15000>>
 		<<set _militiaMod += 0.25>>
 	<</if>>
 	<<if $PC.career == "celebrity" || $PC.career == "capitalist">>
@@ -79,7 +79,6 @@
 		<<set _atkMod += 0.20>>
 		<<set _defMod += 0.10>>
 	<</if>>
-/*personal assistant*/
 <<elseif $leadingTroops == "assistant">>
 	<<if $rep < 15000 && $authority < 15000>>
 		<<set _militiaMod -= 0.15>>
@@ -94,11 +93,84 @@
 		<<set _defMod += 0.15>>
 	<</if>>
 <<elseif $leadingTroops == "bodyguard">>
-	<<set _slaveMod += 0.15>>
-	<<if $rep < 15000 && $authority < 15000>>
+	<<if $Bodyguard.devotion < -20>>
+		<<set _slaveMod -= 0.15>>
+	<<elseif $Bodyguard.devotion > 51>>
+		<<set _slaveMod += 0.15>>
+	<</if>>
+	<<if $rep < 15000 && $authority < 15000 || $Bodyguard.prestige < 1>>
+		<<set _militiaMod -= 0.15>>
+		<<set _mercMod -= 0.15>>
+	<<elseif $Bodyguard.prestige >= 2>>
+		<<set _militiaMod += 0.10>>
+		<<set _mercMod += 0.10>>
+	<</if>>
+	<<if !(setup.bodyguardCareers.includes($Bodyguard.career) && setup.HGCareers.includes($Bodyguard.career)) || $Bodyguard.intelligence <= -2>>
+		<<set _atkMod -= 0.15>>
+		<<set _defMod -= 0.15>>
+	<<if !(setup.bodyguardCareers.includes($Bodyguard.career) && setup.HGCareers.includes($Bodyguard.career)) || $Bodyguard.intelligence <= -1>>
+		<<set _atkMod -= 0.10>>
+		<<set _defMod -= 0.10>>
+	<<elseif setup.bodyguardCareers.includes($Bodyguard.career) || setup.HGCareers.includes($Bodyguard.career) || $Bodyguard.intelligence == 2>>
+		<<set _atkMod += 0.10>>
+		<<set _defMod += 0.10>>
+	<<elseif (setup.bodyguardCareers.includes($Bodyguard.career) || setup.HGCareers.includes($Bodyguard.career)) && $Bodyguard.intelligence == 2>>
+		<<set _atkMod += 0.15>>
+		<<set _defMod += 0.10>>
+	<<elseif (setup.bodyguardCareers.includes($Bodyguard.career) || setup.HGCareers.includes($Bodyguard.career)) && $Bodyguard.intelligence == 3>>
+		<<set _atkMod += 0.20>>
+		<<set _defMod += 0.15>>
+	<</if>>
+<<elseif $leadingTroops == "headGirl">>
+	<<if $HeadGirl.devotion < -20>>
+		<<set _slaveMod -= 0.15>>
+	<<elseif $HeadGirl.devotion > 51>>
+		<<set _slaveMod += 0.15>>
+	<</if>>
+	<<if ($rep < 15000 && $authority < 15000) || $HeadGirl.prestige < 1>>
 		<<set _militiaMod -= 0.15>>
 		<<set _mercMod -= 0.15>>
+	<<elseif $HeadGirl.prestige >= 2>>
+		<<set _militiaMod += 0.10>>
+		<<set _mercMod += 0.10>>
 	<</if>>
+	<<if !(setup.bodyguardCareers.includes($HeadGirl.career) && setup.HGCareers.includes($HeadGirl.career)) || $HeadGirl.intelligence <= -2>>
+		<<set _atkMod -= 0.15>>
+		<<set _defMod -= 0.15>>
+	<<if !(setup.bodyguardCareers.includes($HeadGirl.career) && setup.HGCareers.includes($HeadGirl.career)) || $HeadGirl.intelligence <= -1>>
+		<<set _atkMod -= 0.10>>
+		<<set _defMod -= 0.10>>
+	<<elseif setup.bodyguardCareers.includes($HeadGirl.career) || setup.HGCareers.includes($HeadGirl.career) || $HeadGirl.intelligence == 2>>
+		<<set _atkMod += 0.10>>
+		<<set _defMod += 0.10>>
+	<<elseif (setup.bodyguardCareers.includes($HeadGirl.career) || setup.HGCareers.includes($HeadGirl.career)) && $HeadGirl.intelligence == 2>>
+		<<set _atkMod += 0.15>>
+		<<set _defMod += 0.10>>
+	<<elseif (setup.bodyguardCareers.includes($HeadGirl.career) || setup.HGCareers.includes($HeadGirl.career)) && $HeadGirl.intelligence == 3>>
+		<<set _atkMod += 0.20>>
+		<<set _defMod += 0.15>>
+	<</if>>
+<<elseif $leadingTroops == "citizen">>
+	<<if $arcologies[0].FSDegradationist == "unset" && $arcologies[0].FSPaternalist == "unset">>
+		<<set _militiaMod += 0.15>>
+		<<set _slaveMod -= 0.15>>
+	<<elseif $arcologies[0].FSPaternalist != "unset">>
+		<<set _militiaMod += 0.15>>
+		<<set _slaveMod += 0.10>>
+	<<elseif $arcologies[0].FSDegradationist != "unset">>
+		<<set _militiaMod += 0.15>>
+		<<set _slaveMod -= 0.35>>
+	<</if>>
+	<<if $arcologies[0].FSRomanRevivalist != "unset">>
+		<<set _mercMod += 0.10>>
+	<<else>>
+		<<set _mercMod -= 0.10>>
+	<</if>>
+	<<set _atkMod += either(-1,1) * random(10) * 0.1>>
+	<<set _defMod += either(-1,1) * random(10) * 0.1>>
+<<elseif $leadingTroops == "mercenary">>
+
+<</if>>
 
 /* calculates PC army stats */
 <<if $secBots.isDeployed == 1>>
diff --git a/src/SecExp/attackOptions.tw b/src/SecExp/attackOptions.tw
index 400143b2f25..c3483c3feb8 100644
--- a/src/SecExp/attackOptions.tw
+++ b/src/SecExp/attackOptions.tw
@@ -189,7 +189,7 @@ You quickly lay down a plan of action:
 	<</if>>
 	<<if $HeadGirl != 0 && $slavesInArmy == 1>>
 	|
-	<<if $leadingTroops != "headgirl">>
+	<<if $leadingTroops != "headGirl">>
 		<<link "Let your head girl lead your troops">>
 			<<set $leadingTroops = "headGirl">>
 			<<replace "#leader">><strong><<print $HeadGirl.slaveName>></strong><</replace>>
-- 
GitLab