From 4b1f7aba9a484aa81413834f320d7e531b436ccb Mon Sep 17 00:00:00 2001 From: BU_CuiCanYuZhou <126999206+BirghtUniverse@users.noreply.github.com> Date: Tue, 15 Jul 2025 13:41:49 +0800 Subject: [PATCH 1/9] =?UTF-8?q?=E4=BF=AE=E6=94=B9ProbePlus=E7=9A=84RO?= =?UTF-8?q?=E7=BF=BB=E8=AF=91=E4=B8=8D=E7=94=9F=E6=95=88=E7=9A=84=E9=97=AE?= =?UTF-8?q?=E9=A2=98=EF=BC=8C=E5=B9=B6=E6=B7=BB=E5=8A=A0RP-1=E7=9A=84Probe?= =?UTF-8?q?Plus=E7=BF=BB=E8=AF=91=20(#67)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 虽然也不是很建议用 `:FINAL`,但是没空了,遇到问题再说 --- .../Coatl Aerospace/ProbePlus-RO-Patches.cfg | 253 +++--- .../Coatl Aerospace/ProbePlus-RP1-Patches.cfg | 97 +++ .../ProbePlus-Stock-Patches.cfg | 18 +- .../Coatl Aerospace/VABORGANIZER.cfg | 15 + .../Coatl Aerospace/WaterFall/Engines.cfg | 812 ++++++++++++++++++ .../Coatl Aerospace/WaterFall/Solids.cfg | 428 +++++++++ 6 files changed, 1487 insertions(+), 136 deletions(-) create mode 100644 GameData/0000Tinygrox_CNPatches/Coatl Aerospace/ProbePlus-RP1-Patches.cfg create mode 100644 GameData/0000Tinygrox_CNPatches/Coatl Aerospace/VABORGANIZER.cfg create mode 100644 GameData/0000Tinygrox_CNPatches/Coatl Aerospace/WaterFall/Engines.cfg create mode 100644 GameData/0000Tinygrox_CNPatches/Coatl Aerospace/WaterFall/Solids.cfg diff --git a/GameData/0000Tinygrox_CNPatches/Coatl Aerospace/ProbePlus-RO-Patches.cfg b/GameData/0000Tinygrox_CNPatches/Coatl Aerospace/ProbePlus-RO-Patches.cfg index be0c03f..abc923b 100644 --- a/GameData/0000Tinygrox_CNPatches/Coatl Aerospace/ProbePlus-RO-Patches.cfg +++ b/GameData/0000Tinygrox_CNPatches/Coatl Aerospace/ProbePlus-RO-Patches.cfg @@ -1,7 +1,7 @@ //ProbePlus的RO的汉化文件 //Surveyor Lander Core -@PART[ca_landv_core]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_landv_core]:NEEDS[RealismOverhaul]:FINAL { @title = 勘测者号着陆器核心 @manufacturer = 休斯飞机公司 @@ -9,7 +9,7 @@ } //Surveyor Orbiter Core -@PART[ca_landv_orbiter_core]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_landv_orbiter_core]:NEEDS[RealismOverhaul]:FINAL { @title = 勘测者号轨道器核心 @manufacturer = 休斯飞机公司 @@ -17,7 +17,7 @@ } //Surveyor Planar Antenna and Solar Array -@PART[ca_landv_hga]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_landv_hga]:NEEDS[RealismOverhaul]:FINAL { @title = 勘测者号平板天线和太阳能阵列 @manufacturer = 休斯飞机公司 @@ -25,7 +25,7 @@ } //Surveyor Low Gain Antenna (LGA) -@PART[ca_landv_omni]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_landv_omni]:NEEDS[RealismOverhaul]:FINAL { @title = 勘测者号低增益天线(LGA) @manufacturer = 休斯飞机公司 @@ -33,7 +33,7 @@ } //Surveyor Orbiter High Gain Antenna -@PART[ca_landv_orbiter_HGA]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_landv_orbiter_HGA]:NEEDS[RealismOverhaul]:FINAL { @title = 勘测者号轨道器高增益天线 @manufacturer = 休斯飞机公司 @@ -41,7 +41,7 @@ } //Surveyor Battery Pack -@PART[ca_landv_battery]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_landv_battery]:NEEDS[RealismOverhaul]:FINAL { @title = 勘测者号电池包 @manufacturer = 休斯飞机公司 @@ -49,7 +49,7 @@ } //Surveyor Orbiter Solar Array Wing -@PART[ca_landv_sp]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_landv_sp]:NEEDS[RealismOverhaul]:FINAL { @title = 勘测者号轨道器太阳能电池板翼 @manufacturer = 休斯飞机公司 @@ -57,7 +57,7 @@ } //Surveyor Landing Survey Camera -@PART[ca_landv_cam_s1]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_landv_cam_s1]:NEEDS[RealismOverhaul]:FINAL { @title = 勘测者号着陆勘测相机 @manufacturer = 休斯飞机公司 @@ -65,7 +65,7 @@ } //Surveyor Soil Mechanics Surface Sampler -@PART[ca_landv_soilScoop]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_landv_soilScoop]:NEEDS[RealismOverhaul]:FINAL { @title = 勘测者号土壤表面机械采样器 @manufacturer = 休斯飞机公司 @@ -73,21 +73,21 @@ } //CA-A02 Helical Omnidirectional Antenna -@PART[antenna_cone_toggle]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[antenna_cone_toggle]:NEEDS[RealismOverhaul]:FINAL { @title = CA-A02 螺旋全向天线 @description = 适用于月球范围通信的低增益全向天线。 } //CA-GPS Omnidirectional Antenna -@PART[ca_ant_gps]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_ant_gps]:NEEDS[RealismOverhaul]:FINAL { @title = CA-GPS 全向天线 @description = 此天线提供对全球定位系统(GPS)的访问,用于精确跟踪航天器的位置。虽然它可以作为全向天线使用,但在这一功能上效率较低。 } //CA-A01 Ground Plane Antenna -@PART[antenna_tv]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[antenna_tv]:NEEDS[RealismOverhaul]:FINAL { @title = CA-A01 地面平面天线 @description = 这是一个用于遥测目的的简单全向天线。 @@ -95,7 +95,7 @@ //CA-A06 Omnidirectional Antenna -@PART[antenna_quetzal]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[antenna_quetzal]:NEEDS[RealismOverhaul]:FINAL { @title = CA-A06 全向天线 @description = 这是一个简单的全向天线。可以用于短距离通信或作为中增益天线的备份。 @@ -107,14 +107,14 @@ } //CA-A10 Folding Dish Antenna -@PART[dish_deploy_S]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[dish_deploy_S]:NEEDS[RealismOverhaul]:FINAL { @title = CA-A10 折叠式抛物面天线 } //Mariner Mars High Gain Antenna (HGA) -@PART[dish_deploy_S2]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[dish_deploy_S2]:NEEDS[RealismOverhaul]:FINAL { @title = 水手号火星高增益天线 (HGA) @description = 用于早期水手号火星探测器系列的高增益抛物面天线。 @@ -122,7 +122,7 @@ //Juno Parabolic Antenna -@PART[dish_hera]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[dish_hera]:NEEDS[RealismOverhaul]:FINAL { @title = 朱诺号抛物面天线 @description = 用于朱诺号探测器的高增益天线。 @@ -130,7 +130,7 @@ //Voyager 1 & 2 Parabolic Antenna -@PART[dish_L]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[dish_L]:NEEDS[RealismOverhaul]:FINAL { @title = 旅行者 1 & 2 号抛物面天线 @manufacturer = 福特航空航天公司 @@ -139,7 +139,7 @@ //Pioneer 10 & 11 Parabolic Antenna -@PART[dish_quetzal]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[dish_quetzal]:NEEDS[RealismOverhaul]:FINAL { @title = 先驱者 10 & 11 号抛物面天线 @description = 用于先驱者 10 和 11 号探测器的高增益抛物面通信天线。 @@ -147,7 +147,7 @@ //Ulysses Parabolic Antenna -@PART[dish_S]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[dish_S]:NEEDS[RealismOverhaul]:FINAL { @title = 尤利西斯号抛物面天线 @manufacturer = 阿斯特里姆 @@ -156,7 +156,7 @@ //MAVEN Parabolic Antenna -@PART[dish_tatsujin]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[dish_tatsujin]:NEEDS[RealismOverhaul]:FINAL { @title = MAVEN 抛物面天线 @description = MAVEN探测器的主要抛物面通信天线。 @@ -164,7 +164,7 @@ //4MV Spacecraft Bus Antenna Array -@PART[ca_vor_comm]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_vor_comm]:NEEDS[RealismOverhaul]:FINAL { @title = 4MV 航天器平台天线阵列 @manufacturer = 拉沃契金科研生产联合体 @@ -173,7 +173,7 @@ //4MV-1 Spacecraft Bus Parabolic Antenna -@PART[ca_vor_dish]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_vor_dish]:NEEDS[RealismOverhaul]:FINAL { @title = 4MV-1 航天器平台抛物面天线 @manufacturer = 拉沃契金科研生产联合体 @@ -182,7 +182,7 @@ //Cassini Parabolic Antenna -@PART[mer_dish]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[mer_dish]:NEEDS[RealismOverhaul]:FINAL { @title = 卡西尼号抛物面天线 @manufacturer = 意大利航天局 @@ -191,7 +191,7 @@ //STEREO Parabolic Antenna -@PART[dish_xihe]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[dish_xihe]:NEEDS[RealismOverhaul]:FINAL { @title = STEREO 抛物面天线 @description = 用于STEREO(太阳-地球关系观测台)探测器的高增益抛物面通信天线。 @@ -199,7 +199,7 @@ //Mariner Mars & Venus High Gain Antenna (HGA) -@PART[ca_argo-mk2-hga]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_argo-mk2-hga]:NEEDS[RealismOverhaul]:FINAL { @title = 水手号火星与金星高增益天线 (HGA) @manufacturer = 喷气推进实验室 (JPL) @@ -208,7 +208,7 @@ //Mariner Mars & Venus Low Gain Antenna (LGA) -@PART[ca_argo-mk2-mast]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_argo-mk2-mast]:NEEDS[RealismOverhaul]:FINAL { @title = 水手号火星与金星低增益天线 (LGA) @manufacturer = 喷气推进实验室 (JPL) @@ -223,7 +223,7 @@ // Juno Spacecraft Bus -@PART[ca_hera]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_hera]:NEEDS[RealismOverhaul]:FINAL { @title = 朱诺号探测器核心 @manufacturer = 洛克希德·马丁公司 @@ -231,7 +231,7 @@ } //SSTL-150 Satellite Bus -@PART[barquetta]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[barquetta]:NEEDS[RealismOverhaul]:FINAL { @title = SSTL-150 卫星平台 @manufacturer = 洛克希德·马丁公司 @@ -239,7 +239,7 @@ } //Voyager Core -@PART[torekka]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[torekka]:NEEDS[RealismOverhaul]:FINAL { @title = 旅行者号探测器核心 @manufacturer = 喷气推进实验室(JPL) @@ -247,14 +247,14 @@ } //Pioneer 10/11 Core -@PART[quetzal]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[quetzal]:NEEDS[RealismOverhaul]:FINAL { @title = 先驱者 10/11 号探测器核心 @description = 用于先驱者 10/11 号探测器的航空电子和控制单元。 } //LM-DS Generic Spacecraft Bus -@PART[tatsujin]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[tatsujin]:NEEDS[RealismOverhaul]:FINAL { @title = LM-DS 通用探测器平台 @manufacturer = 洛克希德·马丁公司 @@ -262,7 +262,7 @@ } //Venera Lander Bus -@PART[ca_fom_lander]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_fom_lander]:NEEDS[RealismOverhaul]:FINAL { @title = 金星号着陆器核心 @manufacturer = 拉沃契金科研生产联合体 @@ -271,7 +271,7 @@ //4MV Spacecraft Bus -@PART[ca_vor_core]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_vor_core]:NEEDS[RealismOverhaul]:FINAL { @title = 4MV 航天器核心 @manufacturer = 拉沃契金科研生产联合体 @@ -279,7 +279,7 @@ } //Huygens Atmospheric Lander -@PART[ca_draco]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_draco]:NEEDS[RealismOverhaul]:FINAL { @title = 惠更斯号大气探测器 @manufacturer = 欧洲航天局 (ESA) @@ -287,7 +287,7 @@ } //Cassini Spacecraft Bus -@PART[meridiani]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[meridiani]:NEEDS[RealismOverhaul]:FINAL { @title = 卡西尼号探测器核心 @manufacturer = 喷气推进实验室 (JPL) @@ -295,7 +295,7 @@ } //STEREO Spacecraft Bus -@PART[xihe]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[xihe]:NEEDS[RealismOverhaul]:FINAL { @title = STEREO 探测器核心 @manufacturer = 约翰斯·霍普金斯大学应用物理实验室 @@ -303,7 +303,7 @@ } //IUE Spacecraft Bus -@PART[ca_explorer]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_explorer]:NEEDS[RealismOverhaul]:FINAL { @title = IUE 探测器核心 @manufacturer = 美国国家航空航天局 @@ -312,7 +312,7 @@ //Mariner Mars & Venus Spacecraft Bus -@PART[ca_argo-mk2-mast]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_argo-mk2-mast]:NEEDS[RealismOverhaul]:FINAL { @title = 水手号金星 & 火星探测器核心 @manufacturer = 喷气推进实验室 (JPL) @@ -324,7 +324,7 @@ //=============================================================================== //RW-4A Radial Reaction Wheel Assembly -@PART[ca_rw_large]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_rw_large]:NEEDS[RealismOverhaul]:FINAL { @title = RW-4A 径向动量轮组 @manufacturer = 蓝峡谷技术公司 @@ -332,7 +332,7 @@ } //RW-2A Radial Reaction Wheel Assembly -@PART[ca_rw_medium]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_rw_medium]:NEEDS[RealismOverhaul]:FINAL { @title = RW-2A 径向动量轮组 @manufacturer = 蓝峡谷技术公司 @@ -340,7 +340,7 @@ } //RW4 Radial Reaction Wheel -@PART[ca_rw_small]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_rw_small]:NEEDS[RealismOverhaul]:FINAL { @title = RW4 径向动量轮 @manufacturer = 蓝峡谷技术公司 @@ -348,7 +348,7 @@ } //RW1 Radial Reaction Wheel -@PART[ca_rw_xsmall]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_rw_xsmall]:NEEDS[RealismOverhaul]:FINAL { @title = RW1 径向动量轮 @manufacturer = 蓝峡谷技术公司 @@ -356,70 +356,70 @@ } //CA-AACS Advanced Attitude Control System -@PART[ca_aacs]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_aacs]:NEEDS[RealismOverhaul]:FINAL { @title = CA-AACS 高级姿态控制系统 @description = 这是一个集成计算机系统,利用两个星敏感器和环形激光陀螺仪(RLG),为航天器提供姿态控制信息。 } //CA-ACS 'StarTrack' Attitude Control System -@PART[ca_startrack]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_startrack]:NEEDS[RealismOverhaul]:FINAL { @title = CA-ACS "星轨" 姿态控制系统 @description = 这是一个高灵敏度的星敏感器。通过测量不同恒星之间的角度,并与存储的数据库数据进行比较,它为航天器提供姿态控制信息。 } //CAE-RM01 RCS Thruster Block -@PART[ca_rm01]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_rm01]:NEEDS[RealismOverhaul]:FINAL { @title = CAE-RM01 RCS推进器 @description = 这是一个用于上面级或中型航天器姿态控制的 RCS 推进器模块。 } //CAE-RM02 RCS Thruster Block -@PART[ca_RM02]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_RM02]:NEEDS[RealismOverhaul]:FINAL { @title = CAE-RM02 RCS推进器 @description = 这是一个用于上面级或中型航天器姿态控制的 RCS 推进器模块。它提供了精确的姿态调整能力,确保航天器在轨道操作和姿态稳定时的高精度控制。该模块包含四个推力矢量喷嘴,能够实现全方位的姿态调整。 } //CAE-RM03 RCS Thruster Block -@PART[ca_RM03]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_RM03]:NEEDS[RealismOverhaul]:FINAL { @title = CAE-RM03 RCS推进器 @description = 这是一个用于上面级或中型航天器姿态控制的 RCS 推进器模块。它提供了精确的姿态调整能力,确保航天器在轨道操作和姿态稳定时的高精度控制。 } //CAE-RM04 RCS Thruster Block -@PART[ca_RM04]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_RM04]:NEEDS[RealismOverhaul]:FINAL { @title = CAE-RM04 RCS推进器 @description = 这是一个用于上面级或中型航天器姿态控制的 RCS 推进器模块。它提供了精确的姿态调整能力,确保航天器在轨道操作和姿态稳定时的高精度控制。该模块包含四个推力矢量喷嘴,能够实现全方位的姿态调整。 } //CA-RS01 RCS Thruster Block -@PART[ca_RS01]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_RS01]:NEEDS[RealismOverhaul]:FINAL { @title = CA-RS01 RCS推进器 @description = 这是一个非常紧凑的小型 RCS 系统,提供方向推力。该系统设计精巧,适用于需要精确姿态控制的小型航天器或子系统。它能够在有限的空间内提供高效的推力矢量控制,确保航天器在轨道调整和姿态稳定时的高精度操作。适用于小型卫星、探测器以及需要精细姿态控制的任务。 } //CA-RS04 RCS Thruster Block -@PART[ca_RS04]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_RS04]:NEEDS[RealismOverhaul]:FINAL { @title = CA-RS04 RCS推进器 @description = 这个四喷嘴 RCS 推进器模块专为小型航天器的姿态控制系统设计,能够有效补充姿态控制系统的功能。该模块包含四个推力矢量喷嘴,能够在有限的空间内提供全方位的姿态调整能力。 } //CA-RST RCS Thruster Block -@PART[ca_RST]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_RST]:NEEDS[RealismOverhaul]:FINAL { @title = CA-RST RCS推进器 @description = 这个紧凑型推进器模块可以使用单个喷嘴作为方向 RCS 推进器,也可以同时使用全部三个喷嘴作为可调推力火箭发动机。该模块设计灵活,适用于多种任务需求,如精确姿态控制和轨道调整。 } //Cassini Lower Equipment Unit -@PART[ca_mer_leu]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_mer_leu]:NEEDS[RealismOverhaul]:FINAL { @title = 卡西尼号下部设备单元 @manufacturer = 喷气推进实验室 (JPL) @@ -434,7 +434,7 @@ //============================================================================== //Huygens Aeroshell -@PART[ca_draco_as]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_draco_as]:NEEDS[RealismOverhaul]:FINAL { @title = 惠更斯号防护外壳 @manufacturer = 欧洲航天局 (ESA) @@ -442,14 +442,14 @@ } //Huygens Structural Adapter -@PART[mer_ringDecoupler]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[mer_ringDecoupler]:NEEDS[RealismOverhaul]:FINAL { @title = 卡西尼-惠更斯号安装适配器 @description = 这是一个独立的卡西尼-惠更斯号适配器安装组件,可用于其他航天器平台。通过爆炸螺栓释放着陆器有效载荷。 } //Venera Reentry Module Decoupler -@PARTp[ca_vor_sep1]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PARTp[ca_vor_sep1]:NEEDS[RealismOverhaul]:FINAL { @title = 金星号大气着陆器分离环 @manufacturer = 拉沃契金科研生产联合体 @@ -462,28 +462,28 @@ //============================================================================== //CA-300i Battery -@PART[ca_battery_l]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_battery_l]:NEEDS[RealismOverhaul]:FINAL { @title = CA-300i 电池 @description = 这是一款可充电的银氧化物电池,适用于长时间任务的航天器。容量为 1500 Wh,具有高效能和可靠性,能够在极端环境下稳定工作。 } //CA-100i Battery -@PART[ca_battery_100i]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_battery_100i]:NEEDS[RealismOverhaul]:FINAL { @title = CA-100i 电池 @description = 这是一款可充电的银氧化物电池,适用于中小型航天器和卫星。容量为 800 Wh,具有高效能和可靠性,能够在极端环境下稳定工作。 } //CA-25i Battery -@PART[ca_battery_s]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_battery_s]:NEEDS[RealismOverhaul]:FINAL { @title = CA-25i 电池 @description = 这是一款可充电的银氧化物电池,低矮的设计便于安装。容量为 440 Wh } //Pioneer SNAP-19 RTG -@PART[ca_rtg2000]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_rtg2000]:NEEDS[RealismOverhaul]:FINAL { @title = 先驱者号 SNAP-19 放射性同位素热电发电机 @manufacturer = 泰莱达科技公司 @@ -497,7 +497,7 @@ } //Voyager MHW-RTG -@PART[ca_rtg3900]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_rtg3900]:NEEDS[RealismOverhaul]:FINAL { @title = 旅行者号 MHW-RTG @description = 这是旅行者号航天器上使用的数百瓦级钚-238放射性同位素热电发电机(MHW-RTG)。它利用放射性衰变产生的热量转化为电能,为长时间深空任务提供稳定的电力支持。这种发电机能够确保在极端环境下持续供电,适用于深空探测任务。 @@ -510,7 +510,7 @@ } //GPHS-RTG -@PART[ca_rtg8200|ca_mer_rtg]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_rtg8200|ca_mer_rtg]:NEEDS[RealismOverhaul]:FINAL { @title = 通用热源放射性同位素热电发电机 @manufacturer = 美国能源部 @@ -518,21 +518,21 @@ } //Venus Express Solar Array Wing (SAW) -@PART[sp_express_a]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[sp_express_a]:NEEDS[RealismOverhaul]:FINAL { @title = 金星快车号太阳能板 @description = 这是金星快车号航天器使用的太阳能阵列翼。面积为 2.85 m²。该阵列翼为航天器提供必要的电力支持,确保其在金星轨道上的各种科学仪器能够正常运行。 } //Mars Express Solar Array Wing (SAW) -@PART[sp_express_b]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[sp_express_b]:NEEDS[RealismOverhaul]:FINAL { @title = 火星快车号太阳能板 @description = 这是火星快车号航天器使用的太阳能阵列翼。面积为 5.75 m²。 } //Juno Solar Array Wing (Standard) -@PART[sp_juno]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[sp_juno]:NEEDS[RealismOverhaul]:FINAL { @title = 朱诺号太阳能电池板 (标准版) @manufacturer = 洛克希德·马丁公司 @@ -540,55 +540,55 @@ } //Juno Solar Array Wing (Magnetometer) -@PART[sp_juno_mag]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[sp_juno_mag]:NEEDS[RealismOverhaul]:FINAL { - @title = 朱诺号太阳能电池板 (磁强计版) + @title = 朱诺号太阳能电池板 (带磁强计) @manufacturer = 洛克希德·马丁公司 @description = 这是朱诺号探测器的磁强计版太阳能阵列翼。面积 24 m²。\n\n该版本适用于需要测量磁场的任务。 } //sp_mariner_a -@PART[sp_mariner_a]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[sp_mariner_a]:NEEDS[RealismOverhaul]:FINAL { @description = 这是一个类似于水手号火星探测器使用的太阳能阵列翼。面积为 2.34 m²。 } //sp_mariner_b -@PART[sp_mariner_b]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[sp_mariner_b]:NEEDS[RealismOverhaul]:FINAL { @description = 这是一个类似于水手号火星探测器使用的太阳能阵列翼,面积为 2.34 m²。 } //MAVEN Solar Array Wing (SAW) -@PART[sp_maven]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[sp_maven]:NEEDS[RealismOverhaul]:FINAL { @title = MAVEN 太阳能电池板 @description = 这是用于火星大气与挥发物演化任务(MAVEN)航天器的太阳能阵列翼,面积为 11.5 m²。该阵列翼包括一个三轴磁强计,用于测量磁场数据,同时为航天器提供必要的电力支持。 } //Mars Odyssey Solar Array Wing (SAW) -@PART[sp_odyssey_a]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[sp_odyssey_a]:NEEDS[RealismOverhaul]:FINAL { @title = 火星奥德赛号电池板 @description = 这是火星奥德赛号航天器使用的非常高效的砷化镓(GaAs)光伏板。面积为 5.88 m²。该光伏板采用偏心旋转点设计,最小化其收纳时的占地面积,从而提高空间利用率。 } //sp_odyssey_b -@PART[sp_odyssey_b]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[sp_odyssey_b]:NEEDS[RealismOverhaul]:FINAL { @description = 这是一个基于E200系列的改进型光伏系统,面积为 5.46 m²。 } //Venera Lander Bus Solar Array -@PART[ca_fom_sp]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_fom_sp]:NEEDS[RealismOverhaul]:FINAL { @title = 金星号着陆器太阳能电池板 @description = 这是一个小型且基础的太阳能板,面积为 0.15 m²。 } //4MV Spacecraft Bus SAW & TCS (Standard) -@PART[sp_vor_sp]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[sp_vor_sp]:NEEDS[RealismOverhaul]:FINAL { @title = 4MV探测器太阳能电池板 (标准版) @manufacturer = 拉沃契金科研生产联合体 @@ -596,7 +596,7 @@ } //4MV Spacecraft Bus SAW & TCS (Small) -@PART[ca_vor_sp2]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_vor_sp2]:NEEDS[RealismOverhaul]:FINAL { @title = 4MV探测器太阳能电池板 (低配版) @manufacturer = 拉沃契金科研生产联合体 @@ -604,21 +604,21 @@ } //STEREO Solar Array Wing (SAW) -@PART[sp_stereo]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[sp_stereo]:NEEDS[RealismOverhaul]:FINAL { @title = STEREO 太阳能电池板 @description = 这是STEREO(太阳地球关系观测台)航天器使用的太阳能电池板。面积为 1.85 m²。 } //IUE Solar Array Wing (SAW) -@PART[ca_explorer_solar]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_explorer_solar]:NEEDS[RealismOverhaul]:FINAL { @title = IUE 太阳能电池板 @description = 这是为国际紫外探测器(IUE)航天器设计的太阳能电池板。面积为 2 m²。该电池板采用3合1设计,并增加了面板接收太阳光的角度范围,从而只需要粗略对准太阳即可有效工作。 } //Mariner Mars Solar Array Wing (SAW) -@PART[ca_argo-mk2-solar]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_argo-mk2-solar]:NEEDS[RealismOverhaul]:FINAL { @title = 水手号火星探测器太阳能电池板 @manufacturer = 喷气推进实验室 (JPL) @@ -631,7 +631,7 @@ //Cassini Main Engine Assembly -@PART[mer_engine]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[mer_engine]:NEEDS[RealismOverhaul]:FINAL { @title = 卡西尼号主引擎组 @manufacturer = 喷气推进实验室 (JPL) @@ -639,7 +639,7 @@ } //Cassini Propulsion Module -@PART[ca_mer_ft]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_mer_ft]:NEEDS[RealismOverhaul]:FINAL { @title = 卡西尼号推进模块 @manufacturer = 喷气推进实验室 (JPL) @@ -647,35 +647,35 @@ } //Generic 0.5 kN Thruster -@PART[ca_jib]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_jib]:NEEDS[RealismOverhaul]:FINAL { @title = 通用0.5 kN推进器 @description = 这是一款通用的单组元/双组元火箭发动机。可以在广泛的推进剂类型中进行配置。通过喷嘴挡板实现推力矢量控制。 } //CA-LT80 Propellant Tank (Pressurized) -@PART[ca_tank_lfo_m]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_tank_lfo_m]:NEEDS[RealismOverhaul]:FINAL { @title = CA-LT80 推进剂储箱(加压型) @description = 这是一款适用于中型航天器的通用高压推进剂储箱。它可以在高压环境下储存和供应推进剂,确保长时间任务中的稳定性能。 } //CA-MT170 Propellant Tank (Pressurized) -@PART[ca_tank_mp_m]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_tank_mp_m]:NEEDS[RealismOverhaul]:FINAL { @title = CA-MT170 推进剂储箱(加压型) @description = 这是一款通用的高压推进剂储箱,适用于中型航天器。它可以在高压环境下储存和供应推进剂,确保长时间任务中的稳定性能。 } //CA-MT10 Propellant Tank (Pressurized) -@PART[ca_tank_mp_s]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_tank_mp_s]:NEEDS[RealismOverhaul]:FINAL { @title = CA-MT10 推进剂储箱(加压型) @description = 这是一款通用的高压推进剂储箱,适用于小型航天器。它可以在高压环境下储存和供应推进剂,确保长时间任务中的稳定性能。该储箱设计为径向安装,以适应不同的航天器结构需求。 } //Bi-Propellant Apogee Engine -@PART[ca_trident]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_trident]:NEEDS[RealismOverhaul]:FINAL { @title = 双组元远地点发动机 @manufacturer = 赛峰集团 @@ -683,7 +683,7 @@ } //Voyager Propulsion Module -@PART[ca_torekkaPM]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_torekkaPM]:NEEDS[RealismOverhaul]:FINAL { @title = 旅行者号推进模块 @manufacturer = 喷气推进实验室 (JPL) @@ -691,14 +691,14 @@ } //CAE-MT12 Propellant Tank (Pressurized) -@PART[ca_vor_mptank]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_vor_mptank]:NEEDS[RealismOverhaul]:FINAL { @title = CAE-MT12 推进剂储箱(加压型) @description = 这是一款通用的高压推进剂储箱,设计为径向安装。适用于需要在高压环境下储存和供应推进剂的任务,确保长时间任务中的稳定性能。 } //4MV-1/2 Spacecraft Bus Propellant Tank -@PART[ca_vor_tank]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_vor_tank]:NEEDS[RealismOverhaul]:FINAL { @title = 4MV-1/2 航天器平台推进剂储箱 @manufacturer = 拉沃契金科研生产联合体 @@ -710,7 +710,7 @@ //============================================================================== //Cassini Dual Technique Magnetometer -@PART[mer_mag]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[mer_mag]:NEEDS[RealismOverhaul]:FINAL { @title = 卡西尼号双技术磁强计 @manufacturer = 喷气推进实验室 (JPL) & 伦敦帝国理工学院 (ICL) @@ -718,14 +718,14 @@ } //Cassini Optical Remote Sensing Package -@PART[mer_rsp]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[mer_rsp]:NEEDS[RealismOverhaul]:FINAL { @title = 卡西尼号光学遥感组件 @description = 卡西尼号的光学遥感组件,也称为遥感托盘,是一组由相机和光谱仪组成的仪器,设计用于捕捉从红外到紫外多个波长范围内的图像和光谱图。该组件包括:复合红外光谱仪(CIRS)、成像科学子系统(ISS)、紫外成像光谱仪(UVIS)以及可见光和红外测绘光谱仪(VIMS)。 } //ASCAT -@PART[ca_H2RS]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_H2RS]:NEEDS[RealismOverhaul]:FINAL { @title = 高级散射计 @manufacturer = 空客防务与航天公司 @@ -733,7 +733,7 @@ } //Mars Orbiter Laser Altimeter (MOLA) -@PART[ca_HOLA]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_HOLA]:NEEDS[RealismOverhaul]:FINAL { @title = 火星轨道器激光测高仪 (MOLA) @manufacturer = 麦克唐纳·道格拉斯公司 @@ -741,84 +741,84 @@ } //CA-TRIXIE Multi-spectral Imager -@PART[ca_TRIXIE]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_TRIXIE]:NEEDS[RealismOverhaul]:FINAL { @title = CA-TRIXIE 多光谱成像仪 @description = TRIXIE 仪器集成了两个相机组件、一个紫外光谱仪和一个多光谱相机,以对从紫外线到近红外线的多个波长进行成像和扫描。这为从轨道上确定表面特性和特征提供了一种有效的方法。 } //CA-SC103 Accelerometer -@PART[ca_accelerometer]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_accelerometer]:NEEDS[RealismOverhaul]:FINAL { @title = CA-SC103 加速度计 @description = SC103 配备了灵敏的传感器,可以检测到地震振动和航天器加速度。这对于监测航天器的运动状态以及研究天体表面的地震活动非常有用。 } //CA-SC102 Barometer -@PART[ca_barometer]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_barometer]:NEEDS[RealismOverhaul]:FINAL { @title = CA-SC102 气压计 @description = SC102 用于测量局部大气压力。这对于了解着陆点或飞行路径上的天气条件以及大气密度变化至关重要。 } //CA-DUST-C Dust Sample Collector -@PART[ca_DUSTC]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_DUSTC]:NEEDS[RealismOverhaul]:FINAL { @title = CA-DUST-C 尘埃样本收集器 @description = DUST-C 模块配备有气凝胶涂层的收集装置,用于捕捉尘埃颗粒并将其带回地球进行分析。注意:此模块不包含热防护罩和降落伞。 } //CA-DUST-X Cosmic Dust Counter -@PART[ca_DUSTX]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_DUSTX]:NEEDS[RealismOverhaul]:FINAL { @title = CA-DUST-X 宇宙尘埃计数器 @description = DUST-X 是一种用于收集尘埃颗粒并提供其大小、速度和方向信息的仪器。这对于研究宇宙尘埃的来源和特性以及了解太空环境中的微粒分布非常重要。 } //CA-ELIX Electrostatic & Ionization Experiment -@PART[ca_ELIX]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_ELIX]:NEEDS[RealismOverhaul]:FINAL { @title = CA-ELIX 静电与电离实验仪 @description = ELIX 是一种静电分析仪,用于分析带电粒子的组成。通过使用电场和磁场,ELIX 可以根据粒子的质量和电荷对其进行浓缩和分离,从而实现对等离子体密度、速度和分布的非常精确的测量。 } //CA-SC104 Gravity Gradiometer -@PART[ca_gravioli]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_gravioli]:NEEDS[RealismOverhaul]:FINAL { @title = CA-SC104 重力梯度仪 @description = SC104 重力梯度仪用于测量行星体的重力加速度。通过测量重力梯度,可以进行若干关于地下结构和形态的间接观测。这对于研究天体内部构造和地质特征非常重要。 } //CA-SCGRS Gamma Ray Spectrometer -@PART[ca_GRS]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_GRS]:NEEDS[RealismOverhaul]:FINAL { @title = CA-SCGRS 伽马射线光谱仪 @description = 伽马射线光谱仪用于测量当行星表面受到宇宙射线轰击时产生的伽马射线能量。通过测量伽马射线能量,我们可以确定土壤中的元素组成及其浓度。这对于研究天体表面的物质成分和地质历史非常重要。 } //CA-THEMIS Infrared Spectrometer -@PART[ca_KLIR]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_KLIR]:NEEDS[RealismOverhaul]:FINAL { @title = CA-THEMIS 红外光谱仪 @description = THEMIS(热辐射成像系统)用于测量行星体的热辐射,计算表面温度或绘制表面特征的小细节地图。该光谱仪还可以测量红外发射的波长,以检测土壤中的特定矿物成分。这对于研究天体表面的热性质和地质组成非常重要。 } //CA-IUVS Imaging Ultraviolet Spectrometer -@PART[ca_LUV]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_LUV]:NEEDS[RealismOverhaul]:FINAL { @title = CA-IUVS 成像紫外光谱仪 @description = IUVS(成像紫外光谱仪)用于成像紫外线谱段的较低部分。通过这种方式,它可以测量高层大气和电离层的整体特性,提供关于太阳风与大气之间相互作用的信息,以及这些层的组成和形态。这对于研究天体的大气结构和动态过程非常重要。 } //Cassini Radio and Plasma Wave Science -@PART[ca_RPWS]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_RPWS]:NEEDS[RealismOverhaul]:FINAL { @title = 卡西尼号无线电和等离子体波科学仪器 @description = 无线电和等离子体波科学(RPWS)仪器使用灵敏的宽带电场和磁场传感器,以及离子阱探针来测量行星际介质和行星磁层中的电场、磁场、电子密度和温度。这对于研究太阳风与磁层的相互作用、等离子体波以及天体周围的电磁环境非常重要。 } //STEREO/WAVES -@PART[ca_RPWS_STEREO]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_RPWS_STEREO]:NEEDS[RealismOverhaul]:FINAL { @title = STEREO/WAVES @manufacturer = 巴黎天文台 @@ -826,14 +826,14 @@ } //Voyager Science Boom -@PART[ca_sciBoom]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_sciBoom]:NEEDS[RealismOverhaul]:FINAL { @title = 旅行者号科学仪器伸杆 @description = 这是旅行者号深空探测器的科学伸杆。伸杆上安装有窄角和广角相机,用于轨道勘测成像,同时还配备了红外和紫外光谱仪。注意:部署伸杆以使实验设备远离电子设备产生的电磁干扰和辐射。 } //STEREO Boom Suite -@PART[ca_stereoBoom]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_stereoBoom]:NEEDS[RealismOverhaul]:FINAL { @title = STEREO 伸杆组件 @manufacturer = 加州大学洛杉矶分校 (UCLA) @@ -841,35 +841,35 @@ } //CA-SWIA Solar Wind Analyzer -@PART[ca_SWIS]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_SWIS]:NEEDS[RealismOverhaul]:FINAL { @title = CA-SWIA 太阳风分析仪 @description = 太阳风分析仪(SWIA)专门设计用于检测和测量太阳风中的电子和离子的速度及密度。这对于研究太阳风特性及其对地球和行星际空间环境的影响至关重要。 } //CA-HiRISE Telescope -@PART[ca_telescope_a]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_telescope_a]:NEEDS[RealismOverhaul]:FINAL { @title = CA-HiRISE 望远镜 @description = 高分辨率成像科学实验(HiRISE)是一台卡塞格林型可见光谱望远镜,也是飞越深空的探测器中最大的望远镜之一。凭借其高分辨率能力,它可以获取高清晰度的彩色表面图像。这对于研究天体表面特征和地质结构非常重要。 } //CA-SC100 Infrared Radiometer -@PART[ca_thermometer]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_thermometer]:NEEDS[RealismOverhaul]:FINAL { @title = CA-SC100 红外辐射计 @description = SC100 红外辐射计用于测量红外辐射通量,提供关于大气和/或表面土壤温度的信息。这对于研究天体的热特性以及环境条件非常重要。 } //Triaxial Helium Vector Magnetometer -@PART[ca_magneto2]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_magneto2]:NEEDS[RealismOverhaul]:FINAL { @title = 三轴氦矢量磁强计 @description = 磁强计仪器用于确定行星磁场的强度和方向。长伸杆将这些仪器与探测器中的磁性元件造成的任何干扰隔离开来,确保测量的准确性。 } //Vega Camera & Spectrometer Platform -@PART[ca_vor_camera]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_vor_camera]:NEEDS[RealismOverhaul]:FINAL { @title = 织女星相机与光谱仪平台 @manufacturer = 拉沃契金科研生产联合体 @@ -877,7 +877,7 @@ } //Venera Magnetometer -@PART[ca_vor_mag]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_vor_mag]:NEEDS[RealismOverhaul]:FINAL { @title = 金星号磁强计 @manufacturer = 拉沃契金科研生产联合体 @@ -885,7 +885,7 @@ } //Venera Synthetic Aperture Radar Assembly -@PART[ca_vor_sar]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_vor_sar]:NEEDS[RealismOverhaul]:FINAL { @title = 金星号合成孔径雷达组件 @manufacturer = 拉沃契金科研生产联合体 @@ -893,7 +893,7 @@ } //Mariner Mars Scan Platform -@PART[ca_argo-mk2-cam]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_argo-mk2-cam]:NEEDS[RealismOverhaul]:FINAL { @title = 水手号火星扫描平台 @manufacturer = 喷气推进实验室 (JPL) @@ -905,7 +905,7 @@ //================================================================================= //Voyager Truss Adapter -@PART[ca_torekka_truss]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_torekka_truss]:NEEDS[RealismOverhaul]:FINAL { @title = 旅行者号桁架适配器 @manufacturer = 喷气推进实验室 (JPL) @@ -917,7 +917,7 @@ //================================================================================= //Huygens Heat Shield -@PART[ca_draco_hs]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_draco_hs]:NEEDS[RealismOverhaul]:FINAL { @title = 惠更斯号热防护盾 @manufacturer = 欧洲航天局 (ESA) @@ -925,7 +925,7 @@ } //Venera Lander Aeroshell (Heat Shield) -@PART[ca_fom_heatS]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_fom_heatS]:NEEDS[RealismOverhaul]:FINAL { @title = 金星号着陆器外壳(热防护盾) @manufacturer = 拉沃契金科研生产联合体 @@ -933,22 +933,21 @@ } //CA-TCL4 Thermal Control Louver -@PART[ca_louver_s]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_louver_s]:NEEDS[RealismOverhaul]:FINAL { @title = CA-TCL4 百叶窗热控系统 @description = 百叶窗热控系统是热控制系统,通过暴露冷却翅片和散热器来排出热量。打开通风口可以释放航天器内部的热量。这是标准尺寸的系统,额定散热能力为 40 瓦。 } //CA-TCL4-B Thermal Control Louver -@PART[ca_louver_s2]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_louver_s2]:NEEDS[RealismOverhaul]:FINAL { @title = CA-TCL4-B 百叶窗热控系统 - @manufacturer = 通用制造商 @description = 百叶窗热控系统是热控制系统,通过暴露冷却翅片和散热器来排出热量。打开通风口可以释放航天器内部的热量。这是TCL4的另一种更长版本,额定散热能力为50瓦。 } //CA-TCL8 Thermal Control Louver -@PART[ca_louver_m]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_louver_m]:NEEDS[RealismOverhaul]:FINAL { @title = CA-TCL8 百叶窗热控系统 @description = 百叶窗热控系统是热控制系统,通过暴露冷却翅片和散热器来排出热量。打开通风口可以释放航天器内部的热量。该系统高度和性能是TCL4-B的两倍,提供更佳的冷却效果。额定散热能力为100瓦。 @@ -959,7 +958,7 @@ //================================================================================= //Huygens Drogue Parachute -@PART[ca_draco_drogue]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_draco_drogue]:NEEDS[RealismOverhaul]:FINAL { @title = 惠更斯号阻力伞 @manufacturer = 马丁-贝克空间系统公司 (Martin-Baker Space Systems) @@ -967,7 +966,7 @@ } //Huygens Main Parachute -@PART[ca_draco_parachute]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_draco_parachute]:NEEDS[RealismOverhaul]:FINAL { @title = 惠更斯号主降落伞 @manufacturer = 马丁-贝克空间系统公司 (Martin-Baker Space Systems) @@ -975,14 +974,14 @@ } //Pioneer 10/11 Science Package -@PART[ca_ESM]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_ESM]:NEEDS[RealismOverhaul]:FINAL { - @title = 先驱者 10/11 号科学仪器包 + @title = 先驱者 10/11 号科学仪器套件 @description = 这是一个最初为先驱者 10 号和 11 号深空探测器设计的集成科学仪器包。包含一个热控制系统,具备50瓦的散热能力。 } //LM900 Satellite Bus -@PART[ca_ESM2]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_ESM2]:NEEDS[RealismOverhaul]:FINAL { @title = LM900 卫星平台 @manufacturer = 洛克希德·马丁空间系统公司 (Lockheed Martin Space Systems) @@ -990,7 +989,7 @@ } //Venera Lander Aeroshell (Drogue Parachute) -@PART[ca_fom_drogue]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_fom_drogue]:NEEDS[RealismOverhaul]:FINAL { @title = 金星号着陆器气动外壳(阻力伞) @manufacturer = 拉沃契金科研生产联合体 (NPO Lavochkin) @@ -998,7 +997,7 @@ } //Venera Lander Aeroshell (Main Parachute) -@PART[ca_fom_parachute]:NEEDS[RealismOverhaul]:AFTER[CoatlAerospace] +@PART[ca_fom_parachute]:NEEDS[RealismOverhaul]:FINAL { @title = 金星号着陆器外壳(主降落伞) @manufacturer = 拉沃契金科研生产联合体 diff --git a/GameData/0000Tinygrox_CNPatches/Coatl Aerospace/ProbePlus-RP1-Patches.cfg b/GameData/0000Tinygrox_CNPatches/Coatl Aerospace/ProbePlus-RP1-Patches.cfg new file mode 100644 index 0000000..387ac7f --- /dev/null +++ b/GameData/0000Tinygrox_CNPatches/Coatl Aerospace/ProbePlus-RP1-Patches.cfg @@ -0,0 +1,97 @@ +// 在RP-1中,以下Coatl Aerospace科研部件不可用: +// PART[ca_barometer] - CA-SC102 气压计 +// PART[ca_thermometer] - CA-SC100 红外辐射计 +// PART[ca_accelerometer] - CA-SC103 加速度计 +// PART[ca_ELIX] - CA-ELIX 静电与电离实验仪 +// PART[ca_RPWS] - 卡西尼号无线电和等离子体波科学仪器 +// PART[ca_magneto2] - 三轴氦矢量磁强计 +// PART[ca_LUV] - CA-IUVS 成像紫外光谱仪 +// PART[ca_landv_soilScoop] - 土壤机械采样器 +// PART[ca_ESM] - 先驱者 10/11 号科学仪器组件 +// PART[ca_sciBoom] - 旅行者号科学仪器伸杆 +// PART[ca_DUSTC] - CA-DUST-C 尘埃样本收集器 +// PART[ca_KLIR] - CA-THEMIS 红外光谱仪 +// PART[ca_telescope_a] - CA-HiRISE 望远镜 +// PART[ca_GRS] - CA-SCGRS 伽马射线光谱仪 +// PART[ca_DUSTX] - CA-DUST-X 宇宙尘埃计数器 +// PART[ca_SWIS] - CA-SWIA 太阳风分析仪 + + +@PART[RO-HRIRRadiometer]:NEEDS[RP-1]:FINAL +{ + @title = IR02 - 高分辨率红外辐射计 + @description = 高分辨率红外辐射计是一种改进型设备,用于测量云顶和地表特征的热辐射和温度。这对于天气预报非常有用。从历史角度来看,这种实验设备是基于NIMBUS卫星上搭载的仪器设计的。 +} + +@PART[RO-TwoChannelIR]:NEEDS[RP-1]:FINAL +{ + @title = IR03 - 双通道红外辐射计 + @description = 双通道红外辐射计观察并记录行星体在两个宽谱带中的热辐射。如果与图片和其他仪器相关联,这可以帮助检测表面特征,如山脉、山谷和火山。从历史角度来看,这种实验设备是基于水手10号上搭载的仪器设计的。 +} + +@PART[RO-IRIS]:NEEDS[RP-1]:FINAL +{ + @title = IS01 - 红外干涉光谱仪 (IRIS) + @description = IRIS实验用于提供有关大气的垂直结构、成分和动态以及行星体表面和大气层在红外波长下的发射特性的资料。从历史角度来看,这些实验设备曾在许多航天器上搭载,包括NIMBUS 3/4号、火星探测器9号和旅行者1/2号以及其他地球卫星。 +} + +@PART[RO-NIMS]:NEEDS[RP-1]:FINAL +{ + @title = IS03 - 近红外成像光谱仪 (NIMS) + @description = NIMS实验用于提供有关大气的垂直结构、成分和动态以及行星体表面和大气层在红外波长下的发射特性的资料。从历史角度来看,这些实验设备曾在许多航天器上搭载,包括伽利略号。 +} + +@PART[RO-EarlyMagnet]:NEEDS[RP-1]:FINAL +{ + @title = MG01 - 早期磁强计 + @description = 安装在这个折叠臂末端的是早期磁强计,用于测量磁场。尽管这些磁场延伸到太空中,但它们的研究可以揭示行星的核心。像这样的实验也用于研究太阳的磁场以及它如何与行星相互作用。从历史角度来看,这种实验设备是基于许多早期卫星和探测器任务上搭载的设备设计的。 +} + +@PART[RO-HeliumMagnet]:NEEDS[RP-1]:FINAL +{ + @title = MG02 - 氦磁强计 + @description = 安装在这个折叠臂末端的是氦矢量磁强计的主要部分,用于测量磁场。尽管这些磁场延伸到太空中,但它们的研究可以揭示行星的核心。像这样的实验也用于研究太阳的磁场以及它如何与行星相互作用。从历史角度来看,这种实验设备是基于许多任务上搭载的设备设计的,包括先驱者10号。 +} + +@PART[RO-MIMS]:NEEDS[RP-1]:FINAL +{ + @title = MS02 - 磁偏转离子质谱仪(MIMS) + @description = MIMS是对Bennett无线电版本的改进。这些设备配备了微型化的磁性扇形场仪器,质量分辨率远高于Bennett RF质谱仪。质谱分析是一种分析技术,可以使化学物质离子化,并根据其质荷比对离子进行分类。这些数据不仅可以显示电离层的组成,还可以显示太阳风如何影响它,并可以检测大气层之间的相互作用。从历史角度来看,这些实验设备曾在许多地球卫星上搭载,包括探索者31号、AE-C等。 +} + +@PART[RO-PlasmaWave]:NEEDS[RP-1]:FINAL +{ + @title = RPWS01 - 等离子波探测器 + @description = 等离子波探测器用于测量来自太阳风的静电和电磁等离子波。这些数据可以帮助科学家了解太阳风如何影响地球的磁场和大气层。从历史角度来看,这种实验设备是基于先驱者5/6/7/8号上搭载的设备设计的。 +} + +@PART[RO-SWPlasmaAnalyzer]:NEEDS[RP-1]:FINAL +{ + @title = RPWS02 - 太阳风等离子体分析仪 + @description = 太阳风等离子体分析仪用于测量来自太阳风的静电等离子波。这些数据可以帮助科学家了解太阳风如何影响地球的磁场和大气层。从历史角度来看,这种实验设备是基于太阳神号上搭载的设备设计的。 +} + +@PART[RO-SurfaceSampleScoop]:NEEDS[RP-1]:FINAL +{ + @title = 土力学表层采样器 + @description = 土力学表面采样器是一种旨在测试表层土壤(密度、孔隙率、电阻率)的物理特性,并拍摄亚土壤材料照片的仪器。从历史角度来看,这种实验设备是基于勘测者任务上搭载的设备设计的。 +} + +@PART[RO-BasicTVCamera]:NEEDS[RP-1]:FINAL +{ + @title = VI02 - 基础电视摄像机 + @description = 基础电视摄像机用于拍摄行星体的照片。它可以在不同的光照条件下工作,并且可以在不同的高度上进行操作。从历史角度来看,这种实验设备是基于水手任务上搭载的设备设计的。 +} + +@PART[RO-ImprovedTVCamera]:NEEDS[RP-1]:FINAL +{ + @title = VI03 - 改进型电视摄像机 + @description = 改进型电视摄像机用于拍摄行星体的照片。它可以在不同的光照条件下工作,并且可以在不同的高度上进行操作。从历史角度来看,这种实验设备是基于水手任务上搭载的设备设计的。 +} + +@PART[RO-AdvancedImager]:NEEDS[RP-1]:FINAL +{ + @title = VI04 - 先进可见光成像仪 + @description = 先进可见光成像仪用于拍摄行星体的照片。它可以在不同的光照条件下工作,并且可以在不同的高度上进行操作。从历史角度来看,这种实验设备是基于水手任务上搭载的设备设计的。 +} + diff --git a/GameData/0000Tinygrox_CNPatches/Coatl Aerospace/ProbePlus-Stock-Patches.cfg b/GameData/0000Tinygrox_CNPatches/Coatl Aerospace/ProbePlus-Stock-Patches.cfg index c139a67..712e9c1 100644 --- a/GameData/0000Tinygrox_CNPatches/Coatl Aerospace/ProbePlus-Stock-Patches.cfg +++ b/GameData/0000Tinygrox_CNPatches/Coatl Aerospace/ProbePlus-Stock-Patches.cfg @@ -119,7 +119,7 @@ //CA-LV03 Landvermesser Vernier @PART[ca_landv_vernier]:AFTER[CoatlAerospace] { - @title = CA-LV03 勘测者微调发动机 + @title = CA-LV03 勘测者游动发动机 @description = 这个小引擎是设计为安装在勘测者系列中,作为一组三个的集合。它是一种非常高效的早期设计,但非常脆弱,因此不能安装在堆栈上。 } @@ -149,7 +149,7 @@ //CA-BCSS Draco Back Cover Subsystem @PART[ca_draco_as]:AFTER[CoatlAerospace] { - @title = CA-BCSS 天龙座号保护盖 + @title = CA-BCSS 天龙座号护罩 @description = 天龙座探测器的隔热气动外壳在巡航过程中为着陆器提供全面保护,确保其安全抵达目的地。该系统采用高效的隔热材料抵御极端温度,并使用可靠的爆炸螺栓将后盖与隔热罩分离。经过多次测试和模拟验证,该机制表现稳定,未发生任何因分离过程导致的着陆器损坏情况。 } @@ -163,7 +163,7 @@ //CA-FRSS-200 Draco Front Shield Subsystem @PART[ca_draco_hs]:AFTER[CoatlAerospace] { - @title = CA-FRSS-200 天龙座号隔热罩 + @title = CA-FRSS-200 天龙座号热防护罩 @description = CA-FRSS-200 天龙座前盾子系统采用AQ60瓦片盖,专为保护天龙座探测器在大气进入时的安全而设计。该系统结合了气动造型和高效烧蚀材料,能够在探测器进入大气层时有效转移由大气摩擦产生的热量和动能,确保隔热罩和上方的着陆器免受高温损害。 } @@ -191,7 +191,7 @@ //CA-MER-FT140 @PART[ca_mer_ft]:AFTER[CoatlAerospace] { - @title = CA-MER-FT140推进舱 + @title = CA-MER-FT140 推进舱 @description = CA-MER-FT140 是子午线系列的主要机身组件,集成了多种关键系统以支持深空探测任务。该组件不仅存储所有必要的推进剂,还内置了姿态控制推进器、电子设备、推进阀门、老人星星迹仪以及一个备用反应轮,确保在复杂任务中的稳定性和可靠性。紧凑的设计允许部分中空结构,便于安装其他设备,可以通过右键菜单切换防护罩。 } @@ -810,7 +810,7 @@ @PART[ca_jib]:AFTER[CoatlAerospace] { @title = CA-MV04 "三角帆" 单组元推进引擎 - @description = 尽管其名字带有航海的遗产(暗示“Jib”这个词通常用于指代一种船帆),但实际上它的推力可能还不如帆的力量大。不过,这种内置发动机对于轻型飞行器仍然有用,并且可以表面安装以提供设计上的灵活性。 + @description = 尽管其名字带有航海的遗产,但实际上它的推力可能还不如帆的力量大。不过,这种内置发动机对于轻型飞行器仍然有用,并且可以表面安装以提供设计上的灵活性。 } //CA-LV10 "Lahar" Liquid Fuel Engine @@ -831,7 +831,7 @@ @PART[ca_trident]:AFTER[CoatlAerospace] { @title = CA-MV15 "三叉戟" 单组元推进引擎 - @description = 当一群手持长矛的愤怒群众包围了他的办公室时,我们的首席工程师突发奇想,设计了一款三叉形的三喷嘴发动机,使用了三个CA-MV4发动机! + @description = 当一群手持长矛的愤怒群众包围了首席工程师的办公室时,首席工程师突发奇想,设计了一款三叉形的三喷嘴发动机,使用了三个CA-MV4发动机! } //CA-SRB-24C Stella 24C Solid Rocket Motor @@ -1227,8 +1227,8 @@ @MODULE[ModuleAnimateGeneric] { @animationName = 发射激光 - @startEventGUIName = 已发射激光! - @endEventGUIName = 已停止发射激光! + @startEventGUIName = 已开始扫描! + @endEventGUIName = 已停止扫描! @actionGUIName = 切换状态 } } @@ -1258,7 +1258,7 @@ @description = 羲和磁强计是一个用于测量太阳风数据的热控系统。它使用热控系统来控制热源,并使用热源来测量太阳风数据。 @MODULE[DMModuleScienceAnimateGeneric] { - @deployingMessage = 正在测量磁场... + @deployingMessage = 开始测量磁场... @customFailMessage = 该磁强计仅用于太空使用 @endEventGUIName = 收起磁强计 @startEventGUIName = 展开磁强计 diff --git a/GameData/0000Tinygrox_CNPatches/Coatl Aerospace/VABORGANIZER.cfg b/GameData/0000Tinygrox_CNPatches/Coatl Aerospace/VABORGANIZER.cfg new file mode 100644 index 0000000..9998e45 --- /dev/null +++ b/GameData/0000Tinygrox_CNPatches/Coatl Aerospace/VABORGANIZER.cfg @@ -0,0 +1,15 @@ +ORGANIZERSUBCATEGORY +{ + name = PROBEPLUS + Label = Coatl Aerospace 科学仪器 + Priority = 6 + CategoryPriority = 65 +} + +@PART[ca_landv_cam_s1|mer_mag|mer_rsp|ca_vor_camera|ca_vor_mag|ca_landv_soilScoop|ca_accelerometer|ca_barometer|ca_DUSTC|ca_DUSTX|ca_ELIX|ca_gravioli|ca_GRS|ca_KLIR|ca_LUV|ca_RPWS_STEREO|ca_RPWS_STEREO|ca_RPWS|ca_sciBoom|ca_MSW150|ca_SWIS|ca_telescope_a|ca_thermometer|ca_magneto2|ca_H2RS|ca_HOLA|ca_TRIXIE|ca_stereoBoom]:FOR[VABOrganizer] +{ + %VABORGANIZER + { + %organizerSubcategory = PROBEPLUS + } +} \ No newline at end of file diff --git a/GameData/0000Tinygrox_CNPatches/Coatl Aerospace/WaterFall/Engines.cfg b/GameData/0000Tinygrox_CNPatches/Coatl Aerospace/WaterFall/Engines.cfg new file mode 100644 index 0000000..524c51b --- /dev/null +++ b/GameData/0000Tinygrox_CNPatches/Coatl Aerospace/WaterFall/Engines.cfg @@ -0,0 +1,812 @@ +@PART[ca_trident]:BEFORE[Waterfall]:NEEDS[!RealismOverhaul] //三叉戟 +{ + !MODULE[ModuleWaterfallFX] {} + !EFFECTS {} + !MODULE[EngineLightEffect] {} + + EFFECTS + { + engage + { + AUDIO + { + channel = Ship + clip = Waterfall/Sounds/KW/sound_sps + volume = 0.6 + pitch = 1.0 + loop = false + } + } + flameout + { + AUDIO + { + channel = Ship + clip = sound_explosion_low + volume = 1.0 + pitch = 2.0 + loop = false + } + } + fx-ant-running + { + AUDIO + { + channel = Ship + clip = Waterfall/Sounds/KW/sound_spsloop + volume = 0.0 0.0 + volume = 0.1 0.3 + volume = 1.0 0.9 + pitch = 0.0 0.7 + pitch = 1.0 1.0 + loop = true + } + } + } + + MODULE + { + name = ModuleWaterfallFX + // This is a custom name + moduleID = tridentFX + // This links the effects to a given ModuleEngines + engineID = basicEngine + + // List out all controllers we want available + // This controller scales with atmosphere depth + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + // This controller scales with effective throttle + CONTROLLER + { + name = throttle + linkedTo = throttle + } + // this controller generates a random value in the range specified + CONTROLLER + { + name = random + linkedTo = random + range = -1,1 + } + + TEMPLATE + { + // This is the name of the template to use + templateName = waterfall-hydrazine-monopropellant-upper-1 + // This field allows you to override the parentTransform name in the EFFECTS contained in the template + overrideParentTransform = Thrust_transform + position = 0,0,0.15 + rotation = -90, 0, 0 + scale = 0.5, 0.5, 0.5 + } + } +} + +@PART[mer_engine]:BEFORE[Waterfall]:NEEDS[!RealismOverhaul] //多米尼克(卡西尼号主引擎) +{ + !MODULE[ModuleWaterfallFX] {} + !EFFECTS {} + !MODULE[EngineLightEffect] {} + + EFFECTS + { + engage + { + AUDIO + { + channel = Ship + clip = Waterfall/Sounds/KW/sound_sps + volume = 0.6 + pitch = 1.0 + loop = false + } + } + flameout + { + AUDIO + { + channel = Ship + clip = sound_explosion_low + volume = 1.0 + pitch = 2.0 + loop = false + } + } + fx-merengine-running + { + AUDIO + { + channel = Ship + clip = Waterfall/Sounds/KW/sound_spsloop + volume = 0.0 0.0 + volume = 0.1 0.3 + volume = 1.0 0.9 + pitch = 0.0 0.7 + pitch = 1.0 1.0 + loop = true + } + } + } + + MODULE + { + name = ModuleWaterfallFX + // This is a custom name + moduleID = mer_EningeFX + // This links the effects to a given ModuleEngines + engineID = basicEngine + + // List out all controllers we want available + // This controller scales with atmosphere depth + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + // This controller scales with effective throttle + CONTROLLER + { + name = throttle + linkedTo = throttle + } + // this controller generates a random value in the range specified + CONTROLLER + { + name = random + linkedTo = random + range = -1,1 + } + + TEMPLATE + { + // This is the name of the template to use + templateName = waterfall-hydrazine-monopropellant-upper-1 + // This field allows you to override the parentTransform name in the EFFECTS contained in the template + overrideParentTransform = thrustTransform + position = 0,0,0.1 + rotation = -90, 0, 0 + scale = 1, 1, 1 + } + + } +} + +@PART[ca_jib]:BEFORE[Waterfall]:NEEDS[!RealismOverhaul] //三角帆 +{ + !MODULE[ModuleWaterfallFX] {} + !EFFECTS {} + !MODULE[EngineLightEffect] {} + EFFECTS + { + running + { + AUDIO + { + channel = Ship + clip = Waterfall/Sounds/KW/sound_spsloop + volume = 0.0 0.0 + volume = 0.01 0.1 + volume = 1.0 0.8 + pitch = 0.0 1 + pitch = 1.0 1 + loop = true + } + } + engage + { + AUDIO + { + channel = Ship + clip = Waterfall/Sounds/KW/sound_sps + volume = 0.6 + pitch = 1.0 + loop = false + } + } + disengage + { + AUDIO + { + channel = Ship + clip = sound_vent_soft + volume = 1.0 + pitch = 2.0 + loop = false + } + } + flameout + { + AUDIO + { + channel = Ship + clip = sound_explosion_low + volume = 1.0 + pitch = 0.8 + loop = false + } + } + } + + MODULE + { + name = ModuleWaterfallFX + // This is a custom name + moduleID = jibFX + // This links the effects to a given ModuleEngines + engineID = basicEngine + + // List out all controllers we want available + // This controller scales with atmosphere depth + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + // This controller scales with effective throttle + CONTROLLER + { + name = throttle + linkedTo = throttle + } + // this controller generates a random value in the range specified + CONTROLLER + { + name = random + linkedTo = random + range = -1,1 + } + + TEMPLATE + { + // This is the name of the template to use + templateName = waterfall-hypergolic-white-upper-1 + // This field allows you to override the parentTransform name in the EFFECTS contained in the template + overrideParentTransform = Thrust_transform + position = 0,0,0.0425 + rotation = 0, 0, 0 + scale = 0.1, 0.1, 0.1 + } + + + + // ROWaterfall + // { + // autoConfig = genericThruster + // transform = Thrust_transform + // position = 0,0,0.0425 + // rotation = 0, 0, 0 + // scale = 0.133, 0.133, 0.133 + // glowStretch = 0.5 + // } + } +} + +@PART[ca_vor_engine]:BEFORE[Waterfall]:NEEDS[!RealismOverhaul] +{ + !MODULE[ModuleWaterfallFX] {} + !EFFECTS {} + !MODULE[EngineLightEffect] {} + + EFFECTS + { + running + { + AUDIO + { + channel = Ship + clip = Waterfall/Sounds/EnsouSounds/Loop_Liquid_Light_High + volume = 0.0 0.0 + volume = 0.01 0.4 + volume = 1.0 5 + pitch = 0.0 1 + pitch = 1.0 1 + loop = true + } + } + engage + { + AUDIO + { + channel = Ship + clip = Waterfall/Sounds/KW/sound_liq5 + volume = 0.9 + pitch = 1.75 + loop = false + } + } + disengage + { + AUDIO + { + channel = Ship + clip = sound_vent_soft + volume = 1.0 + pitch = 2.0 + loop = false + } + } + flameout + { + AUDIO + { + channel = Ship + clip = sound_explosion_low + volume = 1.0 + pitch = 2.0 + loop = false + } + } + } + + MODULE + { + name = ModuleWaterfallFX + // This is a custom name + moduleID = KurtFX + // This links the effects to a given ModuleEngines + engineID = basicEngine + + // List out all controllers we want available + // This controller scales with atmosphere depth + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + // This controller scales with effective throttle + CONTROLLER + { + name = throttle + linkedTo = throttle + } + // this controller generates a random value in the range specified + CONTROLLER + { + name = random + linkedTo = random + range = -1,1 + } + TEMPLATE + { + // This is the name of the template to use + templateName = waterfall-hypergolic-UDMH-NTO-upper-1 + // This field allows you to override the parentTransform name in the EFFECTS contained in the template + overrideParentTransform = thrust_Transform + position = 0,0,0.247 + rotation = 0, 0, 0 + scale = 0.18, 0.18, 0.352 + } + TEMPLATE + { + templateName = waterfall-nozzle-glow-orange-1 + overrideParentTransform = thrust_Transform + position = 0,0,0.25 + rotation = 0, 0, 0 + scale = 0.21, 0.21, 0.4 + } + + + } + + + // ROWaterfall + // { + // template = waterfall-hypergolic-UDMH-NTO-upper-1 + // transform = thrust_Transform + // audio = pump-fed-light-1 + // position = 0,0,0.247 + // rotation = 0, 0, 0 + // scale = 0.3, 0.3, 0.352 + + // ExtraTemplate + // { + // template = waterfall-nozzle-glow-orange-1 + // position = 0,0,0.239 + // rotation = 0, 0, 0 + // scale = 0.32, 0.32, 0.6 + // } + // } +} + +@PART[ca_lahar]:BEFORE[Waterfall]:NEEDS[!RealismOverhaul] +{ + !MODULE[ModuleWaterfallFX] {} + !EFFECTS {} + !MODULE[EngineLightEffect] {} + + EFFECTS + { + running + { + AUDIO + { + channel = Ship + clip = Waterfall/Sounds/EnsouSounds/Loop_Liquid_Light_High + volume = 0.0 0.0 + volume = 0.01 0.4 + volume = 1.0 5 + pitch = 0.0 1 + pitch = 1.0 1 + loop = true + } + } + engage + { + AUDIO + { + channel = Ship + clip = Waterfall/Sounds/KW/sound_liq5 + volume = 0.9 + pitch = 1.75 + loop = false + } + } + disengage + { + AUDIO + { + channel = Ship + clip = sound_vent_soft + volume = 1.0 + pitch = 2.0 + loop = false + } + } + flameout + { + AUDIO + { + channel = Ship + clip = sound_explosion_low + volume = 1.0 + pitch = 2.0 + loop = false + } + } + } + + MODULE + { + name = ModuleWaterfallFX + moduleID = LaharFX + engineID = basicEngine + + // List out all controllers we want available + // This controller scales with atmosphere depth + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + // This controller scales with effective throttle + CONTROLLER + { + name = throttle + linkedTo = throttle + } + // this controller generates a random value in the range specified + CONTROLLER + { + name = random + linkedTo = random + range = -1,1 + } + + TEMPLATE + { + templateName = waterfall-hypergolic-white-upper-1 + overrideParentTransform = Thrust_transform + position = 0,0,0.367 + rotation = 0, 0, 0 + scale = 0.12, 0.12, 0.12 +} + + TEMPLATE //这里使用Waterfall自带的尾焰模板代替RO的ro-hypergolic-white + { + templateName = waterfall-nozzle-glow-white-1 + overrideParentTransform = Thrust_transform + position = 0,0,0.375 + rotation = 0, 0, 0 + scale = 0.15, 0.15, 0.05 + } + } + // ROWaterfall + // { + // template = waterfall-hypergolic-white-upper-1 + // transform = Thrust_transform + // audio = pressure-fed-1 + // position = 0,0,0.367 + // rotation = 0, 0, 0 + // scale = 0.23, 0.23, 0.23 + // glow = ro-hypergolic-white + // } +} + +@PART[ca_landv_vernier]:BEFORE[Waterfall]:NEEDS[!RealismOverhaul] //CA-LV03 游动发动机 +{ + !MODULE[ModuleWaterfallFX] {} + !EFFECTS {} + !MODULE[EngineLightEffect] {} + + EFFECTS + { + running + { + AUDIO + { + channel = Ship + clip = Waterfall/Sounds/EnsouSounds/Loop_Liquid_Light_High + volume = 0.0 0.0 + volume = 0.01 0.4 + volume = 1.0 5 + pitch = 0.0 1 + pitch = 1.0 1 + loop = true + } + } + engage + { + AUDIO + { + channel = Ship + clip = Waterfall/Sounds/KW/sound_liq5 + volume = 0.9 + pitch = 1.75 + loop = false + } + } + disengage + { + AUDIO + { + channel = Ship + clip = sound_vent_soft + volume = 1.0 + pitch = 2.0 + loop = false + } + } + flameout + { + AUDIO + { + channel = Ship + clip = sound_explosion_low + volume = 1.0 + pitch = 2.0 + loop = false + } + } + } + + MODULE + { + name = ModuleWaterfallFX + moduleID = landvvernierFX + engineID = basicEngine + + // List out all controllers we want available + // This controller scales with atmosphere depth + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + // This controller scales with effective throttle + CONTROLLER + { + name = throttle + linkedTo = throttle + } + // this controller generates a random value in the range specified + CONTROLLER + { + name = random + linkedTo = random + range = -1,1 + } + + TEMPLATE + { + templateName = waterfall-hypergolic-white-upper-1 + overrideParentTransform = Thrust_transform + position = 0,0,0.094 + rotation = 0, 0, 0 + scale = 0.08, 0.08, 0.1 + } + + TEMPLATE //同样的操作 + { + templateName = waterfall-nozzle-glow-white-1 + overrideParentTransform = Thrust_transform + position = 0,0,0.095 + rotation = 0, 0, 0 + scale = 0.09, 0.09, 0.025 + } + + + + } + + // ROWaterfall + // { + // template = waterfall-hypergolic-white-upper-1 + // transform = Thrust_transform + // audio = pressure-fed-1 + // position = 0,0,0.094 + // rotation = 0, 0, 0 + // scale = 0.106, 0.106, 0.106 + // glow = ro-hypergolic-white + // } +} + +@PART[ca_linkor]:BEFORE[Waterfall]:NEEDS[!RealismOverhaul] +{ + !MODULE[ModuleWaterfallFX] {} + !EFFECTS {} + !MODULE[EngineLightEffect] {} + + EFFECTS + { + running + { + AUDIO + { + channel = Ship + clip = Waterfall/Sounds/EnsouSounds/Loop_Liquid_Light_High + volume = 0.0 0.0 + volume = 0.01 0.4 + volume = 1.0 5 + pitch = 0.0 1 + pitch = 1.0 1 + loop = true + } + } + engage + { + AUDIO + { + channel = Ship + clip = Waterfall/Sounds/KW/sound_liq5 + volume = 0.9 + pitch = 1.75 + loop = false + } + } + disengage + { + AUDIO + { + channel = Ship + clip = sound_vent_soft + volume = 1.0 + pitch = 2.0 + loop = false + } + } + flameout + { + AUDIO + { + channel = Ship + clip = sound_explosion_low + volume = 1.0 + pitch = 2.0 + loop = false + } + } + } + + MODULE + { + name = ModuleWaterfallFX + moduleID = linkorFX + engineID = basicEngine + + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + // This controller scales with effective throttle + CONTROLLER + { + name = throttle + linkedTo = throttle + } + // this controller generates a random value in the range specified + CONTROLLER + { + name = random + linkedTo = random + range = -1,1 + } + + TEMPLATE + { + templateName = waterfall-hypergolic-UDMH-NTO-upper-1 + overrideParentTransform = thrust_Transform + position = 0,0,0.273 + rotation = 0, 0, 0 + scale = 0.35, 0.35, 0.35 + + } + + TEMPLATE + { + templateName = waterfall-nozzle-glow-orange-1 + overrideParentTransform = thrust_Transform + position = 0,0,0.273 + rotation = 0, 0, 0 + scale = 0.35, 0.35, 0.35 + + + } + + + } + + + // ROWaterfall + // { + // template = waterfall-hypergolic-UDMH-NTO-upper-1 + // audio = pump-fed-light-1 + // transform = thrust_Transform + // position = 0,0,0.273 + // rotation = 0, 0, 0 + // scale = 0.35, 0.35, 0.35 + // glow = _orange + // } +} + +@PART[ca_linkor]:AFTER[Waterfall]:NEEDS[!RealismOverhaul] +{ + !EFFECTS {} + MODULE + { + name = ModuleWaterfallFX + moduleID = linkorRCS + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + CONTROLLER + { + name = rcs + linkedTo = rcs + thrusterTransformName = RCS_transform + } + TEMPLATE + { + templateName = waterfall-rcs-jet-1 + overrideParentTransform = RCS_transform + position = 0,0,0 + rotation = 0, 0, 180 + scale = 0.55, 1, 0.55 + } + } + EFFECTS + { + RCSrunning + { + AUDIO_MULTI_POOL + { + channel = Ship + clip = sound_rocket_mini + transformName = RCS_transform + volume = 0.0 0.0 + volume = 0.02 0.1 + volume = 0.5 0.1 + volume = 1.0 0.1 + pitch = 0.0 0.75 + pitch = 1.0 1.5 + loop = true + } + } + } +} diff --git a/GameData/0000Tinygrox_CNPatches/Coatl Aerospace/WaterFall/Solids.cfg b/GameData/0000Tinygrox_CNPatches/Coatl Aerospace/WaterFall/Solids.cfg new file mode 100644 index 0000000..f3332f1 --- /dev/null +++ b/GameData/0000Tinygrox_CNPatches/Coatl Aerospace/WaterFall/Solids.cfg @@ -0,0 +1,428 @@ +//以下所有固推尾焰均由Avalanche Plumes提供尾焰模板,需安装后者模组方可使用 (https://forum.kerbalspaceprogram.com/topic/225334-avalanche-plumes-a-waterfall-mod-for-solid-rocket-boosters/) +@PART[ca_stella24C]:BEFORE[Waterfall]:NEEDS[Avalanche] +{ + !EFFECTS {} + !MODULE[ModuleWaterfallFX]{} + EFFECTS + { + running + { + AUDIO + { + channel = Ship + clip = Waterfall/Sounds/KW/sound_srbloop + volume = 0.0 0.0 + volume = 1.0 1.0 + pitch = 0.0 1.0 + pitch = 1.0 1.5 + loop = true + } + } + engage + { + AUDIO + { + channel = Ship + clip = Waterfall/Sounds/KW/sound_srb3 + volume = 0.8 + pitch = 1.0 + loop = false + } + } + disengage + { + AUDIO + { + channel = Ship + clip = sound_vent_soft + volume = 1.0 + pitch = 2.0 + loop = false + } + } + flameout + { + AUDIO + { + channel = Ship + clip = sound_explosion_low + volume = 1.0 + pitch = 2.0 + loop = false + } + } + } + + MODULE + { + name = ModuleWaterfallFX + moduleID = stella24CFX + engineID = BasicEngine + + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + CONTROLLER + { + name = throttle + linkedTo = throttle + } + CONTROLLER + { + name = Random + linkedTo = random + noiseType = perlin + scale = 0.5 + minimum = -0.5 + speed = 10 + seed = 40 + } + + TEMPLATE + { + templateName = VacPlume + overrideParentTransform = thrustTransform + position = 0,0,0.131 + rotation = 0, 0, 0 + scale = 0.11, 0.11, 0.11 + } + + TEMPLATE + { + templateName = waterfall-nozzle-glow-orange-1 + overrideParentTransform = thrustTransform + position = 0,0,0.1375 + rotation = 0, 0, 0 + scale = 0.2, 0.2, 0.2 + } + + + } + + // ROWaterfall + // { + // template = rowaterfall-srm-vac-1 + // audio = srm-1 + // position = 0,0,0.131 + // rotation = 0, 0, 0 + // scale = 0.175, 0.175, 0.175 + // glow = ro-srm + // glowStretch = 0.5 + // } +} + +@PART[ca_landv_srm]:BEFORE[Waterfall]:NEEDS[Avalanche] +{ + !MODULE[ModuleWaterfallFX]{} + !EFFECTS {} + EFFECTS + { + running + { + AUDIO + { + channel = Ship + clip = Waterfall/Sounds/KW/sound_srbloop + volume = 0.0 0.0 + volume = 1.0 1.0 + pitch = 0.0 1.0 + pitch = 1.0 1.5 + loop = true + } + } + engage + { + AUDIO + { + channel = Ship + clip = Waterfall/Sounds/KW/sound_srb3 + volume = 0.8 + pitch = 1.0 + loop = false + } + } + disengage + { + AUDIO + { + channel = Ship + clip = sound_vent_soft + volume = 1.0 + pitch = 2.0 + loop = false + } + } + flameout + { + AUDIO + { + channel = Ship + clip = sound_explosion_low + volume = 1.0 + pitch = 2.0 + loop = false + } + } + } + + MODULE + { + name = ModuleWaterfallFX + moduleID = #$/name$-srm + engineID = BasicEngine + + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + CONTROLLER + { + name = throttle + linkedTo = throttle + } + CONTROLLER + { + name = Random + linkedTo = random + noiseType = perlin + scale = 0.5 + minimum = -0.5 + speed = 10 + seed = 40 + } + + TEMPLATE + { + templateName = VacPlume + overrideParentTransform = Thrust_transform + position = 0,0,0.131 + rotation = 0, 0, 0 + scale = 0.175, 0.175, 0.175 + } + + TEMPLATE + { + templateName = waterfall-nozzle-glow-orange-1 + overrideParentTransform = Thrust_transform + } + + + } + + + + // ROWaterfall + // { + // template = rowaterfall-srm-vac-1 + // transform = Thrust_transform + // audio = srm-1 + // position = 0,0,0.274 + // rotation = 0, 0, 0 + // scale = 0.33, 0.33, 0.33 + // glow = ro-srm + // glowStretch = 0.5 + // } +} + +// Voyager Propulsion Module +@PART[ca_torekkaPM]:BEFORE[Waterfall]:NEEDS[Avalanche] +{ + !MODULE[ModuleWaterfallFX]{} + !EFFECTS{} + EFFECTS + { + running + { + AUDIO + { + channel = Ship + clip = Waterfall/Sounds/KW/sound_srbloop + volume = 0.0 0.0 + volume = 1.0 1.0 + pitch = 0.0 1.0 + pitch = 1.0 1.5 + loop = true + } + } + engage + { + AUDIO + { + channel = Ship + clip = Waterfall/Sounds/KW/sound_srb3 + volume = 0.8 + pitch = 1.0 + loop = false + } + } + disengage + { + AUDIO + { + channel = Ship + clip = sound_vent_soft + volume = 1.0 + pitch = 2.0 + loop = false + } + } + flameout + { + AUDIO + { + channel = Ship + clip = sound_explosion_low + volume = 1.0 + pitch = 2.0 + loop = false + } + } + } + + MODULE + { + name = ModuleWaterfallFX + moduleID = #$/name$-srm + engineID = BasicEngine + + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + CONTROLLER + { + name = throttle + linkedTo = throttle + } + CONTROLLER + { + name = Random + linkedTo = random + noiseType = perlin + scale = 0.5 + minimum = -0.5 + speed = 10 + seed = 40 + } + + TEMPLATE + { + templateName = VacPlume + overrideParentTransform = thrust_Transform + position = 0,0,0.38 + rotation = 0, 0, 0 + scale = 0.22, 0.22, 0.25 + } + + TEMPLATE + { + templateName = waterfall-nozzle-glow-orange-1 + overrideParentTransform = thrust_Transform + position = 0,0,0.4 + rotation = 0, 0, 0 + scale = 0.4, 0.4, 0.4 + } + + } + + + + // ROWaterfall + // { + // template = rowaterfall-srm-vac-1 + // transform = thrust_Transform + // audio = srm-1 + // position = 0,0,0.38 + // scale = 0.27,0.27,0.27 + // glow = ro-srm + // glowStretch = 0.5 + // } + @MODULE[ModuleRCSFX]:HAS[#thrusterTransformName[RCS_transform]] + { + %runningEffectName = runningRCS + } +} +@PART[ca_torekkaPM]:AFTER[ROWaterfall]:NEEDS[Waterfall] +{ + MODULE + { + name = ModuleWaterfallFX + moduleID = #$/name$-rcs + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + CONTROLLER + { + name = rcs + linkedTo = rcs + thrusterTransformName = RCS_transform + } + TEMPLATE + { + templateName = rowaterfall-rcs-hydrazine-1 + overrideParentTransform = RCS_transform + position = 0,0,0 + rotation = 0, 0, 180 + scale = 0.21, 0.21, 0.21 + } + } + + MODULE + { + name = ModuleWaterfallFX + moduleID = #$/name$-rcsL + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + CONTROLLER + { + name = rcs + linkedTo = rcs + thrusterTransformName = RCS_transformL + } + TEMPLATE + { + templateName = rowaterfall-rcs-hydrazine-1 + overrideParentTransform = RCS_transformL + position = 0,0.035,0 + rotation = 0, 0, 180 + scale = 1, 1, 1 + } + } + + @EFFECTS + { + runningRCS + { + AUDIO_MULTI_POOL + { + channel = Ship + clip = sound_rocket_mini + transformName = RCS_transform + volume = 0.0 0.0 + volume = 0.02 0.1 + volume = 0.5 0.1 + volume = 1.0 0.1 + pitch = 0.0 0.75 + pitch = 1.0 1.5 + loop = true + } + } + +runningRCS + { + |_ = runningL + @AUDIO_MULTI_POOL + { + @transformName = RCS_transformL + } + } + } +} From a14df3ce183d4761dacba703f946eecaade99204 Mon Sep 17 00:00:00 2001 From: tinygrox Date: Tue, 15 Jul 2025 13:44:23 +0800 Subject: [PATCH 2/9] Update CHANGELOG.MD --- CHANGELOG.MD | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/CHANGELOG.MD b/CHANGELOG.MD index 51fcc01..3593345 100644 --- a/CHANGELOG.MD +++ b/CHANGELOG.MD @@ -1,5 +1,10 @@ # 更新日志 | Changelog +## [1.7.3] +## 修复 & 更新 + +- 由 @BirghtUniverse 提供的修复和更新 #67 + ## [1.7.2] ### 修复 From 11d71e5abddacb7c80a3af58a796db843a095a4e Mon Sep 17 00:00:00 2001 From: tinygrox Date: Tue, 15 Jul 2025 13:44:57 +0800 Subject: [PATCH 3/9] Update CHANGELOG.MD --- CHANGELOG.MD | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.MD b/CHANGELOG.MD index 3593345..3fc0b98 100644 --- a/CHANGELOG.MD +++ b/CHANGELOG.MD @@ -1,7 +1,8 @@ # 更新日志 | Changelog ## [1.7.3] -## 修复 & 更新 + +### 修复 & 更新 - 由 @BirghtUniverse 提供的修复和更新 #67 From f80879eea76466720dbc6a0ac2aad33333639efc Mon Sep 17 00:00:00 2001 From: CuiCanYuZhou <126999206+Star-And-Space@users.noreply.github.com> Date: Tue, 7 Oct 2025 22:01:35 +0800 Subject: [PATCH 4/9] =?UTF-8?q?=E4=B8=BAKerbalismSimplex=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E4=B8=AD=E6=96=87=E6=9C=AC=E5=9C=B0=E5=8C=96=20(#71)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * 修改因条件错误导致RO汉化文件没有加载的问题 将NEEDS[RealismOverhaul]:AFTER[CoatlAerospace]改为FOR[RealismOverhaul] * 为ProbePlus的推进器添加WaterFall尾焰,由RO的原配置修改过来(WIP) * 将游戏中无法正常显示的"㎡"替换为“平方米” 对太阳能板的描述中的平方米单位替换为文字形式 * 原来是需要格式化才能正常显示"㎡" * 修改几处翻译 * 为RP-1中对应的DOS部件添加翻译 * Delete GameData/0000Tinygrox_CNPatches/Coatl Aerospace/ProbePlus-RP1-Patches.cfg * Delete GameData/0000Tinygrox_CNPatches/Coatl Aerospace/WaterFall/RCS.cfg RCS配置太难搞了 * Delete GameData/0000Tinygrox_CNPatches/Coatl Aerospace/WaterFall/Probes.cfg 这也是RCS配置,同样难搞 * 添加CA在RP1中的翻译 * 为CoatlAerospace引入VABOrganizer分类补丁 * 据要求,更改补丁的加载条件 从FOR改为NEEDS和FINAL * v1.7.3 (#68) * 修改ProbePlus的RO翻译不生效的问题,并添加RP-1的ProbePlus翻译 (#67) 虽然也不是很建议用 `:FINAL`,但是没空了,遇到问题再说 * Update CHANGELOG.MD --------- Co-authored-by: BU_CuiCanYuZhou <126999206+BirghtUniverse@users.noreply.github.com> * 添加KerbalismSimplex的中文本地化 --------- Co-authored-by: tinygrox Co-authored-by: BU_CuiCanYuZhou <126999206+BirghtUniverse@users.noreply.github.com> --- .../Kerbalism/ZH_KerbalismSimplex.cfg | 467 ++++++++++++++++++ 1 file changed, 467 insertions(+) create mode 100644 GameData/0000Tinygrox_CNPatches/Kerbalism/ZH_KerbalismSimplex.cfg diff --git a/GameData/0000Tinygrox_CNPatches/Kerbalism/ZH_KerbalismSimplex.cfg b/GameData/0000Tinygrox_CNPatches/Kerbalism/ZH_KerbalismSimplex.cfg new file mode 100644 index 0000000..04ebf07 --- /dev/null +++ b/GameData/0000Tinygrox_CNPatches/Kerbalism/ZH_KerbalismSimplex.cfg @@ -0,0 +1,467 @@ +Localization +{ + zh-cn + { + //////////////////////////////////////////////////////////////////// + // Parts Localization + + // ********** Part: kerbalism-activeshield + #kerbalism-activeshield_Part_description = 在容器周围产生磁场,减少进入的辐射. 这种影响只与星际飞行中遇到的辐射水平有关,在超带电粒子带或太阳风暴期间几乎没有影响. + #kerbalism-activeshield_Part_manufacturer = TripleZeta Workshops + #kerbalism-activeshield_Part_title = 防辐射护盾 + + // ********** Part: kerbalism-antenna + #kerbalism-antenna_Part_description = 由很久以前的一位年轻有灵感无限的沃纳·冯·科曼(Wernher von Kerman)设计,之后他的注意力转向了大规模杀伤性武器的开发. + #kerbalism-antenna_Part_manufacturer = Ionic Symphonic Protonic Electronics + #kerbalism-antenna_Part_title = 通信者 8 + + // ********** Part: kerbalism-chemicalplant + #kerbalism-chemicalplant_Part_description = 一个多功能的化工厂,可以容纳在小型服务舱。与Convert-O-Tron的任何相似之处纯粹是巧合. + #kerbalism-chemicalplant_Part_manufacturer = Rookies Inc. + #kerbalism-chemicalplant_Part_title = 化工厂 + + + // ********** Part: kerbalism-container-radial-huge + #kerbalism-container-radial-huge_Part_description = 一个非常大的气体容器,可以径向连接. + #kerbalism-container-radial-huge_Part_title = 巨型气罐 + + // ********** Part: kerbalism-container-radial-big + #kerbalism-container-radial-big_Part_description = 可径向连接的一个大的加压容器. + #kerbalism-container-radial-big_Part_manufacturer = Tygoo Transport Solutions + #kerbalism-container-radial-big_Part_title = 大型气罐 + + // ********** Part: kerbalism-container-radial-medium + #kerbalism-container-radial-mediumplus_Part_description = 可径向连接的一个大的加压容器. + #kerbalism-container-radial-mediumplus_Part_manufacturer = Tygoo Transport Solutions + #kerbalism-container-radial-mediumplus_Part_title = 中型气罐 + + // ********** Part: kerbalism-container-radial-medium + #kerbalism-container-radial-medium_Part_description = 加压罐,可以径向连接 + #kerbalism-container-radial-medium_Part_manufacturer = Tygoo Transport Solutions + #kerbalism-container-radial-medium_Part_title = 小型气罐 + + // ********** Part: kerbalism-container-radial-small + #kerbalism-container-radial-small_Part_description = 可径向连接的小型加压容器. + #kerbalism-container-radial-small_Part_manufacturer = Tygoo Transport Solutions + #kerbalism-container-radial-small_Part_title = 微型气罐 + + // ********** Part: SimplexPart_Consumables_Tiny + #SimplexPart_title_consumables_Tiny_box = 微型补给集装箱 + #SimplexPart_descripion_consumables_Tiny_box = 一个微型补给集装箱,Bob最初将其描述为一个微不足道的小饭盒。这个货柜经过改装,只能容纳极少量的补给品。 + + // ********** Part: SimplexPart_Consumables_Small + #SimplexPart_title_consumables_Small_125 = 小型补给集装箱 + #SimplexPart_descripion_consumables_Small_125 = 一个内含补给品的圆形集装箱,除了这个容器都是关于少量内容物的。 + + // ********** Part: SimplexPart_Consumables_Medium + #SimplexPart_title_consumables_Medium_1875 = 中型补给集装箱 + #SimplexPart_descripion_consumables_Medium_1875 = 一个共用的补给集装箱,随时准备带您的船员去新的地方,也许还会回来。 + + // ********** Part: SimplexPart_Consumables_Large + #SimplexPart_title_consumables_Large_250 = 大型补给集装箱 + #SimplexPart_descripion_consumables_Large_250 = Bob对这个大型补给集装箱的尺寸非常满意——就连Jeb也肯定吃不完! + + // ********** Part: SimplexPart_Consumables_Huge + #SimplexPart_title_consumables_Huge_375 = 巨型补给集装箱 + #SimplexPart_descripion_consumables_Huge_375 = Bob委托制造这个巨型补给集装箱的事实,与Jeb从大型集装箱中吸出零食屑的能力毫无关系。 + + + // ********** Part: kerbalism-geigercounter + #kerbalism-geigercounter_Part_description = 测量环境辐射. + #kerbalism-geigercounter_Part_manufacturer = Muller and Sons + #kerbalism-geigercounter_Part_title = 盖革计数器 + + // ********** Part: kerbalism-gravityring + #kerbalism-gravityring_Part_description = 人造重力可以暂缓失重对坎巴拉人产生的一系列影响,除非你不介意科里奥利效应 + #kerbalism-gravityring_Part_manufacturer = Mehka Awesome Productions + #kerbalism-gravityring_Part_title = 重力环 + + // ********** Part: kerbalism-greenhouse + #kerbalism-greenhouse_Part_description = 在太空深处或荒凉的岩石表面种食物. + #kerbalism-greenhouse_Part_manufacturer = TripleZeta Workshops + #kerbalism-greenhouse_Part_title = 温室 + + // ********** Part: kerbalism-lifesupportmodule + #kerbalism-lifesupportmodule_Part_description = 由于缺少电力生命维持系统,任务控制中心紧急命令我们将该化工厂转换为环控生保系统. 保证爆炸强度只有原来的147.28%。 + #kerbalism-lifesupportmodule_Part_manufacturer = Lambda Aerospace + #kerbalism-lifesupportmodule_Part_title = 环控生保系统 + + //Profile + #KERBALISM_low_battery = $VESSEL 电池快没电了@我们正在使用仅存的一点电力|$VESSEL 电池快没电了@关闭不必要的系统 + #KERBALISM_empty_battery = $VESSEL已经没有任何电力@维生系统已经关闭|$VESSEL没有任何充电装置@我们已经失联 + #KERBALISM_refill_battery = $VESSEL 电力开始充能@又可以放音乐了|$VESSEL 电力开始充能@系统重新上线 + + #KERBALISM_oxygen_warning = $ON_VESSEL$KERBAL 卜能呼吸 + #KERBALISM_oxygen_danger = $ON_VESSEL$KERBAL 要窒息了 + #KERBALISM_oxygen_fatal = $ON_VESSEL$KERBAL 窒息而死 + #KERBALISM_oxygen_relax = $ON_VESSEL$KERBAL 重新开始呼吸 + + #KERBALISM_co2_warning = $ON_VESSEL$KERBAL 感觉有点晕 + #KERBALISM_co2_danger = $ON_VESSEL$KERBAL 觉得很难呼吸 + #KERBALISM_co2_fatal = $ON_VESSEL$KERBAL 死于二氧化碳中毒 + #KERBALISM_co2_relax = $ON_VESSEL$KERBAL 感觉没那么难呼吸了 + + #KERBALISM_climatization_warning = $ON_VESSEL$KERBAL 感到有点冷|$ON_VESSEL$KERBAL 在冒汗 + #KERBALISM_climatization_danger = $ON_VESSEL$KERBAL 快冻僵了|$ON_VESSEL$KERBAL 快被高温烤熟了 + #KERBALISM_climatization_fatal = $ON_VESSEL$KERBAL 冻死了|$ON_VESSEL$KERBAL 已被烧成碳 + #KERBALISM_climatization_relax = $ON_VESSEL$KERBAL 从寒冷回复|$ON_VESSEL$KERBAL 从炎热回复 + + #KERBALISM_food_warning = $ON_VESSEL$KERBAL 有点饿 + #KERBALISM_food_danger = $ON_VESSEL$KERBAL 快饿死了 + #KERBALISM_food_fatal = $ON_VESSEL$KERBAL 缺乏食物致死 + #KERBALISM_food_relax = $ON_VESSEL$KERBAL 在美美的享受零食 + + #KERBALISM_water_warning = $ON_VESSEL$KERBAL 有点渴 + #KERBALISM_water_danger = $ON_VESSEL$KERBAL 非常渴,快找点水 + #KERBALISM_water_fatal = $ON_VESSEL$KERBAL 脱水致死 + #KERBALISM_water_relax = $ON_VESSEL$KERBAL 在快乐的享受饮料 + + #KERBALISM_stress_warning = $ON_VESSEL$KERBAL 压力有点大@注意力有点无法集中 + #KERBALISM_stress_danger = $ON_VESSEL$KERBAL 要崩溃了@出现了幻听 + #KERBALISM_stress_relax = $ON_VESSEL$KERBAL 头脑恢复正常@我们继续吧! + + #KERBALISM_radiation_warning = $ON_VESSEL$KERBAL 正受到强烈的辐射 + #KERBALISM_radiation_danger = $ON_VESSEL$KERBAL 正在报告关于辐射中毒的症状 + #KERBALISM_radiation_fatal = $ON_VESSEL$KERBAL 死于极端辐射 + #KERBALISM_radiation_relax = $ON_VESSEL$KERBAL 已从辐射中恢复过来 + + #KERBALISM_low_food = $VESSEL 的食物越来越少@任何可以吃的东西都在记录中 + #KERBALISM_empty_food = $VESSEL 已经没有任何食物@船员们做好了必要的准备 + #KERBALISM_refill_food = $VESSEL 开始重新填满食物@每人可以得到2份零食! + + #KERBALISM_low_water = $VESSEL 的水储量越来越少了@卫生设备暂停直到另行通知 + #KERBALISM_empty_water = $VESSEL 已经没水了@已经通知船员舔冷凝剂不是一个可行的解决方案 + #KERBALISM_refill_water = $VESSEL 水储量回升@现在情况看起来好多了 + + #KERBALISM_low_oxygen = $VESSEL 的氧气储量下降到15%了 @船员有点慌 + #KERBALISM_empty_oxygen = $VESSEL 已经没有氧气!@所有人只能屏住呼吸 + #KERBALISM_refill_oxygen = $VESSEL 氧气含量开始回复@船员们松了一口气 + + #KERBALISM_low_co2 = $VESSEL 的二氧化碳储量越来越少@船上的植物看起来恹恹的 + #KERBALISM_empty_co2 = $VESSEL 已经没有二氧化碳@船上的植物正式发起投诉! + #KERBALISM_refill_co2 = $VESSEL 二氧化碳注入@植物恢复正常了 + + #KERBALISM_low_nitrogen = $VESSEL 的氮储量越来越少 我希望所有人都带上了自己的宇航服! + #KERBALISM_empty_nitrogen = $VESSEL 已经没有氮@快回去穿上宇航服 + #KERBALISM_refill_nitrogen = $VESSEL 氮气含量回复@让我们赶紧脱掉这个傻逼衣服 + + #KERBALISM_low_hydrogen = $VESSEL的氢含量越来越少 + #KERBALISM_empty_hydrogen = $VESSEL已经没有任何氢 + #KERBALISM_refill_hydrogen = $VESSEL氢气得到补充 + + #KERBALISM_low_ammonia = $VESSEL的氨几乎是空的 + #KERBALISM_empty_ammonia = $VESSEL的氨含量已经空了@也许是时候换一些味道难闻的替代品了 + #KERBALISM_refill_ammonia = $VESSEL 重新补充氨 + + #KERBALISM_low_enriched_uranium = $VESSEL里的铀快没有了@补给船在哪里? + #KERBALISM_empty_enriched_uranium = $VESSEL已经没有更多的浓缩铀 @任务人员立即取消所有使用高功率的活动,直到另行通知 + #KERBALISM_refill_enriched_uranium = $VESSEL 浓缩铀储备得到补充 + + //alternates + #kerbalism-chemicalplant_Part_description = A versatile chemical plant that can fit in the small service bay. Primarily for generating Organic Slurry from HydrateOre and RareOre + + // Variants Colors + #kerbalism-variant-white = 白色 + #kerbalism-variant-green = 绿色 + #kerbalism-variant-black-and-white = 黑白相间 + #kerbalism-variant-orange = 橙色 + + // Resources + #KerbalismSimplex_resource_atmo = 大气 + #KerbalismSimplex_resource_wasteatmo = 浑浊大气 + #KerbalismSimplex_resource_wasteatmo_abbr = 浑浊大气 + #KerbalismSimplex_resource_air = 空气 + #KerbalismSimplex_resource_badair = 浑浊空气 + #KerbalismSimplex_resource_consumables = 补给物资 + #KerbalismSimplex_resource_orgslurry = 有机软泥 + #KerbalismSimplex_resource_orgslurry_abbr = 有机软泥 + #KerbalismSimplex_resource_shielding = 屏蔽材料 + #KerbalismSimplex_resource_coolant = 冷却剂 + // Planetside Wind + #KerbalismSimplex_resource_windpower = 风力 + + // NFE + #KerbalismSimplex_rareore_low_message = $VESSEL上的稀有矿石快要用光了 @核燃料生产即将停工 + #KerbalismSimplex_rareore_empty_message = $VESSEL的最后一点稀有矿石被消耗 @核工业关门大吉 + #KerbalismSimplex_rareore_refill_message = $VESSEL稀有矿石储量回升@核工业重新开工 + + #KerbalismSimplex_nucfuel_low_message = $VESSEL的核燃料越来越少 @核反应堆正在计划停堆 + #KerbalismSimplex_nucfuel_empty_message = $VESSEL的核燃料已经枯竭殆尽 @核反应堆停堆 + #KerbalismSimplex_nucfuel_refill_message = $VESSEL的核燃料得到补给@核反应堆开始重新运转 + + // ===== + // Rules + // ===== + #kerbalismsimplex_rule_climatization_title = 空气调节 + #kerbalismsimplex_rule_eating_title = 饮食 + #kerbalismsimplex_rule_breathing_title = 呼吸 + #kerbalismsimplex_rule_stress_title = 压力 + #kerbalismsimplex_rule_radiation_title = 辐射 + #kerbalismsimplex_rule_poisoning_title = 混浊空气中毒 + + // == Processes and Modules + + #KerbalismSimplex_pod = 舱室 + #KerbalismSimplex_none_process = 空 + #KerbalismSimplex_none_process_desc = 空插槽可以节省材料和成本 + + // Fuel Cells + #KerbalismSimplex_monoprop_air_fuel_cell_process = 单组元推进剂+空气燃料电池 + #KerbalismSimplex_monoprop_air_fuel_cell_name = 单组元推进剂+空气燃料电池 + #KerbalismSimplex_monoprop_air_fuel_cell_desc = 通过燃烧单组元推进剂空气来产生电力. + #KerbalismSimplex_monoprop_air_fuel_cell_descfull = 一种以单组元推进剂空气作为燃料的紧急用燃料电池,工作时会发出非常恶臭的气体,毋庸置疑,需在通风环境下使用. + #KerbalismSimplex_lfo_fuel_cell_process = LFO燃料电池 + #KerbalismSimplex_lfo_fuel_cell_name = 液体燃料和氧化剂燃料电池 + #KerbalismSimplex_lfo_fuel_cell_desc = 以液体燃料氧化剂作为燃料的燃料电池. + #KerbalismSimplex_fuel_cell = 燃料电池 + #KerbalismSimplex_fuel_cell_array = 燃料电池组 + + // Life Support - Processes + #KerbalismSimplex_atmo_leaks = 空气泄漏 + #KerbalismSimplex_air_pump = 空气泵 + #KerbalismSimplex_air_pump_desc = 抽取外界空气来平衡居住舱段的气压,也许会填充充气舱段. + #KerbalismSimplex_radioisotope_gen = 放射性同位素热电发电机 + #KerbalismSimplex_coolant_gen = 氧化剂补给 + #KerbalismSimplex_pressure_control = 压力控制 + #KerbalismSimplex_pressure_control_desc = 使用空气来将内部舱段的气压补充至相对舒适的水平. + #KerbalismSimplex_noregen_scrubber = 非再生废气处理装置 + #KerbalismSimplex_scrubber = 废气处理装置 + #KerbalismSimplex_scrubber_desc = 双床式暴露在真空中的再生废气处理装置,从内部空气中分离出二氧化碳. + #KerbalismSimplex_life_support = 维生 + #KERBALISM_Process_kerbalPurpose_title = 职业疗法 + #KERBALISM_Process_kerbalPurpose_desc = 职业疗法是一种工作计划,旨在让坎巴拉人保持忙碌来减少压力。 + + // Life Support - Containers + #KerbalismSimplex_supplies_container = 补给集装箱 + #KerbalismSimplex_container_consumables =可存储适当量的补给品. + #KerbalismSimplex_container_orgslurry = 存储有机软泥. + #KerbalismSimplex_pressurized_tank = 加压气罐 + #KerbalismSimplex_tank_air_desc = 可存储一些空气. + #KerbalismSimplex_tank_badair_desc = 可存储一些 混浊空气. + + #KerbalismSimplex_partswitch_air_type = 空气 + #KerbalismSimplex_partswitch_badair_type = 混浊空气 + + // ISRU configure titles + #KerbalismSimplex_ISRU0625_title = Convert-O-Tron 0625 Tiny + #KerbalismSimplex_ISRU125_title = Convert-O-Tron 125 Small + #KerbalismSimplex_ISRU250_title = Convert-O-Tron 250 Primary + #KerbalismSimplex_ISRU375_title = Convert-O-Tron 375 Heavy + #KerbalismSimplex_ISRU500_title = Convert-O-Tron 375 Quantum + + #KerbalismSimplex_ISRU0625_description = A tiny ISRU module to prove LiquidFuel can be Distilled or Catalysed off world. + + // ISRU Processes, Ore, etc. + #KerbalismSimplex_process_oretolfo = Ore to LFO + #KerbalismSimplex_process_minioretolfo = mini Ore to LFO + #KerbalismSimplex_process_oretomp = Ore to MP + #KerbalismSimplex_process_minioretomp = mini Ore to MP + #KerbalismSimplex_process_oretoorgslur = Ore to Organic Slurry + + // Nuclear reactors + #KerbalismSimplex_rareore_centrifuge = 稀有矿石离心机 + #KerbalismSimplex_rareore_centrifuge_desc = 从稀有矿石中分离出核燃料. + #KerbalismSimplex_breeder_reactor = 增殖反应堆 + #KerbalismSimplex_breeder_reactor_desc = 将无用的核废料反应成有用的核燃料. + #KerbalismSimplex_nuclear_processor = 核处理器 + + // Harvesters + #KerbalismSimplex_air_filter = 大气处理器 + #KerbalismSimplex_air_filter_desc = 可从大气层中收集空气. + #KerbalismSimplex_badair_filter = 混浊空气收集器 + #KerbalismSimplex_badair_filter_desc = 可从大气层中收集混浊空气. + #KerbalismSimplex_ore_excavation = 矿石采掘 + #KerbalismSimplex_saturate_excavation = 饱和矿采掘 //Saturate Excavation + #KerbalismSimplex_hydrateore_excavation = 水合物采掘 + #KerbalismSimplex_naturalore_excavation = 天然矿采掘 + #KerbalismSimplex_rareore_excavation = 稀有矿石采掘 + #KerbalismSimplex_rareore_extraction = 稀有矿石采掘 + #KerbalismSimplex_rareore_extraction_desc = 可从表面上挖掘 稀有矿石. + #KerbalismSimplex_naturalore_extraction = 天然矿采掘 + #KerbalismSimplex_naturalore_extraction_desc = 可从表面上挖掘 天然矿. + #KerbalismSimplex_hydrateore_extraction = 水合物采掘 + #KerbalismSimplex_hydrateore_extraction_desc = 可从表面上挖掘 水合物. + #KerbalismSimplex_saturate_tapping = 饱和矿汲取 //Saturate Tapping + #KerbalismSimplex_saturate_tapping_desc = 可从地下湖泊泵取饱和矿. + #KerbalismSimplex_saturate_ocean_pumping = 饱和矿泵取 + #KerbalismSimplex_naturalore_ocean_extraction = 矿石海洋采集 + #KerbalismSimplex_rareore_ocean_extraction = 稀有矿石海洋采集 + #KerbalismSimplex_air_atmo_filtering = 空气大气过滤 + #KerbalismSimplex_badair_atmo_filtering = 混浊空气大气过滤 + #KerbalismSimplex_xenon_atmo_filtering = 氙气大气过滤 + #KerbalismSimplex_drill = 钻头 + + // kerbalism-algaeFarm + #SimplexPart_AlgaeFarm_Medium_title = 藻类农场 + #SimplexPart_AlgaeFarm_Medium_manufacturer = Sean罐头厂 + #SimplexPart_AlgaeFarm_Medium_description = Sean罐头厂虽以品质出色的罐头食品而出名。但Sean罐头厂意识到长期向其他星球运输罐装'产品'并不可持续,他们仍希望让每位太空中的坎巴拉人都能享用他们的'产品'。 + #SimplexPart_AlgaeFarm_Process_Title = 藻类温室 + #KerbalismSimplex_process_OStoConsumables = 藻类维生 + + // kerbalism-GreenhouseScience + #SimplexPart_GreenhouseScience_title = 植物学舱 + #SimplexPart_GreenhouseScience_manufacturer = Jebediah Kerman废品回收和飞船部件公司 + #SimplexPart_GreenhouseScience_description = Jebediah注意到真菌喜欢在窗户内侧生长,呈现出令人愉悦的绿色色调,他想知道伙伴们是否偶尔也想看看绿色。结果的确如此! + + // =========== + // Bonuses + // =========== + #KerbalismSimplex_bonus_panorama_desc = 这是个超级酷的太空观测实验。 + #KerbalismSimplex_bonus_exercise_desc = 这里包含了一些训练装备. 这让船员们可以动起来,只是活动范围不大. + #KerbalismSimplex_bonus_exercise_desc2 = 它配备了专门的运动器材,保持小绿人原本那种苍白的绿色。 + #KerbalismSimplex_bonus_exercise_treadmill_desc = 配备了一台可在零重力环境下使用的跑步机。船员们一定会很喜欢的。 + #KerbalismSimplex_bonus_exercise_zerog_desc = 配备了一些在低重力环境下使用的训练装备. 船员们会爱死它的。 + #KerbalismSimplex_bonus_plants_desc = 人造自然景观有着一种内在的宁静感,仅仅通过胶带和坎巴拉工程技术的奇迹就能保持生机。希望船员们不会太在意。 + #KerbalismSimplex_bonus_panorama_cupola_desc = 观测穹顶里有着闲暇的太空全景。 + #KerbalismSimplex_bonus_not_alone_desc = 此探测器配备了G.E.R.T.Y.用户界面软件,设计用于与机组人员下棋并探讨哲学问题。创新的EMOT-ICON界面让用户对软件产生共情。 + + // Greenhouse + #KerbalismSimplex_support_no_kerbal = 不为船员生产补给品! 仅用于舒适和科研用途! + #KerbalismSimplex_support_half_kerbal = 可供 0.5 名船员生存 + #KerbalismSimplex_support_one_kerbal = 可供 1 名船员生存 + #KerbalismSimplex_support_onepointhalf_kerbal = 可供 1.5 名船员生存 + #KerbalismSimplex_support_two_kerbal = 可供 2 名船员生存 + #KerbalismSimplex_support_three_kerbal = 可供 3 名船员生存 + #KerbalismSimplex_support_four_kerbal = 可供 4 名船员生存 + + // ======== + // Science! + // ======== + #KerbalismSimplex_science_hdd_upgrade = 磁盘容量升级 + #KerbalismSimplex_science_upgrade_hdd1 = 工程师们想方设法给磁盘添加磁盘碟片, 使其可存储双倍的科学数据! + #KerbalismSimplex_science_upgrade_hdd2 = 我们先进的固态磁盘已经完全替代了老式的机械硬盘! + #KerbalismSimplex_science_samples_upgrade = 样本插槽存储升级 + #KerbalismSimplex_science_samples_upgrade1 = 增加样本插槽的存储空间 + #KerbalismSimplex_science_samples_upgrade2 = 增加样本插槽的存储空间 + + // ==== + // Mods + // ==== + + // KPBS + #KerbalismSimplex_kpbs_container_orgslurry = K&K 贮箱: Orgainic Slurry + #KerbalismSimplex_kpbs_container_orgslurry_big = K&K 贮箱: Orgainic Slurry (big) + #KerbalismSimplex_kpbs_container_badair = K&K 贮箱: 混浊空气 + #KerbalismSimplex_kpbs_container_badair_big = K&K 贮箱: 混浊空气 (big) + #KerbalismSimplex_kpbs_container_air = K&K 贮箱: 空气 + #KerbalismSimplex_kpbs_container_air_big = K&K 贮箱: 空气 (big) + #KerbalismSimplex_kpbs_container_consumables = K&K 贮箱: 消耗品 + #KerbalismSimplex_kpbs_container_consumables_big = K&K 贮箱: 消耗品 (big) + + // NFE + #KerbalismSimplex_fission_reactor = 裂变反应堆 + + // SIMPLEX Resources + #KerbalismSimplex_ox_baking = 氧化剂焙烧 + #KerbalismSimplex_ox_baking_desc = 从天然矿提炼出氧化剂. + #KerbalismSimplex_lf_distillation = 液体燃料蒸馏 + #KerbalismSimplex_lf_distillation_desc = 从天然矿蒸馏出液体燃料. + #KerbalismSimplex_lf_catalysing = 液体燃料催化 + #KerbalismSimplex_lf_catalysing_desc = 从饱和矿催化出液体燃料. + #KerbalismSimplex_cf_cryodistill = 燃料低温蒸馏 + #KerbalismSimplex_cf_cryodistill_desc = 将天然矿进行低温蒸馏处理,制成低温燃料. + #KerbalismSimplex_cf_cryocatalyising = 燃料低温催化 + #KerbalismSimplex_cf_cryocatalyising_desc = 将饱和矿进行低温催化处理,制成低温燃料. + #KerbalismSimplex_mp_fermentation = 单组元推进剂发酵 + #KerbalismSimplex_mp_fermentation_desc = 将水合矿天然矿发酵为单组元推进剂. + #KerbalismSimplex_os_brewing = 有机泥浆酿制 + #KerbalismSimplex_os_brewing_desc = 将天然矿稀有矿石酿制为有机泥浆. + #KerbalismSimplex_os_liquid_brewing = 有机泥浆液态酿制 + #KerbalismSimplex_os_liquid_brewing_desc = 将饱和矿稀有矿石酿制为有机泥浆. + #KerbalismSimplex_sr_lfo_fuel_cell = SR LF/O燃料电池 + #KerbalismSimplex_li_extraction = 锂提炼 + #KerbalismSimplex_li_extraction_desc = 从稀有矿石提炼出. + #KerbalismSimplex_pf_fixating = 粉末燃料固化 + #KerbalismSimplex_pf_fixating_desc = 将天然矿固化为粉末燃料。 + #KerbalismSimplex_metalparts_smelting = 金属冶炼 + #KerbalismSimplex_customparts_fabricating = 自定义部件制造 + + // Universal Storage 2 + #KerbalismSimplex_US2_goo_canister_left_start = 展开左侧容器 + #KerbalismSimplex_US2_goo_canister_left_end = 收回左侧容器 + #KerbalismSimplex_US2_goo_canister_left_toggle = 切换左侧容器 + #KerbalismSimplex_US2_goo_canister_right_start = 展开右侧容器 + #KerbalismSimplex_US2_goo_canister_right_end = 收回右侧容器 + #KerbalismSimplex_US2_goo_canister_right_toggle = 切换右侧容器 + // DeepFreeze + #KerbalismSimplex_glykeroltransesterification = 甘油转酯 + #KerbalismSimplex_ox_baking_desc = 通过液体燃料补给物资的转酯化反应制取甘油 + // VABOrganizer + #KerbalismSimplex_VABOrganizer_Subcategory_kerbalismResources = 维生资源 + #KerbalismSimplex_VABOrganizer_Subcategory_kerbalismUtilities = 维生设备 + + //Radiation Scan + #KERBALISM_EXPERIMENT_Radiation_title = 辐射扫描 + + //Experiment results + #KERBALISM_EXPERIMENT_Radiation_default = 天哪,这些读数太惊人了! + #KERBALISM_EXPERIMENT_Radiation_MohoSrfLanded = 盖革计数器同意Moho有熔岩会更冷. 航天中心已经通知你, 严禁与盖革计数器交流. + #KERBALISM_EXPERIMENT_Radiation_EveSrfLanded = 看来在Eve的地面上,高辐射是你不必担心的一件事. + #KERBALISM_EXPERIMENT_Radiation_GillySrfLanded = 你在上面蹦来蹦去, 玩得太开心了, 没法检查辐射水平. + #KERBALISM_EXPERIMENT_Radiation_KerbinSrfLanded = 在Kerbin上辐射值是相当正常的.一定有什么东西挡住了辐射. + #KERBALISM_EXPERIMENT_Radiation_MunSrfLanded = Mun地面的辐射相当高,任何未来建造的居住区都需要更多的屏蔽材料. + #KERBALISM_EXPERIMENT_Radiation_MinmusSrfLanded = 看到显示的辐射剂量, 你后悔尝了Minmus. + #KERBALISM_EXPERIMENT_Radiation_DunaSrfLanded = 这些结果对Duna殖民地的发展至关重要.如果他们出了什么事那可太丢人了... + #KERBALISM_EXPERIMENT_Radiation_IkeSrfLanded = 地表上含有微量的放射性化合物,研发中心相信这些元素是太阳风和Duna大气的相互作用产生的. + #KERBALISM_EXPERIMENT_Radiation_DresSrfLanded = 将这些结果与表面样品对照, Dres似乎包含了大量的重金属和放射性金属. + #KERBALISM_EXPERIMENT_Radiation_LaytheSrfLanded = Laythe的大气层和活动的地核保护了它的表面免受Jool强辐射带的影响, 但是背景辐射明显还是高于Kerbin + #KERBALISM_EXPERIMENT_Radiation_VallSrfLanded = Vall的轨道很幸运没处在Jool的辐射带上, 但表面的辐射仍然很明显. + #KERBALISM_EXPERIMENT_Radiation_TyloSrfLanded = Tylo所拥有的磁层功能足以保护这颗星球免受大部分的来自Jool辐射的影响, 但它缺乏大气层意味着仍然有大量辐射会到达地表 + #KERBALISM_EXPERIMENT_Radiation_BopSrfLanded = 航天中心发来警告,不要试图去探究他们在轨道上发现的强辐射源. + #KERBALISM_EXPERIMENT_Radiation_PolSrfLanded = 看来Pol含有大量放射性氢和氦同位素, 来自几千年前的Jool沉积下来的. + #KERBALISM_EXPERIMENT_Radiation_EelooSrfLanded = 在离太阳这么远的地方, 还是有如此多的的星际辐射到达了地表.这在未来将是一个学习的好地方. + + #KERBALISM_EXPERIMENT_Radiation_EveFlyingLow = Eve厚厚的大气层和巨大的磁层阻止了所有的辐射到达这个高度. + #KERBALISM_EXPERIMENT_Radiation_KerbinFlyingLow = 火箭的震动使刻度盘不可读, 所以你决定自己写个结果. + #KERBALISM_EXPERIMENT_Radiation_DunaFlyingLow = 大气似乎阻挡了比最初预测的更多的辐射. 这对未来的Duna任务来说是个好兆头. + #KERBALISM_EXPERIMENT_Radiation_JoolFlyingLow = 你查看了盖革计数器, 但它拒绝显示读数, 直到你把它带出大气层. + #KERBALISM_EXPERIMENT_Radiation_LaytheFlyingLow = 下面的海洋发出了意想不到的辐射量. + #KERBALISM_EXPERIMENT_Radiation_EveFlyingHigh = 你忙于控制载具不让自己在空气中燃烧殆尽, 无暇查看盖革计数器. + #KERBALISM_EXPERIMENT_Radiation_KerbinFlyingHigh = 大气吸收了大部分的辐射, 即使在高层. + #KERBALISM_EXPERIMENT_Radiation_DunaFlyingHigh = 这里的大气正在发射大量的电离粒子. + #KERBALISM_EXPERIMENT_Radiation_JoolFlyingHigh = 航天中心向你保证你的第三只眼睛是完全正常的. + #KERBALISM_EXPERIMENT_Radiation_LaytheFlyingHigh = 当Jool的辐射轰击Laythe的大气层时, 会产生有趣的副产品 + #KERBALISM_EXPERIMENT_Radiation_SunInSpaceLow = 读数超过9000!!! + #KERBALISM_EXPERIMENT_Radiation_MohoInSpaceLow = 研发中心告知你这些结果有助于取得科学上的突破. 但你死死抱着空调完全不予理会. + #KERBALISM_EXPERIMENT_Radiation_EveInSpaceLow = Eve的大气层会释放出奇怪的离子, 会打乱你的读数. + #KERBALISM_EXPERIMENT_Radiation_GillyInSpaceLow = 由于Gilly轨道的离心率和Eve的磁层, 这里的辐射读数在不停地变化. + #KERBALISM_EXPERIMENT_Radiation_KerbinInSpaceLow = 那里的辐射环境比我们想象的要复杂得多. 这应该会给研发中心一些新的东西来研究. + #KERBALISM_EXPERIMENT_Radiation_MunInSpaceLow = 当你通过Mun的暗面时你注意到有一个稳定的辐射脉冲. 那可能什么也不是. + #KERBALISM_EXPERIMENT_Radiation_MinmusInSpaceLow = 结果表明, Minmus冰壳中含有大量放射性物质. + #KERBALISM_EXPERIMENT_Radiation_DunaInSpaceLow = 太阳正在剥离Duna脆弱的大气层, 因为Duna正在释放出一股电离粒子流. + #KERBALISM_EXPERIMENT_Radiation_IkeInSpaceLow = Ike的近地轨道和潮汐锁定状态意味着当你在Ike面向Duna的一侧上方时, 辐射水平会大幅下降. + #KERBALISM_EXPERIMENT_Radiation_DresInSpaceLow = 盖革计数器已经检测到大量来自Dres的辐射. + #KERBALISM_EXPERIMENT_Radiation_JoolInSpaceLow = 航天中心建议您不要回来,以免污染其他坎巴拉人 + #KERBALISM_EXPERIMENT_Radiation_LaytheInSpaceLow = 当你俯视下面美丽的海洋时, 你忘记了你正慢慢死于辐射中毒. + #KERBALISM_EXPERIMENT_Radiation_VallInSpaceLow = 令人惊讶的是, 辐射水平在一个合理的水平. + #KERBALISM_EXPERIMENT_Radiation_TyloInSpaceLow = Tylo微妙的磁气圈起到了发电机的作用, 放大了Jool已经很强的辐射场. + #KERBALISM_EXPERIMENT_Radiation_BopInSpaceLow = Bop的辐射量异常高, 似乎指向北纬68度, 东经114度. 真奇怪 + #KERBALISM_EXPERIMENT_Radiation_PolInSpaceLow = Pol周围的空间充满了放射性离子, 不幸的是, 这些离子被Jool的磁层捕获了. + #KERBALISM_EXPERIMENT_Radiation_EelooInSpaceLow = 研发中心希望能研究关于大量星际辐射对Eeloo表面的影响. + #KERBALISM_EXPERIMENT_Radiation_SunInSpaceHigh = 刚刚航天中心告诉你, 他们*可能*忘记给你的载具添加屏蔽材料了. + #KERBALISM_EXPERIMENT_Radiation_MohoInSpaceHigh = 在你的旅途中, 太阳的辐射急剧增加. + #KERBALISM_EXPERIMENT_Radiation_EveInSpaceHigh = 你不是很想穿过Eve的辐射带. + #KERBALISM_EXPERIMENT_Radiation_GillyInSpaceHigh = 你拒绝检查辐射水平, 除非航天中心停止说土豆的双关语. + #KERBALISM_EXPERIMENT_Radiation_KerbinInSpaceHigh = 这里很危险. + #KERBALISM_EXPERIMENT_Radiation_MunInSpaceHigh = 你穿过了Kerbin的辐射带, 但没死. 你现在担心这会催生出一堆疯狂的阴谋论. + #KERBALISM_EXPERIMENT_Radiation_MinmusInSpaceHigh = 你看到这上面显示不正常的辐射量, 却不知道它的来源. + #KERBALISM_EXPERIMENT_Radiation_DunaInSpaceHigh = Duna似乎没有磁层, 所以宇宙辐射将是未来Duna任务的一个问题. + #KERBALISM_EXPERIMENT_Radiation_IkeInSpaceHigh = 出乎意料的是,Ike似乎有足够的磁场来扰乱在Duna大气中剥离出来的离子 + #KERBALISM_EXPERIMENT_Radiation_DresInSpaceHigh = 在这个小行星上, 当你意识到你忘记带盖革计数器的时候, 你忍不住捂住脸哭了起来. + #KERBALISM_EXPERIMENT_Radiation_JoolInSpaceHigh = 从Jool发出的辐射量是惊人的, 你开始希望自己是在进行Duna探索任务. + #KERBALISM_EXPERIMENT_Radiation_LaytheInSpaceHigh = 令人难以置信的是, Laythe对Jool的辐射带的攻击有很大的抵抗力.上帝保佑着Laythe. 上帝保佑. + #KERBALISM_EXPERIMENT_Radiation_VallInSpaceHigh = 尽管Vall不在主辐射带内,但它仍然受到Jool辐射的恶毒惩罚. + #KERBALISM_EXPERIMENT_Radiation_TyloInSpaceHigh = 来自Jool的辐射在Tylo周围形成了一条强烈的辐射带, 但幸运的是, 看起来并没有很多辐射到达地表. 但注意,"很多"是相对而言. + #KERBALISM_EXPERIMENT_Radiation_BopInSpaceHigh = 实际上, Bop似乎是一个很强的辐射源, 但在Jool的辐射场中, 它的辐射就显得微不足道了. + #KERBALISM_EXPERIMENT_Radiation_PolInSpaceHigh = Pol离Jool足够远, 它接收来自Jool磁层和行星际气体的电离同位素. + #KERBALISM_EXPERIMENT_Radiation_EelooInSpaceHigh = 随着太阳的影响减弱, 星际辐射变得更加明显. 整个星系的秘密向你敞开. + + // Science Redefinitions + #KerbalismSimplex_science_cometSample_intermediate = Sample Comet Mid Period + #KerbalismSimplex_science_cometSample_long = Sample Comet Long Period + #KerbalismSimplex_science_cometSample_interstellar = Sample Comet Interstellar + #KerbalismSimplex_science_cometSample_short = Sample Comet Short Period + #KerbalismSimplex_science_asteroidSample = Sample Asteroid + #KerbalismSimplex_science_surfaceSample = Sample Planetary Surface + } +} From 3414ccf24978e274995ab25fb7beef436ab94f93 Mon Sep 17 00:00:00 2001 From: tiger55520 <125243826+tiger55520@users.noreply.github.com> Date: Tue, 7 Oct 2025 22:03:22 +0800 Subject: [PATCH 5/9] =?UTF-8?q?=E6=B7=BB=E5=8A=A0SimpleFuelSwitch=E7=9A=84?= =?UTF-8?q?=E6=B1=89=E5=8C=96=20(#69)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * v1.7.3 (#68) * 修改ProbePlus的RO翻译不生效的问题,并添加RP-1的ProbePlus翻译 (#67) 虽然也不是很建议用 `:FINAL`,但是没空了,遇到问题再说 * Update CHANGELOG.MD --------- Co-authored-by: BU_CuiCanYuZhou <126999206+BirghtUniverse@users.noreply.github.com> * 添加SimpleFuelSwitch的汉化 * Delete GameData/0000Tinygrox_CNPatches/zh-cn.cfg * 添加SimpleFuelSwitch的汉化 --------- Co-authored-by: tinygrox Co-authored-by: BU_CuiCanYuZhou <126999206+BirghtUniverse@users.noreply.github.com> --- .../SimpleFuelSwitch/zh-cn.cfg | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 GameData/0000Tinygrox_CNPatches/SimpleFuelSwitch/zh-cn.cfg diff --git a/GameData/0000Tinygrox_CNPatches/SimpleFuelSwitch/zh-cn.cfg b/GameData/0000Tinygrox_CNPatches/SimpleFuelSwitch/zh-cn.cfg new file mode 100644 index 0000000..621e39f --- /dev/null +++ b/GameData/0000Tinygrox_CNPatches/SimpleFuelSwitch/zh-cn.cfg @@ -0,0 +1,38 @@ +Localization +{ + zh-cn + { + // Labels displayed in the PAW showing what you can choose from. + #SimpleFuelSwitch_resourceLabel = 资源 + #SimpleFuelSwitch_fuelTypeLabel = 燃料类型 + + // Short display names for various resource combinations + #SimpleFuelSwitch_LiquidFuelAndOxidizer = 液体燃料+氧化剂 + #SimpleFuelSwitch_LiquidFuel = 液体燃料 + + // Formats "primary info" display in the part info panel in the editor. + // [0] is the label (e.g. fuelTypeLabel above). + // [1] is the display name of the fuel option (e.g. "LFO" or whatever) + // [2] is the quantity of resource involved. + #SimpleFuelSwitch_primaryInfoFormat = [0] [1]: [2] + + // Formats the title of each of the option panes in the part info panel. + // [0] is the label (e.g. fuelTypeLabel above). + // [1] is the display name of the resource combination. + #SimpleFuelSwitch_titleFormat = [1] + + // Same as titleFormat, except this one's applied to the default selection. + #SimpleFuelSwitch_titleFormatDefault = [1] (默认) + + // Formats "detailed info" for one resource in the info panel at right. + // [0] is the display name of the resource (e.g. "Liquid Fuel") + // [1] is the quantity (e.g. "0.3 t") + #SimpleFuelSwitch_detailedInfoFormat = [0]: [1] + + // Formats a number in tons to a displayable version, with units. + #SimpleFuelSwitch_massTonsFormat = [0:0.0##] t + + // Display name to use for a selection that has no resources in it. + #SimpleFuelSwitch_noResources = 无资源 + } +} From cad52fb32c58de89d03bc6d38456a61ec4851c65 Mon Sep 17 00:00:00 2001 From: tinygrox Date: Tue, 7 Oct 2025 22:06:24 +0800 Subject: [PATCH 6/9] Update CHANGELOG.MD 1.7.4 --- CHANGELOG.MD | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/CHANGELOG.MD b/CHANGELOG.MD index 3fc0b98..ab2bc29 100644 --- a/CHANGELOG.MD +++ b/CHANGELOG.MD @@ -1,5 +1,12 @@ # 更新日志 | Changelog +## [1.7.4] + +### 更新 + +- 由 @**[Star-And-Space](https://github.com/Star-And-Space)** 提供的 KerbalismSimplex 本地化支持 #71 +- 由 @**[tiger55520](https://github.com/tiger55520)** 提供的 SimpleFuelSwitch 本地化支持 #71 + ## [1.7.3] ### 修复 & 更新 From 8838e4e6f62f0e4fad4fea574cafbbb6e7dac1bd Mon Sep 17 00:00:00 2001 From: tinygrox Date: Wed, 15 Oct 2025 20:13:56 +0800 Subject: [PATCH 7/9] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20editorconfig=20?= =?UTF-8?q?=E7=AC=A6=E5=90=88=E5=AE=98=E6=96=B9=20C#=20=E4=BB=A3=E7=A0=81?= =?UTF-8?q?=E8=A7=84=E8=8C=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .editorconfig | 198 +++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 195 insertions(+), 3 deletions(-) diff --git a/.editorconfig b/.editorconfig index df88abb..3ceb8e2 100644 --- a/.editorconfig +++ b/.editorconfig @@ -1,18 +1,210 @@ # EditorConfig is awesome: https://EditorConfig.org +# 来源: https://github.com/dotnet/runtime/blob/main/.editorconfig # top-most EditorConfig file root = true -# Unix-style newlines with a newline ending every file + +# Default settings: +# A newline ending every file +# Use 4 spaces as indentation [*] end_of_line = lf +insert_final_newline = true indent_style = space +trim_trailing_whitespace = true [*.cfg] charset = utf-8 indent_size = 4 insert_final_newline = true -[*.cs] +# Specify UTF-8 without byte-order mark +[*.{csproj,locproj,nativeproj,proj,resx,slnx,vbproj}] charset = utf-8 + +# Generated code +[*{_AssemblyInfo.cs,.notsupported.cs,AsmOffsets.cs}] +generated_code = true + +# C# files +[*.cs] indent_size = 4 -insert_final_newline = true +charset = utf-8 + +# New line preferences +csharp_new_line_before_open_brace = all +csharp_new_line_before_else = true +csharp_new_line_before_catch = true +csharp_new_line_before_finally = true +csharp_new_line_before_members_in_object_initializers = true +csharp_new_line_before_members_in_anonymous_types = true +csharp_new_line_between_query_expression_clauses = true + +# Indentation preferences +csharp_indent_block_contents = true +csharp_indent_braces = false +csharp_indent_case_contents = true +csharp_indent_case_contents_when_block = false +csharp_indent_switch_labels = true +csharp_indent_labels = one_less_than_current + +# Modifier preferences +csharp_preferred_modifier_order = public,private,protected,internal,file,static,extern,new,virtual,abstract,sealed,override,readonly,unsafe,required,volatile,async:suggestion + +# avoid this. unless absolutely necessary +dotnet_style_qualification_for_field = false:suggestion +dotnet_style_qualification_for_property = false:suggestion +dotnet_style_qualification_for_method = false:suggestion +dotnet_style_qualification_for_event = false:suggestion + +# Types: use keywords instead of BCL types, and permit var only when the type is clear +csharp_style_var_for_built_in_types = false:suggestion +csharp_style_var_when_type_is_apparent = false:none +csharp_style_var_elsewhere = false:suggestion +dotnet_style_predefined_type_for_locals_parameters_members = true:suggestion +dotnet_style_predefined_type_for_member_access = true:suggestion + +# name all constant fields using PascalCase +dotnet_naming_rule.constant_fields_should_be_pascal_case.severity = suggestion +dotnet_naming_rule.constant_fields_should_be_pascal_case.symbols = constant_fields +dotnet_naming_rule.constant_fields_should_be_pascal_case.style = pascal_case_style +dotnet_naming_symbols.constant_fields.applicable_kinds = field +dotnet_naming_symbols.constant_fields.required_modifiers = const +dotnet_naming_style.pascal_case_style.capitalization = pascal_case + +# static fields should have s_ prefix +dotnet_naming_rule.static_fields_should_have_prefix.severity = suggestion +dotnet_naming_rule.static_fields_should_have_prefix.symbols = static_fields +dotnet_naming_rule.static_fields_should_have_prefix.style = static_prefix_style +dotnet_naming_symbols.static_fields.applicable_kinds = field +dotnet_naming_symbols.static_fields.required_modifiers = static +dotnet_naming_symbols.static_fields.applicable_accessibilities = private, internal, private_protected +dotnet_naming_style.static_prefix_style.required_prefix = s_ +dotnet_naming_style.static_prefix_style.capitalization = camel_case + +# internal and private fields should be _camelCase +dotnet_naming_rule.camel_case_for_private_internal_fields.severity = suggestion +dotnet_naming_rule.camel_case_for_private_internal_fields.symbols = private_internal_fields +dotnet_naming_rule.camel_case_for_private_internal_fields.style = camel_case_underscore_style +dotnet_naming_symbols.private_internal_fields.applicable_kinds = field +dotnet_naming_symbols.private_internal_fields.applicable_accessibilities = private, internal +dotnet_naming_style.camel_case_underscore_style.required_prefix = _ +dotnet_naming_style.camel_case_underscore_style.capitalization = camel_case + +# Code style defaults +csharp_using_directive_placement = outside_namespace:suggestion +dotnet_sort_system_directives_first = true +csharp_prefer_braces = true:silent +csharp_preserve_single_line_blocks = true:none +csharp_preserve_single_line_statements = false:none +csharp_prefer_static_local_function = true:suggestion +csharp_prefer_simple_using_statement = false:none +csharp_style_prefer_switch_expression = true:suggestion +dotnet_style_readonly_field = true:suggestion + +# Expression-level preferences +dotnet_style_object_initializer = true:suggestion +dotnet_style_collection_initializer = true:suggestion +dotnet_style_prefer_collection_expression = when_types_exactly_match +dotnet_style_explicit_tuple_names = true:suggestion +dotnet_style_coalesce_expression = true:suggestion +dotnet_style_null_propagation = true +dotnet_style_prefer_is_null_check_over_reference_equality_method = true:suggestion +dotnet_style_prefer_inferred_tuple_names = true:suggestion +dotnet_style_prefer_inferred_anonymous_type_member_names = true:suggestion +dotnet_style_prefer_auto_properties = true:suggestion +dotnet_style_prefer_conditional_expression_over_assignment = true:silent +dotnet_style_prefer_conditional_expression_over_return = true:silent +csharp_prefer_simple_default_expression = true:suggestion + +# Expression-bodied members +csharp_style_expression_bodied_methods = true:silent +csharp_style_expression_bodied_constructors = true:silent +csharp_style_expression_bodied_operators = true:silent +csharp_style_expression_bodied_properties = true:silent +csharp_style_expression_bodied_indexers = true:silent +csharp_style_expression_bodied_accessors = true:silent +csharp_style_expression_bodied_lambdas = true:silent +csharp_style_expression_bodied_local_functions = true:silent + +# Pattern matching +csharp_style_pattern_matching_over_is_with_cast_check = true:suggestion +csharp_style_pattern_matching_over_as_with_null_check = true:suggestion +csharp_style_inlined_variable_declaration = true:suggestion + +# Null checking preferences +csharp_style_throw_expression = true:suggestion +csharp_style_conditional_delegate_call = true:suggestion + +# Other features +csharp_style_prefer_index_operator = false:none +csharp_style_prefer_range_operator = false:none +csharp_style_pattern_local_over_anonymous_function = false:none + +# Space preferences +csharp_space_after_cast = false +csharp_space_after_colon_in_inheritance_clause = true +csharp_space_after_comma = true +csharp_space_after_dot = false +csharp_space_after_keywords_in_control_flow_statements = true +csharp_space_after_semicolon_in_for_statement = true +csharp_space_around_binary_operators = before_and_after +csharp_space_around_declaration_statements = do_not_ignore +csharp_space_before_colon_in_inheritance_clause = true +csharp_space_before_comma = false +csharp_space_before_dot = false +csharp_space_before_open_square_brackets = false +csharp_space_before_semicolon_in_for_statement = false +csharp_space_between_empty_square_brackets = false +csharp_space_between_method_call_empty_parameter_list_parentheses = false +csharp_space_between_method_call_name_and_opening_parenthesis = false +csharp_space_between_method_call_parameter_list_parentheses = false +csharp_space_between_method_declaration_empty_parameter_list_parentheses = false +csharp_space_between_method_declaration_name_and_open_parenthesis = false +csharp_space_between_method_declaration_parameter_list_parentheses = false +csharp_space_between_parentheses = false +csharp_space_between_square_brackets = false + +# License header +# file_header_template = Licensed to the .NET Foundation under one or more agreements.\nThe .NET Foundation licenses this file to you under the MIT license. + +[src/libraries/System.Net.Http/src/System/Net/Http/{SocketsHttpHandler/Http3RequestStream.cs,BrowserHttpHandler/BrowserHttpHandler.cs}] +# disable CA2025, the analyzer throws a NullReferenceException when processing this file: https://github.com/dotnet/roslyn-analyzers/issues/7652 +dotnet_diagnostic.CA2025.severity = none + +# C++ Files +[*.{cpp,h,in}] +curly_bracket_next_line = true +indent_brace_style = Allman + +# Xml project files +[*.{csproj,vbproj,vcxproj,vcxproj.filters,proj,nativeproj,locproj}] +indent_size = 2 + +# Xml build files +[*.builds] +indent_size = 2 + +# Xml files +[*.{resx,ruleset,slnx,stylecop,xml}] +indent_size = 2 + +# Xml resource files +[*.resx] +# match Visual Studio behavior +insert_final_newline = false +trim_trailing_whitespace = false + +# Xml config files +[*.{props,targets,config,nuspec}] +indent_size = 2 + +# Data serialization +[*.{json,yaml,yml}] +indent_size = 2 + +# Shell scripts +[*.sh] +end_of_line = lf +[*.{cmd,bat}] +end_of_line = crlf From 2be6f0afbb054cb430a2585657ce7217ce8bca66 Mon Sep 17 00:00:00 2001 From: tinygrox Date: Wed, 15 Oct 2025 20:15:31 +0800 Subject: [PATCH 8/9] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=9B=A0=20DPAI=20?= =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=9C=AC=E5=9C=B0=E5=8C=96=E6=94=AF=E6=8C=81?= =?UTF-8?q?=E8=80=8C=E5=AF=BC=E8=87=B4=E7=BF=BB=E8=AF=91=E5=A4=B1=E6=95=88?= =?UTF-8?q?=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 当然,字体原作者仍然没支持中文 --- .../0000Tinygrox_CNPatches/DPAI/ZH_DPAI.cfg | 34 +++++++ .../_HarmonyCNPatches/KSP_Chinese_Patches.dll | Bin 144384 -> 143872 bytes .../ModPatches/DPAIPatches.cs | 84 +++++++++--------- Source/KSP_Chinese_Patches/StaticMethods.cs | 29 ++++++ 4 files changed, 105 insertions(+), 42 deletions(-) create mode 100644 GameData/0000Tinygrox_CNPatches/DPAI/ZH_DPAI.cfg diff --git a/GameData/0000Tinygrox_CNPatches/DPAI/ZH_DPAI.cfg b/GameData/0000Tinygrox_CNPatches/DPAI/ZH_DPAI.cfg new file mode 100644 index 0000000..c08fbe2 --- /dev/null +++ b/GameData/0000Tinygrox_CNPatches/DPAI/ZH_DPAI.cfg @@ -0,0 +1,34 @@ +Localization +{ + zh-cn + { + // Docking Port Alignment Indicator + #always_use_stock_toolbar = 总是使用原版图标栏 // Always use Stock Toolbar + #display_hud_target_port_icon = 显示目标对接口图标 // Display HUD Target Port Icon + #display_when_using_rpm = 当安装RPM时显示 // Display when using RPM + #dpai = DPAI + #dpai_settings = DPAI设置 // DPAI Settings + #enable_auto_targeting_and_cycling = 自动设置/切换目标 // Enable Auto Targeting (and Cycling) + #exlude_docked_ports = 非对接口 // Exclude Docked Ports + #restrict_docking_ports = 仅对接口 // Restrict Docking Ports + #gui_scale = 界面缩放: // GUI Scale: + #hud_target_port_icon_size = 目标对接口图标大小: // HUD Target Port Icon Size: + #invert_alignment_x = 反转对齐 X 轴 // Invert Alignment X + #invert_alignment_y = 反转对齐 Y 轴 // Invert Alignment Y + #invert_roll_direction = 反转滚动方向 // Invert Roll Direction + #invert_translation_x = 反转平移 X 轴 // Invert Translation X + #invert_translation_y = 反转平移 Y 轴 // Invert Translation Y + #none = 无 // None + #no_port_targeted = 未设置对接口目标 // No Port Targeted + #no_vessel_targeted = 未设置载具为目标 // No Vessel Targeted + #settings = 设 置 // Settings + #target_out_of_range = 目标超出距离 // Target Out Of Range + + // ModuleDockingNodeNamed + #name = 名称: // Name: + #ok = Ok + #port_name = 对接口名称 // Port Name + #rename_docking_port = 重命名对接口 // Rename Docking Port + #rename_port = 重命名对接口 // Rename Port + } +} diff --git a/GameData/0000Tinygrox_CNPatches/_HarmonyCNPatches/KSP_Chinese_Patches.dll b/GameData/0000Tinygrox_CNPatches/_HarmonyCNPatches/KSP_Chinese_Patches.dll index a49c0a5ee5daca7b17d8f324789539fd1e8bf1d1..af3e7c04fa28ab3093da4e9192fa5f128f0fb22e 100644 GIT binary patch literal 143872 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 sj|i@3sKR*Wkf5w&c#sB~S literal 144384 zcmeFa3w%`7wLiXQGMPMhKTJY^5RgCwjDTnnQAr3-0|XKf1qpc!Ni@vFGZP?+h!znQ zQIsN5YSE&#)@#vPYkk#POBElDV!hVu^-^msT57H3dabqi`>wsubI&)5O*PvJuI>hdtVx9?E%f_#=U; z7l+rjw8o3uwOF%Ozq+`wJ{pZBiW?%uT1T|FHCkM`pr&|rtSM5~t5@zwU3B#fqN+d! zjh$QHVw856Milo5j3*iwBnnIJ2Xk>>jQf@NCh9Bham#x1M~4yZ1yeu>^;&r~L-~K} zTPK-?&mPEKz&DWF#fDHn8-vtS<)uRx6J^_Q*`R0J=(0p)T>|v6F;Et1qOQ8$1`O<# zWm;To1ViWs9Yux9oWN;B)5^3+TMR&OW(dbhz}LRX6+qeHty56F?ARzU1%19?gkz(@7!d9sE-l5))-wSrJ&7?~>0s#? zT=6e}qJq>wW42N*TQ^9z)8L;_Z@w=ImX2jqQSdTUG{oO%9Ptg$42>BuK7%S5h)=L| z9E;5;Il12`ZB&5TwW+woPX_bS%Q<%tc0|%TPP)lTVu8WT%Z0qtgBcyT36{c9!((2{ z7&ksx3Obw-<7;UdWQ`jdEJYUsi?65l36{bxp!j+`FeVQ=1?ddd2kkwq-?01(q=?ul z$h=gLoY6*d&fNZVJP(Z#kbIbh2EcFTaK-T1fUcjrp%9u1S3vv26;5GSn1F~IVYlbeaVEOD0|!}O3V#-V$< zHFi!>TEcbgoNsh2?F)~ch$8h-$!+ZHp3bw=(Ye|z@C)m_&=jHSTo#`Tb8p13DB=%< z*P$^Zf*F^Ko5BrQOb-|zrfbm_JoksHMNE(z&Od(!GKu&R6ER_e74ztrjA}qI(1!5^ zKzQK5fw6N@#3(CepqZ4EVkRZ07)g4{{lORluCNR{hiFS-$zTk@XIR_BM#W?xBeJ|P z`C|$MGFjPL zFsID={PWKd3kQ$q^)h2&VX*wA8`*9$F3!>lLWYU;dM`$9drX{((7Kd)h;C#|EY;5{ zT>`FL6mVQjw1O7?fNBxh27lt;jMeER}_xtnXd^`c5@A`T|y~Y5GDJ+&U=Z`6pTTcpHQb zih~=Dt;X#rdl@~$HcMM&NQ>Ac6#?fa=_2r@w)Zn4Dc`g1`C@s{2J6&P6d6Xx?4Kq2 z=Xn0&w#=dn(La-YPn!#bwwx~wxa8%P_Tg%=FUX`8a7!`l=sb;)S2=mxn0LFAcQ5lE zb@HBJ-kVO|`^?MEwwGacEnZoP?w}0>!0t_25g5Aj=mU!d9;t$-_<(1s;A$W65*6HL zfF1oN%i0?dK3Jly15P&TLo7mXRJ4ZfRtJP&)vaWk7HZ)fZbWWF3=l4D=wh&u$l@^A zBrt@*OijBbZ;C3f>dVPns>+MH%4<)zz8h3|I}Ld*#_t5TX zX`64QYnzW%{X)6kohKJ*4#z3*0T-#@i3ZrLxtvE1y6XC6c3iZ{DC*1ax@b!+F{yT5 zlnJt1KGL9CYD1Exx+QO`D(?|jdD~p=Zgz>NIl#Vw>~etW-vf7*NU(cB7baAFs4~+% zhhGS==hZ5~a1K49KirqDZcA7rF@N8jLbv;kbf<1sH7!xk8c@5cwraj_q&qa{HhSH4 z9(A#4Zcjt+O1|^4=}IHrOYeV*sP#sv9wxZkNKdU*mjU$<73!rMAhoE;2Gm2;3L`zW zs7(gcL)0E4U5GM zLwa+^P$&7YX35ro_+qkmrj-3YBlN(->dnDE?mEo{U)FasBa-s%@yPdPihQMg-OF1C zzAVpO&j(ZH`-l-qdKUF_FHZwsmiH(llJXr)nXhkuw|r&Hb!lU(ysKRE-RY6f8kau- z!aPa90$TUGB+YvdaM!>Z`rKP|u17v==(!FEQv)25cxkZ9U6PDuIUWd+hOwVNg~pD_ zQ^U3&38Tdu7U5cUUH?0~x;dpn(E>R{~3_!3;?zlN&?RKE_K`B2L2Xj=o%U3QRImroH z%GEQwROP8|ROLdmDu=&tRX%g6imzOcs@V1=vMBA?wXW=Ne#RB7uK%ynuG|TeBq$XDa5MTCrJYpRTl8h~=~3v9UEkZs-dq79eHL>P9)A zL!snyZc4YDwAY{qRSOm8n_jKACfg_Nww#LW4%0Lk^334NYRiNQ-s1zlR|UUdfR(mP zyY6qP5F~qrm*Q?-r zeZY^a;E#O3*@F}lRDx=>9*+qC* zPh&Uz3p^5{-HejHf(?p&mY7r<6eU9(PZbPRA1YAKUyH<{zP8^g0S_Wf!z|M^-<z*(Cf3@OK&&dn4akJ27n-$pSGpW|{J)1mOWw8z%mA&R^_FuVqq zA{AU}fDMO#%XaKJuBTRpbmItgIqvl%&~41Fg001&8y|u4y7N{{^p16>87^vF$Y88f z%wSJ@pSdpU4J#iG1YGj1Vy;WRN5PltqPJc1eVQ`gq$0mnf~EN);M_E@G{24!`ufJo zw?AdRqptae3`-j%ezu{79`Qqr41nCo~;63!egBB^4>Qi>f>oSuS9f%7-* zK1L*I@KVZry@$Ky8^v4~XQ~BXI@1or0d-35<0d+hG7JL06^ObhSxZJuL>Sm z;tkf2=8*iR4|vKb1-u>%FEt)k!Jqhm$B$MdUjT+<;u;auR)M!r`cpU72MJa5RfcF6 zLvK~VdkwHLhw&Z_o^uc%XKUXBsP+ghR%>g|Fz*%SS?=>D^WJyzjxn!ysU4?#3eW$K zp|rHtBYBYEXw4!pyc%eP3dZv<3fMXx7>6|3D>w69(vH2=1$P+fj^_KwX{);d(w<_Z z*@d)&CeO5$%?4?&h5va@`UVtqSa;M(ij$(9x)rajfB=WYXp%&hm*PCgwzOB}?E*s# zUtUh|h??WwR5`+96rBseu*&%F>?di*$&=MOECR#fuia}$p6DFyxY9*lh^pnVq0BQa zz-nu7v5gz+nYWF3W?#_uFz-PJ&(=TM(;Xw8f&_=IuYuv^9`C5&&{)M#-SYQh>Sc_6Yo^xQ&rx?Q@)hE zDr9%)*W@aXe>$7ix*(y-Gv_sz0eHO%-fR@^0^X{E@9_aYsDfYd0l%q&bI0p8bx~s= z(i{dG=>s04f~Wd`D^&0WKH!xqc)bsJiwfTF1AbfuAMpVnQ^5l#sP5RkII9@>9p;^u zB#@tpPqD{i#t_;9l_Y;xaNk(WrbrKa5p9> z_L%Phz_G`Cx2fmHxHC4EG;@o}*lx4t?(B(dspKb_D#4dEwm(&4<=f+t@2wR1N>6n! z&&s!)5&DLvRbE@le0yE<9W?V5IG*yi%Ii7Fw!@3xpXkrRIDS=dX@TJ-8 z`=nMi9`wj(ZC8B2h@|p*p5|WO3h@2Pd(tCc_UT4GcXKa7x?BCMd|$|Hn^TH?8VJL0 zyR4t}BpKu_4@pH|Gb-lZ04+#&tC*F~{xq1?aC=hbb2sE$9{KuDHuQAQcLCDf^tAHX zpFXqn+?p~U_h-|>ji$dRS@@-tl6cXd?5cQkK?==zV<0)-B#(S;;7b>G?;4MKQkpsL-I-T<1tK6@ z=lmp<5N*gg5XXBswp^!!=hmgyGgdqv-i15k=vO;pu=&weGaO8grzTHx6)O)Nc|QaX zl#7q~TV-rGiRWdX72gF~u$<{ZTABDR)T;Pi==$*Qt@4&?G)dGw1>ra zq4tXS9;|)B-y8eOGtN;J;*7JJzn}r{WBeDs(^`+MLncQ&y%h|x{&ZQ}>{P+``+y%- z!3TZ7uc_dpKH!g4aB#Z1s9+l$OxFhgd#WYcHtn<8Zq+LnHgq^bkzrI9M;NDqC;Naa zRq%2j@I@+kvk!Qu3Vzf88#|-y2mimlj0YOhvsc<<$3fNnuN&rfahZSKK=T!OuHiCf zALGGX{yx1#JB*sixnp7_`iUM=<3|np(;n5#O19;jhTpT}Xzlgb8 z7;YWO?_%DgPToQ0edypB8_cW=KdZnWr!IJPU%OU_i%l27E9QhzxHxnf$K11>@Y&2; z?&Pgvp62AOW8Tfov+A*jd5=1I&oJ*@2hU!QwCAx8A;K|)e+GuvTppUEfCqx%1sD}3g`A7}fxok4s1irr2=zGwPbzWvn+OQ4r_5iT}Y5N+1ZJf+Pp zb@D`;ZF2DJx}<%cvkf8~ZMF}L02mY4siZ!MEp8UAJQkzbsH+f z+Ew6pPtpMoN#S$5D`^FCBoF&x?ZIwKI-W|>Kz%i48DwUad*K_v7Y0er@?@$kntd9+1XODqxc=LJd6dS=lC_-L;Bo+15RO!BLzrMuhH5my?z zn@>y>h~E}C>Zq$Z9<_749q9z|lf?~JLB_z?*Ksx8ppe9{>H1J3dJ)V+D^_V*5i*V5(aPB1h{-XldJi}{Bd>~_A4}g zChBItWS;Hm5;ye>Zy1!mnF|aDQEP-(Y6;uh>L;7Tr5%R-Lp0VPLzdl``NEjCm!GC? zjwD~~L5InuA6YL1v!3=j$c}CP$o6V9lbg4d2yc@=ZK*f=)%)Dcyjf$bbAhOtX(jHC zT~?0Iki*z0O4`NMeJkJdxgJ|F*4)s8e(qma?#ZG~TETq7K_}tPQxD4=ti8y}yHVYotSFU-1@zwot${wqMp+knwRM7K z5ppeL7-7(cq-VCi+8Xoz7W@@`AFD6tJKD@DU+q$59<*e$ZZ@0s4ZgD-`C^zin^1e( zgoPI9err`Sse~Tktgob=UyYPBEir^ECPv_|&=OyX8La-=jo+NLqdN9prtJhHIhKYe zB*zTa`~9r3?oL(SBd+qU3_>72{9bl`b^EhG#jk<8T`D-XiKL*~3M>ZNqJ@#n7rO`g zOFq?%RUR2HaL>32Y}u~&;LdoNp7xT##!h#a?X4&U+6QKe-ka^(6)besZZp{W^zC=< zIM6QY9(Pf%n4&(#-Ivw3c#*5VO<+rXx8cqh)x3=2VuwBMa$hjze#Un^zd7pMv&L1O zO0cCmdvRx|)3wSz$TpjVi#q#Nxntmi{2q3Gz67CkzYPO$JYc@3eGBv&7YvK%OOoGx z*T2@##^$3o53NFa^1{P9`{;r3m_PArQ4C(C2e`Hsm)LcJzM1KL7JV<%Ph0e}OdqxA zkD1P1Z07HaTkTSdewFFN7X3ccw8X?`<5nAJ(S=NpvFM3R&$Q_IOt)BcJJUNX`gW%8 zx9EqNE%?7=Z4UgZRZ3P2gkMI|4!+TN~Y{kd9=Ye;Cwrd~ZV%v!LjCn(r zCiBd_497mz2q2Y5_x1e<Pq4Pu^aD@t9=>u+8!MlCH`&IChKH!5Y z_?Qp4Tat5^Db_HbBsGEu_$~LjwCDRgRbm4eYW$E*b1~LA_LepRCWmtSZbol&GvH|< zw+&wAd>?K0a{qjDk)Ay0hP9i_eExe`mIen?O3J>_w!*>sQjhfIywhb#8U>ucPWI;y ztbCe#K4V8`Ka%Ab*@M25ZXZs1)b?3Ov3~#MvU&KC&|*1S;!e5K*n35a92EdK`rN8i zIrgeK9!-_wsG1|YE`?T80dQ!wBvpMC0|R(wp!#E+ZIT$mihMv|No5K4alxtEH^jZ>H^IMh#PebDL=`Nf$9fpP{XM z>pk+_55Cmkuxq~0%zV!0=?hzoeCcYw2szv|-`s6U&$>%8qK0s*SYS=!FB$8#`}b4J z?^hs?!(Y~b;T8X1rGj@EV8ctg6=&{K#l4`4>t5XYrYi4~FDEbiBE>ePV5o6$H{xn; zCWoyjeK~m*s(yd@a`F~ltmtpml_T9#aqkaFq8<3}N0RT&z7PZ3^>hoxBT}r#X4z zp&k5vSo=den;0kZn)^iBUgn81OrCA;sBgM4)1wgM=qoR9(fn#AudaAh%@OWMkz*79 zjxwgC%5j03V@;|YJJlR_J92!Xx$S@|v;Ugpaikk_$9QCS*kQS=yxHl_``xH>+A>qL zmEDfF!^imJ-2ZJuowNXocy2iNDz0G>yI2H8+XmQZt!|b5fhvysq?Zp4S+6Ks35EdM%XWXa zknj6?tcNV-L!yi$p5;5|Ll)aHRm$y>Q;j&$up2*AS1308HbimTh3=}yjjtMV#Orzt zMbSrjy&cF<;?ko=`Nl(umY`LabM2G2n20+Z3V_(>sSdG|D00P2G_CdCroJGxkuE%Q(zZWiZ%n8>mSGGKALBPQ6IqDZ60`dZe$%LT_$bno z+fY`sPjOTng6D7YuHYu5IV$+15BPNz{E-j%GZmb7wKB~J-&^Jy6ORB^JW^rvJ;9sA z2~k|^ex}{dTxCi5AoCu_#U|ou=Dp(N9bw*QPF{F3cmr{<S9k-2n z_c?hFGw&@Y?}&-B0@~bbfE$mCEy$h1yjmx(fq6GMdAFN93>Gp#w)elZObzD}vkU0`^XJ?MG`d^s2bY}A~~PWzdPU#Q~Pw;kfd81Qbo zXa0Xs<(;(EyDoE(=4i!l`hcHM!O!`Cf2D$F+~BQ7C(;~he9H&?T^0OeAMj6A@N+)k zLn`?1KH!{fiq6Bp@bZ}w6?~o#IIe=f?E`*H1^=rL_;)J!b02Vz82o(_5pu6 zJNr3OwW`JjA2t3r+IhEH!Iyk0ctiys^8tUVf=BH3Ztf{ab2Rr7A8=F!-|PdvPX)i` z1O8A2ANK)=zNzRu1q`pAvPuQN<^vwTN0B@m3@^!xRPf2)@&+G8n#0cDzug-=`P&M3 z5g1--G^yZI_j-e0L7GF2<38YmI~4FDFuc^*pn`Y!fYVuSh!{NW`Tjn&c;3qrx*8!R zaORTM`RM=o`Ls(l*wLi+`sc3Z%p)J`KtUcl+17V1;mD_|-oZP)oiZC~4tMYC z1I|;yMM>cQkro-L>OCn*Z!1oms)DP1z}?zjTB1sB^O5||QzP}z(ycf>q1Nh7qgJ+Y zr5k(2`&D@_8S-3w{cRQep%3_D6&(DIcgIL=rEadbvQe0$r%f|Tci1WI@jRi*+v_4P zn{Lij&d{F%Ect*AKW^0z=#C4y$p`6HzJh(IiGKWT<(tY}m%~{rAD?a{=W9=y?|#?v zUP_tIei&@&dE6sk(OrgJ=Ho6|&kLCAQa>x-Rv^qVJL%VUmIilvNO}u=*)n-|+a#GA zg~oxuCFyM7{B>H-h@`gKkuu*4uKC{b$k+F~hUS;zF1fs|%yqHdK{H?Q9$SrlY?lX| zo1{hHOWSQ>L{g1+d*pk?%$KePW4`CE!KL6!4Z0YSq`|u$`Lgdd^11unQlz`p*vgl# z-|h5}^i~QD%D(Teft4>^4O%=T-3Pw3ox2UP?{n9{%9pMN^F1Wp4!)oNyzY@N^e;xf z$$ZDZ4C}J`XC-(pZ6}|0sL;%zapMW{363c6`g0Fy?<;Q=W!Rp3*bRo)8svTz{E7iK zCLw$Ut-;p_Sy5ZLa@y~?}FiFpAS`V{~vgRhak-{qmTCia|ImW zsRr1vyo@Inru)3hOttithCr7%sZ9lM@&RvC!FT$A?^D4CeZa4&;17JjpQ_-{e($#E zjWmaOrx{?&yuxql(mj)2s!CjENOZC9CKbHb2YjCje#HlTSOwDqK2|`Q!wSVd;BhK= zt`B&r3QqWdH>lvdeZUW@;Aefnud3ire84>)RIG727+yU;>4&40KHxMK2Rx4cS{+B{ zLZ%o;jptV}?(5^$^VP`i}aM zqWfGhQs|yCkD*5n-QusuG?!-$$}*vmoP6yAg*82EXIlupuasaiFUgbdeZ(WBa$?s) z7S6UGWsbINr|10jv-VuJsdl>Eu#@&0-{GMO`710}4|!9~{V5n4J*=Brim37xQ8Ywp zsA)!SVFR;Pa*nP_caB~IDRwh!I~1`lQ^}iZo@1%=oc?2_oHbyi@UyqnJmE)D=2;4e zqdt36=lNL8Q}h#OIfg&?pzp%2cqX}@*2WNih&We1R@@^?+hwrK=riANMPpFZo-r_Y z#?UnocII~_gN~@6f-YMeJIF@p&uHhFV|4MOTzz$n&I)VxRf`3m=>=bh1Vd?Cd3sE2 z3E1r=;O#U8eBvcw(qlFatjIk{gKFShYHU2Ny#vXJ%3tCy^mRTz7>72@Ro~U6y#Ltr zdKg~*WW;!jsd#^n@vht~>z&1Bjvc-^Y;QS^Ed_E^*yCl#SY4U#xG9h$+gXM?X-82V z^K~;Oo4v^*q^0D*S2AeBHz3dcX5*5=4fZ1BtB>t3Pj@*5|E zd1LaWO_QIo&wgC*9@=Ew8Cwl-bv>4-U~ZD18jaSDR5aQ){^B;vp<`$}{2tNy-c|dL z26{|>f`@Xm6{bQ>`BR_Orq%AYRIv{cqq1Te(Bp5165U?BEaO|77o-^_D&p!_v z<4zXsfY0*B_zlA`sHZP?pRnv(VA^*+bCc{_qFMRYcPrl>pub3YR=)0)_qthL=*jNX z&&oIA3+9{JjeOEy2aFF>LT?}aJ(NozL|c!GoZ+rRi3l@rl}5mlP~U29Rnnh$uL3f}Ak-l~Fk`hfSS;QI`) z83lIheC$D0-fOP%&Pw+=wxg=Nna_CJbO+KL4Y1b-e76b?9PpNWG1458|IG*dpDK9o zFTEwdgEWWayPow1{~2ixaMyF*;NAxn@NHmtx#J-f{8u0F=PLO2=e;GrgEWWE6JPKK zUxYLV_z@rQ$13=HFM3PFxbp_n~8*lJ0k>-$G@`g8f0n!}c z2YkT)u7WfF&0F#Sq&XzdebXC!KhhlF2maj~{AZ*&z6l2E=n|#SaHnc^??^lGh7b_?->8EB(+Aw^&x+)7 zFuaDH1uA&Qhu+}hNOR~s?l0cpvytWiKj;H~O9g-80}g(qNWKOPuL?e!SIq?tAY>sfZtTX;lFuHE<~EcbmM)%lU49WAMjok+~os)R|OY->aFv5q&ak6 z;sai#g5UH3f2M*9|L(0uDbgHjtn>jVRPfCP*cfQLwI^}6D(b z?~3yKHxGHJlhAnLN)^1$ z02^)~+U;Pv`*T;R^7b0?Tw=O=Rq!z%@Rxh)YW#8CU}m*My}p%hy`~|*!^M^u0$u7A zRl)0hz?)R??FQIVRp^@b`}iJICBAA%bkX%K6@1(Woc+0Cg)%U_{BW`guJr-0P{9*( zy(McZxWE7#ChOMNwL=y6tf8nOPS`)~=O^D*)V&8XxdR6}-y_yiWx`?gKucf{*xs zKUTp-LA`>8LtxBepGf<;&hZf7u)=IZqDwO`Qo);jz&liMmk;=D72G$&yX6Xz=FoYv z54chVxA}lCRl)ZfV8y;^?@>LfN_-FJGw}6*?Odr->Fmf4>5^2FqT@F9wfj5-uFKNVs?EIWTDIWU} z&#+sB{%DX@Rv9F?m1VZN`Mi&hkooRH9?W>VSsvQx*OI^hiFWKtWh15YG6aRbpte3zEuz9ylyMw{b|xaVA=b(sM= zad8b5W3cNB-ifmo&w+!{c+f34-#oFRE!MzbeDD}{;Jl%C=H%pp_%v`T;k21chxKW& z{%<@Ohj0%)8BfFT56`I(Y(SIn?=<}5ayTFSLSQoRP4w!*KL9T*K5H z{$W-wEh!>8m--j8erF8tnc1H%A3AGz9=$sHmOz;PgYL)mm*RRsW`0o}9RV^-Un|N- ziSJ~xZoe(z`(wn{OEO<7%A=2iw*>O2GLt1NF8*j#n0f?Q&gICJM~91U3FOjD$oVG4 zp-Ca0Hs;hbL`^qB=kMsH%oxTpe^@jeOYc$IG zCUuSC+MOlJ%^LAZNtnKs!DV%XnEyU<<2E^94@-#p1bzd2m~KT`VH#D; z$f<$TN9NL4Xc(q~P=3(}sw?W5nM=E%TW`9*m~C|a4 zNh21Dd!{;uO&ZYwDub>J^rd@-GZlg+S0e42%eQBzo#t5n(RSRmRpa#(8f_hEJ96*}|^}e3AT~I$4X#>$8SICW%)O4NtwV=)uR380BP&AV30N)qXy`uCy`iG!)>d0__OaHr` z)>BZs1(i?z0~y2n(!H>52S$l8Hfj)^92ibhf-hzar=h`@aa|gGEh7)loc>!zKe~L> z;fw&qgTKT5&qg23m_T)b4{^O~=rLR$6xZFu`TlBgy;xjpMlxr2$uY>edFWx}y}RT? zT(2I<*CQqWh1BLz6zWGKOEYnOF7RI&r_(8coKPNW)GNgIdAKj2LR{-_Ed?-MBbn3a_X`uG$)ajXLg1XPlR}ShkK^>sP$ax|7 z5k@~QAu)0hp5UG)r~|Y;<9T@S7D4UI{`Ih>p)ehm6#X_Z8$F`{V?NPNP)(sMO6b%l zBilkbR4TlBC(SKs3-usEUt#2%BRfL9Xg}r&rcOaxe`-2OQUgE@qyo%4MB57n4Zjlg zm!AW@ejJ*IanGPO3TmW4K9e(h#MMBK)2Z4KH-b7%P&=|;9KAb~Pg7-D;9o|68G<-m_Y{X;{w4rH@t zh4e$6V$BNaaY1dT9=)Fk71H68Ip21=sn?;<5W1;MQoqhS6dFpEr!e&lu`WeaIi9J_ zqJ$!<5|k{Vh-!3-ODLk{g4#~+WgiL^(X$As3@O7LQif3ho~c3|gq{|~Qif5nNZU?_ zq1iBM*Qtj=71L8XbzPrBq2bi`RF<-xMt~YYTXm`d)QR+_PTdb`B#q-q7|8FVekJs} zPW3K06dFbQd2&WtThBuw450`=nA(NJ@ag{@DaeLD5WeuqNi>6lKH!)6m`Z@EPN6jCPAhdNa`=uqfXYO9cG z@1TB@==DlT4M)DysC0&;5vSr=$Dz>I=(CwJtt0nPXfjpJlGOD;oOeO8 zF5>XnoF?ru#bK8z^c_TEhFzx64+JHBVhTO1Q*4(h^pr$WKFXUy%d12_x;p<*=uG;a zPW=h3Ih9`3sTcbn3Y|rv`4YK&=)0k_sjp7mgW8@$TXpI`Aafdhrc;|?!E*Zf0-3K9 zwS|eQCG`i$oKE-Y)B#ATq|bC}Gpsv<9$F}o|A5SyG;)!oO5s_vD4|n1kTRQ|(WzIV z^&Bd$k;sRTHkbD3)KB1p=h9J~%I$k7R7F#3C2}OFd4#`lj?Z@b0kob^lNU>BDN0{J zyOv058j#hLeV(M2p+*Y{e;OR0?X&{rEuuGdYA5upp|N-#ozw1yb!(|sr%nWNG40c- zIY2I&ei?S3BNPg;w70r>7x+ND$f2ITql2c3EhwY`8wULcX*gv@1>(5W|2+vW6( zPCbTv7t+9G61g5}E2#EDNxg*rS4aDF>NM1LB~4o)({_jYWzEEo>p1Hd!QO=<3*CX08|t0zgSXRKt*%13>Ivm_IA#S-V^qFp-mGuY)~8mY;&r5GpLD4|n5VcpfVFV1PwN>PVqQQFkOX;L$bV$GtoRiy2t zW%*BpqBMIABX`mzpxSB6T1oZl^F&CaSJz1@GUQMwK~Hr`DhvM7K{s70sUgsM4Q;wi zQt!iC*HZiCl9~ozT1QXm)YzeiLY>ri1E+1L-;cO5bSdrKD5+l*_sh7Ho)MI+(PfSr zT}A`16iCtTm(kd(n3DCojPSPr1jY5cjHU`|C*6*|avA+lr+x-%J$#YENo@yp6YbEc7Yh%Cw$l-vDn%V`rm4Fmaw=N-7Q&1Agp_*J zVFx|6TTv_+&zDZA-Lonk4wX_uh3 z(|C*pyQ%s+EM+@QN8kJ=J+e-own%I0#M(k(066p z2e9W}s@17KA?*&DeXmU0gA(qfcXX-`dhvH?()VTB7^Ll^$@fXB2dKN~A)V?EJ?|zQ z(BZS4{vB!GrGg(w>Qsy&_fU&Y9R%`w^oUMf3|;P}M;?~Q>yY++%KovWh9m7h>id|a zzKgVfp_Mu{9clLyeyN1dcKRF2`vGmyscKOB>2*O#%Rk_-`~$S+X^~HiFAvZ)f|BiE zQQQs>5PsJnO1Kf_JwQEw&Xkn-phM<^bcaZjQXZsxbc&@sNc#n~ogRZF9;7YLNSSLf ze*Tb-{6bPYK|MsZ&srt?$Wg+N=(OiJO_pF$T*8lNsz}>TyU?0HqHzbM%q&n3(?dG- z80_+6s(oIjeIIF$(6|>Q^(#<6p-nF`CF}R7qx47VYro<&S^A@NwoY;BkJ4;GZKntO zJ`sA9Hg-uQN0pD$9zjW&k2_>OPDgbluYn$?zv>jre4IWL)OMN-%|N}(GNqI!98#X3 zJ%>0=_RS|~$gi1_dOkrX>J-a-g2o97@e;;~Cusa@A|D+=t2{{?bt)HQ-B0O-H)UEA zMw_Q-$iGW!8IV7tHk~R*%KpQQr?G)eECy7w!8CQ_{LGJFNRM-Sv?`ioWu)zJ`@6 z%$Ml_k@j`$BR!t+GIiOIuQ-se(3?7PI2{eWLhtF+MfBGYH(r3&XYx+#Z-Rs!s>Qeu z&>chh8Y|}Ov5;{M($z(LzZJ+J{X+2N{Sn)J?r4^Cd{p1QA-Z*R-@ci2CpZB*XOxxe zXOLq^xG9VG%-$Rw0OzV<@}BY062^Qkbl`i*`QLx-13UchuZ6uu?iHSi)%fuCs3=nzeHR+aV?}P#r0aj*^cXQ`YoxawwUf`41`Kbc2Lg4Otu#>N8bZG>-bo|rq)~U%PXbdi zz7PJ3h=+a_cyH8?vFH3G&L9Q?^B9d2m~q7X@6l20Lk^_)sONG2QQ%kf8@gcltJvRt zzT|a!FYwOj!`SC%eclt-zd*M?(BG(6>7T&i{o)CMl97MMIUMUVRa_qk934F{@Y}$k zQas8LWc+Uf1*7H#Drr;JvcT{_uhJ%56C!<&b%3Y-+| zD83GyQ-^opdhaM;g8vA98`n*OzbnX`n}a__>Rq_c3BC=?a-rdJ+L!SL?oS#0`#?Wo z$p>id&_6<-XG%T?Cy+TL*aSO_4Ymn81OlOqvx3`$+YxUtrXu(r{XT16piS7PNm%B# z;BA?+gPoAJ6xVN!Y7Sl!czWpSU{3I6=$}Bj572g`t_SDCl8!)UU~tBDKz>-%49*;2 za)L+2wK%}3-x;+7sh5qs9jTpy^YC!S&&jwC*KI{V#C2oF4(Q32KPmW|&`ZGpvq)oIV#P32lvNew+X=?2j4@k17K@U@I#895mzXPkoTpkb$FTpM@?);K9xJbWsU1(1^yyjJKx zP2@UO0(@|*;9nxHEnF5f>`UuKE3X%tuczKc7XdkLI7lEI)t@5GX564 zBkM9?<`;DYZVQ|{>Z*+As37xJa2ARZzYfX6A^F?T^ZUX58S81;=(mFFDYNKD;M`pD zJnDPR(C6tnDk^#$d0#2{F`W^35&EAI_*U`rxPM4oTZ^7YWKfQi%OK6bbvWHZOT%T< zgC=E`;Uw)WTnFPf3T1R6MQ|NU8*n{UT+bBO>4JYQZ34eWaF&T{Bkcj_Vmg3poLo-Pcp6!-Pwx=~#BitEqheUSBeN?hLweiQeh48D#O*XbFY+9_a&iyK>Rb zd*D>9Cr+Ar;iR}X4M9o~PSJ{yI)eIR^cX;+fGVXEXbh0!aC%k-^aPA~ry}ZmFZdZ| z?H7ZAOq_FPX5spqVZCsDEHnt$P2xIqNwXpJB&-Un@$hied4?}uw4(u45H6L2j8FNh}} z2H{!)UJ&gx6xT7}1>vj1ah(d!4boXi4^kD4#HBmJu0KS-3E~Z0({cSNdQXs^qFK0h(HvY~ z#xoB=Ja;e;*VkwPu75$9LHY>2B#1NI#kl?#ormi`=zLs{(=uGcfeUfX3e@466R5|v zXP^<+UV#X%{jo<2`vh8ny@s~Yx3SitKu%y`;1)dn@Jiss;Az2lupvXs2yNtuEt~2_ zF5Uwd#b?q8Jn#LuUBAYXBK2{yPrU;@G$$QukTPot}-nI;FYD9jLmsb`;2S2w8u49|kl$5J^;$FMmx3nv3z}dE;u{vg z-z;DPRn*5LGg~8VO)DqR{EoJ^`i8a$Zs*L1cC3zQ3YCayNSj?BZ>fnSa97nD=dU@@ z#HkZ?i4$pNN3?O}L`$#$O{B`!#sn%?uXQ3(YH_NbhrhX=TpOA?FV@u27CD=0W3jeG zYy0$AG@-@X+9F!rbS<*Bd^)vO(YZC%WpftL{2Axf)y}D|(eu~w4Og#*DzsJgZSjb> zOK2VP22?$?*H*`(omH(3v^w4x)7o$oZ$QzFRMQzxL{^tg=hB3-@v>QwXhdsmBuJ(5 zrY7R%niGeLRk8Y}NE6M88;z$k7%-!)zCDga30_j)*4o4x3o~1Gp{dpNiN=FkT^>MH6RFUEsc5;nCK?Gs6OrHZVzo$Zn2j3Ox#PfCFQL7JEh-3^sO*er)6AH*wqD~hK#NXc zaD=&{@kD*JF+ynT`b1=oLBij3<;tT?BvM2 z;9K}Yvo5NSHb-Cwe(tTJqqVImqD`-FY>AN73usPdYrH)c=N>_GWOc=TWvqi)i#no- z*3}VilG*jqCU8&`Q!};LYMrxqPF-!Rxfy9SC zcEZdip&hM8mb#|4HgV52tLU`YuuWUNr0ez3OeB`Kw?pqL)XiQYyMwVLL05DximVcp zS-hb14lAl57{d3&-FYn$4aPLOE$*ey@t{W1@5F6+Lp-6?HztG(!KsbO)`n{=inK)- zua`3i&C!Z33yy5@2yxej;cFVTNF)lEO|Y-P$nti2Y;`-@Q4<{oX-(w`I8s9gP_sH( zZB%8Xp`*E(oyI~S^ODwhtAl5ZD7CE#JJe)r7k(86nD_Jlc63uNSH zr_*Peh}7mEkW;ltOv?&Xl+A>va;1`o#=`fg*zg&MqFzWX!6x{ za5s{Pde85yt#3BGNtaosTMErj=SH*!c8t~YW6`QuV||;OgcFwB#v4o^it+w)LA`*?($1xt9*BWh#t;G|y!Zm4rB(ZpoqYWfL#mVk12a~E9 zm9mdhMQdVpeS00c&#bo2_7)y_<``*unbK2GUfqHyUuCh2BCBHwjG{saI>pqeXP!~DC?d0a0?tEEi?_tu8NgL`7la|84&w;-dK7PyF2`OT8R3YM zFjH$Ro?ezv4=pka z&v4hbEs0?4ZWFVio-SosjJFB5N>?SJZdvwb8RzL=tEQ zb2P4kjb#<|^jVQuyffNpG(=MR^tM<$5>Ft`)M5zPJ#on`1rr#ps+Tnf@k3+65Rse? zjya>iXX~bSXz*DX2I?ZLd2VLwIuRf03APEP9Ba!psAqCYWd!9r)AVtk9jOLUkBl_* zoHeb94mtQ4A&8z}^t1(QBHEhP$l5w?L++B&A26RJFfi(~i!*J;lJbgJ2bO8A>*{95 zViy}(Fe8cT=$Uvjma~NpsEn+cS0Al!=7~D8W_5j3=Sv4g=u}bP))vD!&GVXm4_OYB zV>;JW#pvD<*9(=7VbxlPG`8}Z7bT z#2DCW>eoanIuZ%gNU9-5GOQ5LuoZ2smtNZGNS#sT7~n;SB=gzkF*&l^(vo^Nw6-PN zvKr&KEj7vVYG(WRZp&x$R5b_82#-R4HDVsqz}5hx=CNi8TN&(1X0!5cgW0IufofaZ zb-@^(8xfPhqgopySUigzAwA7#2~4_h)_EPgS=81F-K1TYh&lLFedIE@rbVr|aY2+f ze6R?MMQ32(GLYQk5Gx_Lw0JJL7hyPUHS!1_Xv1nzANb-zl?cK#-s~{q^O+bQ8+eyN zMCnGN`@kP%X;s)zh&0LWX24~rfwdg86H)T)R`mMXCD_AZU*ItqyJnu~s#u!niZ;xE zSS6p=(u&}^wQY5p1*8X^&vP*^fH{D3Q@loYZriA%)GQewLXL`h%qiSE4GYvD_QkfP zSi)lr;%yp?rx79-4 zDj25#vEXsX*?SL<#IC5?h^E!IM$I6irX{v^9y$}oXgx{xLR~@U1X22ouJ?55>y94II?h;!%|!@{>N`?Y%Zu;`f+Vbecxy|B*ijq8>~2Ol1EHFc zy&@J%U`)q)*UmL!3_DLWF82mA$V6oB1lWUXXPVT(jBWI&-3@~s%eCp?lnC8bR7X4! zTP?bEq-nRnOybRc9x6d^+P{OlZ3-qqHfS6VNfTm zAsSl{@V8=Cn#qBl2>x~bl)AAsY{_PKwB}BPQ0Q2lx~jY|!Ep)i`iQ+DY?4XA^DqwS zgP$`2VS8I=Ey6Qw^YBvL$YAWH%2u(lMfhXVwh&!x-o(w6YAhJBN+3Px7ROtn?tvb$s0A zYzBUqd{?!ulNq42^hmqvc0f%c*1lHQuo;WBsz|gs(Ly5TnpeM0Cu0p4;h;t=F{|nu zB5fqcBwlh#x-zl~8xQhc&U&PeJiGx%m?zu#Y_D#53t%{K6uL#?WjH9o`C1ews^ZLL z4h|M64mHG$Jh706hpo*~b_3q5CCq6!i-?l3+H;;fKwcttaU{y+;m|4;#Wu4ZxQa3m zzi=S62*EOc(-KKjot}VmT5}PkA8c``C=OHMrr6rPRIDb&5hX8Dk%kEu#?uM?pas*Y zem*MpxouL32dgz=DW)&B#9@@_f^18iu0Sq(oJEyu%{Xn2Cinn)#=6Fchy=;tS{%{I z+1p5-^N3qMohfgVUL+Ve$Puj|h<0`WJpFF*$rCw{N%8qtn&g$~>W@#}HVg}@Id1!_G-%DsZpoEY!5#tzQ z9-ak=Xb6w^%nwIBnkkfP3R3nc{hZP|YCuXXflVuxgitHNryf`wm?RGzAoZ5U9rp^| zHRjb{gg?b1hG7T0H3~LD1bOa(osno9yI|lM&j;{5$}!xDQ>ygA8~4q8dM@z#o(Fhk zybXn`__8$w&5z(*82UA#X=q+78mox3)URp95v5@)%m&R-^l%(?3N3462^_*;<2Kq9 zC%IOe4S0NBYZQBXac7Dv(}18=AXPe5Tpmr&z|@GP51&=X4F!xtAw2L9fst!?cLnQH zHCY~rMKm*Ao;1hh;Sdgb`3x7?II_{*jAm3BcP`E-YHOtPC}P~tMu%yvU%jNVhR01* zTc1uK+(k?oiZybs(?>CbuE7Zi?_@R0X$JzFJ97q39`V$yZB4WoEHR0jPGWGy+3fWC z=$u(GgXOlwHPRN<DvywjBY57|eK*iXyyd z#&l=^`An{(xuv!xGNaStmc!Sga4p$0O|YyOZ(W%zbE2){<*UhFfMbe8^#VAD$ub5G zV2HN}9ucutu<>+wlA<5e{8)pS zwc^wmjq`pMSdF}y!eZlufu|XDs-J~JV>G>3CGxC+{N_T<+>|jroF^Rp(HK0ufTxD) z7SGX_M7C)Fol&G=heqtZJCfvFQsN4&D1l{Z-72xy6UQK^?{T5+u%{##IIz((h@Oate)I6!YOklHg-nITdkGfXPAxGC1N&*d~8o zgIUT5O3XmItKtzVq|b?SF&MAcMCN10GHTAV7hz$=0j{`j(xY8Lh)EFRJ)ySAQ{>`k3wa#|N@ z?BJN$n4Brn#3KwpT|leEagewb{ZaHx8m~VLLW!2vxN)yr&>%5s^Mhm<)Zv1$PAG3Z z;^qi@@Ti%F<7L88vFMw4IssU!xO>NA(we98;=h;%A$?e`YU3=i>YPdk(;`1tlF}5 z*{?4Se16HozhCk4^_%Ax;{odNcwiMu<9;3rZK9r^|MiAn-YC;1C~3j*XRgfO_;IB0 zbNtvGuf>>&>*e%HXW)d@P%i;xSwaQWWOeDxT4A_mkyZ=?T9{&(tR5AMB1Zz{Hz2JT zR0m#s)`p5xe!E%OdA59XhP_tZk~ps%TCrZMQCb@slFO?XTKQ{J3>`I~IcGbx?PUE1 zaUJc_=IgSkUmdLhRzqqlaz=?xS>mAmOM~oQGm$d_9r2?GIH0s&9UcKj$Au2mrx|u? zh4V@6sfTo!4roXDO-PC3t_`W376z}eYK1$oJ_+GoZFszxu?bN-8YJ`83)@7HQj4or5zfy+ZJ`jn%^*}+)@&}035cTDqBE$6Ntzo;0G zB?o$OxBBQp_RCxfjLikluLFK`;f4l1=Lr{z4!2`PX$O0J8CtH40vXHj_Yqj;XbSWg zEo3u7mcw@pukR$PbHW`AoH zzRdQn5R$ofRKecd)3{wO1>FRHY5=dv;Ts005-1nnIZ2hW2$Fa>WItyuqL9ZLP#>w2 z>6t?%?I9OE(rE){4a+bhmBT7_uVN48Uf3b*ge8>l<#nhH4XDuTW!0YMbw@%S>?SQ^ zNvN|8y424|H|uxq7n5(~cSxU}o;7$Zks}ZGI23EppvACF6WW`-$Ugeg9I2^a?mGN{ zz&*D^&!H9g@j|h%i-vO8Z`ZqR|hiB zUNxmNkaOgwkLPpm3iMeE-4VAy2G^5%l-}^G?WJ@@^dvIUxZd1Ts7K$1am_~BYUDtq zg52yO_}xeI>$^{i-n}A_AIFb|cp7DyHbk$MEe*GtsG*I}nagZ}jF=ehn2w_VU@q%% zd(+<+{<-FghJURIm>BGg;%n2?p)VA!{RY zoatpp?iK8%JX1#Cv6i(>yY{OQ7UcP07TRQ)}L%{i65N<*0)xMD91 zHsvvf`tW$bqX5q==!uy(EQ~A+^y86<{h}CFOaMteCS3Vg=jihXwpA<-oM1#A+%Cr0 zNqyuP+PhY!2J&Z!b}j?LD0K?%sn@1m;}`5*H0&m(0w>!&eVQ1TIX2EZW{I z<3yv3yBc4<@q;y4Ey+0oz2*oXsuyz>WpdjGdey+5Jgc&YQ0CRqvo-|=u%~nY)q)m@ zp&wwj&z!b)=FY&d2E|IwF_3b8e#sx&KaL#xMqqFaEkf-$29kCyhP8Cd_WE?mJ&h)E z>{MXRHZ5V{rr;+@r-(GJB}a5LTw;y9$%w$$D$r(LZOT8qvuay|8ftnQQ@{C`bIzkW zwErCR^cu`mwWvS$6xqv~Q5UI&oNuY$iMNl~YUc#t-F{{Btie6J6EYi74)?=GNEdU= z;8`et0m?le(am(|QH5Ee0=z0jWzL*c$j6ao8|+aF)FSkU8Ib3i7q#F~t66Aflx>r6 zhQH26ZPa^AzL-znuJyA)sK zsdkyOp$GdMHrD*4pK6z$W}cFC%At~UBvZb-EXsG!P38VARgQMy=!GL4UbeAkD?U~- z9qreKcH&W%TM|DwL5s=p&1h*_oLW*HJT$c=$5?x!TMjvrnkCnK(UP5V9OdToC@y0~ zd%bB^I%T=%b;wWA=l$A@PT+pXtzeH(=p4U1JT4^XacFd|Uw&SEw+S!dcq@U?qaFY8 z!kotlg*1xT$y%gI=jW~7_54zr6rr$ak^MPrx6wMxKO5DC@T z`F`5fiFFf4xmGM^$#Il8Os=7LrPC_r6^^m29RgZxmyu4HUXmQ8p1{#$9ChM2o;7O+ zMQ3_N1-v_vjCV*p$2m8v-jcGn_Oj0cG}`bb`y3$WTSuwG8!s+B?~dzlz3kYk%g^7m z=9Jod7IECjk(a(3kk5!syUtzBQJx#0<3t;OFysHedheqC)puO~aU`p8N@vRwT~h8pPuaUSNt*llSu~;IZ5`@Su6T_FbcUFh|m5STWga(k(rP^GaQ=727dh z&qu%D$SPrJ;;E@zCDY*Puo~;i`bl4^g?7B7LO#;<+*y?vVQLZc|N9M(VGTQ-mdH3X z=aV&mTQ=+_tUbZgF*$!*c2}doojD&`@_s9q%5zDvSP%0a<1)-zP2h2VnuOOv6eF5n zhn38D{KtD)bVhgc&P1(5PW+(=-k)8ImBMUTjdyH#E81@RFW^OkdG&q@@k*ZS_q&?E zEvx>v>=S_!sjGd@p%~V(qHMVzHKzH=>!Vj(e&gDOQ|5E837~IVm|~2^9QE=p>?&Lr zA&q?u?IZfw)i->)P*`=iEY0vA?~J4GBzE%D|Dsm}a%wSR*Yc~N zvpDAztmzk_t!FYP=job^jelPc-WkqS9&i6IhK-%N*sVMVZOtA_1K5r%S!#ED3G8sP zDs3%Vkb877EW*3Xvga>C51fa6y(<=!cF6mWBVteGv~)}7Jsi0|h}xXs)ME7ceU_tU zvv_7Pc8816uenXwi|uV?XjCfNs0pdl(U>#=uF=d~$x{Igv+4_AqW|M$5eM z6@TwE^QKYe`HnKr?^c;cURkD|cdS$2MbMAOYPMsm7!$4idg{fseIt6$qMtGuNWle7?g`vzVFBGOS#O)^*2N z=Ng>D5oev%1UdEa3ihfd(I<^agZDalPUgDvSrGe%vvjJl%KkEP92$-0_HsrVGFsrh znRYW$pnTqUYek)#Fv9b>Anyvm>#zdj*g~S~OuReVQSwl^hh#~c3ES|w#T}8KIa*N z(SMA7Kr^hex|h>Y>I9?3Wj|y|tT(qtJ!;1GQM_fAyE?BmjI&ZBH_xC(DTH~~ zu%SD`A>}j!qmEnW2^;b#uom;6vk%a@$z^mWze9tQqz|zTR_WH0rxr;qc8*nQx_KNW z<#R2pcB$0uXSbL;!Xf3HJvj?+NqSmNn|8$}Ly- zR&Ix8W0N(Lo+alKdyCRgXLKgl4u-aLUiWnJljYE`gzanBiE|n&F|$4Dx>tHSG96l+ z$`KpKUObX=e8Xdf+-c$GDtIm50Uoby+Ho&-x(6h4X`Y{)WPBX!x;diuakMzkTzocH zrH@r|)oD*Le1?Wu-tL+{nAc+LOUZqRhMy>E!{cie)*^i3aJpEJO~7m2_>Rv%cpcmf zOSnqN;Yjz>^A0QwU?*GdQt=+59M|Mo<&I0PZ5L;iCGxba7%wavj~C4GQzxtNAIG@- zObFYQ&$>hBZ<{X>vm@8Ue}Ccf1%X!lF*lq8@p^*iZw;@NI}xWJZ2fvjI}ImCTuVMv z<@F|G)*|+mXEjq$TA8TT<$}X!XQ$v4hj$|QY{`;(HqnKtODesgeD$xke-Y{F)MGX* z!SmWbzaD>T|HAbsPi-ZRmE^MwakNB|ozF-u;g%aC3zKsOP`1A($ThW3*VhdB2 z-{Wbh9H!XI0|OSoS{xlnDPpH7tLw(L8&94e=)nduJbA)pZ^Ca|J>? z2}u^RtYEB2GDG-^_y`6J1Sbl{m>AwedIF&e5J(7#@TDL=3^DeTO%hnx0k^?;l4+WD zk|vp%rtX^6>9|=*n|6{;+Qx}H=`3fZ%{bG#E0byJjKid3tjX&_onw_3ss`X*B3^iHV##A-9<8W0w;6 zw3bz4y?{$Bd--U`x}jhmu~Lh044i}=Aq$|KL~Af)nhUk^+eF8$mFqR{mA_3J{_Cjp zj%rVI23ZUpb-cQx=xFy!?oCFkLsE6-LpC>1eExeyXRekED3ndIgw)0HM)@W)--2e9C^8|=8f>EM@RN$c+)lVCmo>sE+++by&8eV(ZKT z9qZNXD`_$l`>wxu#l3yM6y`o8_UoJHq*|~7`zbbe+9HwlVVT8Dll=QMsb`rsqcfN$ z_?aeI{EfFJ`_x<^?^dqo@Dp;@CtT|*24sdtaw}eUj{7xLP%fVhEuZ$pjh#VLHiC(0 zKU1Nr3g#&fmTa5n(|ixBVUPjf3ukmqN_FC);Xw3emI(Es-t~R5TM|O{7&F>X_?Xc2M@2T_@NpA?Zcll0J{c4unQ$9akud4{RG*$Y{ z<}>HwE2F!}1Uc!1BZZ49nooTyEw*fa7>7k$SCJLZ_t?^HdE&5O1FJP+rFEppJa|T` zui&GoRGazuiwCdVxQ2Y{=s$U6WH8z)SW^tD7RiP9vEwps<`f-Ks=3g7@pYJ5eeR$N zDl%4Uo75J;AX>|mzjjUh0@CfWaN*}; zXXUx9TC-o!A+&E>{;ezPx`Vk6F3o$gS~$j9!z!SBZBOdzf6oRsOBscT?7HS`!+n78 zwLPl`zx+(F1l=6(Q@CcGOZ%}#Fo?8~t80-xj)#Tci080SVYnJ|8+HfH4@kato3z7b zqi1QQy=_~mW#|3kAuLz0ZR%Q*?3QNd;;S(!r;ki#>f^$5@e#)($-4L(v%XY&t*Z!Q zIub2+-x_r47ZPPdWgv=XcT77lP1LGnHN%#l1v0lsg5(&<2sl{6&r8mpuNKF*!rm1h zW3#MX4m9Q4MR2=F-$nBsiB;_FlWj@X3@#>Wc~~?#c9%?sX>@O*8b*0T=@4Cea{CDU z9k)gSmoEZRr*VK(d}zz5#ow3Ae~s7cqc_MOQ}^NG5hJiV8iSt`y-QZCHChq)i_Tg?jA}*>cb-I zEiz}u%CEEAkscO9g>(7{4edz864H}vl2?`#tw#FYf_K17;i$uFA+xFYJBPDLXecW^ zc!hF=Sk@V~@n$VEgd;dsqdsI|>&Qx*;71}U>gkB!vNFE&K2?K9$1T-9GV;#_hj4<8 z$1EkI_;v3b4ioiN0`BAe!WO%Tbe5dG1kc{0O)XsKNud(9O(|0ReMv24b$6-0C3KCo zUlaG81TJqeKhY(eFdlce!SCTGx^8$^J^lzMCbTZGQj4YN*pt@cx2TZ|;!vv{<4;Sj zu}F^+>y$`kYe57YmnH2#DUEI|cp=P_#$CSZ-{%K4UNiIJI$xhhC_HDQcz{IB_*R_u zgAcFc}=L-JN`Tac(Fxo2ej?5$Z^a`X5%PBTSzZSy&$0$qNK5oDLF2XDa5H6B6c zHDGZ_+=;t5BoPd3AxFtsHqLaN+)I9vojU$^-Yn|TGsXHFRl+OtZ_gX5i0>KyP4bg# zwXcperJhUN$z|r8V3sC@L1!s|K~DDplfD(0n#jE_?0&MhLMpRe_NOh)Pi4!4x%&1e z=^dGZcg?(8myY)Q*shOvek%QXhwHm89q#Mi2Jv-!$4+=lCi$P7{QOS=|^Q-w8Bm@89lyHjpxeJn7x)?sxuHHSvFDKff z&h(#pzj63C_e$Ma?MnUe}|qz#Fr#_{&ENwLa^3?Cn&7c{Qy<&4u1}tJB+-MjKbq+V`{eA7 zSS)h(^@u#7s;^yUIv|=H2?xX4N_GXB*rjxygQp^^mn`Dot&fZ)Dn4>VZ?sQsRY0jV z1LLdMQ4G$)wo`y>^R2?g4z6m-E|D(NJ27<89{(ILZWSy}4aR7XDZsdCYIsarZNRM@ z=mm1()~oF)hQ;LeQ-H4-dq{3(K%_K}?>eWhX*TU_6y5F@&w%_!Hdd#OsQVbgH#Xe)G*Br9^=;gx#Z8YoO z`kvapp#0lczW-=Y{=I8o90}@}my@(u0`P27|NHP?NR_v&uAb8i2NU1Q`m3lp)xCRD z{^QfzGQpgpn6TAEcD^PDdE)w0>`K^ntrM;~#ZHB7Tg843Tr9S#f}elm(V&)pH(MQx ze%0qU9}TK`jz+|`>C?Zy5X{l1M6*%*WKz7rLIw5Q!vKaDm0cF8R4D(uOE1dZ3e-vs zy|?CIkb-{t6Ev|u$vIGXMr+OCEW2A?rBCgixzu#17pnW{&|JO*+PADLs19S4XM%S* zzgUV-qjxRnNui_)=g7#Ja5Of#K1f#46Nek82BX?-s*RzHa&Gkg2YhdAd$dhS7`ks2 z25&9ks7(SDR7V4mDUY6)48v8rUrAUWnhLCiZ6mbY9HwRIwk2U&GnH{dnKU`eJ9+*L zL#`5GmW1amd>`={)=$(H9xYNgJO3e}<_TMEsG1M%!`osHk<1qRwkCzWv)SGy?eaU7 zqjE!BK~KMa{7h31$Ha8+yoclow`R0UG`&T9?QN1}%?elHnNjm7JMFdXPjJK7A^9U` z5}S#o-YTBx3aJn{FW19pwFm!F9@SoA1>;*BB^XtsqBnY-ji+-v7 z(X5{CK!Y{xtUW)wpm4Qa7CZi&kliD&wOU$P%P1zBG#hZ8mX!nVepw+DSR!?Q_X!sI zFLF zTIoZMlsyY7C|Za+s@TJSBlpox@!%WurW0^X6aW^);@0ZZt+_kX&8L3*XprHoO`JzP zr|pSd)Q8-Kd4W4**bPrhy$*X0Mq(W}g&e;1Lk>d5T{i{ib)ZzKH@ zxgBX$jpy5I0_z1bgqf2-pHe|X#wFRm@rBZanZX_Eb0QrNDjuBgXmB2UO$K3*%o zdS&`<&Od?`G&wm`(Zl7pAGw?j8p%RX^9#SKZ>(?axq^Ab7yUAlddDrcO>F$srrq!C z*Ey)Y<@6jgqdiPTL*GX`xAz8z-Y)a%S>X+0MeZx8GuP~-|NB0ht&G>U^Sc}8KCxXu zinLMLhIcBf>iI>?wCLC;dV?xfl)t4iMO^WP%N0FA1NO0B=2z_TFZFsK>wWSg^x>43 zMs}wBb07YVfuI&_gHP}-`}!4NPO8J|vBc<8KaPhJwK@||7hoL zj|TJfW`X@;Yt(N-!+Eb6DKROzcz2*BBehymKOOOTD%NMOpIY&FFmNlllTX#hPI^SC z6q~E}7coa3{#x`Kc*TDcYg4|c=MNqYmZ;=mWr?uS17IgH&)S&W*0jQD1D48gKb|3a zg(qliV)o}Q@8~0ENL_Tit&g~oJ6Z;fv_e+lT)z`w%Arz_BF?m@@#oTRL|WpbM%TcJ zD^puvn`xLiEB(dSFO~+ z52Z8cPCJ`zPhO%_`QL+xzC7H*xL^ z`^r$&nHvZ1?6JJro-D^p#hZVZ;6HrslQr+RzNM3ItCu%TwxxQFMIziu!?8(L?fgBk zH144mz)`GaNjUP}M-=bW7=>|>gfp{Yq825+<|d~*qBHB>s*!teJtdN6*Z2S~Na`Q) z7AFCx#^ny8Nbkms@R|BK+a;?;8+-rsqIvRL(wn|`ZXtgoBVMj%LJvwm{4J>fU0HmT z2P}uvt5g1j`po0aK;EkfYdmhYIVLhCUdGze74S7PP9SFBG6wv93_r*-k{CkI=s$B?sO+y?_)_5LKZb(f4u6@uPD z#oaU-v5+0c$|#4by4TKH@r}+qZusGHn1UkR!=IGqf%9_2uEgT}tb0M&5y{_eDL!&|JU^NrD>hP{ zW+C8ly+6&A&<@&myyXVh7YyvT=OdjR#IM7@#}CBvfmf{u$IFKrrRW+S4;>jF&8%`W z6XA}?=$$gEMlpE6&Njo(q5D8K7sr~8r=$6?{78{;2Hfmm6<>#T8hbc?JDH~!GTtJQ zL>R(wYsclv|3tUYSNLvQaagH4ck=KA1^jSDl70o&r({Y*eb{S&MgjyS&{59EtM?p7V$WdLnzvB zdDfnfm;5Al_>65~_jajJ-KZ`vZyPIy(xj4_R@0^ z6_fcx^CnZ=Y?!!BiTT^Mi?6_KZyK|q*_~F^6N1nS?PVjbMbXy2t=4mfTIP3_yf2_} zgsGw)L4OV!!qy$H4{yy>QQeSlu>eWqo`0nbUm8*^iN?ih0F~?-)$YD_PtQMOs(U!? zDmzEAzlT18f6<2UrCJKw4tKnBHz%s?xnId9_#I2mI+B$R_b^p_H|DuPdj`Au(1{r* z`RP#qj@?1-w|a%?!ssiG5H4!d&z)fY0b7lk8YnHb<&cguPP!?Dv%oWy!CPenz{8B_ z<{9Z0mPW8oN=eP1>xscp=Z~c?l~R?dK}*rdGV{QJPj~)9X5etuxhs2L+rxqVSvR>R zciNLD2SNIaSH5`hJ)Qm6r8F~lZE6#6k{c>%HXI;Z^2>nRu#_yDY&bHD7tN__kGL>$ z^h-`I3l7c6p4sm?Wv2$!x8&Xx?)m-pvs*9fQXkHqzw+81zWuPgyZ<`pwu9UgQyDZY z9FFRUl@D!5C*eG4IOy6aO_Px!^puUy$#WkJE8t6Eq=@zIwluU`-l@xCNkYHTsf;(d zH6fz7lx{^)g31~;Pi4;V8sI@L*!V@ljzqasa-11|R@k>av*AJ>_S{obLBiw^KWejd zdb-siU%gGuIO_h-DJxZBqWmmu1xcv!`r%k*+N2k!^UGT?Stea7HDjCzH*)(4O3c}g zyj_scGya%RDW zA%eu4cTNzna6X?1ows}u0y>zDN#i7sQgn>DqcRh-p#@c^0E4YCYYeY@ll4Q$HkUugD>ha|pk^@#sHff-1&XW^Bv3#MXYK$iAA~GsXEM z^{FFo>cVeqY@T?_)k=F~&fB;(Co-1WgZvkqO7y&kTC(~mgcHrSnm(~rO?JLj+^$v2 z`4@M~Tx*frz;tD+S=mEfLO;#^tNTmL=WwrHB>Po-!BlU-;TFVjn--fXv{}?9=)=t{ z+-atFNG(qD?3F#@^DT+b#68*SmBN!+;c`}Hml&q@g=bft(mP)I2EKSWsKa788e(rv z`3uh;yAq^cc=n^6R1gHs_^X_-!Dc}97)Pc!|Fr7VM>~TRaI9bPCULNcj@WsFS2!aR z@5>DKp1oGLcSk;-jLd<8w%NXIoi9Awd^K3)+Arcs)|SDf{XcJ8}aJ8i72G?nWJm=yX#z?a9Bqj6=Jw zZ*}LI&gbN=@$l%eap#7k&DcAssQLNF1bm~jXIpU z%xSb@gbdw?^x`{+C-~+=gTr=p`aeGPN*X$~%I-M3U|`N^Lye8dG-%Jf?AEFiyy{f` z8ztE&w3=CrawgxRqtbFvbPIU(72AGa*X`w6PHteeFYkmS{^ZJno>{rRflPO>UTllvb&1vG=FS zF8^Hi`GKwQU9ika5|N~4rfJ0<2_IlC7^|6ai0x^`&UH48e_T)%jR!!aKb_vB@~UXts!*#oGUEP3Gk2ANeR!i#zZuCpMO%}lQ~jzwgL)_?h5R-RiC#PV zvwI}mCgLnUz7hKw?Em9?qI;p-O1lT`@^RM3lbSd1X7iej8^zACE+kvOdSm^Tp9^#v zhmn6{^k`kec7dJmFsclDAI_`@_bS#Z;v=?Ct_M4?Dgjh#M@Fa*d;a-T?~!kW6^Em+ zXJq7RydmdZM9n3h^bK+H6%R)3bTD6i z_`~u9t%S8q>iN?Te{vw!GxE({7YX>0O?|~cUDr=P{OVKwSP8p9al*L9IluM)y9}FSAl;j_t?CJ|kSBKDNpLHeUCKb#`~N1zRv$9i$L&XNP`` z+N@e>Zan(ZqpLglVp(A?Gqj**U4AvbSFqOO*WrjN4}6X230t?~@%iR}JG~Ra&&CbN zf!y7qGzO26+N=~fnAtrt7;eL!B|9lZF;cHqMVs2IH3#J^Z=Ifvab6iU08uXwSv+7* z3h?!6cJ`<%=jV96d9W@EAhsTa@Y`nSCAQ*zR|Qz%GP4%{s_ z$nJjn+1I<@vNu>1jo1Awid{}D4??`C9nnQ#86=m@>tb~3$)hNM>$^M&QOOJEwm zpD9I^JQ5Qu&>R)j^XRg0P62F?u>~%Z0vh`j^48+x=D#67Kia}sb2Kkfk#A*T_%D}c zcLq}Z=jytmJxw)m5|!HuU)fs*Mj|etWp!i^sbSLU;bYOTMWe026*wtFx^aBCtskFPcohQ571Rv+M61q;vS76c37-ykrc*YB z+K)Z_k>0UOVG=cVHQ#*Y@>dV+&Tyg5XD*-as7^oCL6Aq9YSzsMGQ6u!znYzKRdyHc z=Q{nSP8<^^HBNfDs9Oa#Tr_CfqY5M%#wPWMs}!@U)Cf)?#CrwjqrJk4OAn%|sia?$ z;)@#!ID^lGVM^TfOQ>xP!P$Jm7#*e6J)7bfR9PE5H`>ZV&oPI;Mj%Ex@+raJYW z^Bw1S;}C|Ki?K{I+y37?=Qt$(KIkYt!@>fX774YB&nq*w>Wm8w>UNQd&n!m1$``Ge zatc&}Q(7dc*Ljp$?^cTx;n^v$3>#_33t&-KXXdU?k6p6swa?%n_byoCV4lo4ZdHYI@JUTHcGyjI zZmFpSBPHI}^u;Yz`&kafvI#fiCxo0j8NeX6cGXKku zKK^*HEh@!Po!l#WPE!W12-Zp6oKdG7g<EuPQCH~ z|GK2Fv&tTC;MUA>7@OYnVwR0L_W_fM#srha$5iYVjJb!SU8Pp4R%M}0sJl=I_sMJ8 zMHYWa*2Zj^?C38Ke*4NN2a1mr$RXXZ6^PRIXM%ClWJaD4zQdh@6KqaYA~j^hN#{6X z+H$U@c)jm|u2b3}A8z|h3k%T}s!8Ei++X4N^`+*z_gHQJ7oPb|sg6SzvO#p`)$e2o z&wi~_t{cpKuvF(bpg4Ix-oi;hartjG;Tm!pgLbGmcE?fQ?7BGB40}^z=)N$gtYg|s z!4U@ewLRRb#N1T#tm{60u%@e7_78(OWPf};o>xq!mRcYGJ3Cn3=tfO$B&M%Z(-G>q zEKbg4kt#sfay$;6i>h5_!t=X#e1}+-x+%9`3v1Y7m4YegV~fbGSy$dvh^ZkEi-Zp=6r6d zqkPYaG5fTP@Ae*uTun7!E#nj}CnSUUuD+slANEtn`?OK10wi#Q>!OMBV>rJBf;9kf*sA@oo)%^@)Q;52GQaA%|RfW5;+53);9CVO<f;s5#Ug|@(XQ!1JjPe1z> zxvkT?kl}tx8Rzt9kD#$jFzxagzNe`rtKomA9rB4(9Tf`sI~XYT9NrmJbFK$feFUkj zSZL0jlk7=_u8ME&xNMLgGY@lvhs*P0&`u9RUFV#*evZ=U!7%0ZceqYD!K~Vrk?%+4 zap9g$)GOG8a}*8t&@3(k%GX3$V_PU3TomC-d$Uy=VcX|>e{*lR?{LQ^3FH!5FNpF3 zPUvy@6NcS7^;V}Y@BG4*zmPBcDUDf|b>8jwbFe>JlrFqj@yUVJgF+d563M^8$d;hS zTbKrmPue+0AK|`DJ_w4+^u0Ze*KQHPt;f{h2 z$?aGRdTu`wo(aBrNZe|7R=4n-X>@lSpt<~5f$UgdAw1p^`p!|D6ut=-QEh@Q70`r{p`&eV)o1l8D<#g~scr$YGYaPKVLLaS-a&KKvzNH6OIo@~DFH*Mz=Z5|h zw+)WN12|I7ozl~vcoD9*<1OSAJ)*i;-}+p+zFi{kaq)QzXQ~{AVCzAjgkdWj{Y85# zM0{N>a>H7SXzpSo2aP^gPwnji>vKs>Un9 z$x^K}yOAxy8PO<^wn>r`r$>{RZ2dVsP_P2IfJMUilh`g(97m+0vWY0=&38{E~a9idtE(P_49*HT(`v~lpd#U9O zCu~ebX8RHGrh>M(XQTdpI9Ahb9_!`X-87=Dw)7v%E!tUulUk?f+Emg^{Vxw(+3QxA zmp-`{*<-|%+x>TX(?*AbQTW{;$PeLtu+nLhg6 zO1LYE2h3MN(#77Sk=&LJ|kM0mfXtB$%q#7Hv*|2g!H)YqcAha@z_p)Q#lia zp|CfJ<-d(wstsH|13%K!WLT1qAdz$YtZMKt{$ZrU#cMHamKrexc?ntGj0*=QI&4$i0!b3V3JI(S<@wWNp7vTv4&fR=I<^(KMv1G{&okj ze$xJ|)itp3>`Q^<8=vqBbFD5D9JICC9&4BAzWFB zn?EWoOl#89NS$J)I5fKMGcwBw2^siy44%RM#-ZEH(%TH zlcOK+loK`cbl=OJabr(qM5K`!sq$*!G*xwrlu8`zeSSpta&88eBE@E8eZ}F4a!Fpl z)N>k*T^2G?dRL#ZK4`Hy`ow39_lU@-%?YwEgYLzi`g_HwUFIed)2eX#Hty!J@fJ;3 zNi74zKJT{>Dt4%7e0i{9;BV7%b8zc}@(xT5Nc(V0g{R_U7L4C34{f)yi{|dz-D-BZwe4UhW+%~`SO(eJ_` z2hhQ!x_h&kk9S^wB#@K#+6pRh!x0pPYMe|}>RMl@YSCl0ySsaDT>I;%f(ADZt=w(F zriwASAy}w5Z>#jxvrx-q*9?DVe`rkmwY>U@;YZ)M%y5VEjce!5y?t2vEeiWPU;wSh z9u%;EZ!|178JlW$X|+CD`j!86W>;^pu`|XsaT#^mri2vR-IFlq#m9(fj@knj!ZQ-9 z*c&tQdZ_sLeWJBklj{)~?Hv=tpOqE*8~8>eey~{+eH+GQ$$2FQguX&r;VZqHz|4XA zXhYSz-Y4Z2!Hp6#z|9&{Bdb`S!ckb?5#g+pVxNkP)~dz5+}x(RmxzQuPby!<0p^DMxlWXD+ZA^4T-^6UL^ zA)V4OHF%<9VucDu+)V7LwF|!Ru$WGB-UW3=u8K%^?#+&=K<4Mfe|osM){`$9InID~ zaHT7TBWvx>9ZgNwx-qxpN8BQ#J`f&lNs<;JPpjLaVVz)#v~3sqY0ilol2x~xMD4`) z!iZV$)kNaNIu+Un+BgkH1kc#yU;J&!Moz^P&bU=D7Rl<$`R2kkgrmfQ9<9z2dkA9o zRK87@H0DJ83TA3>JtFv(ufdfXJ>0fn#JO*`SVgMv2S(+j*HN*+HY2(*d0c4a+E17l zl_FlXV%!-`EgQe1B{zwFflA!-cToPutJB-)^^Qj)w=;x$YCqS@%;nIF-c+yEl;|vM zuw-#CjU_(N1m$O;H-p4K=1MxkaBXo~K2`%WC3_!o<+5 z2j3mZ+aiB9%V?(2ztwkJ^m(&plwCQ#i#%OU*|a6UPsX%apFGP_@#h?D;n_Ed4h2i( zzf2P|L3hm)>J2sEk^5W}j$&^M_$a?BBoA+Bznrl}8pboAQ-m|BYm(Q(-L}{(r908J z*h$$_Q%}rW1i$-fBK58+t$1zHZ;oP}JT3WaEHQWxEX~(AGF+9X^?O)*A{={Wu!tS* zmXV-)pUtI*#{g525%PCXkvV{mh*;2G?=Z#u5)0NbG%frSpEwza;tTc@8QSs?M*{Qpwrtt)t+0gPQH6kdW3i{zTbCN)H%*MrHx5*s)y1pC3Jtw4(uM;+X%H=-7rg9pqg09!|_Dcm$VlQ8h z;Cx+o$IJ0?8lcaikLp?R&D$ng1@pVvi^U3_v(Sc4Q-xxV2KBjs3!e!8UaH$t?x~p& zBfg)RMm1`W*o>@vHF6^8^QTW!+J3Q|K9xUm4mBhCW1_ySoE@}w$3ZS8bIi=ri&)@E~7+mOSDdZB4WtZEfl)EQ2dITP)i= zPnCR|YTtMFY`xgb*Pdl0<~HS>`{eiPut#9ZwGBIh%xTIGXQfT;4*B`8{Gpncr;CSP zITOq)4)KEm(Bq!Qq375ok;^Yhr7ivhKex-jaHD2_G&i8K z?T(b8YsrBvHNiGFvYXHJy_hY}-Fb7O5ufZz7_F*Z;6V-~S5`jS@u74uRswWX0||8u z0|dY+!o1rVkSmacvP3sY$t$A`rMKel(l_P94J%1XE|E1v9(P zr;>~hk57oLeHf9k;yrNARjp||4Usf>)Om;PDOr6>sswoXSI2U$l%CAyPVBHlsQ6H4 zYe-;o>J%3RlPzbO55-B>*!gP4w^zO@CIGygkvF9uOzn}i(KvjBhXzbGGvbnw;ndv=p_W8JT zV-H&50xOur^aom=Qjyc7UcHp2U2!7wI1iTA?-v4$;%Tse1ay_#Kk>cVM=(PB?s zyx#qx^u7#lE}XXK9S*!@FK?gh;@LaW9(8(4Wf7Ka2DSt)1flhEK%peTB>3m$%L&nssx zoNhi9?EA!H8!iO7{}Dxnn;M&o@2c0*BiaZ^5>F&AnWdm`_$GIlgWQD)s0lKwE%H7- zlj8!H?PVOb)S$tCyUBBuAI;tFqaL+r;tdW}EPnA&aP1?#agKRy&)-}Mu3b3&z4Y+T zC%g7#mUsTil?$isPGjy;GI~lOL(Tsg%N_34gtM{)IEKv&)u}zQ5bly7QHF5vR<)St zE#(oF|6px+A)e(C1(v3ZDqFtK-n%ek_kqL6HiyUpxpYVMHb_CsMfHrS`rzPOhtLKO z3`;F*mjH$&W1F#eC=jnqk!arF!J*6@J&(#$tfcA+RbPHO7S1xf@`@_DK|xE4xmy^X zp0N5cGp9v0fcjvt{oN+mB!{SF=jW~icc16(rCB$1xeL2_^1yIg`d8$hewH)q=H<-e zJ<$=xKpg$gyJeJZ&Y;1&3Ku-8guvhGvMW)T$mBtwu-$KyCyECdZ4Gm({;A!+F5O~! z%`Xoecm^Npa)wp85f=BHJ4d@0uPpBlL-B~Tj6;zTKMrh$VR%GF0yB)KxFMH~l-w<~ zQVIoQIVkSv2ZnDPe!Ry+5g!AX1eVfN zxTM!@A!~w71@LY=nzOC=67BK_uV6$Famp%vY?bOeCpkK^T4@&SZZ+{{Km@zJ<<}~P ze{yztXN!5V_qKixI~792{IEl18mW6DhqR1;YO>dz{|A|F&Aa61u-rM)pre)Kj_DOs zNfISqMC zm$nNr#>SX{0LLYW6{!wE>U{gH43!j6THoRVBbEqaSY#a0aB-M#yfSef0qD|ziBd_2 zIv3ird9CDtFc4oMz`as3ID4YTQsoIHr4E>?muO$d*+bF>GC2td7ts7Ok~n8cp!8il z^zEIi2UVxy;{!F<5?We^I(6e7Cs>~0qqoJZ=P5pA+IK}~iHn>a(l_qMSvWlBh272N< zGOmlgqI7fyHB3+K$cwzUx?k^s`oc>X|E&cG` zUA;skQB)G)fKK!k=)7nk+g|I;G8iaEmqKebqX1L?KSMN41`nxm3`+b=g(u;>U+>7hmd~n*yC%X_fb&OGz zWy@1TA5H(h#2Rnp?#z7R^1AdluPjb;m&M|qb$ttZJ|H&j@t%J(v@i3OOV|6pDQb3i zrn2wC=|BIar%%ng`EReT*ge{DY2b-o;iufU0P6w4iw|`Pexg@y6e>~p%Ui&>ibZ{? zAgZvAh}hyC5j)^y!?93>h&G;n*>Q^#YRyuO<}vN&&|A9sn3k#l?Ik$RvbI0D z^0&u+u=5MgczdMC$0B{KchfVK>6Zup@(2k7MeUC-Ki;#jn><)$TE8&GccmUmzwZ$h zz-0{ToK_O0lsTP~<*bp99W1b7fre+hfv_731hS&cYN>c@w`}S z8q8S^mpO^*$X0|kNq%3=>_e&Q)kS=T)9T+y&CB_$si#KEUotf7=o*P}*{co@S`O~v* z&dODb<)QxV!s$o|EK%kImu8;OOXlL>YF_Uk3 z!p^Di60E2%rC|$e6AD>}?uXf>*Zit~y0b!v(kAoq9RGRi#dV@@xbJISn(ImKHU|#> zXz;*c!Y6wz%5nrse|qW4vV&YT`ortn@virP=WTiQKOjHDMM#Dk5eF6P0LS5$sy@Ok zloq5z;7@^m5u-PC{#g&R^<4kqb%lFj_s2WW%k`RLXMgKJ9*+IAr0B#u$ds33JhW8N zd5}maW(o>=e5>M8y2RyzaRinn%)oc|ww~(0PQjzXa^v7y`$Q5MkKH%;jl-8Sf|Uiu zxujd*anv-`4$l_1W2?G^1p#bw-NTNK3NN`m^e|C2cUM4&5vx(r`#8hcc(gM};BPD` z#KM{qOK?q-BFC|JxQ}KY83`zfDO5O|9d#BQ#fZknV?Z>p&C&d#T7oViHC7#ga`s=z z!W`IKgvN`cVkazULYRR#yWW`*2Q0&v1fLru5Ba0P?~Q%BbNBXsVd@*#KHe!`S6PlR z{`$Z#KYj7&@qMTF{?>u}27j>Yhw>T4$9t;n_h)9^d^O8$I}iqa68tQrL9b|jSlu~| za#T{_1;=;AvR&k@L8;@{!o+SIz1mi_K1=|);>K9nhcQcyOdvWU{BJhI(L7@}NF?D) z=%Bf=SF;$~3#S(k5k7je9E{CZT9c<#&g1W-1v{!cW$hLnHf_p1YIc*}<9(n|HNM7| zJRtJmf=lhe{Ely35Reqe!Rz6$EeU2+1_X+S2##!cNSIz%m*!xO`c}fr9b=cc!|Llp zi*3|A>*haR-jV%D2X;^0K7Qg-*XKvDlEW9*oyAckD&w+8yqsV;0mU8t+(4Y?Top0| zT{($;3{?PHLZg7gAF2uz?0A7Ls=-C=5Q%VuBPk%qjiU$!72(|=C0AEoxrN0ytinK^ zI+Bd8-Vk!*qywZmRS;$dwVbR`<2G++)!jEc#xB8?D;~e2=ac>K?z*G@PoDm=d`xus z;+kO+m=AV*=5lxk>Gh5kkC!b+@bAo^IKF&&iQK0P;_uA7l)c`^E`T6*{agaU1-X)OS*i-Dkk} z1U)YJ#>moA;{Y@(Ei~-rU^|?neu^WbPilw9u5Uq6q1PE5`9KQQs~06=eIcB3-}|p5 z6|O00ml^%h;Ie~n>C&jw!PR13`pEKb^=sA+hWope`u)$mctz6KV`o52TBg)+g#@-5 znW#q71yNy#iQ(^U7F^K4S4Lc3QxSs4fRpZO=s_Zjbjdy)!KcwwQI9Vid9kJO{n{KB0qn-^l`Zhmsfzxd8T~tWGl|8s*qTT`br47hE!23sOg1F>J%q) zxDOk3oy>+$hD4wiZN0-;@cz;j^gZcypHynT`MGQqyDerxSK0C>dQ(Hsk9^^o&t+|f_|*~t$f0Ws$Mr)x76D&m#koO9_2+81v%B#hFBcIgUPUAtXZ=L zY_*XZQ$}&@it^*h0*jmd7F!(q1G^-lM3!@(1MMdL*2f2jZd{&qb5YOg_fn$+-Jb8Q zKd2zQAiH61p#V&N6oQI-#APUzgYU{Qn`cc%g^Z8Wy>GP{PpGk zn!R!P+dBuvP{Ltud1IGqcmHwUtea2tUX-NNteY=gsZPIJDHD14h> zLxoQ%;yeQcLIpp(=dSw9TTbvxk`T3z4pdPl5CH!UpH7GB)537WDVweN9Yh+Sr&eOs3fQQ`dz`)yZp&(RcQ&;&PD!v~oh9|mkdO^>3ug>Un1p*lV52W9J zY{La9ACR2Xh0{bXWy{Ad@!LXC%F*8U9H~q<-+bm@KiKj5-j=I;@A-|~?(O8XhIgt( zThKM@CVP^LA3t~QtB041OB2l1n`tz1Q%6Majgi}tN=uhM zfuH26>Ur8jZ|GzM)m)mT1&tCsG`g+BXxm_wg9z(^7YRcFv zV`x3_?5&Mm%F8khZWi@c@-rRsGvQdEcqXnSp=DBqQOWt6!t-k-2XROqj`bc6H4I7h zCdqg<^^B|~Go-;S1{W2MSERQ+bxUvC&r;q63E@D44_s(8AGBsfjcDEiHA3B@h9N#J zLlTV2MVppc4a=^6g3D-NY0>qFsQMMSfcO)*J7zw4N7M|&B?8l` zx{<-|-dQ(q9K3P*k1mN?Tj?M!R6WV?hzhA?WWUKB3~nk?c7-wnX1BSdmLsm>lu(#l zO_5<&@C&@}&o;hkoUyw)tv)<_3-dY$lhLB71vxlV9p1tX#x{D1 zNg{#jGyaZ)jv;f|H;gZv;!Ld7xZW#udvz>Jr6&rKBF638Rm!*K$hUw1UY3ly|U$%Cc6LqP10Mj7><^O zS?kzdUOaSOGMZ}JgV7zrln6?(K4FGbM#TQ!C!6*&pKph|g zWU_QoBJjH(S3PAfG!F{iAZCksi~LF2l`?HWvQTz)+`fbE@3f^a$j$o&@HKB01|x5s zyh>9yCZB%}_X~2rqD`?Zzla5d8Gy2KqJ0!+i`)sfRQ~Y474n-(JkM4bvoXHhFvv;@ zY8+q6-q!y@Iy}y_Cx1AmV+5`3R)a;;_~G1|sb;(1nWQ(0w zwK2dILIfx-^MoCDE}z=JSvSkGf8Vcl5tIXi##uMXU@acH{oxn0n&zNv7+AD2;@@AS zHe%U9svm+CL}*hfaxis3L+OC?E`qT|UL2KVx_6aK21N0c=x@SORa6HBfV1N$c8LO4 z)j%u!OZFtRJ=fpzOmjjg0PW*aD6j#E618aRtMMCTWCxwNs#3;-GdVMh@^GzPIv!SV zX?<7`()rvfWufelU_%^hwA=agv>q8(>}1$E;oI$|4>eM^dqm2XTs_4d{r=36)>eG; z%KIL9xg(t>N_Zou+d&W(s9#C{X?An=Q;&YIck$!9y0~AJlLRh7AGG1avO;%alM{pe zvbC#EVqfq`9XgTCSnv70-Uo6Dbt)sp6)LAQHS^}MlNEd@bHn_CiH3#Ud@cT)=V0h@ zIOJX~FD|&ZZZFGu?flLNrk*W$eaf~x8}UKIHj8%@x#me}Z7Ny{+0@4 zLY1oXt~B|FIo17aRj$r|O`@}D28#9Rzj|Uv*2A*YygX>GL+_vo;}9=Y0G4wCi>Y=+ z2J3eJxHni6ZVRp)XS;v3%mGIMjWMov>)j|?m|(|ha{QN-*3qbOr|_bCi%KMt+-ZWf z?pa}v(vnpebs`->^}7U*2SiWWbHDOU(`<&Hf;!D(J}7U=c}rGFZj&Rq`k#8gzf(Vl z=4$Z$)`}fNJ|?GI8+M$gO3{bz>k{gDa;L_R(rII1xi<$F8lE z4Uu!_$g0`a%PK_@RC^znaPh2_Go%Vg(N4;b?#9ZXxzePD799EQ(I<9ko8Q}U`;mse z7Y@j7(;kuKwo2=!aR3RrVI4F@ijGljJ|eKF1esK&a1ihZjbS(_4a1H|oKRJ1@W#&^ ztvX5@<=JRjTt{K^lUv1z>Cg+x)1;oAjx{OHd|H}q*(j2REd&Reb;Aka+__4iJ|}y~ zb8;P6DSgVt?g#Ci)pDkCJ-4GpMMl0m+aC^t)!Q8_3&<|S3ca`(95Y$H#;_#DcEli(lQ5o~w z7ILR}u`|hDk2^m`0}OXES?_*CYq-!N$ZSeTsi;h%tw@ji`(D7bIOg|W$!ie#9Bgwb4I=N` zRLUo#LF9wBDb*m-uhGNdHHfsRavFp-Ng6~)L4!z(){R1)@EOx^=7RN_YF8j+SHD1Q zw+~X1y=x=(;I%!wdOy7#nsZlR&{!l0O}S_;Sc$FI9aC5N7LFG+Y{7FlE__D@SkBc~ zN2SbdX}xg}&2LiFpM8B`-Ps_2qbS~Y zVQ*9QvaM9JEkn0Sp`p?A1VMNSk=(bJKn!J zEpwsGva+^lRi9G)If)C{y|NVF5cM2$ zx0=Rr9f81pdN+*0QL+Adb8w`cG55^*mHT)7pD(rlyT<$9`quxk=S^mMOAySQCYq^S zeyFSC*BbsRo6#~YsF^u)MoU>xx2^21ii+7gX7@DA-V@Beyi@aWw})C&K|62n0>Zv_F!4LjBwYR-gH|~)-XHwyTO~y_&;aM-fYUI zSISs3bYSTsEoKkSY>`I$gL)&+nQFR}#h7vv+%R&nwq=rx@(4jHaqu!fuW|R!jzTGK0o_>c|}l{d;jzqvvY6Ev_R&5wWc!v!|dGC z^KP3qO#peS?9IWOJK?)>Jjj9&3`HTW62WuQAj0 zq2N>gFVK!H3go$M+$N3dDyB8f&Rye=MPcrm;819kyH+WPvgj1d2|eni0K1&A&d<(` zjsJg!nN}nJHB`(H>gFyr)a8CFm_1AWm;0T%qXMlwtAQxLE>Bb7Ti(~3ihMi4;Mg1? zOHEUa;91suX=a72@AGxJFV@KF?Cb)`?A-GLfjpPL<<-oFy0H$HUM(Eve!iP%@7gJ4=S&Frp;)oDVtGap8*xkzbY>V<EVIFk&}mxAL|-Eas13^AnnR*yEg@<{-NylzKz3&jt!0u_HEyPa$tB+BDV5? z_l<#>z47?S*%OC`hEKNq(Pvs(-nRU0_ZYJ%F#l>`&6+ib84UAADQe z{^k4kx2;@tVE=)&D_5^QxLjIR2Bv()(tDRKH>M?dE<2G0MrNygaQ}&;$B&&AnEdl? zfw^mGdQ;Z}C-xs5JahcS;kWJ_JTWS(*>L)vrE8YHO;%cS`}oWI4~>o-*?%@IZEvSn z%lMlX+j=?!rvmfSn>TOr<9~U#q5=@U&Cf0TRQTW5L+vEfxbgUj`;Q#iw*QbE#~&Ry zeqwNN>4771eUkilbH0pmTj2=*@Q4);5^N?RC7gWN8y9OTK) zB5fZM__hnaaPxo>r*cq!CynB-(>9Vq5lcEg9y_E|p855z5Qq6*`2+0R&6}hx*wSh> z%6g83Ae`KsOC`);#|het>a-upVUyyB#mb1R8LaB=kL;$|@G1PP#e7Btu|*Os%jFN8 zvRFn5kE7JXm3KS5qWbdx?Xqjg ReplaceLdstr(IEnumerable codeInstructions, string original, string replacement, bool replaceAll = false) + { + var list = codeInstructions.ToList(); + bool replaced = false; + int count = 0; + for (int i = 0; i < list.Count; i++) + { + var ins = list[i]; + if (ins.opcode == OpCodes.Ldstr && ins.operand is string str && str == original) + { + list[i] = new CodeInstruction(OpCodes.Ldstr, replacement) + { + labels = ins.labels, + blocks = ins.blocks + }; + replaced = true; + count++; + if (!replaceAll) break; + } + } + + if (!replaced) + { + UnityEngine.Debug.Log($"未找到字符串 \"{original}\",未进行替换。"); + } + + return list.AsEnumerable(); + } } } From 392b8852a1427ada321c9d00927ba7e482cc8c20 Mon Sep 17 00:00:00 2001 From: tinygrox Date: Thu, 16 Oct 2025 18:58:36 +0800 Subject: [PATCH 9/9] Update CHANGELOG.MD --- CHANGELOG.MD | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/CHANGELOG.MD b/CHANGELOG.MD index ab2bc29..6c0b4a3 100644 --- a/CHANGELOG.MD +++ b/CHANGELOG.MD @@ -1,5 +1,11 @@ # 更新日志 | Changelog +## [1.7.5] + +### 修复 + +- 修复了**DPAI(Docking Port Alignment Indicator)** 因支持本地化导致之前翻译失效的问题。 + ## [1.7.4] ### 更新