#######################################
#############地图GUI###################
#######################################
CYSY_draw_the_map = {
	CYSY_map_find_controler = yes
	CYSY_map_displayer_data = yes
	create_CYSY_control_pie_charts = yes
	balance_CYSY_map_control_one_hundred_limited = yes
}


CYSY_map_erase_outline = {
	meta_effect = {
		text = {
			set_variable = { CYSY_map_building_[BUILDING_NUMBER]_outline = 0 }
			#log = "EREASE CYSY_map_selected_building:[BUILDING_NUMBER]"
		}
		BUILDING_NUMBER = "[?CYSY_map_selected_building]"
	}
	CYSY_draw_the_map = yes
} 

CYSY_map_draw_outline = {
	meta_effect = {
		text = {
			set_variable = { CYSY_map_building_[BUILDING_NUMBER]_outline = 1}
			#log = "DRAW CYSY_map_selected_building:[BUILDING_NUMBER]"
		}
		BUILDING_NUMBER = "[?CYSY_map_selected_building]"
	}
	CYSY_draw_the_map = yes
} 


CYSY_map_find_controler = {
	for_loop_effect = {
		start = 1
		end = 12
		value = i
		#log = "[?i]"
		
		set_variable = { max_value = -1}
		set_variable = { max_controler = 1}
		for_loop_effect = {
			start = 1
			end = 6
			value = j
			meta_effect = { 
				text = {
					set_variable = { now_value = CYSY_map_building_[BUILDING_NUMBER]^j }
					#log = "[BUILDING_NUMBER]"
				}
				BUILDING_NUMBER = "[?i]"
			}
			if = {
				limit = {
					check_variable = { max_value < now_value }
				}

				set_variable = { max_value = now_value }
				set_variable = { max_controler = j }
				#log = "[?max_value]"
			}
			
		}
		#log = "[?max_controler]"

		meta_effect = {
			text = {
				set_variable = { CYSY_map_building_[NUMBER]_controler = max_controler }
			}
			NUMBER = "[?i]"
		}
		#log = "这个[?i]号建筑是[?max_controler]"

	}
	
}

CYSY_map_displayer_data = {
	meta_effect = {
		text = {
			set_variable = { ZJC_control_percent = CYSY_map_building_[NUMBER]^1 }
			set_variable = { JWC_control_percent = CYSY_map_building_[NUMBER]^2 }
			set_variable = { XSH_control_percent = CYSY_map_building_[NUMBER]^3 }
			set_variable = { FJW_control_percent = CYSY_map_building_[NUMBER]^4 }
			set_variable = { JBZX_control_percent = CYSY_map_building_[NUMBER]^5 }

			#log = "[NUMBER]"
		}
		NUMBER = "[?CYSY_map_selected_building]"
		
	}
	set_variable = {}
}

balance_CYSY_map_control_one_hundred_limited = {
	for_loop_effect = {
		start = 1
		end = 12
		value = i
		set_temp_variable = { total = 0 }
		for_loop_effect = {
			start = 1
			end = 6
			value = j
			##
			meta_effect = { 
				text = {
					add_to_temp_variable = { total = CYSY_map_building_[BUILDING_NUMBER]^j }
				}
				BUILDING_NUMBER = "[?i]"
			}
		} 
		#log = "[?total]"
		if = {
			limit = {NOT = { check_variable = { total = 100 } }}
			#log = "[?total]"
			for_loop_effect = { 
				start = 1
				end = 6
				value = j
				set_temp_variable = { percent_total = 100  }
				divide_temp_variable = { percent_total = total }
				#log = "[?percent_total]"
				meta_effect = {
					text = {
						multiply_variable = { CYSY_map_building_[NUMBER]^j = percent_total }
						round_variable = CYSY_map_building_[NUMBER]^j
					}
					NUMBER = "[?i]"
				}
			}
			if = {
				limit = {NOT = { check_variable = { total = 100 } }}
				meta_effect = {
					text = {
						add_to_variable = { CYSY_map_building_[NUMBER]^CYSY_map_building_[NUMBER]_controler = 1 }
					}
					NUMBER = "[?i]"
				}
			}
		}
		
	}
}

