diff --git a/common/component_templates/RG_ship_parts.txt b/common/component_templates/RG_ship_parts.txt index 548be7c..84106d3 100644 --- a/common/component_templates/RG_ship_parts.txt +++ b/common/component_templates/RG_ship_parts.txt @@ -299,6 +299,57 @@ weapon_component_template = { } } +#歼星武器 +weapon_component_template = { + key = "RG_PLANET_KILLER_SMALL" + size = planet_killer + type = planet_killer + + icon = GFX_ship_part_devolution_beam + icon_frame = 1 + + projectile_gfx = "gatebuilder_planet_weapon_ex" + planet_destruction_gfx = "neutron_planet_gfx" + total_fire_time = 60 #开火时间 + firing_arc = 25.0 + + resources = { + category = ship_components + cost = { + alloys = 2000 + nanites = 50 + } + } + + power = -1000 + damage = { min = 3500 max = 35000 } #伤害 + windup = { min = 32 max = 64 } #冷却 + size_damage_factor = 10.0 + hull_damage = 10.0 #船体伤害 + shield_damage = 10.0 #护盾伤害 + armor_damage = 10.0 #装甲伤害 + shield_penetration = 10.0 #护盾穿透 + armor_penetration = 10.0 #装甲穿透 + tracking = 1.00 #追踪 + range = 800.00 #范围 + accuracy = 1.00 #命中 + + ship_modifier = { + custom_tooltip = RG_PLANET_KILLER_tool_tip + } + + tags = { weapon_type_rg_main weapon_type_energy } + size_restriction = { RG_graygoo_capitalship RG_graygoo_mothership } + component_set = "RG_PLANET_KILLER" + prerequisites = { "tech_object_gray_6"} + hidden = yes + ship_limit = 1 + + ai_weight = { + weight = 0 + } +} + #T槽光矛 weapon_component_template = { key = "GRAY_BEAM_STATIC_EX" diff --git a/common/on_actions/RG_on_actions.txt b/common/on_actions/RG_on_actions.txt index 5adea6b..4774f0b 100644 --- a/common/on_actions/RG_on_actions.txt +++ b/common/on_actions/RG_on_actions.txt @@ -45,10 +45,12 @@ on_game_start_country = { } # This = country +# 最高优先级检测才放月检 on_monthly_pulse_country = { events = { - rg.8 - rg.16 + rg.8 #领袖等级检测更新 + rg.16 #陆军压制舰更新 + # rg.22 #小灰复活检测 # rg_skill.9 } } @@ -126,6 +128,19 @@ on_destroy_planet_with_RG_PLANET_KILLER_queued = { on_destroy_planet_with_RG_PLANET_KILLER_unqueued = { } +on_destroy_planet_with_RG_PLANET_KILLER_SMALL = { + events = { + RG_planet_killer.2 + origin.3245 + } +} + +on_destroy_planet_with_RG_PLANET_KILLER_SMALL_queued = { +} + +on_destroy_planet_with_RG_PLANET_KILLER_SMALL_unqueued = { +} + on_destroy_planet_with_RG_PLANET_KILLER_SP = { events = { RG_planet_killer.3 diff --git a/common/scripted_triggers/RG_scripted_triggers_planet_killers.txt b/common/scripted_triggers/RG_scripted_triggers_planet_killers.txt index 9569cd4..280ee55 100644 --- a/common/scripted_triggers/RG_scripted_triggers_planet_killers.txt +++ b/common/scripted_triggers/RG_scripted_triggers_planet_killers.txt @@ -46,6 +46,46 @@ can_destroy_planet_with_RG_PLANET_KILLER = { } } +can_destroy_planet_with_RG_PLANET_KILLER_SMALL = { + custom_tooltip = { + fail_text = "RG_requires_a_star_star_killer" + NOR = { + is_star = yes + is_planet_class = pc_ag_void_star + is_planet_class = pc_ag_void_planet + } + } + custom_tooltip = { + fail_text = "RG_requires_outside_border_star_killer" + NOR = { + AND = { + is_inside_border = from.owner + solar_system = { + any_system_planet = { + OR = { + is_colony = yes + is_under_colonization = yes + } + } + } + } + AND = { + exists = owner + owner = { is_same_value = from.owner } + } + } + } + custom_tooltip = { + fail_text = "RG_requires_no_pacifist_star_killer" + from.owner = { + NOR = { + has_ethic = ethic_fanatic_pacifist + has_ethic = ethic_pacifist + } + } + } +} + can_destroy_planet_with_RG_PLANET_KILLER_SP = { custom_tooltip = { fail_text = "RG_requires_a_star_star_killer" diff --git a/events/!_RG_gray_goo_events.txt b/events/!_RG_gray_goo_events.txt index b3e1049..156228a 100644 --- a/events/!_RG_gray_goo_events.txt +++ b/events/!_RG_gray_goo_events.txt @@ -585,7 +585,7 @@ event = { days = 3600 } country_event = { id = graygoo.511 } - country_event = { id = graygoo.512 days = 3600 } + country_event = { id = rg.22 } } } } diff --git a/events/RG_events.txt b/events/RG_events.txt index fcf7227..861347b 100644 --- a/events/RG_events.txt +++ b/events/RG_events.txt @@ -842,6 +842,33 @@ country_event = { } } +# looping check for grayreforming +country_event = { + id = rg.22 + hide_window = yes + + is_triggered_only = yes + + trigger = { + is_same_value = event_target:gray_owner + has_country_flag = gray_reforming + } + + immediate = { + if = { + limit = { + NOT = { + has_modifier = "gray_scattered" + } + } + country_event = { id = graygoo.512 } + } + else = { + country_event = { id = rg.22 years = 1 } # *THIS* looping check + } + } +} + # 拆毁工厂小灰通讯 country_event = { id = rg.200 diff --git a/events/RG_gray_leader_event.txt b/events/RG_gray_leader_event.txt index b672958..5c51afa 100644 --- a/events/RG_gray_leader_event.txt +++ b/events/RG_gray_leader_event.txt @@ -1137,8 +1137,8 @@ country_event = { nanites = -1000 alloys = -50000 } - remove_country_flag = gray_reforming remove_modifier = "gray_scattered" + country_event = { id = graygoo.512 } } } diff --git a/events/RG_wsg_graygoo_event.txt b/events/RG_wsg_graygoo_event.txt index 4b96d80..1913d7c 100644 --- a/events/RG_wsg_graygoo_event.txt +++ b/events/RG_wsg_graygoo_event.txt @@ -1090,8 +1090,8 @@ country_event = { nanites = -1000 alloys = -50000 } - remove_country_flag = gray_reforming remove_modifier = "gray_scattered" + country_event = { id = graygoo.512 } } } diff --git a/events/RG_wsg_story_event.txt b/events/RG_wsg_story_event.txt index 1d21b77..38f5b48 100644 --- a/events/RG_wsg_story_event.txt +++ b/events/RG_wsg_story_event.txt @@ -1,3 +1,5 @@ +# 这里的事件暂时用不上 + namespace = rg_wsg_story country_event = {