﻿RegRew_gui_button_trigger_scripted_gui = {
	is_shown = {
		RegRew_mod_requirement_trigger = no
	}
}

RegRew_gui_button_trigger_scripted_liege_gui = {
	is_shown = {
		RegRew_mod_requirement_trigger = yes
		has_active_diarchy = yes
	}
}

RegRew_gui_choose_side_gui = {
	scope = character
	is_shown = {
		liege ?= {
			OR = {
				is_target_in_variable_list = {
					name = RewReg_liege_side_var_list
					target = root
				}
				is_target_in_variable_list = {
					name = RewReg_neutral_side_var_list
					target = root
				}
				is_target_in_variable_list = {
					name = RewReg_diarch_side_var_list
					target = root
				}
			}
		}
	}
}


RewReg_list_scripted_gui = {
	scope = character
	
	effect = {
		if = {
			limit = { exists = diarch  }
			#clear and setup effect
			clear_variable_list = RewReg_liege_side_var_list
			clear_variable_list = RewReg_neutral_side_var_list
			clear_variable_list = RewReg_diarch_side_var_list
			clear_variable_list = RewReg_liege_side_var_list_ordered
			clear_variable_list = RewReg_neutral_side_var_list_ordered
			clear_variable_list = RewReg_diarch_side_var_list_ordered
			remove_variable = RewReg_liege_side_var_gui
			remove_variable = RewReg_neutral_side_var_gui
			remove_variable = RewReg_diarch_side_var_gui
			remove_variable = RewReg_total_var_gui
			remove_variable = RewReg_liege_side_var_gui_pourc
			remove_variable = RewReg_neutral_side_var_gui_pourc
			remove_variable = RewReg_diarch_side_var_gui_pourc
			remove_variable = RegRew_liege_side_perc_point_gui_pg_var
			remove_variable = RegRew_neutral_side_perc_point_gui_pg_var
			remove_variable = RegRew_diarch_side_perc_point_gui_pg_var
			remove_variable = RegRew_swing_value_gui_var
			remove_variable = RewReg_max_power_sharing_gui_var
			remove_variable = RegRew_current_power_value_gui_var
			every_in_list = {
				variable = RewReg_liege_side_var_list
				remove_variable = RewReg_indiv_power_value_perc_var
				remove_variable = RewReg_side_value_perc_var
			}
			every_in_list = {
				variable = RewReg_neutral_side_var_list
				remove_variable = RewReg_indiv_power_value_perc_var
				remove_variable = RewReg_side_value_perc_var
			}
			every_in_list = {
				variable = RewReg_diarch_side_var_list
				remove_variable = RewReg_indiv_power_value_perc_var
				remove_variable = RewReg_side_value_perc_var
			}
			set_variable = {
				name = RewReg_liege_side_var_gui
				value = 0
			}
			set_variable = {
				name = RewReg_neutral_side_var_gui
				value = 0
			}
			set_variable = {
				name = RewReg_diarch_side_var_gui
				value = 0
			}
			set_variable = {
				name = RewReg_total_var_gui
				value = 0
			}
			save_scope_as = RewReg_liege
			diarch = { save_scope_as = RewReg_diarch }
			#set the list on support character
			every_vassal = {
				limit = {
					is_adult = yes
					highest_held_title_tier >= tier_county
					RegRew_side_value < RegRew_minus_side_value
					NOT = { this = scope:RewReg_diarch }
				}
				root = {
					add_to_variable_list = {
						name = RewReg_liege_side_var_list
						target = prev
					}
				}
			}
			every_vassal = {
				limit = {
					is_adult = yes
					highest_held_title_tier >= tier_county
					RegRew_side_value >= RegRew_minus_side_value
					RegRew_side_value <= RegRew_plus_side_value
					NOT = { this = scope:RewReg_diarch }
				}
				root = {
					add_to_variable_list = {
						name = RewReg_neutral_side_var_list
						target = prev
					}
				}
			}
			every_vassal = {
				limit = {
					is_adult = yes
					highest_held_title_tier >= tier_county
					RegRew_side_value > RegRew_plus_side_value
					NOT = { this = scope:RewReg_diarch }
				}
				root = {
					add_to_variable_list = {
						name = RewReg_diarch_side_var_list
						target = prev
					}
				}
			}
			
			every_councillor = {
				limit = {
					is_adult = yes
					RegRew_side_value < RegRew_minus_side_value
					NOT = {highest_held_title_tier >= tier_county }
					NOT = { this = scope:RewReg_diarch }
				}
				root = {
					add_to_variable_list = {
						name = RewReg_liege_side_var_list
						target = prev
					}
				}
			}
			every_councillor = {
				limit = {
					is_adult = yes
					RegRew_side_value >= RegRew_minus_side_value
					RegRew_side_value <= RegRew_plus_side_value
					NOT = {highest_held_title_tier >= tier_county }
					NOT = { this = scope:RewReg_diarch }
				}
				root = {
					add_to_variable_list = {
						name = RewReg_neutral_side_var_list
						target = prev
					}
				}
			}
			every_councillor = {
				limit = {
					is_adult = yes
					RegRew_side_value > RegRew_plus_side_value
					NOT = {highest_held_title_tier >= tier_county }
					NOT = { this = scope:RewReg_diarch }
				}
				root = {
					add_to_variable_list = {
						name = RewReg_diarch_side_var_list
						target = prev
					}
				}
			}
			# count power support on characler list
			RegRew_point_count_gui_effect = {
				LIST = RewReg_liege_side_var_list
				VAR = RewReg_liege_side_var_gui
				VARTOT = RewReg_total_var_gui
			}
			RegRew_point_count_gui_effect = {
				LIST = RewReg_neutral_side_var_list
				VAR = RewReg_neutral_side_var_gui
				VARTOT = RewReg_total_var_gui
			}
			RegRew_point_count_gui_effect = {
				LIST = RewReg_diarch_side_var_list
				VAR = RewReg_diarch_side_var_gui
				VARTOT = RewReg_total_var_gui
			}
			#set variable to display power support of each group
			set_variable = {
				name = RewReg_liege_side_var_gui_pourc
				value = RegRew_liege_side_perc_point_gui
			}
			set_variable = {
				name = RewReg_neutral_side_var_gui_pourc
				value = RegRew_neutral_side_perc_point_gui
			}
			set_variable = {
				name = RewReg_diarch_side_var_gui_pourc
				value = RegRew_diarch_side_perc_point_gui
			}
			#reorder the character item list
			ordered_in_list = {
				variable = RewReg_liege_side_var_list
				order_by = RewReg_indiv_power_value
				max = RewReg_max_list_value
				check_range_bounds = no
				root = {
					add_to_variable_list = {
						name = RewReg_liege_side_var_list_ordered
						target = prev
					}
				}
			}
			ordered_in_list = {
				variable = RewReg_neutral_side_var_list
				order_by = RewReg_indiv_power_value
				max = RewReg_max_list_value
				check_range_bounds = no
				root = {
					add_to_variable_list = {
						name = RewReg_neutral_side_var_list_ordered
						target = prev
					}
				}
			}
			ordered_in_list = {
				variable = RewReg_diarch_side_var_list
				order_by = RewReg_indiv_power_value
				max = RewReg_max_list_value
				check_range_bounds = no
				root = {
					add_to_variable_list = {
						name = RewReg_diarch_side_var_list_ordered
						target = prev
					}
				}
			}
			#set variable to display power support on each character
			every_in_list = {
				variable = RewReg_liege_side_var_list
				set_variable = {
					name = RewReg_indiv_power_value_perc_var
					value = RewReg_indiv_power_value_perc
				}
				set_variable = {
					name = RewReg_side_value_perc_var
					value = RegRew_side_value
				}
			}
			every_in_list = {
				variable = RewReg_neutral_side_var_list
				set_variable = {
					name = RewReg_indiv_power_value_perc_var
					value = RewReg_indiv_power_value_perc
				}
				set_variable = {
					name = RewReg_side_value_perc_var
					value = RegRew_side_value
				}
			}
			every_in_list = {
				variable = RewReg_diarch_side_var_list
				set_variable = {
					name = RewReg_indiv_power_value_perc_var
					value = RewReg_indiv_power_value_perc
				}
				set_variable = {
					name = RewReg_side_value_perc_var
					value = RegRew_side_value
				}
			}
			#set variable to display 
			set_variable = {
				name = RegRew_liege_side_perc_point_gui_pg_var
				value = RegRew_liege_side_perc_point_gui_pg
			}
			set_variable = {
				name = RegRew_neutral_side_perc_point_gui_pg_var
				value = RegRew_neutral_side_perc_point_gui_pg
			}
			set_variable = {
				name = RegRew_diarch_side_perc_point_gui_pg_var
				value = RegRew_diarch_side_perc_point_gui_pg
			}
			set_variable = {
				name = RegRew_swing_value_gui_var
				value = RegRew_swing_value_gui_display
			}
			set_variable = {
				name = RewReg_max_power_sharing_gui_var
				value = RewReg_max_power_sharing_gui
			}
			set_variable = {
				name = RegRew_current_power_value_gui_var
				value = RegRew_current_power_value_gui
			}
		}
	}
}