#############顺序应该与.gui文件中的相反#####
####越往下走，在GUI里面就叠在下面
create_CYSY_control_pie_charts = {

	set_variable = { display_ZJC_pie = ZJC_control_percent } # 先导入百分比
	round_variable = display_ZJC_pie

	set_variable = { display_JWC_pie =  JWC_control_percent } # 先导入百分比
	round_variable = display_JWC_pie
	add_to_variable = { display_JWC_pie = display_ZJC_pie } #叠叠乐之前要把叠在上面的百分比加起来

	set_variable = { display_XSH_pie =  XSH_control_percent }# 先导入百分比
	round_variable = display_XSH_pie
	add_to_variable = { display_XSH_pie = display_JWC_pie }#叠叠乐之前要把叠在上面的百分比加起来

	set_variable = { display_FJW_pie =  FJW_control_percent } # 先导入百分比
	round_variable = display_FJW_pie
	add_to_variable = { display_FJW_pie = display_XSH_pie }#叠叠乐之前要把叠在上面的百分比加起来

	set_variable = { display_JBZX_pie =  JBZX_control_percent } # 先导入百分比
	round_variable = display_JBZX_pie
	add_to_variable = { display_JBZX_pie = display_FJW_pie }#叠叠乐之前要把叠在上面的百分比加起来

}

#######################################
#############建筑进度###################
#######################################
monthly_CYSY_building_constructing = {
	do_CYSY_building_constructing = yes
	check_CYSY_building_constructing = yes
	update_CYSY_building_constructing_completed_left = yes
	update_stability_status = yes
}

# CYSY_building_constructing_data_completed 已经完成的工作量
# CYSY_building_constructing_data_speed 每月速度
# CYSY_building_constructing_completed_left 剩余的月数（四舍五入）
do_CYSY_building_constructing = {
	add_to_variable = { CYSY_building_constructing_data_completed = CYSY_building_constructing_data_speed }
}

update_CYSY_building_constructing_completed_left = {
	set_variable = { CYSY_building_constructing_in_left = 100 }
	subtract_from_variable= { CYSY_building_constructing_in_left = CYSY_building_constructing_data_completed }

	set_variable = {CYSY_building_constructing_completed_left = CYSY_building_constructing_in_left}
	divide_variable = {CYSY_building_constructing_completed_left = CYSY_building_constructing_data_speed}

	round_variable = CYSY_building_constructing_completed_left # （四舍五入）
}
check_CYSY_building_constructing = {
	if = {
		limit = {
			OR={
				check_variable = { CYSY_building_constructing_data_completed > 100 }
				check_variable = { CYSY_building_constructing_data_completed = 100 }
			}
		}
		complete_now_CYSY_building_constructing = yes
	}
}

complete_now_CYSY_building_constructing = {
	clr_country_flag = CYSY_senior_east_building
	set_variable = { CYSY_building_constructing_number = 0}
	set_variable = { CYSY_building_constructing_data_speed = 0}
	set_variable = { CYSY_building_constructing_completed_left = 0}
	set_variable = { CYSY_building_constructing_data_completed = 0}
	country_event = { id = cysyxx.1001 }
}





