﻿# Aberdeen Act - GBR
je_aberdeen_act = {
    icon = "gfx/interface/icons/event_icons/event_scales.dds"

	group = je_group_historical_content

    immediate = {
        c:BRZ = {
            save_scope_as = brazil_scope
        }
    }

    scripted_button = je_aberdeen_act_button

    complete = {
        c:BRZ ?= {
            NOT = { 
                has_law = law_type:law_slave_trade 
            }
        }
    }

    on_complete = {
        trigger_event = { id = brazilian_slavery.1 }
        show_as_tooltip = {
            if = {
                limit = {
                    has_modifier = brazilian_slave_trade_modifier
                }
                remove_modifier = brazilian_slave_trade_modifier
            }
        }
    }

    on_monthly_pulse = {
        random_events = {
            85 = 0
            10 = brazilian_slavery.2 # Slaver Seized
            5 = brazilian_slavery.4 # Slaver Seized (Brazilian Waters)
        }
    }

    fail = {
        NOT = {
            has_law = law_type:law_slavery_banned
        }
    }

    invalid = {
        NOT = {
            exists = c:BRZ
        }
    }

    on_invalid = {
        if = {
            limit = {
                has_modifier = brazilian_slave_trade_modifier
            }
            hidden_effect = {
                remove_modifier = brazilian_slave_trade_modifier
            }
        }
    }

    timeout = 18250 # 50 Years

    weight = 1000
    should_be_pinned_by_default = yes
}

# Abolition of Slavery - BRZ
je_matter_of_slavery = {
    icon = "gfx/interface/icons/law_icons/slave_trade.dds"

	group = je_group_historical_content

    scripted_progress_bar = matter_of_slavery_progress_bar

    immediate = {
        c:GBR ?= {
            save_scope_as = britain_scope
        }
    }

    scripted_button = golden_law_button
    scripted_button = je_slave_trade_suppression_button
    scripted_button = je_slave_trade_end_suppression_button

    complete = {
        has_law = law_type:law_slavery_banned
        has_revolution = no
    }

    fail = {
        custom_tooltip = {
            text = je_matter_of_slavery_fail
            scope:journal_entry = {
                "scripted_bar_progress(matter_of_slavery_progress_bar)" <= 0
            }
        }
    }

    on_complete = {
        if = {
            limit = {
                has_modifier = unrestricted_slave_trade_modifier
            }
            remove_modifier = unrestricted_slave_trade_modifier
        }
        if = {
            limit = {
                has_modifier = restricted_slave_trade_modifier
            }
            remove_modifier = restricted_slave_trade_modifier
        }
        if = {
            limit = {
                has_journal_entry = je_pedro_brazil
            }
            remove_pedropoint_effect = yes
        }
        if = {
            limit = {
                any_interest_group = {
                    has_modifier = restricted_slave_trade_ig_modifier
                }
            }
            every_interest_group = {
                limit = {
                    has_modifier = restricted_slave_trade_ig_modifier
                }
                remove_modifier = restricted_slave_trade_ig_modifier
            }
        }
        trigger_event = { id = brazilian_slavery.7 popup = yes }
    }

    on_fail = {
        trigger_event = { id = brazilian_slavery.13 popup = yes }
        if = {
            limit = {
                NOT = {
                    has_law = law_type:law_slave_trade
                }
            }
            activate_law = law_type:law_slave_trade
        }
        if = {
            limit = {
                has_modifier = unrestricted_slave_trade_modifier
            }
            remove_modifier = unrestricted_slave_trade_modifier
        }
        if = {
            limit = {
                has_modifier = restricted_slave_trade_modifier
            }
            remove_modifier = restricted_slave_trade_modifier
        }
        show_as_tooltip = {
            ig:ig_rural_folk = {
                add_ideology = ideology_pro_slavery
            }
            add_modifier = {
                name = brazil_slaving_pariah_modifier
            }
        }
        custom_tooltip = je_matter_of_slavery_tt_1
        custom_tooltip = je_matter_of_slavery_tt_2
        if = {
            limit = {
                any_interest_group = {
                    has_modifier = restricted_slave_trade_ig_modifier
                }
            }
            every_interest_group = {
                limit = {
                    has_modifier = restricted_slave_trade_ig_modifier
                }
                remove_modifier = restricted_slave_trade_ig_modifier
            }
        }
    }

    on_weekly_pulse = {
        
    }

    on_monthly_pulse = {
        effect = {
            if = {
				limit = {
					scope:journal_entry = {
						"scripted_bar_progress(matter_of_slavery_progress_bar)" < 0
					}
				}
				scope:journal_entry = {
					set_bar_progress = { value = 0 name = matter_of_slavery_progress_bar }
				}
			}
			if = {
				limit = {
					scope:journal_entry = {
						"scripted_bar_progress(matter_of_slavery_progress_bar)" > 360
					}
				}
				scope:journal_entry = {
					set_bar_progress = { value = 360 name = matter_of_slavery_progress_bar }
				}
			}
        }
        random_events = {
            105 = 0
            10 = brazilian_slavery.8 # Slaves Refuse to Work
            10 = brazilian_slavery.9 # Slave Sabotage
            10 = brazilian_slavery.10 # Slave Escape

            # Slave Paranoia Events
            5 = slave_owner_paranoia_events.1 # A Small Conspiracy
            5 = slave_owner_paranoia_events.2 # Hidden Communities
            5 = slave_owner_paranoia_events.3 # Visiting Abolitionist
        }
    }

    status_desc = {
        first_valid = {
            triggered_desc = {
                desc = je_brazilian_slavery_informal_trade
                trigger = {
                    has_law = law_type:law_slave_trade
                    NOT = { 
                        has_variable = var_slave_trade_suppression_var 
                    }
                }
            }
            triggered_desc = {
                desc = je_brazilian_slavery_suppressed_trade
                trigger = {
                    has_law = law_type:law_slave_trade
                    has_variable = var_slave_trade_suppression_var
                }
            }
            triggered_desc = {
                desc = je_brazilian_slavery_banned_trade
                trigger = {
                    has_law = law_type:law_legacy_slavery
                }
            }
        }
    }

    is_progressing = {
        has_law = law_type:law_slavery_banned
    }

    weight = 1000

    should_be_pinned_by_default = yes
}
