Seeing as nobody else has done anything. I though I'd try and develop some of the ideas we had:
First of all I made a new trigger in export_descr_advice.txt:
Code:
;------------------------------------------
Trigger 2123_fourseasons
WhenToTest FactionTurnStart
Condition FactionIsLocal
and I_TurnNumber = 0
and FactionType romans_julii
and not I_MapName data/world/maps/campaign/sons_of_mars/descr_strat.txt
AdviceThread Seasons_Thread 1
Then I made a new thread above this:
Code:
;------------------------------------------
AdviceThread Seasons_Thread
GameArea Campaign
Item Seasons
Suppressible y
Uninhibitable
Verbosity 1
Priority 1
Threshold 1
MaxRepeats 100
RepeatInterval 1
Attitude Concerned
Presentation Default
Title Settlement_Rebels_Take_Action_Text_01_Title
Script scripts\show_me\fourturns_script.txt
Text Settlement_Rebels_Take_Action_Text_01_Text1
This is just so that whenever you run a new game as the Julii (I guess that condition could be removed) the advisor asks you to run the script, I'll make a personalised text for it eventually.
This is the script called fourturns_script.txt:
Code:
script
suspend_unscripted_advice true
suspend_during_battle on
console_command date -50
console_command season summer
while I_TurnNumber = 0
end_while
disable_shortcuts options_button true
console_command date -50
console_command season summer
while I_TurnNumber = 1
end_while
console_command date -50
console_command season summer
while I_TurnNumber = 2
end_while
console_command date -50
console_command season winter
while I_TurnNumber = 3
end_while
disable_shortcuts options_button false
console_command date -51
console_command season summer
while I_TurnNumber = 4
end_while
disable_shortcuts options_button true
console_command date -51
console_command season summer
while I_TurnNumber = 5
end_while
console_command date -51
console_command season summer
while I_TurnNumber = 6
end_while
console_command date -51
console_command season winter
while I_TurnNumber = 7
end_while
disable_shortcuts options_button false
console_command date -52
console_command season summer
while I_TurnNumber = 8
end_while
disable_shortcuts options_button true
console_command date -52
console_command season summer
while I_TurnNumber = 9
end_while
console_command date -52
console_command season summer
while I_TurnNumber = 10
end_while
console_command date -52
console_command season winter
while I_TurnNumber = 11
end_while
disable_shortcuts options_button false
console_command date -53
console_command season summer
while I_TurnNumber = 12
end_while
disable_shortcuts options_button true
console_command date -53
console_command season summer
while I_TurnNumber = 13
end_while
console_command date -53
console_command season summer
while I_TurnNumber = 14
end_while
console_command date -54
console_command season summer
while I_TurnNumber = 15
end_while
end_script
As you can see at the top I used 'suspend_during_battle on. It worked! The script no longer ends when I play a battle. This is great news.
You'll also see I added 'disable_shortcuts options_button' at some points in the script. I haven't tested this yet, but it should stop the player going to the main menu unless it is the first turn of a year. This will stop the player saving at the wrong time.
Now all we need is a trigger and advice which askes the player to run the script when you load a game.
Now for some more interesting stuff I found. I found the following commands whilst looking through files:
Code:
e_select_settlement
select_ui_element selected_item_button
simulate_mouse_click rclick_up
reveal_advice
I know that 'advisor_portrait_button' is the correct term for that button. I might be possible to put it in a startup script like this:
Code:
select_ui_element advisor_portrait_button
simulate_mouse_click rclick_up
This might not seem usefull at first glance, but. What if the show me button was called 'advisor_show_me_button' or something like that. Then we could have a startup script which goes something like:
Code:
Script
Wait 2 ;Wait two seconds for the advisor portrait to appear.
Reveal_advice ;Start the advisor talking (assuming that is what this command does)
select_ui_element advisor_show_me_button
simulate_mouse_click rclick_up ;Start the script
dissmiss_advice ;Stop the advisor
end_script ;Stop the script
This would mean there would be no need for the player to do anything, the script would run itself. Of course this wouldn't work for loading games but it would still be amazing, I have yet to test it.
Bookmarks