#################################
###########刷新经济界面###########
#################################
CYSY_update_finance_statistics = {

	set_variable = { CYSY_finance_income_sum = CYSY_finance_income_Tuition }
	add_to_variable = { CYSY_finance_income_sum = CYSY_finance_income_Educhoice }
	add_to_variable = { CYSY_finance_income_sum = CYSY_finance_income_Boardlodge }
	add_to_variable = { CYSY_finance_income_sum = CYSY_finance_income_Other }

	set_variable = { CYSY_finance_expend_sum = CYSY_finance_expend_Salary }
	add_to_variable = { CYSY_finance_expend_sum = CYSY_finance_expend_Facility }
	add_to_variable = { CYSY_finance_expend_sum = CYSY_finance_expend_Boardlodge }
	add_to_variable = { CYSY_finance_expend_sum = CYSY_finance_expend_Other }

	set_variable = { CYSY_finance_current_profit = CYSY_finance_income_sum}
	subtract_from_variable = { CYSY_finance_current_profit = CYSY_finance_expend_sum}

	set_variable = { CYSY_finance_profit_decoration_line_frame = 2 }
	if = {
		limit = {
			check_variable = { CYSY_finance_current_profit < 0 }
		}
		set_variable = { CYSY_finance_profit_decoration_line_frame = 1 }
	}
	

	CYSY_draw_the_graph = yes
	CYSY_finance_statistics_draw_the_pie = yes
}

############绘制饼状图
CYSY_finance_statistics_draw_the_pie = {
	set_variable = { CYSY_finance_income_Tuition_percent = CYSY_finance_income_Tuition }
	
	set_variable = { CYSY_finance_income_Educhoice_percent = CYSY_finance_income_Tuition_percent }
	add_to_variable = { CYSY_finance_income_Educhoice_percent = CYSY_finance_income_Educhoice }
	
	set_variable = { CYSY_finance_income_Boardlodge_percent = CYSY_finance_income_Educhoice_percent }
	add_to_variable = { CYSY_finance_income_Boardlodge_percent = CYSY_finance_income_Boardlodge }
	
	divide_variable = { CYSY_finance_income_Tuition_percent = CYSY_finance_income_sum }
	multiply_variable = { CYSY_finance_income_Tuition_percent = 100 }
	round_variable = CYSY_finance_income_Tuition_percent
 
	divide_variable = { CYSY_finance_income_Boardlodge_percent = CYSY_finance_income_sum }
	multiply_variable= { CYSY_finance_income_Boardlodge_percent = 100 }
	round_variable = CYSY_finance_income_Boardlodge_percent
	
	divide_variable = { CYSY_finance_income_Educhoice_percent = CYSY_finance_income_sum } 
	multiply_variable= { CYSY_finance_income_Educhoice_percent = 100 }
	round_variable = CYSY_finance_income_Educhoice_percent 





	
	set_variable = { CYSY_finance_expend_Salary_percent = CYSY_finance_expend_Salary }
	
	set_variable = { CYSY_finance_expend_Facility_percent = CYSY_finance_expend_Salary_percent }
	add_to_variable = { CYSY_finance_expend_Facility_percent = CYSY_finance_expend_Facility }
	
	set_variable = { CYSY_finance_expend_Boardlodge_percent = CYSY_finance_expend_Facility_percent }
	add_to_variable = { CYSY_finance_expend_Boardlodge_percent = CYSY_finance_expend_Boardlodge }
	
	divide_variable = { CYSY_finance_expend_Salary_percent = CYSY_finance_expend_sum }
	multiply_variable = { CYSY_finance_expend_Salary_percent = 100 }
	round_variable = CYSY_finance_expend_Salary_percent
 
	divide_variable = { CYSY_finance_expend_Boardlodge_percent = CYSY_finance_expend_sum }
	multiply_variable= { CYSY_finance_expend_Boardlodge_percent = 100 }
	round_variable = CYSY_finance_expend_Boardlodge_percent
	
	divide_variable = { CYSY_finance_expend_Facility_percent = CYSY_finance_expend_sum } 
	multiply_variable= { CYSY_finance_expend_Facility_percent = 100 }
	round_variable = CYSY_finance_expend_Facility_percent 

}

############绘制折线统计图
CYSY_draw_the_graph = {
	set_variable = { CYSY_finance_profit_data_history^15 = CYSY_finance_current_profit }
	###处理月份
	set_variable = { CYSY_TYBLY_year = -1} #前年是1961
	set_variable = { CYSY_NOW_year = 1} #今年是1961

	add_to_variable = { CYSY_TYBLY_year = CYSY_standard_year}
	add_to_variable = { CYSY_NOW_year = CYSY_standard_year}
	#负数部分为标准年的前一年，大于13的部分为标准年的后一年
	
	CYSY_develop_ready_graph = yes
	###处理月份
	set_variable = { CYSY_TYBLY_year = -1} #前年是1961
	set_variable = { CYSY_NOW_year = 1} #今年是1961

	add_to_variable = { CYSY_TYBLY_year = CYSY_standard_year}
	add_to_variable = { CYSY_NOW_year = CYSY_standard_year}
	#负数部分为标准年的前一年，大于13的部分为标准年的后一年
}

CYSY_for_on_action_profit_history_update = {
	CYSY_update_finance_statistics = yes
	add_to_variable = { CYSY_finance_current_cash_reserve = CYSY_finance_current_profit }
	add_to_variable = { CYSY_finance_profit_data_now_number = 1 }
	###如果又过去十二个月了，就把基准年往后面移动一年
	set_temp_variable = { CYSY_finance_profit_data_now_number_modulo_temp = CYSY_finance_profit_data_now_number }
	modulo_temp_variable = { CYSY_finance_profit_data_now_number_modulo_temp = 12 }
	if = {
		limit = {
			AND = {
				NOT = { CYSY_finance_profit_data_now_number = 0 }
				check_variable = { CYSY_finance_profit_data_now_number_modulo_temp = 0}
			}
		}
		add_to_variable = { CYSY_standard_year = 1 }
		add_to_variable = { month_standred_1 = 12}
		add_to_variable = { month_standred_12 = 12}
	}
	add_to_variable = { CYSY_graph_months^0 = 1}
	for_loop_effect = {
		start = 0
		end = 16
		value = i
		add_to_variable = { CYSY_graph_months^j = 1}
		set_temp_variable = { j = 15 }
		subtract_from_temp_variable = { j = i }
		set_variable = { CYSY_temp_profit_now = CYSY_finance_profit_data_history^j }
		set_variable = { CYSY_finance_profit_data_history^j = CYSY_temp_profit_last }
		set_variable = {  CYSY_temp_profit_last =  CYSY_temp_profit_now }
	}
	add_to_variable = { CYSY_graph_months^15 = -1 }
	set_variable = { CYSY_finance_profit_data_history^15 = CYSY_finance_current_profit }
	CYSY_update_finance_statistics = yes
}

####是的，这玩意我从巴西那里偷过来的，贼鸡儿好用，非常感谢！
CYSY_develop_ready_graph = {
	# Update frames of buttons
	
	clear_array = CYSY_Line_graph_values
	if = {
		limit = {
			always = yes
		}
		set_variable = { CYSY_Line_graph_base_unit = 2 }
		for_loop_effect = {
			start = 0
			end = 16
			value = i

			add_to_array = { CYSY_Line_graph_values = CYSY_finance_profit_data_history^i }
		}
	}

	clear_array = CYSY_Line_graph_offsets
	clear_array = CYSY_Line_graph_deltas
	clear_array = CYSY_Line_graph_vbars
	clear_array = CYSY_Line_graph_vbar_offsets

	# 找出我们折线的最高点和最低点
	set_temp_variable = { min = CYSY_Line_graph_values^0 }
	set_temp_variable = { max = CYSY_Line_graph_values^0 }
	for_loop_effect = {
		end = 16
		value = i

		if = {
			limit = {
				check_variable = { CYSY_Line_graph_values^i > max }
			}
			set_temp_variable = { max = CYSY_Line_graph_values^i }
		}
		if = {
			limit = {
				check_variable = { CYSY_Line_graph_values^i < min }
			}
			set_temp_variable = { min = CYSY_Line_graph_values^i }
		}
	}
	set_temp_variable = { range = max }
	subtract_from_temp_variable = { range = min }

	# 我们需要找出区间大小，以便后续确定我们的最小单位，或者你理解成分度值，，，
	set_temp_variable = { unit = 10000 }
	if = {
		limit = {
			check_variable = { range < 3 }
		}
		set_temp_variable = { unit = 0.5 }
	}
	else_if = {
		limit = {
			check_variable = { range < 6 }
		}
		set_temp_variable = { unit = 1 }
	}
	else_if = {
		limit = {
			check_variable = { range < 12 }
		}
		set_temp_variable = { unit = 2 }
	}
	else_if = {
		limit = {
			check_variable = { range < 30 }
		}
		set_temp_variable = { unit = 5 }
	}
	else_if = {
		limit = {
			check_variable = { range < 60 }
		}
		set_temp_variable = { unit = 10 }
	}
	else_if = {
		limit = {
			check_variable = { range < 120 }
		}
		set_temp_variable = { unit = 20 }
	}
	else_if = {
		limit = {
			check_variable = { range < 300 }
		}
		set_temp_variable = { unit = 25 }
	}
	else_if = {
		limit = {
			check_variable = { range < 600 }
		}
		set_temp_variable = { unit = 100 }
	}
	else_if = {
		limit = {
			check_variable = { range < 1200 }
		}
		set_temp_variable = { unit = 200 }
	}
	else_if = {
		limit = {
			check_variable = { range < 3000 }
		}
		set_temp_variable = { unit = 250 }
	}
	else_if = {
		limit = {
			check_variable = { range < 6000 }
		}
		set_temp_variable = { unit = 1000 }
	}
	else_if = {
		limit = {
			check_variable = { range < 12000 }
		}
		set_temp_variable = { unit = 2000 }
	}
	else_if = {
		limit = {
			check_variable = { range < 30000 }
		}
		set_temp_variable = { unit = 2500 }
	}
	else_if = {
		limit = {
			check_variable = { range < 50000 }
		}
		set_temp_variable = { unit = 8000 }
	}
	else_if = {
		limit = {
			check_variable = { range < 80000 }
		}
		set_temp_variable = { unit = 12000 }
	}
	else_if = {
		limit = {
			check_variable = { range < 100000 }
		}
		set_temp_variable = { unit = 13500 }
	}
	else_if = {
		limit = {
			check_variable = { range < 135000 }
		}
		set_temp_variable = { unit = 15000 }
	}
	else_if = {
		limit = {
			check_variable = { range < 150000 }
		}
		set_temp_variable = { unit = 25000 }
	}
	else_if = {
		limit = { 
			check_variable = { range < 180000 }
		}
		set_temp_variable = { unit = 25000 }
	}
	else_if = {
		limit = {
			check_variable = { range < 200000 }
		}
		set_temp_variable = { unit = 30000 }
	}
	else_if = {
		limit = {
			check_variable = { range < 600000 }
		}
		set_temp_variable = { unit = 100000 }
	}
	else_if = {
		limit = {
			check_variable = { range < 800000 }
		}
		set_temp_variable = { unit = 200000 }
	}
	else_if = {
		limit = {
			check_variable = { range < 1000000 }
		}
		set_temp_variable = { unit = 200000 }
	}

	else_if = {
		limit = {
			check_variable = { range < 2000000 }
		}
		set_temp_variable = { unit = 250000 }
	}
	else_if = {
		limit = {
			check_variable = { range < 5000000 }
		}
		set_temp_variable = { unit = 800000 }
	}
	else_if = {
		limit = {
			check_variable = { range < 8000000 }
		}
		set_temp_variable = { unit = 1000000 }
	}

	else_if = {
		limit = {
			check_variable = { range < 10000000 }
		}
		set_temp_variable = { unit = 2000000 }
	}
	
	else_if = {
		limit = {
			check_variable = { range < 20000000 }
		}
		set_temp_variable = { unit = 4000000 }
	}
	else_if = {
		limit = {
			check_variable = { range < 50000000 }
		}
		set_temp_variable = { unit = 8000000 }
	}
	else_if = {
		limit = {
			check_variable = { range < 80000000 }
		}
		set_temp_variable = { unit = 10000000 }
	}
	else_if = {
		limit = { 
			check_variable = { range > 100000000 }
		}
		set_temp_variable = { unit = 40000000 }
	}

	divide_temp_variable = { min = unit }
	divide_temp_variable = { max = unit } 
	subtract_from_temp_variable = { min = 0.6 }
	add_to_temp_variable = { max = 0.6 }
	round_temp_variable = min
	round_temp_variable = max

	multiply_temp_variable = { min = unit }
	multiply_temp_variable = { max = unit }

	set_temp_variable = { range = max }
	subtract_from_temp_variable = { range = min }
	if = {
		limit = {
			check_variable = { min < 0 }
		}
		set_temp_variable = { absmin = 0}
		subtract_from_variable = { absmin = min }
	}
	else = {
		set_temp_variable = { absmin = min }
	}
	# Find the unit we should display next to the y axis ticks (ie K, M, B etc)
	#给它上好我们的单位，，， (不是洋人的玩意，是万 百万 和 亿
	set_variable = { CYSY_Line_graph_display_unit = CYSY_Line_graph_base_unit }
	set_temp_variable = { divisor = 1 } #基础是万
	while_loop_effect = {
		limit = {
			check_variable = { divisor < absmin } 
		}
		multiply_temp_variable = { divisor = 10000 } #100万=1百万#100百万=亿
		add_to_variable = { CYSY_Line_graph_display_unit = 1 }
	}
	#divide_temp_variable = { divisor = 100 }
	# Generate the y axis ticks for our graph
	divide_temp_variable = { range = 100 }
	set_temp_variable = { m2 = max }
	add_to_temp_variable = { m2 = 0.25 }
	set_temp_variable = { k = min }
	while_loop_effect = {
		limit = {
			check_variable = { k < m2 }
		}
		set_temp_variable = { label = k}
		divide_temp_variable = { label = divisor }
		add_to_array = { CYSY_Line_graph_vbars = label }
 
		set_temp_variable = { offset = k }
		subtract_from_temp_variable = { offset = min }
		divide_temp_variable = { offset = range }
		multiply_temp_variable = { offset = -1.5 }
		add_to_array = { CYSY_Line_graph_vbar_offsets = offset }

		add_to_temp_variable = { k = unit }
	}
	for_loop_effect = {
		end = 16
		value = i
		subtract_from_temp_variable = { CYSY_Line_graph_vbars^i = divisor}
	}
	# Actually generate the graph line segments
	for_loop_effect = {
		start = 0
		end = 15
		value = i

		set_temp_variable = { j = i }
		add_to_temp_variable = { j = 1 }

		set_temp_variable = { vj = CYSY_Line_graph_values^j }
		set_temp_variable = { vi = CYSY_Line_graph_values^i }
		subtract_from_temp_variable = { vj = min }
		subtract_from_temp_variable = { vi = min }
		divide_temp_variable = { vj = range }
		divide_temp_variable = { vi = range }

		divide_temp_variable = { vj = 2 }
		divide_temp_variable = { vi = 2 }
		round_temp_variable = vi
		round_temp_variable = vj
		multiply_temp_variable = { vj = 2 }
		multiply_temp_variable = { vi = 2 }

		set_temp_variable = { delta = vj }
		subtract_from_temp_variable = { delta = vi }
		divide_temp_variable = { delta = 2 }
		round_temp_variable = delta
		add_to_temp_variable = { delta = 50 }

		set_temp_variable = { offset = vi }
		multiply_temp_variable = { offset = -1.5 }

		add_to_array = { CYSY_Line_graph_offsets = offset }
		add_to_array = { CYSY_Line_graph_deltas = delta }
	}
	
}
