diff --git a/1.6/1.6/Assemblies/WulaFallenEmpire.dll b/1.6/1.6/Assemblies/WulaFallenEmpire.dll
index a58263e5..3c781f42 100644
Binary files a/1.6/1.6/Assemblies/WulaFallenEmpire.dll and b/1.6/1.6/Assemblies/WulaFallenEmpire.dll differ
diff --git a/1.6/1.6/Defs/HediffDefs/Hediffs_WULA_AuraExample.xml b/1.6/1.6/Defs/HediffDefs/Hediffs_WULA_AuraExample.xml
new file mode 100644
index 00000000..2d6436c6
--- /dev/null
+++ b/1.6/1.6/Defs/HediffDefs/Hediffs_WULA_AuraExample.xml
@@ -0,0 +1,30 @@
+
+
+
+
+ MyWulaAura
+
+ 这是一个如何使用HediffComp_GiveHediffsInRangeToRace组件的示例。
+ HediffWithComps
+
+
+
+ 10
+ PsychicSoothe
+
+
+
+ WulaSpecies
+ Human
+
+
+
+
+ true
+
+ true
+
+
+
+
+
\ No newline at end of file
diff --git a/1.6/1.6/Defs/HediffDefs/Hediffs_WULA_DamageShield.xml b/1.6/1.6/Defs/HediffDefs/Hediffs_WULA_DamageShield.xml
new file mode 100644
index 00000000..1ce69de1
--- /dev/null
+++ b/1.6/1.6/Defs/HediffDefs/Hediffs_WULA_DamageShield.xml
@@ -0,0 +1,20 @@
+
+
+
+ WULA_DamageShield
+
+ 一种特殊的能量护盾,可以抵挡受到的伤害。每层护盾可以抵挡一次伤害。
+ WulaFallenEmpire.Hediff_DamageShield
+ 10
+ 999
+ (0.6, 0.6, 1.0)
+ false
+
+
+
+ 1
+
+
+
+
+
\ No newline at end of file
diff --git a/1.6/1.6/Defs/ThingDefs/ThingDefs_WULA_Items_DamageShield.xml b/1.6/1.6/Defs/ThingDefs/ThingDefs_WULA_Items_DamageShield.xml
new file mode 100644
index 00000000..26af2d7c
--- /dev/null
+++ b/1.6/1.6/Defs/ThingDefs/ThingDefs_WULA_Items_DamageShield.xml
@@ -0,0 +1,36 @@
+
+
+
+ WULA_DamageShieldGenerator
+
+ 一个便携式设备,可以激活并生成一个临时的能量护盾,抵挡即将到来的伤害。
+
+ Wula/Item/WULA_Syhth_Trainer
+ Graphic_Single
+
+ 1
+ true
+ false
+
+ 50
+ 500
+ 0.5
+ 1000
+
+
+ Items
+
+ Sellable
+
+
+ UseItem
+ 使用护盾发生器充能反应护盾
+
+
+ WULA_DamageShield
+ 100
+
+
+
+
+
\ No newline at end of file
diff --git a/1.6/1.6/Languages/ChineseSimplified (简体中文)/Keyed/WULA_Keyed.xml b/1.6/1.6/Languages/ChineseSimplified (简体中文)/Keyed/WULA_Keyed.xml
index e711aa26..743562c7 100644
--- a/1.6/1.6/Languages/ChineseSimplified (简体中文)/Keyed/WULA_Keyed.xml
+++ b/1.6/1.6/Languages/ChineseSimplified (简体中文)/Keyed/WULA_Keyed.xml
@@ -17,4 +17,9 @@
{PAWN_nameDef} 的维护已完成,但{PAWN_nameDef} 没有可修复的受损部位。
没有可用的零部件来搬运。
+ {0} 获得了 {1} 层伤害护盾!
+ 无法对已死亡的Pawn使用。
+ 伤害护盾已达到最大层数。
+ 使用:增加 {0} 层伤害护盾
+
\ No newline at end of file
diff --git a/MCP/mcpserver_stdio.py b/MCP/mcpserver_stdio.py
index 40db4658..25e48854 100644
--- a/MCP/mcpserver_stdio.py
+++ b/MCP/mcpserver_stdio.py
@@ -388,7 +388,7 @@ def find_keywords_in_question(question: str) -> list[str]:
def analyze_question_with_llm(question: str) -> dict:
"""使用Qwen模型分析问题并提取关键词和意图"""
try:
- system_prompt = """你是一个关键词提取机器人,专门用于从 RimWorld 模组开发相关问题中提取精确的搜索关键词。你的任务是识别问题中提到的核心技术术语。
+ system_prompt = """你是一个关键词提取机器人,专门用于从 RimWorld 模组开发相关问题中提取精确的搜索关键词。你的任务是识别问题中提到的核心技术术语,并将它们正确地拆分成独立的关键词。
严格按照以下格式回复,不要添加任何额外说明:
问题类型:[问题分类]
@@ -402,7 +402,8 @@ def analyze_question_with_llm(question: str) -> dict:
3. 不要添加通用词如"RimWorld"、"游戏"、"定义"、"用法"等
4. 不要添加缩写或扩展形式如"Def"、"XML"等除非问题中明确提到
5. 只提取具体的技术名词,忽略动词、形容词等
-6. 关键词之间用英文逗号分隔,不要有空格
+6. 当遇到用空格连接的多个技术术语时,应将它们拆分为独立的关键词
+7. 关键词之间用英文逗号分隔,不要有空格
示例:
问题:ThingDef的定义和用法是什么?
@@ -417,6 +418,12 @@ def analyze_question_with_llm(question: str) -> dict:
关键概念:API 使用
搜索关键词:GenExplosion.DoExplosion,Projectile.Launch
+问题:RimWorld Pawn_HealthTracker PreApplyDamage
+问题类型:API 使用说明
+关键类/方法名:Pawn_HealthTracker,PreApplyDamage
+关键概念:伤害处理
+搜索关键词:Pawn_HealthTracker,PreApplyDamage
+
现在请分析以下问题:"""
messages = [
@@ -512,6 +519,16 @@ def get_context(question: str) -> str:
analysis = analyze_question_with_llm(question)
keywords = analysis["search_keywords"]
+ # 确保关键词被正确拆分
+ split_keywords = []
+ for keyword in keywords:
+ # 如果关键词中包含空格,将其拆分为多个关键词
+ if ' ' in keyword:
+ split_keywords.extend(keyword.split())
+ else:
+ split_keywords.append(keyword)
+ keywords = split_keywords
+
if not keywords:
logging.warning("无法从问题中提取关键词。")
return "无法从问题中提取关键词,请提供更具体的信息。"
@@ -534,23 +551,32 @@ def get_context(question: str) -> str:
logging.info(f"缓存未命中,开始实时搜索: {cache_key}")
- # 2. 关键词文件搜索 (分层智能筛选)
+ # 2. 对每个关键词分别执行搜索过程,然后合并结果
try:
- candidate_files = find_files_with_keyword(KNOWLEDGE_BASE_PATHS, keywords)
-
- if not candidate_files:
- logging.info(f"未找到与 '{keywords}' 相关的文件。")
- return f"未在知识库中找到与 '{keywords}' 相关的文件定义。"
+ all_results = []
+ processed_files = set() # 避免重复处理相同文件
- logging.info(f"找到 {len(candidate_files)} 个候选文件,开始向量化处理...")
+ for keyword in keywords:
+ logging.info(f"开始搜索关键词: {keyword}")
+
+ # 为当前关键词搜索文件
+ candidate_files = find_files_with_keyword(KNOWLEDGE_BASE_PATHS, [keyword])
- # 新增:文件名精确匹配优先
- priority_results = []
- remaining_files = []
- for file_path in candidate_files:
- filename_no_ext = os.path.splitext(os.path.basename(file_path))[0]
- is_priority = False
- for keyword in keywords:
+ if not candidate_files:
+ logging.info(f"未找到与 '{keyword}' 相关的文件。")
+ continue
+
+ logging.info(f"找到 {len(candidate_files)} 个候选文件用于关键词 '{keyword}',开始向量化处理...")
+
+ # 文件名精确匹配优先
+ priority_results = []
+ remaining_files = []
+ for file_path in candidate_files:
+ # 避免重复处理相同文件
+ if file_path in processed_files:
+ continue
+
+ filename_no_ext = os.path.splitext(os.path.basename(file_path))[0]
if filename_no_ext.lower() == keyword.lower():
logging.info(f"文件名精确匹配: {file_path}")
code_block = extract_relevant_code(file_path, keyword)
@@ -560,79 +586,92 @@ def get_context(question: str) -> str:
'similarity': 1.0, # 精确匹配给予最高分
'code': code_block
})
- is_priority = True
- break # 已处理该文件,跳出内层循环
- if not is_priority:
- remaining_files.append(file_path)
-
- candidate_files = remaining_files # 更新候选文件列表,排除已优先处理的文件
+ processed_files.add(file_path)
+ else:
+ remaining_files.append(file_path)
+
+ # 更新候选文件列表,排除已优先处理的文件
+ candidate_files = [f for f in remaining_files if f not in processed_files]
+
+ # 限制向量化的文件数量以避免超时
+ MAX_FILES_TO_VECTORIZE = 5
+ if len(candidate_files) > MAX_FILES_TO_VECTORIZE:
+ logging.warning(f"候选文件过多 ({len(candidate_files)}),仅处理前 {MAX_FILES_TO_VECTORIZE} 个。")
+ candidate_files = candidate_files[:MAX_FILES_TO_VECTORIZE]
- # 3. 向量化和相似度计算 (精准筛选)
- # 增加超时保护:限制向量化的文件数量
- MAX_FILES_TO_VECTORIZE = 10 # 进一步减少处理文件数量以避免超时
- if len(candidate_files) > MAX_FILES_TO_VECTORIZE:
- logging.warning(f"候选文件过多 ({len(candidate_files)}),仅处理前 {MAX_FILES_TO_VECTORIZE} 个。")
- candidate_files = candidate_files[:MAX_FILES_TO_VECTORIZE]
+ # 为剩余文件生成向量
+ question_embedding = get_embedding(keyword) # 使用关键词而不是整个问题
+ if not question_embedding:
+ logging.warning(f"无法为关键词 '{keyword}' 生成向量。")
+ # 将优先结果添加到总结果中
+ all_results.extend(priority_results)
+ continue
- question_embedding = get_embedding(question)
- if not question_embedding:
- return "无法生成问题向量,请检查API连接或问题内容。"
+ file_embeddings = []
+ for i, file_path in enumerate(candidate_files):
+ try:
+ # 避免重复处理相同文件
+ if file_path in processed_files:
+ continue
+
+ with open(file_path, 'r', encoding='utf-8') as f:
+ content = f.read()
+ # 添加处理进度日志
+ if i % 5 == 0: # 每5个文件记录一次进度
+ logging.info(f"正在处理第 {i+1}/{len(candidate_files)} 个文件: {os.path.basename(file_path)}")
+
+ file_embedding = get_embedding(content[:8000]) # 限制内容长度以提高效率
+ if file_embedding:
+ file_embeddings.append({'path': file_path, 'embedding': file_embedding})
+ except Exception as e:
+ logging.error(f"处理文件 {file_path} 时出错: {e}")
+ continue # 继续处理下一个文件,而不是完全失败
+
+ if not file_embeddings and not priority_results:
+ logging.warning(f"未能为关键词 '{keyword}' 的任何候选文件生成向量。")
+ continue
- file_embeddings = []
- for i, file_path in enumerate(candidate_files):
- try:
- with open(file_path, 'r', encoding='utf-8') as f:
- content = f.read()
- # 添加处理进度日志
- if i % 5 == 0: # 每5个文件记录一次进度
- logging.info(f"正在处理第 {i+1}/{len(candidate_files)} 个文件: {os.path.basename(file_path)}")
+ # 找到最相似的多个文件
+ best_matches = find_most_similar_files(question_embedding, file_embeddings, top_n=3)
+
+ # 重排序处理
+ if len(best_matches) > 1:
+ reranked_matches = rerank_files(keyword, best_matches, top_n=2) # 减少重排序数量
+ else:
+ reranked_matches = best_matches
+
+ # 提取代码内容
+ results_with_code = []
+ for match in reranked_matches:
+ # 避免重复处理相同文件
+ if match['path'] in processed_files:
+ continue
- file_embedding = get_embedding(content[:8000]) # 限制内容长度以提高效率
- if file_embedding:
- file_embeddings.append({'path': file_path, 'embedding': file_embedding})
- except Exception as e:
- logging.error(f"处理文件 {file_path} 时出错: {e}")
- continue # 继续处理下一个文件,而不是完全失败
+ code_block = extract_relevant_code(match['path'], "")
+ if code_block:
+ match['code'] = code_block
+ results_with_code.append(match)
+ processed_files.add(match['path'])
+
+ # 将优先结果和相似度结果合并
+ results_with_code = priority_results + results_with_code
+
+ # 将当前关键词的结果添加到总结果中
+ all_results.extend(results_with_code)
- if not file_embeddings:
- logging.warning("未能为任何候选文件生成向量。可能是由于API超时或其他错误。")
- return "未能为任何候选文件生成向量,请稍后重试或减少搜索范围。"
-
- # 找到最相似的多个文件
- best_matches = find_most_similar_files(question_embedding, file_embeddings, top_n=5) # 进一步减少返回数量以避免超时
+ # 检查是否有任何结果
+ if len(all_results) <= 0:
+ return f"未在知识库中找到与 '{keywords}' 相关的文件定义。"
- if not best_matches:
- return "计算向量相似度失败或没有找到足够相似的文件。"
-
- # 新增:重排序处理(仅在找到足够多匹配项时执行)
- if len(best_matches) > 2:
- reranked_matches = rerank_files(question, best_matches, top_n=3) # 减少重排序数量
- else:
- reranked_matches = best_matches # 如果匹配项太少,跳过重排序以节省时间
-
- # 提取代码内容
- results_with_code = []
- for match in reranked_matches:
- code_block = extract_relevant_code(match['path'], "")
- if code_block:
- match['code'] = code_block
- results_with_code.append(match)
-
- # 将优先结果添加到结果列表开头
- results_with_code = priority_results + results_with_code
-
- if len(results_with_code) <= 0:
- return f"虽然找到了相似的文件,但无法在其中提取到相关代码块。"
-
- # 直接返回原始代码结果,而不是使用LLM格式化
+ # 整理最终输出
final_output = ""
- for i, result in enumerate(results_with_code, 1):
+ for i, result in enumerate(all_results, 1):
final_output += f"--- 结果 {i} (相似度: {result['similarity']:.3f}) ---\n"
final_output += f"文件路径: {result['path']}\n\n"
final_output += f"{result['code']}\n\n"
# 5. 更新缓存并返回结果
- logging.info(f"向量搜索完成。找到了 {len(results_with_code)} 个匹配项并成功提取了代码。")
+ logging.info(f"向量搜索完成。找到了 {len(all_results)} 个匹配项并成功提取了代码。")
save_cache_for_question(question, keywords, final_output)
return final_output
diff --git a/MCP/vector_cache/knowledge_cache.json b/MCP/vector_cache/knowledge_cache.json
index 07bb63d7..e602858b 100644
--- a/MCP/vector_cache/knowledge_cache.json
+++ b/MCP/vector_cache/knowledge_cache.json
@@ -11379,5 +11379,15531 @@
],
"result": "--- 结果 1 (相似度: 1.000) ---\n文件路径: C:\\Steam\\steamapps\\common\\RimWorld\\Data\\dll1.6\\Verse\\GenStepDef.txt\n\npublic class GenStepDef : Def\n{\n\tpublic SitePartDef linkWithSite;\n\n\tpublic float order;\n\n\tpublic GenStep genStep;\n\n\tpublic List preventsGenSteps;\n\n\tpublic override void PostLoad()\n\t{\n\t\tbase.PostLoad();\n\t\tgenStep.def = this;\n\t}\n}\n\n",
"timestamp": "2025-08-25 18:50:24,032"
+ },
+ "HediffDef-damage-deflect": {
+ "keywords": [
+ "HediffDef",
+ "damage",
+ "deflect"
+ ],
+ "question": "RimWorld HediffDef damage reduction deflect",
+ "embedding": [
+ 0.03841423615813255,
+ 0.027570577338337898,
+ 0.04054836183786392,
+ 0.0031218777876347303,
+ -0.022581342607736588,
+ -0.03524189069867134,
+ -0.007822719402611256,
+ -0.03775092959403992,
+ 0.035991717129945755,
+ 0.08253869414329529,
+ 0.0021827910095453262,
+ -0.05052683502435684,
+ -0.017087412998080254,
+ -0.03206954151391983,
+ 0.06223567947745323,
+ -0.019005240872502327,
+ -0.008421138860285282,
+ -0.11639629304409027,
+ 0.03847191482782364,
+ -0.010735509917140007,
+ -0.023835860192775726,
+ -0.00306780356913805,
+ -0.0034481247421354055,
+ -0.006045483518391848,
+ -0.010007312521338463,
+ 0.016222229227423668,
+ -0.004513384308665991,
+ 0.005028890911489725,
+ 0.01301383227109909,
+ 0.015515659935772419,
+ -0.007058471906930208,
+ -0.021456601098179817,
+ 0.006986373104155064,
+ 0.004289878066629171,
+ -0.06056298688054085,
+ 0.0728486180305481,
+ -0.028940455988049507,
+ 0.011341139674186707,
+ -0.006427607499063015,
+ 0.022869737818837166,
+ 0.006780891213566065,
+ -0.0122712142765522,
+ 0.01802469789981842,
+ -0.026777490973472595,
+ -0.05326658859848976,
+ 0.01777956262230873,
+ 0.029877739027142525,
+ -0.06684999912977219,
+ -0.03991389274597168,
+ 0.0358186811208725,
+ 0.03535724803805351,
+ -0.012076547369360924,
+ -0.033742234110832214,
+ -0.00885373167693615,
+ -0.008240891620516777,
+ -0.010101040825247765,
+ -0.011759312823414803,
+ -0.009351213462650776,
+ 0.007249533664435148,
+ 0.0033345690462738276,
+ -0.0056633600033819675,
+ 0.003936593886464834,
+ -0.04060604050755501,
+ -0.03434786573052406,
+ 0.002819062676280737,
+ -0.04925789684057236,
+ -0.09880418330430984,
+ -0.024484749883413315,
+ 0.06823429465293884,
+ -0.01527052465826273,
+ -0.02100958861410618,
+ 0.00031700936960987747,
+ 0.04354767128825188,
+ -0.03033917210996151,
+ -0.018846623599529266,
+ 0.031925346702337265,
+ -0.03757788985967636,
+ 0.01134834997355938,
+ -0.026330478489398956,
+ 0.003132692538201809,
+ -0.01196839939802885,
+ 0.005378569941967726,
+ -0.04429749771952629,
+ -0.02465778775513172,
+ 0.03962549567222595,
+ -0.0002681173791643232,
+ -0.02656119503080845,
+ -0.0039005447179079056,
+ -0.012501930817961693,
+ 0.0651773065328598,
+ -0.004837829153984785,
+ 0.033251963555812836,
+ 0.017693042755126953,
+ -0.017967019230127335,
+ 0.010007312521338463,
+ 0.03022381290793419,
+ -0.0025631121825426817,
+ 0.0796547457575798,
+ 0.01165116485208273,
+ 0.006380743347108364,
+ -0.03685690090060234,
+ 0.025176897644996643,
+ -0.02845018357038498,
+ 0.05987083911895752,
+ -0.023907959461212158,
+ 0.02467220649123192,
+ 0.008702324703335762,
+ 0.014059264212846756,
+ -0.015659857541322708,
+ -0.017000894993543625,
+ -0.02173057571053505,
+ 0.014549536630511284,
+ -0.018774526193737984,
+ 0.0684073343873024,
+ 0.013633881695568562,
+ -0.003907754551619291,
+ 0.012437041848897934,
+ 1.202585372084286e-05,
+ -0.010951806791126728,
+ 0.012062127701938152,
+ 0.056064020842313766,
+ 0.01422509178519249,
+ -0.06806126236915588,
+ -0.03717413917183876,
+ 0.04100979492068291,
+ -0.01966855116188526,
+ 0.048017796128988266,
+ 0.05113246291875839,
+ -0.014261141419410706,
+ 0.008291360922157764,
+ 0.005007260944694281,
+ -0.01356178242713213,
+ 0.01597709208726883,
+ 0.02579694800078869,
+ -0.02040395885705948,
+ 0.015184005722403526,
+ 0.0333961620926857,
+ 0.01883220486342907,
+ -0.07919331640005112,
+ 0.0024964206386357546,
+ -0.040663719177246094,
+ -0.026662133634090424,
+ 0.01955319195985794,
+ 0.009646818041801453,
+ 0.14212113618850708,
+ -0.04227873310446739,
+ -0.03270401060581207,
+ 0.030800603330135345,
+ -0.061658889055252075,
+ -0.0011103213764727116,
+ 0.02708030678331852,
+ -0.0025739269331097603,
+ -0.008659064769744873,
+ 0.061543527990579605,
+ -0.02007230371236801,
+ 0.0013770869700238109,
+ 0.023590724915266037,
+ -0.01150696724653244,
+ -0.023677242919802666,
+ 0.010418275371193886,
+ -0.00832741055637598,
+ -0.026143021881580353,
+ -0.031492751091718674,
+ -0.0005844508414156735,
+ 0.024874083697795868,
+ -0.04259596765041351,
+ -0.026258381083607674,
+ 0.0018673586891964078,
+ -0.00046999400365166366,
+ -0.026734232902526855,
+ -0.019106179475784302,
+ -0.02973354235291481,
+ -0.057967428117990494,
+ -0.03328080102801323,
+ -0.035386085510253906,
+ 0.006366323214024305,
+ -0.0097549669444561,
+ 0.04100979492068291,
+ 0.024326132610440254,
+ 0.02550855278968811,
+ -0.006827755831182003,
+ 0.00030011121998541057,
+ -0.0007683027652092278,
+ -0.004419656004756689,
+ 0.024109836667776108,
+ -0.04262480512261391,
+ 0.0017366796964779496,
+ 0.05364150181412697,
+ -0.006845780182629824,
+ 0.008147163316607475,
+ -0.01609245128929615,
+ 0.06904180347919464,
+ -0.002790223341435194,
+ -0.019221538677811623,
+ -0.004491754807531834,
+ -0.02429729327559471,
+ -0.00670879241079092,
+ 0.034780457615852356,
+ -0.0519111305475235,
+ -0.024643367156386375,
+ 0.004152890294790268,
+ -0.051565054804086685,
+ -0.0007182842236943543,
+ 0.010937387123703957,
+ 0.06500427424907684,
+ 0.012905684299767017,
+ -0.00688182981684804,
+ 0.01640968583524227,
+ 0.00947378110140562,
+ 0.011925140395760536,
+ 0.03247329592704773,
+ -0.013453634455800056,
+ 0.023360008373856544,
+ -0.025450874119997025,
+ 0.06713839620351791,
+ 0.02100958861410618,
+ -0.006182471290230751,
+ 0.024484749883413315,
+ 0.00556242186576128,
+ 0.029964258894324303,
+ -0.040461841970682144,
+ 0.04092327505350113,
+ -0.03576100245118141,
+ 0.00394380372017622,
+ 0.025652749463915825,
+ -0.0015771611360833049,
+ 0.02164405770599842,
+ -0.03186766803264618,
+ 0.06212031841278076,
+ 0.019884847104549408,
+ 0.010778769850730896,
+ 0.002885754220187664,
+ -0.06858037412166595,
+ -0.014881190843880177,
+ 0.008067854680120945,
+ -0.013021041639149189,
+ -0.02543645352125168,
+ -0.06488891690969467,
+ 0.0390198677778244,
+ 0.005627310834825039,
+ 0.007364891469478607,
+ 0.004884693305939436,
+ -0.03610707446932793,
+ 0.02438381128013134,
+ 0.0014131363714113832,
+ 0.013424795120954514,
+ -0.0354149267077446,
+ 0.0016564697725698352,
+ -0.005659755319356918,
+ -0.015948252752423286,
+ -0.019654130563139915,
+ -0.022062230855226517,
+ -0.00045872858026996255,
+ -0.02550855278968811,
+ 0.05121898278594017,
+ 0.020793292671442032,
+ 5.664402124239132e-06,
+ -0.03827003762125969,
+ -0.02177383564412594,
+ 0.0075487433932721615,
+ -0.018284253776073456,
+ 0.0321849025785923,
+ -0.026604454964399338,
+ 0.03726065531373024,
+ -0.014837931841611862,
+ -0.019524352625012398,
+ 0.02173057571053505,
+ -0.03668386489152908,
+ -0.015025388449430466,
+ -0.011059954762458801,
+ -0.021946871653199196,
+ 0.03504001349210739,
+ 0.0321849025785923,
+ -0.0024261244107037783,
+ 0.011752103455364704,
+ -0.014837931841611862,
+ 0.05078639090061188,
+ 0.0012545189820230007,
+ -0.0026874823961406946,
+ -0.036712706089019775,
+ 0.0019592847675085068,
+ -0.01806795783340931,
+ 0.009632398374378681,
+ -0.03959665820002556,
+ -0.05081522837281227,
+ 0.03878914937376976,
+ -0.003987063188105822,
+ -0.03157927095890045,
+ -0.011629534885287285,
+ 0.008478817529976368,
+ -0.0035652853548526764,
+ -0.03429018706083298,
+ 0.036395471543073654,
+ 0.06217799708247185,
+ 0.016712499782443047,
+ -0.007476644590497017,
+ 0.041182830929756165,
+ 5.182100721867755e-05,
+ -0.03126203641295433,
+ 0.021384501829743385,
+ -0.018889883533120155,
+ -0.026907268911600113,
+ -0.010151510126888752,
+ 0.028032010421156883,
+ 0.049834683537483215,
+ -0.012739856727421284,
+ -0.03330964222550392,
+ -0.10053455829620361,
+ 0.009783806279301643,
+ -0.11149357259273529,
+ 0.0028569146525114775,
+ -0.0006754755740985274,
+ -0.017159512266516685,
+ 0.009098867885768414,
+ 0.006795311346650124,
+ 0.02519131824374199,
+ -0.02112494595348835,
+ -0.01968296989798546,
+ -0.0030047171749174595,
+ 0.05857305973768234,
+ -0.05214184522628784,
+ -0.011535806581377983,
+ -0.09078679978847504,
+ 0.008990718983113766,
+ -0.01834193244576454,
+ 0.014571165665984154,
+ -8.809570863377303e-05,
+ -0.0025739269331097603,
+ 0.0171018335968256,
+ -0.038010481745004654,
+ -0.000254148239037022,
+ 0.015414722263813019,
+ 0.013814128935337067,
+ 0.08144279569387436,
+ 0.019466673955321312,
+ 0.031608112156391144,
+ 0.005018075928092003,
+ 0.006409582681953907,
+ 0.019769489765167236,
+ -0.006312249228358269,
+ -0.0015708524733781815,
+ -0.03515537083148956,
+ 0.008896990679204464,
+ -0.04112515226006508,
+ 0.0563235767185688,
+ 0.013496894389390945,
+ 0.05975547805428505,
+ 0.03607823699712753,
+ 0.02429729327559471,
+ 0.012840795330703259,
+ 0.017404649406671524,
+ 0.006971953436732292,
+ -0.01640968583524227,
+ -0.013612251728773117,
+ 0.008817682042717934,
+ 0.0050721499137580395,
+ -0.01346084475517273,
+ 0.005778718274086714,
+ -0.03417482599616051,
+ 0.033742234110832214,
+ 0.012321683578193188,
+ 0.013287807814776897,
+ -0.0261574424803257,
+ -0.039856214076280594,
+ 0.01452790666371584,
+ 0.0017402846133336425,
+ 0.028666479513049126,
+ 0.030627567321062088,
+ -0.035270728170871735,
+ 0.06044762581586838,
+ -0.009906373918056488,
+ -0.06402372568845749,
+ 0.030396850779652596,
+ 0.01142765861004591,
+ -0.010620152577757835,
+ 0.061658889055252075,
+ 0.0032967173028737307,
+ -0.007808299269527197,
+ -0.004069976974278688,
+ -0.007440595421940088,
+ -0.009906373918056488,
+ 0.005346125457435846,
+ -0.004109631292521954,
+ -0.036597348749637604,
+ -0.00506854522973299,
+ 0.016885537654161453,
+ 0.057679034769535065,
+ 0.016265487298369408,
+ 0.02945956587791443,
+ -0.018096797168254852,
+ 0.056035179644823074,
+ 0.0062906197272241116,
+ 0.006586224772036076,
+ -0.02128356322646141,
+ 0.028262726962566376,
+ -0.008565336465835571,
+ 0.01482351217418909,
+ 0.006925088819116354,
+ 0.048306189477443695,
+ -0.01557333953678608,
+ 0.0023666429333388805,
+ -0.017159512266516685,
+ -0.08230797946453094,
+ -0.051103625446558,
+ 0.026705393567681313,
+ -0.01822657510638237,
+ 0.015169586054980755,
+ -0.011615115217864513,
+ -0.028305985033512115,
+ 0.020014625042676926,
+ -0.010396646335721016,
+ -0.041182830929756165,
+ 0.04490312933921814,
+ 0.023345589637756348,
+ -0.023807020857930183,
+ -0.004635952413082123,
+ 0.01930805668234825,
+ 0.010454325005412102,
+ 0.0362224318087101,
+ -0.049834683537483215,
+ -0.022884156554937363,
+ 0.0006092347903177142,
+ -0.029142331331968307,
+ -0.01963971182703972,
+ -0.02780129387974739,
+ 0.021153785288333893,
+ -0.016669241711497307,
+ -0.005695804487913847,
+ -0.046893056482076645,
+ 0.013143610209226608,
+ -0.03593403846025467,
+ -0.0011031115427613258,
+ -0.0543336495757103,
+ 0.021831514313817024,
+ 0.01557333953678608,
+ -0.021932452917099,
+ 0.03636663034558296,
+ 0.027830133214592934,
+ -0.007098126225173473,
+ -0.025768108665943146,
+ 0.013064301572740078,
+ -0.007195459678769112,
+ 0.04876762256026268,
+ -0.0061860764399170876,
+ -0.094939686357975,
+ -0.015804056078195572,
+ 0.019048500806093216,
+ 0.02112494595348835,
+ 0.025609491392970085,
+ 0.019610870629549026,
+ -0.04325927421450615,
+ -0.026301639154553413,
+ 0.02245156466960907,
+ 0.040375322103500366,
+ -0.010483164340257645,
+ 0.03042569011449814,
+ 0.017721883952617645,
+ -0.03454974293708801,
+ 0.008341830223798752,
+ -0.008291360922157764,
+ 0.0018691611476242542,
+ -0.01658272184431553,
+ -0.027008207514882088,
+ 0.033338483422994614,
+ -0.0003550865512806922,
+ 0.005075755063444376,
+ -0.02216316945850849,
+ 0.033223122358322144,
+ 0.024254033342003822,
+ -0.028897196054458618,
+ 0.005919310729950666,
+ 0.033453840762376785,
+ -0.007325237151235342,
+ -0.023807020857930183,
+ 0.018284253776073456,
+ -0.044557053595781326,
+ 0.038039322942495346,
+ 0.035501446574926376,
+ 0.01301383227109909,
+ 0.01568869687616825,
+ 0.01685669831931591,
+ 0.032934729009866714,
+ -0.012400992214679718,
+ -0.003922174219042063,
+ -0.11287786811590195,
+ -0.022797638550400734,
+ -0.010656201280653477,
+ -0.0057174344547092915,
+ 0.03065640665590763,
+ 0.004722470883280039,
+ -0.051276661455631256,
+ -0.005987804848700762,
+ 0.027411960065364838,
+ 0.05661197006702423,
+ -0.006539360620081425,
+ 0.04510500282049179,
+ -0.021918032318353653,
+ -0.04640278220176697,
+ -0.021312402561306953,
+ -0.05266095697879791,
+ -0.008421138860285282,
+ 0.028190627694129944,
+ -0.027671515941619873,
+ -0.019264796748757362,
+ 0.008896990679204464,
+ -0.0023540256079286337,
+ 0.014066474512219429,
+ 0.011240202002227306,
+ -0.04726796969771385,
+ -0.007851558737456799,
+ 0.005569631699472666,
+ -0.043432313948869705,
+ 0.01806795783340931,
+ 0.003969038370996714,
+ -0.0498923659324646,
+ 0.020331859588623047,
+ 0.014311610721051693,
+ -0.0032606679014861584,
+ 0.014938869513571262,
+ 0.012429831549525261,
+ -0.01273264642804861,
+ -0.04060604050755501,
+ 0.07780901342630386,
+ -0.021975712850689888,
+ -0.002516247797757387,
+ -0.032444458454847336,
+ 0.0030011122580617666,
+ -0.0022999513894319534,
+ -0.003240840742364526,
+ -0.000930074427742511,
+ -0.025652749463915825,
+ -0.017274871468544006,
+ 0.020288599655032158,
+ -0.005032495595514774,
+ 0.07238718867301941,
+ 0.02386469952762127,
+ 0.017044154927134514,
+ 0.01681343838572502,
+ 0.05407409369945526,
+ 0.029964258894324303,
+ 0.0010787781793624163,
+ 0.02656119503080845,
+ -0.012098177336156368,
+ 0.040779076516628265,
+ 0.02824830636382103,
+ 0.04772939905524254,
+ 0.018803365528583527,
+ -0.03717413917183876,
+ 0.009711707010865211,
+ -0.020173242315649986,
+ 0.015256104059517384,
+ 0.029791221022605896,
+ -0.049950044602155685,
+ -0.03728949651122093,
+ 0.025998825207352638,
+ -0.011658375151455402,
+ 0.04966164752840996,
+ 0.051103625446558,
+ 0.022639021277427673,
+ 0.0127759063616395,
+ 0.015515659935772419,
+ 0.004614322911947966,
+ 0.004982026759535074,
+ -0.0358186811208725,
+ 0.000755685439798981,
+ 0.010115460492670536,
+ -0.08150047808885574,
+ 0.0005132532678544521,
+ -0.03134855628013611,
+ -0.015111906453967094,
+ -0.03636663034558296,
+ -0.008760003373026848,
+ -0.003720297710970044,
+ -0.005465088412165642,
+ 0.01060573197901249,
+ -0.061024416238069534,
+ 0.023403268307447433,
+ -0.0171018335968256,
+ 0.06108209863305092,
+ -0.007094521075487137,
+ -0.027498479932546616,
+ 0.03155042976140976,
+ 0.010728300549089909,
+ -0.003788791596889496,
+ 0.004830619320273399,
+ 0.011254621669650078,
+ 0.010930176824331284,
+ 0.004358372185379267,
+ 0.0049387672916054726,
+ 0.021990131586790085,
+ 0.06015923246741295,
+ 0.035587962716817856,
+ -0.03835655748844147,
+ -0.011016695760190487,
+ -0.022682279348373413,
+ 0.025551812723279,
+ -0.0006804323638789356,
+ 0.04083675518631935,
+ -0.0005700310575775802,
+ 0.04204801470041275,
+ 0.017404649406671524,
+ -0.0587460957467556,
+ -0.014239511452615261,
+ -0.01015871949493885,
+ 0.07855884730815887,
+ -0.002350420691072941,
+ -0.021067267283797264,
+ -0.018918722867965698,
+ 0.03403063118457794,
+ -0.011052744463086128,
+ 0.008536497130990028,
+ 0.007296397816389799,
+ 0.03607823699712753,
+ 0.008868151344358921,
+ 0.011319510638713837,
+ 0.02506154030561447,
+ 0.006312249228358269,
+ 0.014549536630511284,
+ 0.009877534583210945,
+ -0.011168102733790874,
+ -0.05326658859848976,
+ 0.015746375545859337,
+ 0.031204357743263245,
+ -0.02591230534017086,
+ -0.005904891062527895,
+ -0.03310776501893997,
+ -0.0494886115193367,
+ 0.0023918773513287306,
+ 0.01279753539711237,
+ -0.030973641201853752,
+ 0.0038969398010522127,
+ 0.02550855278968811,
+ -0.005245187319815159,
+ 0.019856007769703865,
+ -0.0034427172504365444,
+ 0.002491013379767537,
+ -0.03795280307531357,
+ -0.02961818315088749,
+ -0.019985785707831383,
+ 0.00408439664170146,
+ 0.01241541188210249,
+ 0.020173242315649986,
+ -0.03279053047299385,
+ 0.02100958861410618,
+ 0.023749342188239098,
+ -0.05251676216721535,
+ -0.036481987684965134,
+ -0.0001312423264607787,
+ -0.02820504829287529,
+ 0.0047477055341005325,
+ -0.010209188796579838,
+ 0.01741906814277172,
+ 0.02973354235291481,
+ 0.012912893667817116,
+ -0.019654130563139915,
+ 0.017880501225590706,
+ -0.024210775271058083,
+ -0.0010562472743913531,
+ -0.001159889274276793,
+ 0.008860941976308823,
+ -0.03584751859307289,
+ 0.013287807814776897,
+ 0.03143507242202759,
+ 0.03005077689886093,
+ 0.034866977483034134,
+ 0.009127707220613956,
+ 0.02791665308177471,
+ 0.0006556484149768949,
+ -0.002768593607470393,
+ 0.024441489949822426,
+ -0.05398757755756378,
+ -0.013071510940790176,
+ 0.014239511452615261,
+ 0.024196354672312737,
+ 0.030368011444807053,
+ -0.016222229227423668,
+ -0.020937489345669746,
+ 0.011939560063183308,
+ 0.03763556852936745,
+ 0.018846623599529266,
+ -0.04478776827454567,
+ -0.011672794818878174,
+ 0.0006795311346650124,
+ -0.017130672931671143,
+ -0.03775092959403992,
+ -0.0104615343734622,
+ -0.0048630633391439915,
+ 0.009812645614147186,
+ 0.005951755214482546,
+ 0.0325886532664299,
+ 0.028075270354747772,
+ -0.1082058697938919,
+ 0.022062230855226517,
+ 0.005703014321625233,
+ -0.036308951675891876,
+ 0.0033021247945725918,
+ -0.054622046649456024,
+ 0.005775113124400377,
+ 0.049546290189027786,
+ 0.007952496409416199,
+ 0.11045534908771515,
+ -0.04487428814172745,
+ -0.006907064467668533,
+ 0.0478735975921154,
+ -0.004405236337333918,
+ -0.017793981358408928,
+ 0.04744100570678711,
+ -0.021946871653199196,
+ -0.010995065793395042,
+ -0.05162273719906807,
+ 0.0006799817201681435,
+ 0.007267558481544256,
+ 0.007447805255651474,
+ 0.003484174143522978,
+ -0.0269649475812912,
+ 0.007404545787721872,
+ 0.03388643264770508,
+ -0.01446301769465208,
+ -0.054823920130729675,
+ 0.006899854633957148,
+ -0.002855112077668309,
+ 0.027224503457546234,
+ 0.017375808209180832,
+ 0.020548155531287193,
+ -0.03948129713535309,
+ 0.013900646939873695,
+ -0.060216911137104034,
+ -0.00939447246491909,
+ 0.024960601702332497,
+ 0.055746786296367645,
+ -0.03596287593245506,
+ -0.0225380826741457,
+ 0.011708843521773815,
+ 0.015674278140068054,
+ 0.018615908920764923,
+ 0.018644748255610466,
+ 0.0005263211787678301,
+ 0.0009769386379048228,
+ -0.005666965153068304,
+ -0.04605671018362045,
+ 0.028911616653203964,
+ -0.019899265840649605,
+ 0.06085138022899628,
+ 0.012869634665548801,
+ 0.12216419726610184,
+ -0.0006768273888155818,
+ 0.011478127911686897,
+ 0.0038176311645656824,
+ 0.05491043999791145,
+ 0.014376498758792877,
+ 0.0019971365109086037,
+ -0.01782282069325447,
+ 0.026777490973472595,
+ -0.04914253577589989,
+ -0.028435762971639633,
+ 0.013302227482199669,
+ 0.002938025863841176,
+ 0.022999513894319534,
+ 0.01762094534933567,
+ 0.017433488741517067,
+ -0.026186281815171242,
+ -0.05897681042551994,
+ 0.02310045249760151,
+ 0.007447805255651474,
+ 0.026532355695962906,
+ 0.02096632868051529,
+ -0.019740648567676544,
+ 0.014491857029497623,
+ -0.02824830636382103,
+ -0.028118528425693512,
+ -0.04054836183786392,
+ -0.05877493694424629,
+ -0.018212154507637024,
+ 0.021052846685051918,
+ 0.021427761763334274,
+ 0.029272109270095825,
+ -0.012134226970374584,
+ -0.035703323781490326,
+ -0.047383327037096024,
+ -0.011961190029978752,
+ -0.04051952064037323,
+ -0.037202976644039154,
+ 0.07988546043634415,
+ 0.00030912357033230364,
+ 0.011845831759274006,
+ 0.012811955064535141,
+ 0.036193594336509705,
+ -0.0049387672916054726,
+ 0.015111906453967094,
+ -0.03013729490339756,
+ -0.01701531559228897,
+ 0.008197632618248463,
+ 0.0446724109351635,
+ 0.051276661455631256,
+ 0.01730371080338955,
+ 0.038443077355623245,
+ -0.02269669994711876,
+ 0.05251676216721535,
+ -0.02040395885705948,
+ 0.061139777302742004,
+ -0.04957513138651848,
+ -0.03899102658033371,
+ -0.04896949976682663,
+ -0.042192213237285614,
+ -0.03143507242202759,
+ -0.004581878427416086,
+ -0.011369979940354824,
+ -0.031925346702337265,
+ 0.018529389053583145,
+ -0.023792602121829987,
+ -0.011917930096387863,
+ 0.014448598027229309,
+ 0.051363181322813034,
+ 0.027700355276465416,
+ 0.03728949651122093,
+ 0.03818352147936821,
+ -0.046373944729566574,
+ 0.007555953226983547,
+ 0.04187497869133949,
+ -0.004715261049568653,
+ 0.005075755063444376,
+ -0.009603559039533138,
+ 0.002775803441181779,
+ 0.015602178871631622,
+ -0.006532150786370039,
+ -0.0261574424803257,
+ -0.0321849025785923,
+ -0.0003902347234543413,
+ -0.018889883533120155,
+ -0.042711324989795685,
+ -0.02317255176603794,
+ -0.018615908920764923,
+ -0.03492465615272522,
+ 0.025003861635923386,
+ 0.0337999127805233,
+ -0.01798143796622753,
+ 0.01919269934296608,
+ -0.006124792620539665,
+ -0.01907734014093876,
+ -0.06448516249656677,
+ -0.03230025991797447,
+ -0.00026270997477695346,
+ 0.019120600074529648,
+ -0.015674278140068054,
+ 0.013352696783840656,
+ 0.018760105594992638,
+ -0.012429831549525261,
+ -0.00032174086663872004,
+ -0.010713880881667137,
+ -0.014174622483551502,
+ -0.10762907564640045,
+ 0.052891675382852554,
+ -0.014563956297934055,
+ -0.004412446171045303,
+ 0.05739063769578934,
+ 0.051766932010650635,
+ -0.004614322911947966,
+ 0.050469156354665756,
+ -0.04325927421450615,
+ 0.01939457468688488,
+ -0.012458670884370804,
+ -0.012307263910770416,
+ 0.01023802813142538,
+ 0.018529389053583145,
+ -0.013907857239246368,
+ 0.045479919761419296,
+ 0.03025265410542488,
+ 0.008846521377563477,
+ -0.004491754807531834,
+ -0.02602766454219818,
+ 0.06460051983594894,
+ 0.046979572623968124,
+ 0.038962189108133316,
+ 0.04285552352666855,
+ 0.0011580868158489466,
+ -0.03403063118457794,
+ -0.009207015857100487,
+ -0.004917137790471315,
+ -0.012833585031330585,
+ -0.005710224155336618,
+ -0.03930826112627983,
+ -0.019423414021730423,
+ -0.00036860507680103183,
+ 0.023547464981675148,
+ 0.007274768315255642,
+ -0.021615218371152878,
+ -0.004617927595973015,
+ 0.005050520412623882,
+ -0.028637640178203583,
+ 0.01120415236800909,
+ 0.0490848571062088,
+ -0.023114873096346855,
+ 0.03175230696797371,
+ 0.030194973573088646,
+ 0.03951013833284378,
+ 0.025681590661406517,
+ -0.04591251164674759,
+ -0.007808299269527197,
+ 0.011788152158260345,
+ 0.015631018206477165,
+ 0.026099761947989464,
+ 0.03166579082608223,
+ 0.029704703018069267,
+ -0.025047119706869125,
+ -0.062466394156217575,
+ 0.0072531383484601974,
+ -0.006716002710163593,
+ -0.038241200149059296,
+ 0.016842277720570564,
+ -0.01726045086979866,
+ -0.056265898048877716,
+ -0.013266177847981453,
+ 0.00048216068535111845,
+ 0.004149285610765219,
+ 0.011110424064099789,
+ -0.05842886120080948,
+ -0.0021124945487827063,
+ 0.07630936056375504,
+ 0.03734717518091202,
+ -0.00223326007835567,
+ 0.0006150928093120456,
+ -0.004048347007483244,
+ 0.00026744147180579603,
+ 0.010512003675103188,
+ 0.009668448008596897,
+ 0.023547464981675148,
+ -0.06956091523170471,
+ 0.03962549567222595,
+ -0.008860941976308823,
+ -0.01782282069325447,
+ -0.002525260206311941,
+ -0.0010003707138821483,
+ 0.07256022840738297,
+ 0.027584997937083244,
+ 0.023590724915266037,
+ 0.02539319545030594,
+ 0.033655717968940735,
+ -0.049632810056209564,
+ -0.0647735521197319,
+ -0.0023035563062876463,
+ -0.009192596189677715,
+ -0.04233641177415848,
+ 0.014996549114584923,
+ 0.020778872072696686,
+ 0.010497584007680416,
+ -0.0134824737906456,
+ 0.027311023324728012,
+ -0.030310332775115967,
+ 0.0018277043709531426,
+ 0.014513486996293068,
+ -0.03411714732646942,
+ -0.012862424366176128,
+ -0.0098559046164155,
+ 0.014253931120038033,
+ 0.03163694962859154,
+ 0.008695114403963089,
+ -0.010375016368925571,
+ 0.026690972968935966,
+ 0.044528212398290634,
+ -0.020029043778777122,
+ 0.06979162991046906,
+ 0.01811121590435505,
+ 0.013287807814776897,
+ -0.019942525774240494,
+ 0.005620101001113653,
+ -0.014809091575443745,
+ 0.004095211625099182,
+ -0.022105488926172256,
+ 0.0031831616070121527,
+ 0.007916447706520557,
+ -0.0675998255610466,
+ 0.01522726472467184,
+ -0.004855853505432606,
+ -0.04775824025273323,
+ 9.992442210204899e-05,
+ 0.07469435036182404,
+ -0.04357650876045227,
+ -0.0555160716176033,
+ 0.011247411370277405,
+ 0.038529593497514725,
+ 0.038039322942495346,
+ 0.027772454544901848,
+ -0.030887123197317123,
+ -0.03642430901527405,
+ -0.003624766832217574,
+ 0.01822657510638237,
+ 0.029228851199150085,
+ -0.02036069892346859,
+ 0.020649094134569168,
+ 0.04002925008535385,
+ 0.009964053519070148,
+ -0.01581847481429577,
+ -0.011369979940354824,
+ 0.03054104931652546,
+ 0.01867358759045601,
+ 0.013792498968541622,
+ 0.01887546479701996,
+ 0.005854421760886908,
+ 0.03769324719905853,
+ 0.04276900365948677,
+ 0.0045386189594864845,
+ -0.0207211934030056,
+ 0.04429749771952629,
+ -0.029243269935250282,
+ -0.005616495851427317,
+ 0.020504897460341454,
+ -0.06984931230545044,
+ 0.050036560744047165,
+ -0.023504206910729408,
+ 0.0043475572019815445,
+ 0.06817661970853806,
+ 0.0012581238988786936,
+ 0.08000081777572632,
+ 0.008752793073654175,
+ 0.01822657510638237,
+ 0.010324547067284584,
+ -0.003080420894548297,
+ -0.008341830223798752,
+ -0.00953867007046938,
+ -0.00616444693878293,
+ -0.027570577338337898,
+ 0.015025388449430466,
+ -0.007083706557750702,
+ -0.03204070404171944
+ ],
+ "result": "--- 结果 1 (相似度: 1.000) ---\n文件路径: C:\\Steam\\steamapps\\common\\RimWorld\\Data\\dll1.6\\Verse\\HediffDef.txt\n\npublic class HediffDef : Def, IRenderNodePropertiesParent\n{\n\tprivate class ReportStringOverride\n\t{\n\t\tpublic JobDef jobDef;\n\n\t\t[MustTranslate]\n\t\tpublic string reportString;\n\t}\n\n\tpublic Type hediffClass = typeof(Hediff);\n\n\tpublic List comps;\n\n\t[MustTranslate]\n\tpublic string descriptionShort;\n\n\t[NoTranslate]\n\tpublic string debugLabelExtra;\n\n\tpublic float initialSeverity = 0.5f;\n\n\tpublic float lethalSeverity = -1f;\n\n\tpublic List stages;\n\n\tpublic bool tendable;\n\n\tpublic bool isBad = true;\n\n\tpublic ThingDef spawnThingOnRemoved;\n\n\tpublic float chanceToCauseNoPain;\n\n\tpublic bool canApplyDodChanceForCapacityChanges;\n\n\tpublic bool makesSickThought;\n\n\tpublic bool makesAlert = true;\n\n\tpublic NeedDef chemicalNeed;\n\n\tpublic float minSeverity;\n\n\tpublic float maxSeverity = float.MaxValue;\n\n\tpublic bool scenarioCanAdd;\n\n\tpublic List hediffGivers;\n\n\tpublic bool cureAllAtOnceIfCuredByItem;\n\n\tpublic TaleDef taleOnVisible;\n\n\tpublic bool recordDownedTale = true;\n\n\tpublic bool everCurableByItem = true;\n\n\tpublic List tags;\n\n\tpublic bool priceImpact;\n\n\tpublic float priceOffset;\n\n\tpublic bool chronic;\n\n\tpublic bool keepOnBodyPartRestoration;\n\n\tpublic bool countsAsAddedPartOrImplant;\n\n\tpublic bool blocksSocialInteraction;\n\n\tpublic bool blocksSleeping;\n\n\t[MustTranslate]\n\tpublic string overrideTooltip;\n\n\t[MustTranslate]\n\tpublic string extraTooltip;\n\n\t[MustTranslate]\n\tpublic string inspectString;\n\n\tpublic bool levelIsQuantity;\n\n\tpublic bool removeOnDeathrestStart;\n\n\tpublic bool preventsCrawling;\n\n\tpublic bool preventsPregnancy;\n\n\tpublic bool preventsLungRot;\n\n\tpublic bool pregnant;\n\n\tpublic bool allowMothballIfLowPriorityWorldPawn;\n\n\tpublic List removeWithTags;\n\n\tpublic List onlyLifeThreateningTo;\n\n\tpublic bool canAffectBionicOrImplant = true;\n\n\tpublic bool alwaysShowSeverity;\n\n\tpublic bool showGizmosOnCorpse;\n\n\tpublic BodyPartDef defaultInstallPart;\n\n\tpublic Color? hairColorOverride;\n\n\tpublic List possiblePathways;\n\n\tpublic List givesInfectionPathways;\n\n\tpublic bool duplicationAllowed = true;\n\n\tpublic bool preventsDeath;\n\n\tpublic List allowedMeditationFocusTypes;\n\n\tpublic List abilities;\n\n\tpublic bool isInfection;\n\n\tpublic bool forceRemoveOnResurrection;\n\n\tpublic bool organicAddedBodypart;\n\n\tpublic bool deprioritizeHealing;\n\n\tpublic bool clearsEgo;\n\n\tpublic List aptitudes;\n\n\tpublic SimpleCurve removeOnRedressChanceByDaysCurve = new SimpleCurve\n\t{\n\t\tnew CurvePoint(0f, 0f),\n\t\tnew CurvePoint(1f, 0f)\n\t};\n\n\tpublic bool removeOnQuestLodgers;\n\n\tpublic List removeOnRedressIfNotOfKind;\n\n\tpublic bool displayWound;\n\n\tpublic float? woundAnchorRange;\n\n\tpublic Color defaultLabelColor = Color.white;\n\n\tprivate List renderNodeProperties;\n\n\tpublic Color? skinColorOverride;\n\n\tpublic Color? skinColorTint;\n\n\tpublic float skinColorTintStrength = 0.5f;\n\n\tpublic ShaderTypeDef skinShader;\n\n\tpublic bool forceRenderTreeRecache;\n\n\tpublic InjuryProps injuryProps;\n\n\tpublic AddedBodyPartProps addedPartProps;\n\n\tprivate List reportStringOverrides;\n\n\t[MustTranslate]\n\tpublic string labelNoun;\n\n\t[MustTranslate]\n\tpublic string battleStateLabel;\n\n\t[MustTranslate]\n\tpublic string labelNounPretty;\n\n\t[MustTranslate]\n\tpublic string targetPrefix;\n\n\tprivate bool alwaysAllowMothballCached;\n\n\tprivate bool alwaysAllowMothball;\n\n\tprivate string descriptionCached;\n\n\tprivate Dictionary reportStringOverridesDict;\n\n\tprivate Hediff concreteExampleInt;\n\n\tpublic bool HasDefinedGraphicProperties\n\t{\n\t\tget\n\t\t{\n\t\t\tif (renderNodeProperties.NullOrEmpty())\n\t\t\t{\n\t\t\t\treturn skinShader != null;\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t}\n\n\tpublic List RenderNodeProperties => renderNodeProperties ?? PawnRenderUtility.EmptyRenderNodeProperties;\n\n\tpublic bool IsAddiction => typeof(Hediff_Addiction).IsAssignableFrom(hediffClass);\n\n\tpublic bool AlwaysAllowMothball\n\t{\n\t\tget\n\t\t{\n\t\t\tif (!alwaysAllowMothballCached)\n\t\t\t{\n\t\t\t\talwaysAllowMothball = true;\n\t\t\t\tif (comps != null && comps.Count > 0)\n\t\t\t\t{\n\t\t\t\t\talwaysAllowMothball = false;\n\t\t\t\t}\n\t\t\t\tif (stages != null)\n\t\t\t\t{\n\t\t\t\t\tfor (int i = 0; i < stages.Count; i++)\n\t\t\t\t\t{\n\t\t\t\t\t\tHediffStage hediffStage = stages[i];\n\t\t\t\t\t\tif (hediffStage.deathMtbDays > 0f || (hediffStage.hediffGivers != null && hediffStage.hediffGivers.Count > 0))\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\talwaysAllowMothball = false;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\talwaysAllowMothballCached = true;\n\t\t\t}\n\t\t\treturn alwaysAllowMothball;\n\t\t}\n\t}\n\n\tpublic Hediff ConcreteExample => concreteExampleInt ?? (concreteExampleInt = HediffMaker.Debug_MakeConcreteExampleHediff(this));\n\n\tpublic string Description\n\t{\n\t\tget\n\t\t{\n\t\t\tif (descriptionCached == null)\n\t\t\t{\n\t\t\t\tif (!descriptionShort.NullOrEmpty())\n\t\t\t\t{\n\t\t\t\t\tdescriptionCached = descriptionShort;\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\tdescriptionCached = description;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn descriptionCached;\n\t\t}\n\t}\n\n\tpublic bool HasComp(Type compClass)\n\t{\n\t\tif (comps != null)\n\t\t{\n\t\t\tfor (int i = 0; i < comps.Count; i++)\n\t\t\t{\n\t\t\t\tif (comps[i].compClass == compClass)\n\t\t\t\t{\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n\tpublic HediffCompProperties CompPropsFor(Type compClass)\n\t{\n\t\tif (comps != null)\n\t\t{\n\t\t\tfor (int i = 0; i < comps.Count; i++)\n\t\t\t{\n\t\t\t\tif (comps[i].compClass == compClass)\n\t\t\t\t{\n\t\t\t\t\treturn comps[i];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn null;\n\t}\n\n\tpublic T CompProps() where T : HediffCompProperties\n\t{\n\t\tif (comps != null)\n\t\t{\n\t\t\tfor (int i = 0; i < comps.Count; i++)\n\t\t\t{\n\t\t\t\tif (comps[i] is T result)\n\t\t\t\t{\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn null;\n\t}\n\n\tpublic bool PossibleToDevelopImmunityNaturally()\n\t{\n\t\tHediffCompProperties_Immunizable hediffCompProperties_Immunizable = CompProps();\n\t\tif (hediffCompProperties_Immunizable != null && (hediffCompProperties_Immunizable.immunityPerDayNotSick > 0f || hediffCompProperties_Immunizable.immunityPerDaySick > 0f))\n\t\t{\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tpublic string PrettyTextForPart(BodyPartRecord bodyPart)\n\t{\n\t\tif (labelNounPretty.NullOrEmpty())\n\t\t{\n\t\t\treturn null;\n\t\t}\n\t\treturn labelNounPretty.Formatted(label, bodyPart.Label);\n\t}\n\n\tpublic override void ResolveReferences()\n\t{\n\t\tbase.ResolveReferences();\n\t\tif (comps != null)\n\t\t{\n\t\t\tfor (int i = 0; i < comps.Count; i++)\n\t\t\t{\n\t\t\t\tcomps[i].ResolveReferences(this);\n\t\t\t}\n\t\t}\n\t\tif (renderNodeProperties != null)\n\t\t{\n\t\t\tfor (int j = 0; j < renderNodeProperties.Count; j++)\n\t\t\t{\n\t\t\t\trenderNodeProperties[j].ResolveReferencesRecursive();\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic int StageAtSeverity(float severity)\n\t{\n\t\tif (stages == null)\n\t\t{\n\t\t\treturn 0;\n\t\t}\n\t\tfor (int num = stages.Count - 1; num >= 0; num--)\n\t\t{\n\t\t\tif (severity >= stages[num].minSeverity)\n\t\t\t{\n\t\t\t\treturn num;\n\t\t\t}\n\t\t}\n\t\treturn 0;\n\t}\n\n\tpublic int AptitudeFor(SkillDef skill)\n\t{\n\t\tint num = 0;\n\t\tif (aptitudes.NullOrEmpty())\n\t\t{\n\t\t\treturn num;\n\t\t}\n\t\tfor (int i = 0; i < aptitudes.Count; i++)\n\t\t{\n\t\t\tif (aptitudes[i].skill == skill)\n\t\t\t{\n\t\t\t\tnum += aptitudes[i].level;\n\t\t\t}\n\t\t}\n\t\treturn num;\n\t}\n\n\tpublic override IEnumerable ConfigErrors()\n\t{\n\t\tforeach (string item in base.ConfigErrors())\n\t\t{\n\t\t\tyield return item;\n\t\t}\n\t\tif (hediffClass == null)\n\t\t{\n\t\t\tyield return \"hediffClass is null\";\n\t\t}\n\t\tif (!comps.NullOrEmpty() && !typeof(HediffWithComps).IsAssignableFrom(hediffClass))\n\t\t{\n\t\t\tyield return \"has comps but hediffClass is not HediffWithComps or subclass thereof\";\n\t\t}\n\t\tif (minSeverity > initialSeverity)\n\t\t{\n\t\t\tyield return \"minSeverity is greater than initialSeverity\";\n\t\t}\n\t\tif (maxSeverity < initialSeverity)\n\t\t{\n\t\t\tyield return \"maxSeverity is lower than initialSeverity\";\n\t\t}\n\t\tif (!tendable && HasComp(typeof(HediffComp_TendDuration)))\n\t\t{\n\t\t\tyield return \"has HediffComp_TendDuration but tendable = false\";\n\t\t}\n\t\tif (string.IsNullOrEmpty(description))\n\t\t{\n\t\t\tyield return \"Hediff with defName \" + defName + \" has no description!\";\n\t\t}\n\t\tif (possiblePathways != null)\n\t\t{\n\t\t\tfor (int i = 0; i < possiblePathways.Count - 1; i++)\n\t\t\t{\n\t\t\t\tHediffInfectionPathway vector = possiblePathways[i];\n\t\t\t\tfor (int k = i + 1; k < possiblePathways.Count; k++)\n\t\t\t\t{\n\t\t\t\t\tHediffInfectionPathway hediffInfectionPathway = possiblePathways[k];\n\t\t\t\t\tif (vector.PathwayDef == hediffInfectionPathway.PathwayDef)\n\t\t\t\t\t{\n\t\t\t\t\t\tyield return \"Multiple possible infection vectors of type: \" + vector.PathwayDef.defName;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (string.IsNullOrEmpty(vector.Explanation))\n\t\t\t\t{\n\t\t\t\t\tyield return \"Missing explanation for possible infection vector: \" + vector.PathwayDef.defName;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (comps != null)\n\t\t{\n\t\t\tfor (int i = 0; i < comps.Count; i++)\n\t\t\t{\n\t\t\t\tforeach (string item2 in comps[i].ConfigErrors(this))\n\t\t\t\t{\n\t\t\t\t\tyield return $\"{comps[i]}: {item2}\";\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (stages != null)\n\t\t{\n\t\t\tif (!typeof(Hediff_Addiction).IsAssignableFrom(hediffClass))\n\t\t\t{\n\t\t\t\tfor (int i = 0; i < stages.Count; i++)\n\t\t\t\t{\n\t\t\t\t\tif (i >= 1 && stages[i].minSeverity <= stages[i - 1].minSeverity)\n\t\t\t\t\t{\n\t\t\t\t\t\tyield return \"stages are not in order of minSeverity\";\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tfor (int i = 0; i < stages.Count; i++)\n\t\t\t{\n\t\t\t\tif (stages[i].hediffGivers != null)\n\t\t\t\t{\n\t\t\t\t\tfor (int j = 0; j < stages[i].hediffGivers.Count; j++)\n\t\t\t\t\t{\n\t\t\t\t\t\tforeach (string item3 in stages[i].hediffGivers[j].ConfigErrors())\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tyield return item3;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (stages[i].minSeverity > maxSeverity)\n\t\t\t\t{\n\t\t\t\t\tyield return $\"minSeverity of stage {i} is greater than maxSeverity.\";\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (hediffGivers == null)\n\t\t{\n\t\t\tyield break;\n\t\t}\n\t\tfor (int i = 0; i < hediffGivers.Count; i++)\n\t\t{\n\t\t\tforeach (string item4 in hediffGivers[i].ConfigErrors())\n\t\t\t{\n\t\t\t\tyield return item4;\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic override IEnumerable SpecialDisplayStats(StatRequest req)\n\t{\n\t\tif (stages == null || stages.Count != 1)\n\t\t{\n\t\t\tyield break;\n\t\t}\n\t\tforeach (StatDrawEntry item in stages[0].SpecialDisplayStats())\n\t\t{\n\t\t\tyield return item;\n\t\t}\n\t}\n\n\tpublic bool TryGetReportStringOverrideFor(JobDef def, out string str)\n\t{\n\t\tif (reportStringOverrides.NullOrEmpty())\n\t\t{\n\t\t\tstr = null;\n\t\t\treturn false;\n\t\t}\n\t\tif (reportStringOverridesDict == null)\n\t\t{\n\t\t\treportStringOverridesDict = new Dictionary();\n\t\t\tif (reportStringOverrides != null)\n\t\t\t{\n\t\t\t\tforeach (ReportStringOverride reportStringOverride in reportStringOverrides)\n\t\t\t\t{\n\t\t\t\t\treportStringOverridesDict[reportStringOverride.jobDef] = reportStringOverride.reportString;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn reportStringOverridesDict.TryGetValue(def, out str);\n\t}\n\n\tpublic static HediffDef Named(string defName)\n\t{\n\t\treturn DefDatabase.GetNamed(defName);\n\t}\n}\n\n",
+ "timestamp": "2025-08-26 17:54:10,374"
+ },
+ "DamageDef-armor penetration": {
+ "keywords": [
+ "DamageDef",
+ "armor penetration"
+ ],
+ "question": "RimWorld DamageDef armor penetration",
+ "embedding": [
+ 0.03361095115542412,
+ 0.04171029478311539,
+ 0.0011501000262796879,
+ -0.023532941937446594,
+ 0.006394390948116779,
+ -0.00720894243568182,
+ -0.011067342013120651,
+ -0.04434851557016373,
+ 0.05213127285242081,
+ 0.08326229453086853,
+ 0.02609201706945896,
+ -0.04321407899260521,
+ -0.04986239969730377,
+ -0.040628623217344284,
+ 0.07365916669368744,
+ -0.011740089394152164,
+ -0.020644089207053185,
+ -0.09275989234447479,
+ 0.011001386679708958,
+ -0.013929813168942928,
+ -0.01497191097587347,
+ -0.0003604883386287838,
+ 0.00012088416406186298,
+ 0.02119811624288559,
+ 0.029073208570480347,
+ 0.027490274980664253,
+ -0.02762218751013279,
+ 0.02822897769510746,
+ 0.029996586963534355,
+ 0.008791876025497913,
+ 0.01588209718465805,
+ -0.02462780475616455,
+ 0.007894880138337612,
+ -0.013191111385822296,
+ -0.05170915648341179,
+ 0.06869930773973465,
+ -0.04761991277337074,
+ -0.02655370719730854,
+ -0.026250312104821205,
+ 0.03487729653716087,
+ -0.010632035322487354,
+ -0.0021188221871852875,
+ 0.006001955363899469,
+ -0.003286235500127077,
+ -0.0023875911720097065,
+ 0.005187404341995716,
+ 0.04289749264717102,
+ -0.08141554147005081,
+ -0.048622436821460724,
+ 0.026580089703202248,
+ 0.04878072813153267,
+ 0.009425048716366291,
+ -0.060045938938856125,
+ 0.011436693370342255,
+ 0.018652230501174927,
+ -0.028809387236833572,
+ -0.006226204335689545,
+ 0.00398701336234808,
+ -0.003851804416626692,
+ 0.010143964551389217,
+ 0.02077599987387657,
+ 0.006325137801468372,
+ -0.03825422376394272,
+ -0.05677454173564911,
+ 0.024245262145996094,
+ -0.03408583253622055,
+ -0.10304895788431168,
+ 0.015196160413324833,
+ 0.012459004297852516,
+ -0.019324976950883865,
+ -0.011166275478899479,
+ 0.03128931671380997,
+ 0.04089244455099106,
+ -0.013408764265477657,
+ 0.012017101980745792,
+ 0.006054719910025597,
+ -0.013250471092760563,
+ -0.013019626960158348,
+ -0.03714616969227791,
+ -0.02433760091662407,
+ -0.0015524289337918162,
+ -0.012538150884211063,
+ -0.07650844752788544,
+ -0.02305806241929531,
+ 0.044585954397916794,
+ 0.04696035757660866,
+ -0.025920532643795013,
+ -0.007980622351169586,
+ -0.03593258559703827,
+ 0.060256995260715485,
+ 0.004066159948706627,
+ -0.004056266508996487,
+ 0.015750186517834663,
+ -0.014378311112523079,
+ 0.0020281332544982433,
+ -0.014391502365469933,
+ -0.024456320330500603,
+ 0.06774954497814178,
+ -0.0045410399325191975,
+ -0.006430666893720627,
+ -0.011660941876471043,
+ 0.019298596307635307,
+ -0.038412515074014664,
+ 0.03682958334684372,
+ -0.01887647993862629,
+ 0.023189973086118698,
+ 0.015723804011940956,
+ -0.02369123511016369,
+ 0.0008532999781891704,
+ 0.015486364252865314,
+ -0.0015845822636038065,
+ -0.007090222090482712,
+ -0.061365049332380295,
+ 0.06358115375041962,
+ 0.010381404310464859,
+ -0.014813617803156376,
+ 0.024416746571660042,
+ -0.0063779023475945,
+ -0.0067373597994446754,
+ 0.023612089455127716,
+ 0.02102663181722164,
+ 0.011608177796006203,
+ -0.03793763741850853,
+ -0.01877095177769661,
+ 0.09017443656921387,
+ -0.03208078071475029,
+ 0.00604812428355217,
+ 0.00560292461887002,
+ 0.01937774196267128,
+ 0.026566898450255394,
+ 0.004465191159397364,
+ 0.012604107148945332,
+ 0.03358456864953041,
+ -0.006476835813373327,
+ 0.004501466639339924,
+ 0.025683093816041946,
+ 0.006278968881815672,
+ 0.03561599925160408,
+ -0.06685255467891693,
+ 0.050416428595781326,
+ -0.02198958210647106,
+ 0.008264231495559216,
+ 0.06368668377399445,
+ -0.009286542423069477,
+ 0.13518249988555908,
+ -0.02665923535823822,
+ -0.036064498126506805,
+ 0.001330653321929276,
+ -0.0560358390212059,
+ -0.0010651822667568922,
+ 0.01780799962580204,
+ -0.025511609390378,
+ -0.0097284447401762,
+ 0.048622436821460724,
+ -0.0028426845092326403,
+ -0.016370169818401337,
+ 0.023704426363110542,
+ 0.002911937888711691,
+ -0.01482680905610323,
+ -0.0011261911131441593,
+ -0.025313742458820343,
+ -0.015908479690551758,
+ -0.038095928728580475,
+ 0.024654187262058258,
+ -0.015156586654484272,
+ 0.0017692578257992864,
+ -0.028756622225046158,
+ 0.028677476570010185,
+ -0.01969432830810547,
+ -0.025353316217660904,
+ -0.03189610689878464,
+ 0.010796924121677876,
+ -0.026949439197778702,
+ -0.00897655077278614,
+ -0.024469511583447456,
+ -0.00649662222713232,
+ -0.020010916516184807,
+ 0.047593530267477036,
+ 0.0033373511396348476,
+ 0.04500807076692581,
+ 0.011093724519014359,
+ 0.0030999111477285624,
+ 0.006579066626727581,
+ 0.031922489404678345,
+ 0.034956444054841995,
+ -0.024654187262058258,
+ 0.02280743047595024,
+ 0.013850666582584381,
+ 0.027965156361460686,
+ 0.04207964614033699,
+ 0.015644658356904984,
+ 0.03215992823243141,
+ 0.016897812485694885,
+ -0.006417475640773773,
+ -0.03516750410199165,
+ -0.03601173311471939,
+ -0.001170711126178503,
+ 0.053371235728263855,
+ -0.05814641714096069,
+ 0.0077102044597268105,
+ 0.009840568527579308,
+ -0.04606335982680321,
+ 0.0005779355415143073,
+ 0.04136732593178749,
+ 0.01602720096707344,
+ -0.013270257972180843,
+ 0.009068888612091541,
+ -0.025867769494652748,
+ 0.03200163692235947,
+ 0.009702062234282494,
+ 0.013745137490332127,
+ -0.016356978565454483,
+ -0.006199822295457125,
+ -0.031131021678447723,
+ 0.0403384193778038,
+ -0.008594009093940258,
+ -0.03004935197532177,
+ 0.014035342261195183,
+ 0.01077713817358017,
+ 0.043662577867507935,
+ -0.037304461002349854,
+ 0.027991537004709244,
+ -0.023704426363110542,
+ 0.0011558710830286145,
+ 0.011641155928373337,
+ 0.004752097651362419,
+ 0.0041486043483018875,
+ -0.022398507222533226,
+ 0.0421060286462307,
+ -0.004145306535065174,
+ 0.055297136306762695,
+ 0.013177920132875443,
+ -0.0713902935385704,
+ 0.007703608833253384,
+ 0.001651362283155322,
+ -0.01165434718132019,
+ -0.026434985920786858,
+ -0.05345038324594498,
+ 0.03015488013625145,
+ 0.007875093258917332,
+ 0.027569422498345375,
+ 0.02584138698875904,
+ -0.03471900522708893,
+ -0.005751324351876974,
+ -0.017583752050995827,
+ -0.0012317199725657701,
+ -0.03572152927517891,
+ 0.020564941689372063,
+ -0.01862584985792637,
+ -0.020973866805434227,
+ 0.009899929165840149,
+ -0.040813297033309937,
+ -0.03015488013625145,
+ -0.010005458258092403,
+ 0.02191043645143509,
+ 0.03743637353181839,
+ 0.007096817716956139,
+ -0.025366507470607758,
+ -0.03097272850573063,
+ -0.006618639919906855,
+ -0.016607608646154404,
+ 0.0349828265607357,
+ 0.016079964116215706,
+ 0.05263253301382065,
+ -0.03297777846455574,
+ -0.040839679539203644,
+ 0.025392888113856316,
+ -0.009339306503534317,
+ -0.005781004671007395,
+ 0.03915121778845787,
+ -0.022886577993631363,
+ 0.016963768750429153,
+ 0.013501102104783058,
+ -0.025181831791996956,
+ 0.011733493767678738,
+ -0.01948327198624611,
+ 0.06753849238157272,
+ -0.012208373285830021,
+ 0.008033386431634426,
+ -0.007894880138337612,
+ -0.0002883494598791003,
+ -0.009385475888848305,
+ -0.01902158185839653,
+ -0.017465030774474144,
+ -0.012373262085020542,
+ 0.0428183451294899,
+ 0.00854783970862627,
+ -0.03564238175749779,
+ -0.0183752179145813,
+ 0.03609088063240051,
+ 0.0014988400507718325,
+ -0.004511360079050064,
+ -0.009939501993358135,
+ 0.029970204457640648,
+ 0.0018681911751627922,
+ 0.0026777954772114754,
+ 0.044374898076057434,
+ 0.011040960438549519,
+ -0.024456320330500603,
+ 0.032212693244218826,
+ -0.01983943209052086,
+ -0.026223929598927498,
+ 0.011693920008838177,
+ 0.008805066347122192,
+ 0.000947286665905267,
+ -0.036592140793800354,
+ -0.028571946546435356,
+ -0.05323932319879532,
+ 0.006437262054532766,
+ -0.10299619287252426,
+ 0.005523778032511473,
+ -0.028677476570010185,
+ -0.04252814128994942,
+ -0.007393617648631334,
+ 0.010955218225717545,
+ 0.00888421293348074,
+ 0.007538720034062862,
+ 0.0036935112439095974,
+ 0.007729991339147091,
+ 0.03994268551468849,
+ -0.017755236476659775,
+ 0.01208305824548006,
+ -0.10151879489421844,
+ 0.005180808715522289,
+ 0.005180808715522289,
+ 0.023823147639632225,
+ 0.0331888347864151,
+ 0.03442880138754845,
+ 0.028202595189213753,
+ -0.014800426550209522,
+ 0.02783324383199215,
+ 0.0047553954645991325,
+ 0.012010506354272366,
+ 0.052447859197854996,
+ 0.00813891552388668,
+ 0.0208815298974514,
+ -0.0008483533165417612,
+ 0.011106915771961212,
+ -0.00402328884229064,
+ 0.00940526183694601,
+ 0.004870817996561527,
+ -0.01487957313656807,
+ 0.037093404680490494,
+ -0.03862357512116432,
+ 0.035958968102931976,
+ 0.0004493222222663462,
+ 0.06062634661793709,
+ 0.05556096136569977,
+ 0.03477177023887634,
+ 0.01019013300538063,
+ 0.001729684416204691,
+ 0.023704426363110542,
+ -0.048727963119745255,
+ 0.011898382566869259,
+ 0.007466169074177742,
+ 0.005286337807774544,
+ -0.020828764885663986,
+ -0.0014427778078243136,
+ -0.06400327384471893,
+ 0.013534080237150192,
+ 0.04302940517663956,
+ -0.017003342509269714,
+ -0.017042916268110275,
+ -0.03184334188699722,
+ 0.03308330848813057,
+ -0.022965723648667336,
+ 0.011337759904563427,
+ 0.0406813882291317,
+ -0.05197297781705856,
+ 0.05814641714096069,
+ -0.03405945003032684,
+ -0.09471217542886734,
+ 0.024086968973279,
+ 0.003874888876453042,
+ -0.021646613255143166,
+ 0.010216515511274338,
+ 0.012340284883975983,
+ -0.025577563792467117,
+ -0.034244123846292496,
+ -0.003568195505067706,
+ -0.0024205688387155533,
+ 0.004231048747897148,
+ 0.006697786506265402,
+ -0.06110122799873352,
+ 0.005682071205228567,
+ 0.021066203713417053,
+ 0.031605903059244156,
+ 0.005573244299739599,
+ 0.04157838225364685,
+ -0.05242147669196129,
+ 0.03928313031792641,
+ 0.013916621915996075,
+ 0.015934862196445465,
+ -0.022939343005418777,
+ -0.009596533142030239,
+ -0.00890399981290102,
+ 0.03764742985367775,
+ 0.0022820623125880957,
+ 0.014088106341660023,
+ -0.03764742985367775,
+ -0.03268757462501526,
+ -0.017728853970766068,
+ -0.06595555692911148,
+ -0.00759148458018899,
+ 0.029389794915914536,
+ 0.02084195613861084,
+ 0.017649706453084946,
+ -0.01873137801885605,
+ -0.03936227411031723,
+ 0.0071627735160291195,
+ -0.010843093506991863,
+ -0.04440128058195114,
+ 0.03065614216029644,
+ 0.0024914711248129606,
+ -0.03147399052977562,
+ -0.014048533514142036,
+ 0.007611270993947983,
+ -0.011073937639594078,
+ 0.019931768998503685,
+ -0.05091768875718117,
+ -0.020353885367512703,
+ 0.002636573277413845,
+ -0.015802951529622078,
+ 0.017676088958978653,
+ -0.011951146647334099,
+ -0.002163342200219631,
+ -0.020934293046593666,
+ -0.023005297407507896,
+ 0.008204870857298374,
+ 0.0032895333133637905,
+ -0.004788373131304979,
+ 0.0171352531760931,
+ -0.06753849238157272,
+ 0.038597192615270615,
+ 0.03205440193414688,
+ -0.013877049088478088,
+ 0.035352177917957306,
+ 0.04329322651028633,
+ 0.0041057332418859005,
+ -0.0027256133034825325,
+ -0.03572152927517891,
+ 0.002151800086721778,
+ 0.022213831543922424,
+ -0.014497031457722187,
+ -0.0785134956240654,
+ -0.007268302142620087,
+ 0.01931178756058216,
+ -0.010447359643876553,
+ 0.027173688635230064,
+ 0.02619754709303379,
+ -0.03743637353181839,
+ -0.04339875653386116,
+ 0.030022969469428062,
+ 0.053160179406404495,
+ 0.0006657388876192272,
+ 0.025247786194086075,
+ -0.009583341889083385,
+ -0.04358343034982681,
+ 0.03033955581486225,
+ -0.025643520057201385,
+ -0.004056266508996487,
+ 0.016620799899101257,
+ -0.03743637353181839,
+ 0.03862357512116432,
+ 0.005609520245343447,
+ -0.017148444429039955,
+ -0.026936249807476997,
+ 0.01702972501516342,
+ 0.02148832008242607,
+ -0.011535626836121082,
+ 0.013448338024318218,
+ 0.018137777224183083,
+ -0.026936249807476997,
+ -0.02429802715778351,
+ -0.007756373379379511,
+ -0.03144760802388191,
+ 0.016541654244065285,
+ 0.04218517243862152,
+ -0.006717573385685682,
+ 0.020261546596884727,
+ 0.010249493643641472,
+ 0.03965248167514801,
+ -0.021884053945541382,
+ 0.03875548392534256,
+ -0.1102776899933815,
+ -0.017214400693774223,
+ -0.03448156639933586,
+ 0.024970773607492447,
+ 0.03458709269762039,
+ 0.028783004730939865,
+ -0.0535295307636261,
+ -0.012795377522706985,
+ 0.022134684026241302,
+ 0.045694008469581604,
+ 0.009814186953008175,
+ 0.027147306129336357,
+ -0.017821190878748894,
+ -0.0069253332912921906,
+ -0.04627441614866257,
+ -0.045878686010837555,
+ 0.014167253859341145,
+ 0.025419270619750023,
+ -0.00280146230943501,
+ 0.015789760276675224,
+ -0.014140871353447437,
+ -0.015196160413324833,
+ 0.03846528008580208,
+ 0.017359502613544464,
+ -0.015130204148590565,
+ -0.04788373410701752,
+ 0.006800017785280943,
+ -0.047488000243902206,
+ 0.03432327136397362,
+ -0.02573585696518421,
+ -0.015552320517599583,
+ 0.010460550896823406,
+ 0.040523093193769455,
+ 0.009985671378672123,
+ 0.03208078071475029,
+ 0.02701539546251297,
+ 0.0025656712241470814,
+ -0.038808248937129974,
+ 0.04097159206867218,
+ -0.0015079089207574725,
+ 0.021936817094683647,
+ -0.048411376774311066,
+ 0.015605084598064423,
+ -0.059254471212625504,
+ 0.004729013424366713,
+ 0.003236769000068307,
+ 0.017992675304412842,
+ -0.006133866496384144,
+ 0.017794808372855186,
+ 0.03379562497138977,
+ 0.06891036778688431,
+ 0.011416906490921974,
+ 0.011153084225952625,
+ 0.0028064087964594364,
+ -0.01156200934201479,
+ 0.012729422189295292,
+ 0.03806954622268677,
+ 0.013890240341424942,
+ 0.003812231123447418,
+ -0.008996337652206421,
+ 0.023744000121951103,
+ 0.08774726837873459,
+ 0.021527893841266632,
+ -0.07629738748073578,
+ 0.041314560920000076,
+ -0.04268643632531166,
+ 0.027252836152911186,
+ 0.016251448541879654,
+ -0.025313742458820343,
+ -0.02184448018670082,
+ 0.009873546659946442,
+ 0.01202369760721922,
+ 0.02198958210647106,
+ 0.0695963054895401,
+ -0.0019852621480822563,
+ 0.016660373657941818,
+ -0.01613272912800312,
+ -0.009517386555671692,
+ 0.051234275102615356,
+ -0.04614250734448433,
+ -0.012854738160967827,
+ 0.006170142441987991,
+ -0.05075939744710922,
+ -0.002654711017385125,
+ 0.00282454676926136,
+ -0.0010313800303265452,
+ -0.0023809955455362797,
+ 0.015288498252630234,
+ 0.008521458134055138,
+ -0.01841479167342186,
+ 0.0011459777597337961,
+ -0.01762332394719124,
+ -0.00723532447591424,
+ 0.007855306379497051,
+ 0.048015642911195755,
+ 0.018335644155740738,
+ -0.022965723648667336,
+ 0.027859626337885857,
+ -0.04200049862265587,
+ 0.03350542113184929,
+ 0.022860195487737656,
+ -0.003317564493045211,
+ 0.020406648516654968,
+ -0.04044394567608833,
+ 0.027358364313840866,
+ -0.006865973584353924,
+ 0.0703350082039833,
+ 0.016765901818871498,
+ -0.040417563170194626,
+ -0.026316266506910324,
+ -0.020037297159433365,
+ 0.0007098466739989817,
+ -0.002150151180103421,
+ 0.0809934213757515,
+ 0.03305692598223686,
+ -0.008686346933245659,
+ 0.011126702651381493,
+ -0.06009870395064354,
+ -0.027002204209566116,
+ 0.006117377895861864,
+ 0.045166365802288055,
+ 0.0038913777098059654,
+ -0.013217492960393429,
+ -0.025999680161476135,
+ 0.03593258559703827,
+ -0.018797334283590317,
+ 0.03086720034480095,
+ 0.007842115126550198,
+ 0.04785735160112381,
+ 0.025102684274315834,
+ 0.025577563792467117,
+ -0.010948622599244118,
+ 0.009880142286419868,
+ -0.019324976950883865,
+ -0.012722826562821865,
+ 0.0002918533282354474,
+ -0.04521913081407547,
+ -0.002857524435967207,
+ -0.00525665795430541,
+ -0.043900016695261,
+ -0.030128497630357742,
+ 0.002610191237181425,
+ -0.037304461002349854,
+ -0.010335235856473446,
+ -0.027068160474300385,
+ -0.03295139595866203,
+ 0.017465030774474144,
+ 0.03864995390176773,
+ -0.016502080485224724,
+ -0.02305806241929531,
+ 0.02772771567106247,
+ 0.011786257848143578,
+ -0.024350790306925774,
+ -0.013092177920043468,
+ -0.05313379690051079,
+ 0.020512178540229797,
+ 0.029706383123993874,
+ 0.02965361811220646,
+ -0.05052195489406586,
+ 0.013369191437959671,
+ 0.02305806241929531,
+ -0.04181582108139992,
+ -0.02515544928610325,
+ -0.034455183893442154,
+ -0.05147171393036842,
+ 0.03664490580558777,
+ -0.018889671191573143,
+ 0.007835520431399345,
+ 0.00440583098679781,
+ 0.02437717281281948,
+ -0.06537514925003052,
+ 0.0492556095123291,
+ -0.01239964459091425,
+ 0.021567467600107193,
+ -0.006196524482220411,
+ -0.022530417889356613,
+ -0.029574470594525337,
+ 0.01598762720823288,
+ 0.008989742025732994,
+ 0.021461937576532364,
+ 0.04529827460646629,
+ 0.03382200747728348,
+ 0.006480133160948753,
+ -0.008264231495559216,
+ -0.028703857213258743,
+ -0.008745706640183926,
+ -0.034455183893442154,
+ -0.00017447305435780436,
+ 0.04236984997987747,
+ 0.0003821300051640719,
+ 0.05476949363946915,
+ 0.008890808559954166,
+ -0.032028019428253174,
+ -0.009167822077870369,
+ 0.03923036530613899,
+ 0.0328194834291935,
+ -0.03983715549111366,
+ -0.0023331777192652225,
+ 0.002092439914122224,
+ -0.02687029354274273,
+ -0.046089742332696915,
+ -0.0052071912214159966,
+ 0.008270827122032642,
+ 0.034244123846292496,
+ 0.02098705805838108,
+ 0.015037866309285164,
+ 0.029680000618100166,
+ -0.11966975778341293,
+ 0.014457457698881626,
+ 0.016924194991588593,
+ -0.03371648117899895,
+ -0.023031679913401604,
+ -0.0471186488866806,
+ 0.011291591450572014,
+ 0.011542222462594509,
+ 5.9224739743513055e-06,
+ 0.13233323395252228,
+ -0.026857102289795876,
+ 0.03477177023887634,
+ 0.03015488013625145,
+ -0.006331733427941799,
+ -0.015248924493789673,
+ 0.015974435955286026,
+ 0.011904978193342686,
+ -0.015420408919453621,
+ -0.04155199974775314,
+ 0.031131021678447723,
+ 0.02844003587961197,
+ 0.005279742181301117,
+ -0.005560053512454033,
+ -0.014154062606394291,
+ 0.031078258529305458,
+ 0.005480906460434198,
+ -0.012815164402127266,
+ -0.07202346622943878,
+ -0.002169937826693058,
+ -0.016818666830658913,
+ 0.028281742706894875,
+ -0.032318223267793655,
+ 0.02295253425836563,
+ -0.05482225865125656,
+ -0.021963199600577354,
+ -0.0406813882291317,
+ -0.02301848866045475,
+ 0.0035352178383618593,
+ 0.054980549961328506,
+ -0.036592140793800354,
+ -0.039019305258989334,
+ 0.015143395401537418,
+ -0.0012869577622041106,
+ 0.0003759466635528952,
+ 0.018823714926838875,
+ 0.012168800458312035,
+ -0.008000409230589867,
+ 0.01834883540868759,
+ -0.006585662253201008,
+ 0.010856284759938717,
+ -0.02270190231502056,
+ 0.004560826811939478,
+ -0.011773066595196724,
+ 0.09576746821403503,
+ 0.011252017691731453,
+ -0.00034791557118296623,
+ -0.008026790805161,
+ 0.057513244450092316,
+ -0.035958968102931976,
+ -0.020182400941848755,
+ -0.02027473784983158,
+ 0.0406813882291317,
+ -0.03682958334684372,
+ -0.0013116911286488175,
+ 0.011502648703753948,
+ 0.002968000015243888,
+ 0.0034857511054724455,
+ 0.032133545726537704,
+ 0.0002427988947601989,
+ -0.02198958210647106,
+ -0.02483886294066906,
+ 0.012261138297617435,
+ -0.014589369297027588,
+ 0.010486933402717113,
+ 0.06273692101240158,
+ -0.05946552753448486,
+ 0.004761991091072559,
+ -0.0036572355311363935,
+ -0.06205098703503609,
+ -0.03735722601413727,
+ -0.059729352593421936,
+ -0.031210169196128845,
+ 0.027543039992451668,
+ 0.0007910544518381357,
+ 0.03136846050620079,
+ -0.015802951529622078,
+ -0.016079964116215706,
+ -0.07439786940813065,
+ -0.002428813371807337,
+ -0.022002773359417915,
+ -0.0385444276034832,
+ 0.09149354696273804,
+ -0.011555413715541363,
+ 0.011641155928373337,
+ 0.01487957313656807,
+ 0.025419270619750023,
+ -0.020683662965893745,
+ 0.012360070832073689,
+ -0.03558961674571037,
+ -0.0349828265607357,
+ 0.032529279589653015,
+ 0.02012963593006134,
+ 0.009820782579481602,
+ -0.0009373933426104486,
+ 0.04553571715950966,
+ 0.011693920008838177,
+ 0.029970204457640648,
+ -0.006971502210944891,
+ 0.04846414178609848,
+ -0.049624960869550705,
+ -0.04025927186012268,
+ -0.05819918215274811,
+ -0.04347790405154228,
+ -0.03155313804745674,
+ -0.024469511583447456,
+ -0.01477404497563839,
+ -0.028888532891869545,
+ 0.028862150385975838,
+ 0.0032169821206480265,
+ -0.044876161962747574,
+ 0.034745387732982635,
+ 0.05988764390349388,
+ 0.0038880801293998957,
+ 0.03297777846455574,
+ 0.010269279591739178,
+ -0.006166844628751278,
+ 0.004329982213675976,
+ 0.06986012309789658,
+ 0.024403555318713188,
+ 0.019153492525219917,
+ 0.014140871353447437,
+ -0.022147875279188156,
+ 0.012966861948370934,
+ 0.02611839957535267,
+ 0.0016315755201503634,
+ -0.012353475205600262,
+ 0.005253360141068697,
+ -0.022675519809126854,
+ -0.020221972838044167,
+ 0.0008314521983265877,
+ -0.00888421293348074,
+ -0.022688711062073708,
+ 0.01118606235831976,
+ 0.041024357080459595,
+ 0.02841365337371826,
+ 0.0007918789051473141,
+ 0.026210738345980644,
+ -0.006123973522335291,
+ -0.045878686010837555,
+ -0.024416746571660042,
+ -0.02094748429954052,
+ -0.0017676089191809297,
+ -0.03429688885807991,
+ 0.0313948430120945,
+ 0.024535465985536575,
+ -0.017755236476659775,
+ -0.01873137801885605,
+ -0.034850914031267166,
+ 0.0201692096889019,
+ -0.02873023971915245,
+ 0.06358115375041962,
+ 0.008125724270939827,
+ -0.0026810932904481888,
+ 0.015394026413559914,
+ 0.03780572488903999,
+ -0.001051166676916182,
+ 0.059940408915281296,
+ -0.016317404806613922,
+ 0.023466987535357475,
+ -0.008864426985383034,
+ 0.007571697700768709,
+ 0.057935360819101334,
+ 0.0265932809561491,
+ -0.006931928917765617,
+ 0.015314879827201366,
+ 0.027701333165168762,
+ -0.024654187262058258,
+ -0.005678773391991854,
+ -0.030708907172083855,
+ 0.06331733614206314,
+ 0.04339875653386116,
+ -0.00041263445746153593,
+ 0.028862150385975838,
+ -0.006160249002277851,
+ -0.05814641714096069,
+ -0.026184355840086937,
+ -0.003973822109401226,
+ -0.011891786940395832,
+ -0.027068160474300385,
+ -0.034138597548007965,
+ -0.0328194834291935,
+ 0.02027473784983158,
+ 0.025142258033156395,
+ 0.0012976755388081074,
+ -0.011067342013120651,
+ -0.006133866496384144,
+ 0.004155199974775314,
+ -0.007855306379497051,
+ -0.008356569334864616,
+ 0.038808248937129974,
+ -0.04300302267074585,
+ 0.03440241888165474,
+ 0.022939343005418777,
+ 0.06801337003707886,
+ -0.0005746377864852548,
+ -0.04772543907165527,
+ -0.014800426550209522,
+ -0.004613591358065605,
+ 0.00999226700514555,
+ 0.019496463239192963,
+ 0.03339989483356476,
+ 0.030814435333013535,
+ -0.018427982926368713,
+ -0.06569173187017441,
+ -0.033030543476343155,
+ -0.006892355624586344,
+ -0.018467554822564125,
+ 0.032239075750112534,
+ 0.0012251244625076652,
+ -0.05323932319879532,
+ -0.015196160413324833,
+ 0.005487502086907625,
+ 0.0032136845402419567,
+ -0.011087128892540932,
+ -0.06954354047775269,
+ 0.0035352178383618593,
+ 0.08357887715101242,
+ 0.05289635434746742,
+ 0.01795310154557228,
+ 0.010282470844686031,
+ 0.026500942185521126,
+ 0.0649530291557312,
+ 0.002544235670939088,
+ 0.03229184076189995,
+ 0.010407786816358566,
+ -0.05688007175922394,
+ 0.036882348358631134,
+ -0.007505742367357016,
+ -0.023796765133738518,
+ 0.0012770644389092922,
+ 0.012017101980745792,
+ 0.06268416345119476,
+ 0.01873137801885605,
+ 0.009609724394977093,
+ 0.005098364315927029,
+ -0.002054515527561307,
+ -0.021105777472257614,
+ -0.031131021678447723,
+ 0.005039004608988762,
+ -0.013679182156920433,
+ 0.008026790805161,
+ 0.01644931547343731,
+ 0.022992106154561043,
+ 0.014734471216797829,
+ -0.004699333570897579,
+ 0.019404124468564987,
+ -0.012584320269525051,
+ 0.013032818213105202,
+ 0.008343378081917763,
+ -0.03883463144302368,
+ -0.007571697700768709,
+ -0.0349828265607357,
+ 0.015130204148590565,
+ 0.0057711112312972546,
+ -0.0025409378577023745,
+ -0.015143395401537418,
+ -0.0063779023475945,
+ 0.05403079092502594,
+ -0.027859626337885857,
+ 0.0535295307636261,
+ 0.03632831946015358,
+ 0.07576974481344223,
+ -0.03382200747728348,
+ -0.013586844317615032,
+ -0.013171324506402016,
+ -0.008072960190474987,
+ -0.0360381156206131,
+ 0.004273919854313135,
+ 0.026487750932574272,
+ -0.01774204522371292,
+ 0.0018962222384288907,
+ -0.012017101980745792,
+ -0.047514382749795914,
+ 0.0006212188745848835,
+ 0.07355363667011261,
+ -0.03490367904305458,
+ -0.045060835778713226,
+ 0.02687029354274273,
+ 0.02983829379081726,
+ 0.022649137303233147,
+ 0.013111964799463749,
+ -0.04859605431556702,
+ -0.050126221030950546,
+ 0.01004503108561039,
+ 0.03316245228052139,
+ 0.025208214297890663,
+ -0.013078986667096615,
+ 0.009174417704343796,
+ 0.0524742417037487,
+ 0.008481884375214577,
+ -0.04018012434244156,
+ -0.01638335920870304,
+ -0.00565568869933486,
+ -0.01816415973007679,
+ 0.004254133440554142,
+ 0.003304373240098357,
+ -0.02262275479733944,
+ 0.038412515074014664,
+ 0.038491662591695786,
+ -0.025498418137431145,
+ -0.006978097837418318,
+ 0.03669767081737518,
+ 0.01332961767911911,
+ -0.015802951529622078,
+ 0.03044508397579193,
+ -0.08700856566429138,
+ 0.0799381360411644,
+ 0.011891786940395832,
+ -0.02063089795410633,
+ 0.036776818335056305,
+ -0.03004935197532177,
+ 0.06811890006065369,
+ 0.024007821455597878,
+ 0.025788621976971626,
+ -0.0036638311576098204,
+ -0.015802951529622078,
+ 0.00966908410191536,
+ -0.030286790803074837,
+ -0.01370556466281414,
+ -0.029178738594055176,
+ -0.005929404404014349,
+ 0.012373262085020542,
+ -0.008376355282962322
+ ],
+ "result": "--- 结果 1 (相似度: 1.000) ---\n文件路径: C:\\Steam\\steamapps\\common\\RimWorld\\Data\\dll1.6\\Verse\\DamageDef.txt\n\npublic class DamageDef : Def\n{\n\tpublic Type workerClass = typeof(DamageWorker);\n\n\tprivate bool externalViolence;\n\n\tprivate bool externalViolenceForMechanoids;\n\n\tpublic bool hasForcefulImpact = true;\n\n\tpublic bool harmsHealth = true;\n\n\tpublic bool makesBlood = true;\n\n\tpublic bool canInterruptJobs = true;\n\n\tpublic bool isRanged;\n\n\tpublic bool makesAnimalsFlee;\n\n\tpublic bool execution;\n\n\tpublic RulePackDef combatLogRules;\n\n\tpublic float buildingDamageFactor = 1f;\n\n\tpublic float buildingDamageFactorPassable = 1f;\n\n\tpublic float buildingDamageFactorImpassable = 1f;\n\n\tpublic float plantDamageFactor = 1f;\n\n\tpublic float corpseDamageFactor = 1f;\n\n\tpublic bool causeStun;\n\n\tpublic int stunAdaptationTicks;\n\n\tpublic int? constantStunDurationTicks;\n\n\tpublic StatDef stunResistStat;\n\n\tpublic bool displayAdaptedTextMote = true;\n\n\t[MustTranslate]\n\tpublic string adaptedText;\n\n\tpublic bool canUseDeflectMetalEffect = true;\n\n\tpublic ImpactSoundTypeDef impactSoundType;\n\n\t[MustTranslate]\n\tpublic string deathMessage = \"{0} has been killed.\";\n\n\tpublic EffecterDef damageEffecter;\n\n\tpublic int defaultDamage = -1;\n\n\tpublic float defaultArmorPenetration = -1f;\n\n\tpublic float defaultStoppingPower;\n\n\tpublic List additionalHediffs;\n\n\tpublic List additionalHediffsThisPart;\n\n\tpublic bool applyAdditionalHediffsIfHuntingForFood = true;\n\n\tpublic DamageArmorCategoryDef armorCategory;\n\n\tpublic int minDamageToFragment = 99999;\n\n\tpublic FloatRange overkillPctToDestroyPart = new FloatRange(0f, 0.7f);\n\n\tpublic bool consideredHelpful;\n\n\tpublic SimpleCurve igniteChanceByTargetFlammability;\n\n\tpublic float igniteCellChance;\n\n\tpublic bool ignoreShields;\n\n\tpublic bool harmAllLayersUntilOutside;\n\n\tpublic HediffDef hediff;\n\n\tpublic HediffDef hediffSkin;\n\n\tpublic HediffDef hediffSolid;\n\n\tpublic bool isExplosive;\n\n\tpublic float explosionSnowMeltAmount = 1f;\n\n\tpublic bool explosionAffectOutsidePartsOnly = true;\n\n\tpublic ThingDef explosionCellMote;\n\n\tpublic FleckDef explosionCellFleck;\n\n\tpublic Color explosionColorCenter = Color.white;\n\n\tpublic Color explosionColorEdge = Color.white;\n\n\tpublic EffecterDef explosionInteriorEffecter;\n\n\tpublic ThingDef explosionInteriorMote;\n\n\tpublic FleckDef explosionInteriorFleck;\n\n\tpublic ThingDef explosionCenterMote;\n\n\tpublic FleckDef explosionCenterFleck;\n\n\tpublic EffecterDef explosionCenterEffecter;\n\n\tpublic EffecterDef explosionCellEffecter;\n\n\tpublic float explosionCellEffecterChance;\n\n\tpublic float explosionCellEffecterMaxRadius;\n\n\tpublic float explosionHeatEnergyPerCell;\n\n\tpublic float expolosionPropagationSpeed = 1f;\n\n\tpublic SoundDef soundExplosion;\n\n\tpublic float explosionInteriorCellCountMultiplier = 1f;\n\n\tpublic float explosionInteriorCellDistanceMultiplier = 0.7f;\n\n\tpublic float stabChanceOfForcedInternal;\n\n\tpublic SimpleCurve cutExtraTargetsCurve;\n\n\tpublic float cutCleaveBonus;\n\n\tpublic float bluntInnerHitChance;\n\n\tpublic FloatRange bluntInnerHitDamageFractionToConvert;\n\n\tpublic FloatRange bluntInnerHitDamageFractionToAdd;\n\n\tpublic float bluntStunDuration = 1f;\n\n\tpublic SimpleCurve bluntStunChancePerDamagePctOfCorePartToHeadCurve;\n\n\tpublic SimpleCurve bluntStunChancePerDamagePctOfCorePartToBodyCurve;\n\n\tpublic float scratchSplitPercentage = 0.5f;\n\n\tpublic bool scaleDamageToBuildingsBasedOnFlammability;\n\n\t[Unsaved(false)]\n\tprivate DamageWorker workerInt;\n\n\tpublic DamageWorker Worker\n\t{\n\t\tget\n\t\t{\n\t\t\tif (workerInt == null)\n\t\t\t{\n\t\t\t\tworkerInt = (DamageWorker)Activator.CreateInstance(workerClass);\n\t\t\t\tworkerInt.def = this;\n\t\t\t}\n\t\t\treturn workerInt;\n\t\t}\n\t}\n\n\tpublic bool ExternalViolenceFor(Thing thing)\n\t{\n\t\tif (externalViolence)\n\t\t{\n\t\t\treturn true;\n\t\t}\n\t\tif (externalViolenceForMechanoids)\n\t\t{\n\t\t\tif (thing is Pawn pawn && pawn.RaceProps.IsMechanoid)\n\t\t\t{\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tif (thing is Building_Turret)\n\t\t\t{\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n}\n\n",
+ "timestamp": "2025-08-26 17:55:14,832"
+ },
+ "HediffDef-damage-factor-reduction": {
+ "keywords": [
+ "HediffDef",
+ "damage",
+ "factor",
+ "reduction"
+ ],
+ "question": "RimWorld HediffDef damage factor reduction",
+ "embedding": [
+ -0.004668164532631636,
+ 0.028456196188926697,
+ 0.027616821229457855,
+ 0.00876527838408947,
+ -0.03473087027668953,
+ -0.0012711030431091785,
+ 0.016264615580439568,
+ -0.05460067093372345,
+ 0.0504450723528862,
+ 0.07408518344163895,
+ 0.025910548865795135,
+ -0.017681920900940895,
+ -0.010258265770971775,
+ -0.01773696206510067,
+ 0.059994686394929886,
+ -0.002499205293133855,
+ -0.04180363938212395,
+ -0.11987929046154022,
+ 0.02724529430270195,
+ -0.013292401097714901,
+ -0.07171841710805893,
+ -0.007767660543322563,
+ -0.019842280074954033,
+ -0.005187613889575005,
+ -0.004843608010560274,
+ 0.02381899207830429,
+ -0.010684833861887455,
+ 0.01827361062169075,
+ 0.039161670953035355,
+ 0.011200843378901482,
+ -0.018122248351573944,
+ -0.03602433204650879,
+ 0.012143420055508614,
+ -0.0037703083362430334,
+ -0.07557129114866257,
+ 0.05905899032950401,
+ -0.02639215812087059,
+ 0.023158499971032143,
+ -0.014929870143532753,
+ 0.02263561077415943,
+ -0.010155064053833485,
+ -0.004585603252053261,
+ 0.017035188153386116,
+ 0.014517063274979591,
+ -0.018466254696249962,
+ 0.012322302907705307,
+ 0.035941772162914276,
+ -0.07777293026447296,
+ -0.02468588761985302,
+ 0.027713142335414886,
+ 0.02330986224114895,
+ -0.02553902193903923,
+ -0.05834345892071724,
+ 0.0065223583951592445,
+ 0.015026192180812359,
+ -0.021397188305854797,
+ -0.0042037563398480415,
+ 0.006395075935870409,
+ 0.003849429776892066,
+ 0.02724529430270195,
+ 0.01345752365887165,
+ 0.007987825199961662,
+ -0.02223656326532364,
+ -0.037978287786245346,
+ 0.007643818389624357,
+ -0.04871128126978874,
+ -0.08900129050016403,
+ -0.00011255453864578158,
+ 0.05063771829009056,
+ -0.012542467564344406,
+ -0.015053712762892246,
+ 0.04163851588964462,
+ 0.07458055019378662,
+ -0.002767530269920826,
+ -0.007884622551500797,
+ 0.039822161197662354,
+ -0.023667629808187485,
+ 0.016374696046113968,
+ -0.02884148247539997,
+ 0.007292932365089655,
+ -0.015315157361328602,
+ 0.021438468247652054,
+ -0.0320613794028759,
+ -0.005153213161975145,
+ 0.053472328931093216,
+ 0.005249535199254751,
+ -0.013072236441075802,
+ 0.021878795698285103,
+ -0.023213541135191917,
+ 0.05746280029416084,
+ 0.007361733354628086,
+ 0.005679543130099773,
+ 0.01743423566222191,
+ -0.013643287122249603,
+ 0.010333946906030178,
+ -0.019484512507915497,
+ -0.01447578240185976,
+ 0.0713331326842308,
+ -0.009983060881495476,
+ 0.00853823497891426,
+ -0.019745957106351852,
+ 0.07347973436117172,
+ -0.054875873029232025,
+ 0.05083036050200462,
+ -0.021644871681928635,
+ 0.028263552114367485,
+ -0.01523259561508894,
+ 0.003233658615499735,
+ -0.014090495184063911,
+ -0.00912992563098669,
+ 0.006563638802617788,
+ 0.029474454000592232,
+ -0.013450643979012966,
+ 0.05523364245891571,
+ -0.01111828163266182,
+ -0.0005835205665789545,
+ 0.01925058849155903,
+ -0.0011722012422978878,
+ -0.011214603669941425,
+ 0.026227034628391266,
+ 0.04604179412126541,
+ 0.013877211138606071,
+ -0.07634185999631882,
+ -0.04188619926571846,
+ 0.05399521812796593,
+ -0.0003801268758252263,
+ 0.030189987272024155,
+ 0.02950197458267212,
+ -0.013450643979012966,
+ 0.024396922439336777,
+ -0.015452760271728039,
+ -0.02509869448840618,
+ 0.021218305453658104,
+ 0.029254289343953133,
+ -0.006302194204181433,
+ -0.010216984897851944,
+ 0.016746222972869873,
+ 0.017544317990541458,
+ -0.08245141059160233,
+ 0.01100819930434227,
+ -0.02991478145122528,
+ -0.0015015872195363045,
+ 0.009625294245779514,
+ 0.014971151016652584,
+ 0.12769511342048645,
+ -0.03153849020600319,
+ -0.0354464016854763,
+ 0.02372266910970211,
+ -0.06511349976062775,
+ -0.002961893565952778,
+ 0.04777558520436287,
+ 0.0036533460952341557,
+ -0.00807038601487875,
+ 0.07276419550180435,
+ -0.024851011112332344,
+ 0.011586129665374756,
+ 0.02274569310247898,
+ 0.006470757070928812,
+ -0.031566012650728226,
+ -0.0027021688874810934,
+ 0.008944162167608738,
+ -0.014186817221343517,
+ -0.02223656326532364,
+ -0.002375363139435649,
+ 0.015562841668725014,
+ -0.03134584799408913,
+ -0.060324933379888535,
+ 0.01604445092380047,
+ -3.778693644562736e-05,
+ -0.01912674680352211,
+ -0.045243699103593826,
+ -0.013085996732115746,
+ -0.04048265516757965,
+ -0.04078537970781326,
+ -0.013994173146784306,
+ 0.007533736526966095,
+ -0.013904731720685959,
+ 0.04158347472548485,
+ 0.03792324662208557,
+ 0.05531620234251022,
+ 0.0057965051382780075,
+ 0.009797297418117523,
+ -0.01857633702456951,
+ -0.004871128126978874,
+ 0.017282873392105103,
+ -0.0245620459318161,
+ 0.016003169119358063,
+ 0.04496849328279495,
+ 0.015604122541844845,
+ 0.024080436676740646,
+ 0.01202645804733038,
+ 0.06858108192682266,
+ -0.006931725423783064,
+ -0.033822692930698395,
+ -0.05030747130513191,
+ -0.005335536785423756,
+ -0.017145270481705666,
+ 0.013430003076791763,
+ -0.0500047467648983,
+ -0.021287105977535248,
+ -0.010354587808251381,
+ -0.04895896837115288,
+ -0.014695946127176285,
+ -0.0020124365109950304,
+ 0.042354047298431396,
+ 0.009845457971096039,
+ -0.06137071177363396,
+ -0.007863982580602169,
+ 0.026447199285030365,
+ -0.0005013890913687646,
+ 0.015535321086645126,
+ -0.005077532026916742,
+ 0.02659856155514717,
+ -0.058178335428237915,
+ 0.05707751587033272,
+ 0.01753055676817894,
+ 0.003403941635042429,
+ 0.007021167315542698,
+ -0.005163533613085747,
+ 0.02425931952893734,
+ -0.03429054096341133,
+ 0.05949931964278221,
+ -0.04062025621533394,
+ -0.009061124175786972,
+ 0.01331304106861353,
+ 0.002265281043946743,
+ 0.030052384361624718,
+ -0.010953158140182495,
+ 0.045684028416872025,
+ 0.011524208821356297,
+ 0.01753055676817894,
+ 0.01436570007354021,
+ -0.07072768360376358,
+ 0.0006652220617979765,
+ -0.015397719107568264,
+ 0.006082030013203621,
+ -0.019057946279644966,
+ -0.09830322116613388,
+ 0.008324950933456421,
+ 0.003441782435402274,
+ 0.014833549037575722,
+ 0.022140242159366608,
+ -0.04571154713630676,
+ 0.01432441920042038,
+ 0.020433969795703888,
+ -0.0004704285238403827,
+ -0.024768449366092682,
+ 0.023571306839585304,
+ 0.0025748866610229015,
+ -0.03643713891506195,
+ -0.005091292317956686,
+ -0.028593799099326134,
+ 0.010010581463575363,
+ -0.03918918967247009,
+ 0.04703253135085106,
+ 0.01447578240185976,
+ 0.03013494610786438,
+ -0.04339982569217682,
+ -0.016539819538593292,
+ 0.004444560501724482,
+ -0.010382108390331268,
+ 0.011214603669941425,
+ -0.03335484489798546,
+ 0.058068253099918365,
+ -0.016182053834199905,
+ -0.01718655228614807,
+ 0.0047988868318498135,
+ -0.024644605815410614,
+ -0.011083880439400673,
+ -0.018865302205085754,
+ -0.019897321239113808,
+ 0.020764216780662537,
+ 0.03032759018242359,
+ -0.031455930322408676,
+ -0.0064810775220394135,
+ -0.018837781623005867,
+ 0.027713142335414886,
+ 0.010444029234349728,
+ 0.012012697756290436,
+ -0.035969290882349014,
+ -0.0023616028483957052,
+ -0.02317225933074951,
+ 0.0028672919142991304,
+ -0.04229900613427162,
+ -0.057242635637521744,
+ 0.05248159170150757,
+ 0.01404921431094408,
+ -0.010560991242527962,
+ -0.014503302983939648,
+ 0.015645403414964676,
+ -0.025470221415162086,
+ -0.02256680838763714,
+ -0.004620003513991833,
+ 0.018438734114170074,
+ 0.035198718309402466,
+ -0.032006338238716125,
+ 0.02809842862188816,
+ 0.004227836616337299,
+ -0.043867673724889755,
+ 0.024328120052814484,
+ -0.027162732556462288,
+ -0.03046519123017788,
+ -0.03302459791302681,
+ 0.037345316261053085,
+ 0.021135743707418442,
+ -0.018342413008213043,
+ -0.028263552114367485,
+ -0.0927991196513176,
+ -0.009535852819681168,
+ -0.11536592990159988,
+ 0.01944323256611824,
+ -0.0186038576066494,
+ -0.020447731018066406,
+ 0.004368879366666079,
+ -0.007595657836645842,
+ 0.02116326428949833,
+ -0.007368613500148058,
+ -0.006591159384697676,
+ 0.003242258680984378,
+ 0.051463332027196884,
+ -0.036382097750902176,
+ -0.0043860794976353645,
+ -0.08608411997556686,
+ -0.011950776912271976,
+ -0.025993110612034798,
+ 0.021823756396770477,
+ 0.00769197940826416,
+ 0.0043860794976353645,
+ 0.017489276826381683,
+ -0.027589300647377968,
+ -0.008861600421369076,
+ 0.022098960354924202,
+ 0.023103458806872368,
+ 0.04758294299244881,
+ 0.0161407720297575,
+ 0.013980413787066936,
+ 0.014654665254056454,
+ -0.014861069619655609,
+ 0.000552560028154403,
+ -0.006759722717106342,
+ 0.0010879196925088763,
+ -0.03065783530473709,
+ -0.013712088577449322,
+ -0.01912674680352211,
+ 0.04062025621533394,
+ 0.015810526907444,
+ 0.058288417756557465,
+ 0.027713142335414886,
+ 0.02831859327852726,
+ -0.0027933306992053986,
+ 0.007760780863463879,
+ 0.0181635282933712,
+ -0.006670280825346708,
+ 0.009584013372659683,
+ 0.0053424169309437275,
+ 0.01689758710563183,
+ -0.025305097922682762,
+ 0.024658367037773132,
+ -0.02745169773697853,
+ 0.01775072142481804,
+ -0.0037083872593939304,
+ -0.007313572335988283,
+ -0.01879649981856346,
+ -0.03481343016028404,
+ 0.02020004577934742,
+ 0.0007318732677958906,
+ 0.048463597893714905,
+ 0.01836993359029293,
+ -0.04185867682099342,
+ 0.06373747438192368,
+ 0.016374696046113968,
+ -0.047803107649087906,
+ 0.009597773663699627,
+ 0.006477637216448784,
+ -0.024630846455693245,
+ 0.047060053795576096,
+ 0.017117749899625778,
+ -0.011077000759541988,
+ 0.004031753167510033,
+ -0.023915313184261322,
+ -0.0037083872593939304,
+ 0.012301662936806679,
+ -0.02136966772377491,
+ -0.057242635637521744,
+ -0.007561257109045982,
+ -0.00093483692035079,
+ 0.05440802499651909,
+ 0.004499601665884256,
+ 0.04073033854365349,
+ -0.04414287954568863,
+ 0.05366497114300728,
+ -0.017998406663537025,
+ 0.008806559257209301,
+ -0.017269112169742584,
+ 0.011998937465250492,
+ 0.015989409759640694,
+ 0.015452760271728039,
+ -0.009756016544997692,
+ 0.08437784761190414,
+ -0.02081925794482231,
+ -0.012060858309268951,
+ -0.01997988298535347,
+ -0.07116801291704178,
+ -0.02669488452374935,
+ 0.02745169773697853,
+ -0.02103942073881626,
+ 0.020048683509230614,
+ -0.021121982485055923,
+ -0.032116420567035675,
+ 0.0046750446781516075,
+ 0.01570044457912445,
+ -0.026419678702950478,
+ 0.09637678414583206,
+ 0.03962951898574829,
+ -0.023970354348421097,
+ -0.012397984974086285,
+ 0.0209568589925766,
+ -0.004936489276587963,
+ 0.030850479379296303,
+ -0.07182849943637848,
+ -0.02661232277750969,
+ -0.0037771884817630053,
+ -0.033822692930698395,
+ -0.012150299735367298,
+ -0.030850479379296303,
+ 0.04714261367917061,
+ -0.02233288437128067,
+ 0.00034744630102068186,
+ -0.030410151928663254,
+ 0.030905520543456078,
+ 0.005744904279708862,
+ -0.025456462055444717,
+ -0.05768296495079994,
+ 0.03555648401379585,
+ 0.0030874558724462986,
+ 0.009467051364481449,
+ 0.013423123396933079,
+ 0.03536384180188179,
+ -0.03142840787768364,
+ -0.026887526735663414,
+ -0.0022429206874221563,
+ 0.002373642986640334,
+ 0.04031753167510033,
+ -0.006931725423783064,
+ -0.11090760678052902,
+ -0.025883028283715248,
+ 0.004953689873218536,
+ 0.013980413787066936,
+ 0.02980470098555088,
+ 0.014351939782500267,
+ -0.05099548399448395,
+ -0.01882402040064335,
+ 0.01903042569756508,
+ 0.063242107629776,
+ -0.0042381566017866135,
+ 0.06335218995809555,
+ -0.0012048818171024323,
+ -0.03629953786730766,
+ 0.01677374355494976,
+ -0.010973799042403698,
+ -0.0030840157996863127,
+ -0.018645137548446655,
+ -0.01318919938057661,
+ 0.012088378891348839,
+ -0.0007611137698404491,
+ 0.006849164143204689,
+ -0.018934102728962898,
+ -0.011379726231098175,
+ 0.030520232394337654,
+ -0.022140242159366608,
+ -0.0006355515215545893,
+ 0.04433552175760269,
+ -0.019911080598831177,
+ -0.0008522754651494324,
+ -0.0010397587902843952,
+ -0.030602794140577316,
+ 0.014984911307692528,
+ 0.037675563246011734,
+ 0.00912992563098669,
+ -0.0027486097533255816,
+ 0.028593799099326134,
+ 0.03580416738986969,
+ -0.015865568071603775,
+ -0.004468640778213739,
+ -0.09472555667161942,
+ -0.006611799821257591,
+ -0.007547496818006039,
+ -0.0016684302827343345,
+ 0.047280218452215195,
+ 0.015851806849241257,
+ -0.011730612255632877,
+ -0.007052127737551928,
+ 0.03539136052131653,
+ 0.0755162462592125,
+ 0.001724331290461123,
+ 0.03709763288497925,
+ -0.04282189533114433,
+ -0.06814075261354446,
+ -0.011469167657196522,
+ -0.0367673859000206,
+ -0.002654008101671934,
+ 0.020213807001709938,
+ -0.02402539551258087,
+ -0.021080702543258667,
+ 0.010994439013302326,
+ -0.0018541936296969652,
+ 0.019071705639362335,
+ 0.004076473880559206,
+ -0.05223390832543373,
+ -0.012418624944984913,
+ 0.0028982525691390038,
+ -0.03203386068344116,
+ 0.024754688143730164,
+ -0.025924310088157654,
+ -0.04029000923037529,
+ 0.02778194285929203,
+ 0.022525528445839882,
+ -0.012157180346548557,
+ 0.018466254696249962,
+ 0.0002936953096650541,
+ -0.008214868605136871,
+ -0.02917172946035862,
+ 0.058948908001184464,
+ -0.017461756244301796,
+ 0.0012934633996337652,
+ -0.03718019276857376,
+ -0.0007985244737938046,
+ -0.023846512660384178,
+ -0.021121982485055923,
+ 0.003283539554104209,
+ -0.006295314058661461,
+ -0.012274142354726791,
+ 0.03076791763305664,
+ 0.024713408201932907,
+ 0.07160833477973938,
+ 0.0008178747957572341,
+ 0.021190784871578217,
+ 0.002249800832942128,
+ 0.05856361985206604,
+ 0.0032663391903042793,
+ 0.01645725779235363,
+ 0.03247418999671936,
+ -0.011716851964592934,
+ 0.01751679740846157,
+ 0.0504450723528862,
+ 0.04084042087197304,
+ 0.03850117698311806,
+ -0.04122570529580116,
+ 0.008648316375911236,
+ -0.02073669619858265,
+ -0.019181787967681885,
+ 0.038308534771203995,
+ -0.04805079102516174,
+ -0.037978287786245346,
+ 0.03569408506155014,
+ -0.01623709499835968,
+ 0.024740928784012794,
+ 0.03987720236182213,
+ 0.007059007883071899,
+ 0.01223286148160696,
+ -0.02256680838763714,
+ -0.007781420834362507,
+ -0.002672928385436535,
+ -0.01966339722275734,
+ 0.007021167315542698,
+ 0.01228102296590805,
+ -0.05237150937318802,
+ 0.012907113879919052,
+ -0.04062025621533394,
+ -0.02318602055311203,
+ -0.04224396497011185,
+ 0.007416774518787861,
+ -0.018975384533405304,
+ -0.004073034040629864,
+ 0.00817358773201704,
+ -0.04185867682099342,
+ 0.02983221970498562,
+ -0.042794376611709595,
+ 0.08305686712265015,
+ -0.029144208878278732,
+ -0.013196079060435295,
+ 0.040978021919727325,
+ 0.023323623463511467,
+ 0.015108753927052021,
+ 0.014874829910695553,
+ 0.008290550671517849,
+ 0.014695946127176285,
+ -0.006732202135026455,
+ 0.003059935523197055,
+ 0.011661811731755733,
+ 0.04163851588964462,
+ 0.03142840787768364,
+ -0.031070642173290253,
+ -0.014572104439139366,
+ -0.01506747305393219,
+ 0.014861069619655609,
+ 0.003560464596375823,
+ 0.035639047622680664,
+ -0.0044342405162751675,
+ 0.039904724806547165,
+ 0.009246887639164925,
+ -0.07848846167325974,
+ -0.0040558334439992905,
+ -0.020874299108982086,
+ 0.04466576874256134,
+ -0.011937016621232033,
+ -0.0252225361764431,
+ -0.020667893812060356,
+ 0.030795438215136528,
+ 0.007038367446511984,
+ 0.020406449213624,
+ 0.024603325873613358,
+ 0.03940935432910919,
+ 0.015122514218091965,
+ -0.0036980670411139727,
+ 0.015370198525488377,
+ 0.021108223125338554,
+ 0.005548820365220308,
+ 0.011758132837712765,
+ -0.033189721405506134,
+ -0.03737283870577812,
+ -0.0002807950950227678,
+ 0.025360139086842537,
+ -0.04150091111660004,
+ -0.010168824344873428,
+ -0.01073299441486597,
+ -0.039574477821588516,
+ 0.011028840206563473,
+ -0.01859009638428688,
+ -0.012322302907705307,
+ -0.008407512679696083,
+ 0.015205075964331627,
+ -0.02339242398738861,
+ 0.021287105977535248,
+ -0.008868481032550335,
+ 0.010155064053833485,
+ -0.03261179104447365,
+ -0.026447199285030365,
+ -0.05501347780227661,
+ 0.0421338826417923,
+ 0.03181369602680206,
+ 0.026309596374630928,
+ -0.04527122154831886,
+ 0.012625028379261494,
+ 0.0363270565867424,
+ -0.05779304727911949,
+ -0.04562898725271225,
+ -0.019484512507915497,
+ -0.039574477821588516,
+ -0.0007353133405558765,
+ -0.008620795793831348,
+ 0.018191048875451088,
+ 0.004847047850489616,
+ 0.014118015766143799,
+ -0.013725848868489265,
+ 0.009068004786968231,
+ -0.024204278364777565,
+ -0.004361999221146107,
+ -0.00186967384070158,
+ -0.02328234165906906,
+ -0.03473087027668953,
+ 0.011661811731755733,
+ -0.0005512699717655778,
+ 0.023433703929185867,
+ 0.0361068956553936,
+ 0.0013639847747981548,
+ 0.009336329065263271,
+ -0.0038631900679320097,
+ -0.008476313203573227,
+ 0.015108753927052021,
+ -0.060545098036527634,
+ -0.02018628641963005,
+ 0.007045247592031956,
+ -0.017668159678578377,
+ 0.0363270565867424,
+ -0.005617621820420027,
+ -0.013154798187315464,
+ 0.02436940185725689,
+ 0.04882136359810829,
+ 0.023763950914144516,
+ -0.03214394301176071,
+ 0.012769510969519615,
+ -0.006862924434244633,
+ -0.011634291149675846,
+ -0.029006605967879295,
+ 0.007034927606582642,
+ 8.562530274502933e-05,
+ 0.011352205649018288,
+ 0.005462818779051304,
+ 0.03874886408448219,
+ 0.01944323256611824,
+ -0.088836170732975,
+ 0.01527387648820877,
+ 0.011077000759541988,
+ -0.027011370286345482,
+ 0.0011876815697178245,
+ -0.029199250042438507,
+ 0.01871393993496895,
+ 0.04207884147763252,
+ 0.018012166023254395,
+ 0.09747760742902756,
+ -0.04067529737949371,
+ -0.007169089745730162,
+ 0.038308534771203995,
+ -0.01675998419523239,
+ -0.02288329415023327,
+ 0.01570044457912445,
+ -0.005751784425228834,
+ -0.018672658130526543,
+ -0.04163851588964462,
+ 0.0025697266682982445,
+ 0.015301397070288658,
+ -0.022608090192079544,
+ 0.014695946127176285,
+ -0.019305629655718803,
+ 0.04073033854365349,
+ 0.023695148527622223,
+ -0.006020109169185162,
+ -0.04747286066412926,
+ 0.024286840111017227,
+ 0.005652022548019886,
+ 0.023130979388952255,
+ -0.024630846455693245,
+ 0.018342413008213043,
+ -0.03134584799408913,
+ 0.026901287958025932,
+ -0.04917913302779198,
+ -0.0013897852040827274,
+ 0.022415446117520332,
+ 0.03539136052131653,
+ -0.010471549816429615,
+ -0.005387137643992901,
+ 0.005851545836776495,
+ 0.024823490530252457,
+ 0.03310716152191162,
+ 0.028029628098011017,
+ 0.0029859740752726793,
+ 0.0026557280216366053,
+ 0.014076734893023968,
+ -0.04433552175760269,
+ 0.022030159831047058,
+ -0.025827988982200623,
+ 0.035749126225709915,
+ 0.023447465151548386,
+ 0.11668691784143448,
+ 0.013595126569271088,
+ 0.009542732499539852,
+ -0.01400793343782425,
+ 0.07392005622386932,
+ 0.016636140644550323,
+ -0.003452102653682232,
+ -0.014200577512383461,
+ 0.044390562921762466,
+ -0.04361999034881592,
+ -0.020227566361427307,
+ 0.021314626559615135,
+ -0.018452495336532593,
+ 0.037345316261053085,
+ -0.00215003895573318,
+ 0.005338976625353098,
+ -0.039381831884384155,
+ -0.06318706274032593,
+ -0.0038287893403321505,
+ -0.0115998899564147,
+ 0.0025594064500182867,
+ 0.04447312653064728,
+ -0.013753369450569153,
+ -0.002998014446347952,
+ -0.02200263924896717,
+ -0.04788566753268242,
+ -0.02051653154194355,
+ -0.020791737362742424,
+ -0.009859218262135983,
+ 0.02798834629356861,
+ 0.002784730400890112,
+ 0.04582162946462631,
+ -0.016113251447677612,
+ -0.02330986224114895,
+ -0.025470221415162086,
+ -0.007747020572423935,
+ -0.0245620459318161,
+ -0.009460171684622765,
+ 0.0932394489645958,
+ 0.013485044240951538,
+ 0.007327332627028227,
+ 0.00939824990928173,
+ 0.033712610602378845,
+ 0.00017049809684976935,
+ 0.011730612255632877,
+ -0.010430268943309784,
+ -0.008758398704230785,
+ 0.028786441311240196,
+ 0.022842014208436012,
+ 0.035336319357156754,
+ 0.024754688143730164,
+ 0.01282455213367939,
+ -0.00475760642439127,
+ 0.05473827198147774,
+ 0.012686950154602528,
+ 0.029199250042438507,
+ -0.036932509392499924,
+ -0.052619192749261856,
+ -0.041308268904685974,
+ -0.03577664867043495,
+ -0.02606191299855709,
+ -0.029942302033305168,
+ -0.004582162946462631,
+ -0.047390297055244446,
+ -0.0101481843739748,
+ -0.03464830666780472,
+ -0.011001319624483585,
+ 0.02149350941181183,
+ 0.04020744934678078,
+ 0.015865568071603775,
+ 0.019952362403273582,
+ 0.007272291928529739,
+ -0.037455398589372635,
+ 0.0013450643746182323,
+ 0.05702247470617294,
+ -0.03313468024134636,
+ -0.00288449227809906,
+ 0.00040528233512304723,
+ -0.011255883611738682,
+ 0.006484517361968756,
+ -0.0022240004036575556,
+ -0.019787238910794258,
+ -0.0175030380487442,
+ -0.0013295840471982956,
+ -0.0271352119743824,
+ -0.03547392413020134,
+ -0.040757857263088226,
+ -0.004110874608159065,
+ -0.022842014208436012,
+ 0.007946544326841831,
+ 0.00800846517086029,
+ 0.006635880097746849,
+ 0.01988356001675129,
+ -0.013932252302765846,
+ -0.010003700852394104,
+ -0.06340722739696503,
+ -0.045353781431913376,
+ -0.003615505527704954,
+ 0.01282455213367939,
+ -0.008937281556427479,
+ 0.01523259561508894,
+ 0.003794388845562935,
+ -0.015975650399923325,
+ 0.023158499971032143,
+ -0.04381263256072998,
+ 0.013051596470177174,
+ -0.09461547434329987,
+ 0.058508578687906265,
+ 0.00034852130920626223,
+ 0.0012143419589847326,
+ 0.04882136359810829,
+ 0.051463332027196884,
+ 0.008779038675129414,
+ 0.08046993613243103,
+ -0.023530026897788048,
+ 0.006082030013203621,
+ -0.013326801359653473,
+ -0.006801003124564886,
+ 0.025305097922682762,
+ -0.012838312424719334,
+ -0.0024785648565739393,
+ 0.055839091539382935,
+ 0.010175704024732113,
+ 0.018617616966366768,
+ -0.01655358076095581,
+ -0.013829050585627556,
+ 0.06847099959850311,
+ 0.031455930322408676,
+ 0.027699381113052368,
+ 0.02531885914504528,
+ 0.015053712762892246,
+ -0.056472063064575195,
+ -0.008056625723838806,
+ -0.002664328319951892,
+ -0.004922728985548019,
+ -0.0034263019915670156,
+ -0.03024502843618393,
+ 0.0027623700443655252,
+ -0.002896532416343689,
+ 0.011262764222919941,
+ 0.019704677164554596,
+ -0.01922306790947914,
+ -0.023254821076989174,
+ -0.003438342362642288,
+ -0.04884888604283333,
+ -0.009762897156178951,
+ 0.04243661090731621,
+ -0.024520764127373695,
+ 0.017709441483020782,
+ -0.0009700976079329848,
+ 0.05627942085266113,
+ 0.03828101232647896,
+ -0.02767186239361763,
+ -0.009136805310845375,
+ 0.023433703929185867,
+ 0.01234294380992651,
+ 0.033162202686071396,
+ 0.03833605349063873,
+ 0.0365472212433815,
+ -0.007884622551500797,
+ -0.07661706954240799,
+ -0.014517063274979591,
+ 0.03175865486264229,
+ -0.029336851090192795,
+ 0.03109816275537014,
+ -0.002504365285858512,
+ -0.05138077214360237,
+ -0.03098808228969574,
+ -0.005036251153796911,
+ 0.017929604277014732,
+ -0.011785653419792652,
+ -0.04879384487867355,
+ 0.026034392416477203,
+ 0.08245141059160233,
+ 0.030905520543456078,
+ 0.0017527117161080241,
+ -0.00016189792950171977,
+ 0.013712088577449322,
+ 0.0020244766492396593,
+ 0.01933315023779869,
+ -0.004809207282960415,
+ 0.013030956499278545,
+ -0.05713255703449249,
+ 0.01201957743614912,
+ 0.0019350351067259908,
+ -0.01933315023779869,
+ -0.008207988925278187,
+ 0.005940987728536129,
+ 0.07028735429048538,
+ 0.03762052208185196,
+ 0.03313468024134636,
+ 0.04703253135085106,
+ 0.01633341610431671,
+ -0.0363270565867424,
+ -0.06263665854930878,
+ -0.0010096583282575011,
+ -0.012900234200060368,
+ -0.05916907265782356,
+ 0.020777976140379906,
+ 0.01164805144071579,
+ 0.010698594152927399,
+ -0.0009666575351729989,
+ 0.024507004767656326,
+ -0.024286840111017227,
+ 0.02648847922682762,
+ -0.016209574416279793,
+ -0.03340988606214523,
+ -0.0009993381099775434,
+ -0.010595392435789108,
+ -0.0007288632332347333,
+ 0.035969290882349014,
+ 0.010581632144749165,
+ -0.006057949736714363,
+ 0.0372077152132988,
+ 0.05300448089838028,
+ -0.009914259426295757,
+ 0.05286687985062599,
+ 0.01633341610431671,
+ 0.023144738748669624,
+ -0.010216984897851944,
+ 0.0071002887561917305,
+ -0.02724529430270195,
+ -0.004558082669973373,
+ -0.008331830613315105,
+ -0.004148715175688267,
+ 0.019800998270511627,
+ -0.04975706338882446,
+ 0.012322302907705307,
+ 0.008015344850718975,
+ -0.05922411382198334,
+ 0.010753635317087173,
+ 0.07204866409301758,
+ -0.03409789875149727,
+ -0.04106058552861214,
+ 0.005280495621263981,
+ 0.03068535588681698,
+ 0.05330720543861389,
+ 0.021507270634174347,
+ -0.043757591396570206,
+ -0.022277843207120895,
+ -0.020654134452342987,
+ 0.018768979236483574,
+ 0.03453822433948517,
+ -0.03984968364238739,
+ 0.031015602871775627,
+ 0.015328917652368546,
+ 0.020970620214939117,
+ -0.03418045863509178,
+ -0.017668159678578377,
+ 0.036272019147872925,
+ 0.020227566361427307,
+ -0.0005465399008244276,
+ 0.009006083011627197,
+ -0.005308016203343868,
+ 0.03740035742521286,
+ 0.053582411259412766,
+ -0.004699124954640865,
+ -0.019498273730278015,
+ 0.022498007863759995,
+ -0.03569408506155014,
+ -0.022800732403993607,
+ 0.02285577356815338,
+ -0.09626670181751251,
+ 0.07166337966918945,
+ -0.0314008891582489,
+ 0.013801530003547668,
+ 0.07083776593208313,
+ -0.007437414955347776,
+ 0.06847099959850311,
+ 0.004399839788675308,
+ 0.03357500955462456,
+ 0.0046578445471823215,
+ -0.028924044221639633,
+ -0.013319921679794788,
+ -0.01415929663926363,
+ -0.028401155024766922,
+ -0.01675998419523239,
+ 0.03357500955462456,
+ 0.0039801523089408875,
+ -0.017337914556264877
+ ],
+ "result": "--- 结果 1 (相似度: 1.000) ---\n文件路径: C:\\Steam\\steamapps\\common\\RimWorld\\Data\\dll1.6\\Verse\\HediffDef.txt\n\npublic class HediffDef : Def, IRenderNodePropertiesParent\n{\n\tprivate class ReportStringOverride\n\t{\n\t\tpublic JobDef jobDef;\n\n\t\t[MustTranslate]\n\t\tpublic string reportString;\n\t}\n\n\tpublic Type hediffClass = typeof(Hediff);\n\n\tpublic List comps;\n\n\t[MustTranslate]\n\tpublic string descriptionShort;\n\n\t[NoTranslate]\n\tpublic string debugLabelExtra;\n\n\tpublic float initialSeverity = 0.5f;\n\n\tpublic float lethalSeverity = -1f;\n\n\tpublic List stages;\n\n\tpublic bool tendable;\n\n\tpublic bool isBad = true;\n\n\tpublic ThingDef spawnThingOnRemoved;\n\n\tpublic float chanceToCauseNoPain;\n\n\tpublic bool canApplyDodChanceForCapacityChanges;\n\n\tpublic bool makesSickThought;\n\n\tpublic bool makesAlert = true;\n\n\tpublic NeedDef chemicalNeed;\n\n\tpublic float minSeverity;\n\n\tpublic float maxSeverity = float.MaxValue;\n\n\tpublic bool scenarioCanAdd;\n\n\tpublic List hediffGivers;\n\n\tpublic bool cureAllAtOnceIfCuredByItem;\n\n\tpublic TaleDef taleOnVisible;\n\n\tpublic bool recordDownedTale = true;\n\n\tpublic bool everCurableByItem = true;\n\n\tpublic List tags;\n\n\tpublic bool priceImpact;\n\n\tpublic float priceOffset;\n\n\tpublic bool chronic;\n\n\tpublic bool keepOnBodyPartRestoration;\n\n\tpublic bool countsAsAddedPartOrImplant;\n\n\tpublic bool blocksSocialInteraction;\n\n\tpublic bool blocksSleeping;\n\n\t[MustTranslate]\n\tpublic string overrideTooltip;\n\n\t[MustTranslate]\n\tpublic string extraTooltip;\n\n\t[MustTranslate]\n\tpublic string inspectString;\n\n\tpublic bool levelIsQuantity;\n\n\tpublic bool removeOnDeathrestStart;\n\n\tpublic bool preventsCrawling;\n\n\tpublic bool preventsPregnancy;\n\n\tpublic bool preventsLungRot;\n\n\tpublic bool pregnant;\n\n\tpublic bool allowMothballIfLowPriorityWorldPawn;\n\n\tpublic List removeWithTags;\n\n\tpublic List onlyLifeThreateningTo;\n\n\tpublic bool canAffectBionicOrImplant = true;\n\n\tpublic bool alwaysShowSeverity;\n\n\tpublic bool showGizmosOnCorpse;\n\n\tpublic BodyPartDef defaultInstallPart;\n\n\tpublic Color? hairColorOverride;\n\n\tpublic List possiblePathways;\n\n\tpublic List givesInfectionPathways;\n\n\tpublic bool duplicationAllowed = true;\n\n\tpublic bool preventsDeath;\n\n\tpublic List allowedMeditationFocusTypes;\n\n\tpublic List abilities;\n\n\tpublic bool isInfection;\n\n\tpublic bool forceRemoveOnResurrection;\n\n\tpublic bool organicAddedBodypart;\n\n\tpublic bool deprioritizeHealing;\n\n\tpublic bool clearsEgo;\n\n\tpublic List aptitudes;\n\n\tpublic SimpleCurve removeOnRedressChanceByDaysCurve = new SimpleCurve\n\t{\n\t\tnew CurvePoint(0f, 0f),\n\t\tnew CurvePoint(1f, 0f)\n\t};\n\n\tpublic bool removeOnQuestLodgers;\n\n\tpublic List removeOnRedressIfNotOfKind;\n\n\tpublic bool displayWound;\n\n\tpublic float? woundAnchorRange;\n\n\tpublic Color defaultLabelColor = Color.white;\n\n\tprivate List renderNodeProperties;\n\n\tpublic Color? skinColorOverride;\n\n\tpublic Color? skinColorTint;\n\n\tpublic float skinColorTintStrength = 0.5f;\n\n\tpublic ShaderTypeDef skinShader;\n\n\tpublic bool forceRenderTreeRecache;\n\n\tpublic InjuryProps injuryProps;\n\n\tpublic AddedBodyPartProps addedPartProps;\n\n\tprivate List reportStringOverrides;\n\n\t[MustTranslate]\n\tpublic string labelNoun;\n\n\t[MustTranslate]\n\tpublic string battleStateLabel;\n\n\t[MustTranslate]\n\tpublic string labelNounPretty;\n\n\t[MustTranslate]\n\tpublic string targetPrefix;\n\n\tprivate bool alwaysAllowMothballCached;\n\n\tprivate bool alwaysAllowMothball;\n\n\tprivate string descriptionCached;\n\n\tprivate Dictionary reportStringOverridesDict;\n\n\tprivate Hediff concreteExampleInt;\n\n\tpublic bool HasDefinedGraphicProperties\n\t{\n\t\tget\n\t\t{\n\t\t\tif (renderNodeProperties.NullOrEmpty())\n\t\t\t{\n\t\t\t\treturn skinShader != null;\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t}\n\n\tpublic List RenderNodeProperties => renderNodeProperties ?? PawnRenderUtility.EmptyRenderNodeProperties;\n\n\tpublic bool IsAddiction => typeof(Hediff_Addiction).IsAssignableFrom(hediffClass);\n\n\tpublic bool AlwaysAllowMothball\n\t{\n\t\tget\n\t\t{\n\t\t\tif (!alwaysAllowMothballCached)\n\t\t\t{\n\t\t\t\talwaysAllowMothball = true;\n\t\t\t\tif (comps != null && comps.Count > 0)\n\t\t\t\t{\n\t\t\t\t\talwaysAllowMothball = false;\n\t\t\t\t}\n\t\t\t\tif (stages != null)\n\t\t\t\t{\n\t\t\t\t\tfor (int i = 0; i < stages.Count; i++)\n\t\t\t\t\t{\n\t\t\t\t\t\tHediffStage hediffStage = stages[i];\n\t\t\t\t\t\tif (hediffStage.deathMtbDays > 0f || (hediffStage.hediffGivers != null && hediffStage.hediffGivers.Count > 0))\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\talwaysAllowMothball = false;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\talwaysAllowMothballCached = true;\n\t\t\t}\n\t\t\treturn alwaysAllowMothball;\n\t\t}\n\t}\n\n\tpublic Hediff ConcreteExample => concreteExampleInt ?? (concreteExampleInt = HediffMaker.Debug_MakeConcreteExampleHediff(this));\n\n\tpublic string Description\n\t{\n\t\tget\n\t\t{\n\t\t\tif (descriptionCached == null)\n\t\t\t{\n\t\t\t\tif (!descriptionShort.NullOrEmpty())\n\t\t\t\t{\n\t\t\t\t\tdescriptionCached = descriptionShort;\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\tdescriptionCached = description;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn descriptionCached;\n\t\t}\n\t}\n\n\tpublic bool HasComp(Type compClass)\n\t{\n\t\tif (comps != null)\n\t\t{\n\t\t\tfor (int i = 0; i < comps.Count; i++)\n\t\t\t{\n\t\t\t\tif (comps[i].compClass == compClass)\n\t\t\t\t{\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n\tpublic HediffCompProperties CompPropsFor(Type compClass)\n\t{\n\t\tif (comps != null)\n\t\t{\n\t\t\tfor (int i = 0; i < comps.Count; i++)\n\t\t\t{\n\t\t\t\tif (comps[i].compClass == compClass)\n\t\t\t\t{\n\t\t\t\t\treturn comps[i];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn null;\n\t}\n\n\tpublic T CompProps() where T : HediffCompProperties\n\t{\n\t\tif (comps != null)\n\t\t{\n\t\t\tfor (int i = 0; i < comps.Count; i++)\n\t\t\t{\n\t\t\t\tif (comps[i] is T result)\n\t\t\t\t{\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn null;\n\t}\n\n\tpublic bool PossibleToDevelopImmunityNaturally()\n\t{\n\t\tHediffCompProperties_Immunizable hediffCompProperties_Immunizable = CompProps();\n\t\tif (hediffCompProperties_Immunizable != null && (hediffCompProperties_Immunizable.immunityPerDayNotSick > 0f || hediffCompProperties_Immunizable.immunityPerDaySick > 0f))\n\t\t{\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tpublic string PrettyTextForPart(BodyPartRecord bodyPart)\n\t{\n\t\tif (labelNounPretty.NullOrEmpty())\n\t\t{\n\t\t\treturn null;\n\t\t}\n\t\treturn labelNounPretty.Formatted(label, bodyPart.Label);\n\t}\n\n\tpublic override void ResolveReferences()\n\t{\n\t\tbase.ResolveReferences();\n\t\tif (comps != null)\n\t\t{\n\t\t\tfor (int i = 0; i < comps.Count; i++)\n\t\t\t{\n\t\t\t\tcomps[i].ResolveReferences(this);\n\t\t\t}\n\t\t}\n\t\tif (renderNodeProperties != null)\n\t\t{\n\t\t\tfor (int j = 0; j < renderNodeProperties.Count; j++)\n\t\t\t{\n\t\t\t\trenderNodeProperties[j].ResolveReferencesRecursive();\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic int StageAtSeverity(float severity)\n\t{\n\t\tif (stages == null)\n\t\t{\n\t\t\treturn 0;\n\t\t}\n\t\tfor (int num = stages.Count - 1; num >= 0; num--)\n\t\t{\n\t\t\tif (severity >= stages[num].minSeverity)\n\t\t\t{\n\t\t\t\treturn num;\n\t\t\t}\n\t\t}\n\t\treturn 0;\n\t}\n\n\tpublic int AptitudeFor(SkillDef skill)\n\t{\n\t\tint num = 0;\n\t\tif (aptitudes.NullOrEmpty())\n\t\t{\n\t\t\treturn num;\n\t\t}\n\t\tfor (int i = 0; i < aptitudes.Count; i++)\n\t\t{\n\t\t\tif (aptitudes[i].skill == skill)\n\t\t\t{\n\t\t\t\tnum += aptitudes[i].level;\n\t\t\t}\n\t\t}\n\t\treturn num;\n\t}\n\n\tpublic override IEnumerable ConfigErrors()\n\t{\n\t\tforeach (string item in base.ConfigErrors())\n\t\t{\n\t\t\tyield return item;\n\t\t}\n\t\tif (hediffClass == null)\n\t\t{\n\t\t\tyield return \"hediffClass is null\";\n\t\t}\n\t\tif (!comps.NullOrEmpty() && !typeof(HediffWithComps).IsAssignableFrom(hediffClass))\n\t\t{\n\t\t\tyield return \"has comps but hediffClass is not HediffWithComps or subclass thereof\";\n\t\t}\n\t\tif (minSeverity > initialSeverity)\n\t\t{\n\t\t\tyield return \"minSeverity is greater than initialSeverity\";\n\t\t}\n\t\tif (maxSeverity < initialSeverity)\n\t\t{\n\t\t\tyield return \"maxSeverity is lower than initialSeverity\";\n\t\t}\n\t\tif (!tendable && HasComp(typeof(HediffComp_TendDuration)))\n\t\t{\n\t\t\tyield return \"has HediffComp_TendDuration but tendable = false\";\n\t\t}\n\t\tif (string.IsNullOrEmpty(description))\n\t\t{\n\t\t\tyield return \"Hediff with defName \" + defName + \" has no description!\";\n\t\t}\n\t\tif (possiblePathways != null)\n\t\t{\n\t\t\tfor (int i = 0; i < possiblePathways.Count - 1; i++)\n\t\t\t{\n\t\t\t\tHediffInfectionPathway vector = possiblePathways[i];\n\t\t\t\tfor (int k = i + 1; k < possiblePathways.Count; k++)\n\t\t\t\t{\n\t\t\t\t\tHediffInfectionPathway hediffInfectionPathway = possiblePathways[k];\n\t\t\t\t\tif (vector.PathwayDef == hediffInfectionPathway.PathwayDef)\n\t\t\t\t\t{\n\t\t\t\t\t\tyield return \"Multiple possible infection vectors of type: \" + vector.PathwayDef.defName;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (string.IsNullOrEmpty(vector.Explanation))\n\t\t\t\t{\n\t\t\t\t\tyield return \"Missing explanation for possible infection vector: \" + vector.PathwayDef.defName;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (comps != null)\n\t\t{\n\t\t\tfor (int i = 0; i < comps.Count; i++)\n\t\t\t{\n\t\t\t\tforeach (string item2 in comps[i].ConfigErrors(this))\n\t\t\t\t{\n\t\t\t\t\tyield return $\"{comps[i]}: {item2}\";\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (stages != null)\n\t\t{\n\t\t\tif (!typeof(Hediff_Addiction).IsAssignableFrom(hediffClass))\n\t\t\t{\n\t\t\t\tfor (int i = 0; i < stages.Count; i++)\n\t\t\t\t{\n\t\t\t\t\tif (i >= 1 && stages[i].minSeverity <= stages[i - 1].minSeverity)\n\t\t\t\t\t{\n\t\t\t\t\t\tyield return \"stages are not in order of minSeverity\";\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tfor (int i = 0; i < stages.Count; i++)\n\t\t\t{\n\t\t\t\tif (stages[i].hediffGivers != null)\n\t\t\t\t{\n\t\t\t\t\tfor (int j = 0; j < stages[i].hediffGivers.Count; j++)\n\t\t\t\t\t{\n\t\t\t\t\t\tforeach (string item3 in stages[i].hediffGivers[j].ConfigErrors())\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tyield return item3;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (stages[i].minSeverity > maxSeverity)\n\t\t\t\t{\n\t\t\t\t\tyield return $\"minSeverity of stage {i} is greater than maxSeverity.\";\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (hediffGivers == null)\n\t\t{\n\t\t\tyield break;\n\t\t}\n\t\tfor (int i = 0; i < hediffGivers.Count; i++)\n\t\t{\n\t\t\tforeach (string item4 in hediffGivers[i].ConfigErrors())\n\t\t\t{\n\t\t\t\tyield return item4;\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic override IEnumerable SpecialDisplayStats(StatRequest req)\n\t{\n\t\tif (stages == null || stages.Count != 1)\n\t\t{\n\t\t\tyield break;\n\t\t}\n\t\tforeach (StatDrawEntry item in stages[0].SpecialDisplayStats())\n\t\t{\n\t\t\tyield return item;\n\t\t}\n\t}\n\n\tpublic bool TryGetReportStringOverrideFor(JobDef def, out string str)\n\t{\n\t\tif (reportStringOverrides.NullOrEmpty())\n\t\t{\n\t\t\tstr = null;\n\t\t\treturn false;\n\t\t}\n\t\tif (reportStringOverridesDict == null)\n\t\t{\n\t\t\treportStringOverridesDict = new Dictionary();\n\t\t\tif (reportStringOverrides != null)\n\t\t\t{\n\t\t\t\tforeach (ReportStringOverride reportStringOverride in reportStringOverrides)\n\t\t\t\t{\n\t\t\t\t\treportStringOverridesDict[reportStringOverride.jobDef] = reportStringOverride.reportString;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn reportStringOverridesDict.TryGetValue(def, out str);\n\t}\n\n\tpublic static HediffDef Named(string defName)\n\t{\n\t\treturn DefDatabase.GetNamed(defName);\n\t}\n}\n\n",
+ "timestamp": "2025-08-26 17:56:00,201"
+ },
+ "ApplyDamageToPart-DamageWorker": {
+ "keywords": [
+ "DamageWorker",
+ "ApplyDamageToPart"
+ ],
+ "question": "RimWorld DamageWorker ApplyDamageToPart",
+ "embedding": [
+ 0.05833260715007782,
+ 0.0039617326110601425,
+ 0.01326967403292656,
+ -0.0016489468980580568,
+ -0.017621899023652077,
+ -0.00972683448344469,
+ 0.020277254283428192,
+ -0.007341274991631508,
+ 0.011736100539565086,
+ 0.09315041452646255,
+ 0.0006700510857626796,
+ -0.04450204223394394,
+ -0.035130202770233154,
+ -0.02859831228852272,
+ 0.004267027135938406,
+ 0.002069614827632904,
+ -0.05736702308058739,
+ -0.10848615318536758,
+ -0.024068590253591537,
+ -0.01311347633600235,
+ 0.01313477661460638,
+ -0.013518169522285461,
+ -0.007646569982171059,
+ -0.04063970968127251,
+ -0.011885197833180428,
+ -0.010933813638985157,
+ -0.03339783102273941,
+ 0.038026951253414154,
+ 0.013653067871928215,
+ -0.014838747680187225,
+ -0.003929783124476671,
+ 0.009698434732854366,
+ 0.013567868620157242,
+ -0.013248374685645103,
+ -0.060377370566129684,
+ 0.050096746534109116,
+ -0.013312273658812046,
+ -0.018388686701655388,
+ -0.02766112983226776,
+ 0.02127123810350895,
+ -0.010585919953882694,
+ -0.02034825272858143,
+ 0.017224306240677834,
+ -0.020305654034018517,
+ 0.004100180231034756,
+ 0.0011874547926709056,
+ -0.0025719311088323593,
+ -0.07934825122356415,
+ -0.05475426837801933,
+ 0.019908061251044273,
+ 0.04115089774131775,
+ -0.0024175087455660105,
+ -0.001174142467789352,
+ -0.0198228619992733,
+ 0.010202526114881039,
+ -0.0483359768986702,
+ -0.03214825317263603,
+ -0.009535137563943863,
+ 0.0084914555773139,
+ 0.006705835927277803,
+ 0.01878627948462963,
+ 0.0177638977766037,
+ -0.0016240973491221666,
+ -0.022464018315076828,
+ -0.014682549983263016,
+ -0.0037025869823992252,
+ -0.07219157367944717,
+ 7.737759005976841e-05,
+ 0.006815883796662092,
+ -0.032233450561761856,
+ -0.004902466665953398,
+ 0.022648613899946213,
+ 0.03427821770310402,
+ 0.004423224832862616,
+ -0.019837062805891037,
+ 0.02436678484082222,
+ -0.009918531402945518,
+ 0.03691937029361725,
+ -0.03447701409459114,
+ 0.022833211347460747,
+ -0.009073645807802677,
+ 0.021441634744405746,
+ -0.02947869710624218,
+ -0.014192658476531506,
+ 0.018985075876116753,
+ 0.02953549660742283,
+ -0.006343741901218891,
+ -0.006560288369655609,
+ -0.01145920529961586,
+ 0.0681588426232338,
+ -0.007277376018464565,
+ -0.0051509621553123,
+ 0.06208134442567825,
+ -0.001966666430234909,
+ 0.005055113695561886,
+ -0.034619010984897614,
+ -0.03092707321047783,
+ 0.0325174480676651,
+ -0.01790589466691017,
+ 0.012261491268873215,
+ -9.024611790664494e-05,
+ 0.049159564077854156,
+ -0.03345463052392006,
+ 0.04152009263634682,
+ -0.050465941429138184,
+ 0.04058291018009186,
+ -0.018772080540657043,
+ 0.015562934800982475,
+ -0.006812334060668945,
+ 0.010415522381663322,
+ 0.012453188188374043,
+ -0.0550098642706871,
+ -0.0021494883112609386,
+ 0.05395908281207085,
+ 0.004032731521874666,
+ -0.01945366896688938,
+ 0.0001792719413060695,
+ 0.013929963111877441,
+ -0.007596870418637991,
+ 0.015108542516827583,
+ 0.042656075209379196,
+ -0.009244042448699474,
+ -0.016017327085137367,
+ -0.035499393939971924,
+ 0.015719132497906685,
+ -0.015832729637622833,
+ -0.0062691932544112206,
+ 0.041576892137527466,
+ -0.0034878156147897243,
+ 0.020930442959070206,
+ -0.004866966977715492,
+ -0.0008639665320515633,
+ 0.02653934806585312,
+ 0.017323704436421394,
+ -0.025176171213388443,
+ -0.027348734438419342,
+ 0.0006301142857410014,
+ 0.04842117428779602,
+ -0.02369939722120762,
+ 0.046944402158260345,
+ -0.04393405094742775,
+ 0.020419253036379814,
+ 0.046944402158260345,
+ -0.01313477661460638,
+ 0.12166352570056915,
+ -0.02638315036892891,
+ -0.042258478701114655,
+ 0.009364740923047066,
+ -0.07043080031871796,
+ 0.004572322126477957,
+ -0.048193980008363724,
+ -0.011260407976806164,
+ -0.029194703325629234,
+ 0.05418627709150314,
+ 0.008583753369748592,
+ -0.014263656921684742,
+ 0.028214920312166214,
+ -0.046376410871744156,
+ 0.011601202189922333,
+ -0.03081347607076168,
+ -0.02493477612733841,
+ -0.0005120787536725402,
+ 0.0012362664565443993,
+ -0.007114078849554062,
+ 0.020021658390760422,
+ -0.035584595054388046,
+ -0.018814679235219955,
+ 0.012857881374657154,
+ -0.0007920802454464138,
+ -0.02389819361269474,
+ -0.0703740045428276,
+ 0.017820697277784348,
+ -0.02767532877624035,
+ -0.019524667412042618,
+ -0.004043381195515394,
+ 0.015037544071674347,
+ -0.02235041931271553,
+ 0.029450299218297005,
+ -0.002602105727419257,
+ 0.019837062805891037,
+ -0.004483573604375124,
+ 0.003281919052824378,
+ 0.02425318770110607,
+ 0.04123609885573387,
+ 0.01248868741095066,
+ -0.03833934664726257,
+ -0.011359806172549725,
+ 0.019027676433324814,
+ 0.0368625707924366,
+ 0.028868108987808228,
+ 0.04969915375113487,
+ 0.07718988507986069,
+ -0.017891695722937584,
+ -0.01429915614426136,
+ -0.031665459275245667,
+ 0.023827195167541504,
+ 0.015051743946969509,
+ 0.04373525455594063,
+ -0.0964447557926178,
+ -0.03265944495797157,
+ -0.006602887529879808,
+ -0.009357640519738197,
+ -0.013440071605145931,
+ -0.0015823855064809322,
+ 0.05384548380970955,
+ -0.005878699943423271,
+ -0.025161972269415855,
+ -0.005253910552710295,
+ 0.04032731428742409,
+ 0.0014705624198541045,
+ 0.017792297527194023,
+ 0.001799819408915937,
+ 0.03814055025577545,
+ -0.041065700352191925,
+ 0.012595185078680515,
+ 0.010088928043842316,
+ -0.029819492250680923,
+ -0.010159927420318127,
+ 0.01755090057849884,
+ 0.04103730246424675,
+ -0.05600384622812271,
+ 0.057225026190280914,
+ -0.02029145509004593,
+ 0.012872081249952316,
+ 0.01564813405275345,
+ -0.005743802059441805,
+ 0.030529480427503586,
+ -0.020532850176095963,
+ 0.033227432519197464,
+ 0.006524788681417704,
+ 0.045041631907224655,
+ -0.0028914257418364286,
+ -0.11081491410732269,
+ -0.0006079271552152932,
+ 0.029194703325629234,
+ -0.02591455914080143,
+ -0.03345463052392006,
+ -0.07156678289175034,
+ -0.013425871729850769,
+ 0.011111310683190823,
+ 0.01709650829434395,
+ 0.03944692760705948,
+ -0.023557398468255997,
+ 0.005221961066126823,
+ 0.0024796328507363796,
+ -0.015818530693650246,
+ -0.023940792307257652,
+ 0.029847892001271248,
+ 0.005956798791885376,
+ -0.024650780484080315,
+ -0.0017785197123885155,
+ 0.014625751413404942,
+ -0.01823248900473118,
+ -0.01792009547352791,
+ 0.05126112699508667,
+ -0.005999397952109575,
+ 0.021924426779150963,
+ -0.01120360940694809,
+ -0.008129362016916275,
+ 0.004057581070810556,
+ -0.003029873361811042,
+ 0.041633691638708115,
+ -0.02256341651082039,
+ 0.010877015069127083,
+ -0.006396991200745106,
+ 0.04330926388502121,
+ 0.02849891409277916,
+ -0.0017527826130390167,
+ -0.011480504646897316,
+ -0.014980744570493698,
+ 0.005924849305301905,
+ 0.04847797378897667,
+ 0.021697230637073517,
+ -0.02756172977387905,
+ -0.0047569191083312035,
+ -0.007011130452156067,
+ 0.01292887981981039,
+ 0.0032978937961161137,
+ 0.009201443754136562,
+ -0.029081104323267937,
+ -0.0204334519803524,
+ -0.01962406560778618,
+ 0.000633664196357131,
+ -0.04174729064106941,
+ 0.015548734925687313,
+ 0.07792827486991882,
+ 0.037600960582494736,
+ -0.03882214054465294,
+ 0.02493477612733841,
+ 0.043337661772966385,
+ -0.02172563038766384,
+ 0.008399156853556633,
+ 0.025644762441515923,
+ -0.0004193366039544344,
+ -0.005378158297389746,
+ 0.008995546959340572,
+ 0.06071816757321358,
+ 0.012446087785065174,
+ -0.032034654170274734,
+ -0.0116935009136796,
+ -0.031409863382577896,
+ -0.03067147731781006,
+ -0.0020483150146901608,
+ -0.0038836337625980377,
+ 0.023912392556667328,
+ -0.028314318507909775,
+ -0.024238986894488335,
+ -0.07991623878479004,
+ -0.03402262181043625,
+ -0.10797496140003204,
+ -0.010039228945970535,
+ 0.026979541406035423,
+ -0.034249816089868546,
+ -0.0018637182656675577,
+ -0.009549337439239025,
+ 0.0410941019654274,
+ -0.029620695859193802,
+ 0.0001140418098657392,
+ -0.005513056181371212,
+ 0.08235859870910645,
+ -0.0013321147998794913,
+ -0.02395499125123024,
+ -0.02183922752737999,
+ 0.01104741171002388,
+ 0.004962815437465906,
+ 0.006276293192058802,
+ 0.016613716259598732,
+ 0.016187723726034164,
+ 0.009038145653903484,
+ -0.008739951066672802,
+ 0.014093260280787945,
+ -0.002667779568582773,
+ 0.027590129524469376,
+ 0.04288326948881149,
+ 0.0481087826192379,
+ 0.0038232849910855293,
+ -0.03169386088848114,
+ -0.024437783285975456,
+ 0.022733813151717186,
+ 0.0038978336378932,
+ -0.018303487449884415,
+ -0.0141145596280694,
+ 0.01197749562561512,
+ -0.02090204320847988,
+ 0.07423633337020874,
+ 0.008555354550480843,
+ 0.033369433134794235,
+ 0.07292995601892471,
+ 0.0341930165886879,
+ 0.009733933955430984,
+ -0.012360889464616776,
+ 0.02421058714389801,
+ -0.0507783368229866,
+ -0.004934416152536869,
+ 0.003695487044751644,
+ 0.009173044003546238,
+ -0.0012149667600169778,
+ 0.0023039106745272875,
+ -0.06230853870511055,
+ 0.005733152385801077,
+ -0.010365823283791542,
+ -0.0023997591342777014,
+ 0.00025204572011716664,
+ 0.001560198375955224,
+ 0.012864980846643448,
+ 0.01621612347662449,
+ 0.027036339044570923,
+ 0.038168951869010925,
+ -0.0424288772046566,
+ 0.05759422108530998,
+ -0.03799855336546898,
+ -0.08423296362161636,
+ 0.055265460163354874,
+ 0.024409383535385132,
+ -0.015207940712571144,
+ -0.0017980444245040417,
+ 0.008356558158993721,
+ -0.013219974935054779,
+ -0.006673886440694332,
+ 0.016074126586318016,
+ -0.03410781919956207,
+ -0.012857881374657154,
+ -0.013148976489901543,
+ -0.05069313570857048,
+ -0.01909867487847805,
+ 0.014050660654902458,
+ 0.05682743340730667,
+ -0.00572960264980793,
+ 0.019652465358376503,
+ -0.06333091855049133,
+ 0.060206975787878036,
+ 0.012268590740859509,
+ -0.012382188811898232,
+ -0.009272442199289799,
+ -0.0024601081386208534,
+ 0.009684234857559204,
+ 0.007717568427324295,
+ -0.002307460643351078,
+ 0.03870854154229164,
+ -0.0022648614831268787,
+ -0.03300023823976517,
+ 0.005857400130480528,
+ -0.06651166826486588,
+ -0.004728519357740879,
+ 0.041378095746040344,
+ -0.015619734302163124,
+ 0.017266906797885895,
+ -0.018857279792428017,
+ -0.0623653382062912,
+ 0.008129362016916275,
+ 0.0015362363774329424,
+ -0.07315715402364731,
+ 0.09883031994104385,
+ 0.01143790502101183,
+ -0.0339658223092556,
+ -0.021825028583407402,
+ 0.03745896369218826,
+ -0.004753368906676769,
+ 0.01590372994542122,
+ -0.05305029824376106,
+ -0.04347965866327286,
+ 0.010245125740766525,
+ -0.00419602869078517,
+ -0.008810949511826038,
+ 0.008306858129799366,
+ -0.007930564694106579,
+ -0.008853549137711525,
+ 0.0014856497291475534,
+ 0.0003911589737981558,
+ 0.011608302593231201,
+ -0.042400479316711426,
+ -0.023628396913409233,
+ -0.05327749252319336,
+ 0.04217328131198883,
+ 0.0001627425372134894,
+ -0.009322141297161579,
+ 0.009613236412405968,
+ 0.0176502987742424,
+ -0.03353982791304588,
+ -0.02080264501273632,
+ -0.03717496618628502,
+ -0.0014962995192036033,
+ 0.04651840776205063,
+ 0.006560288369655609,
+ -0.07576990872621536,
+ -0.013255474157631397,
+ 0.005992298014461994,
+ -0.002751203253865242,
+ 0.009662935510277748,
+ -0.0008768350817263126,
+ -0.007738868240267038,
+ 0.00749747222289443,
+ 0.03782815486192703,
+ 0.013326473534107208,
+ -0.012630685232579708,
+ 0.021200239658355713,
+ -0.011011912487447262,
+ -0.02297520823776722,
+ -0.005158062092959881,
+ -0.026766544207930565,
+ -0.001037469832226634,
+ -0.018970876932144165,
+ -0.023301802575588226,
+ 0.01148760411888361,
+ -0.016429120674729347,
+ 0.006084596272557974,
+ -0.026667146012187004,
+ 0.00213528866879642,
+ 0.024196388199925423,
+ 0.005960348527878523,
+ -0.05472586676478386,
+ 0.014810347929596901,
+ -0.023145606741309166,
+ 0.02916630357503891,
+ 0.018360286951065063,
+ -0.07537231594324112,
+ 0.0038232849910855293,
+ 0.03924813121557236,
+ 0.0077743674628436565,
+ -0.022165821865200996,
+ 0.024920575320720673,
+ 0.03413621708750725,
+ -0.055208660662174225,
+ 0.005520156119018793,
+ -0.11984595656394958,
+ 0.003218020312488079,
+ -0.02158363163471222,
+ -0.037032969295978546,
+ 0.02188182808458805,
+ 0.0016027976525947452,
+ -0.0024121839087456465,
+ -0.048080381006002426,
+ 0.024508781731128693,
+ 0.07582671195268631,
+ -0.007689169142395258,
+ 0.040497709065675735,
+ 0.0011466305004432797,
+ -0.08536894619464874,
+ -0.029705893248319626,
+ -0.10485101491212845,
+ -0.02812972106039524,
+ 0.02467918023467064,
+ -0.04413284733891487,
+ -0.03175066038966179,
+ 0.013383272103965282,
+ -0.013866064138710499,
+ 0.02076004631817341,
+ 0.006766184698790312,
+ -0.029194703325629234,
+ 0.002850601449608803,
+ 0.014597351662814617,
+ -0.046688806265592575,
+ 0.0567990317940712,
+ -0.0024672080762684345,
+ -0.02007845789194107,
+ 0.026922741904854774,
+ 0.06679566204547882,
+ -0.0004619358805939555,
+ 0.03035908378660679,
+ 0.007824067026376724,
+ -0.029052704572677612,
+ -0.015378338284790516,
+ 0.05131792649626732,
+ -0.014043561182916164,
+ -0.022520815953612328,
+ -0.033625029027462006,
+ 0.00903104618191719,
+ -0.034051019698381424,
+ 0.04152009263634682,
+ -0.004934416152536869,
+ -0.012850780971348286,
+ 0.0008652977412566543,
+ 0.04169049113988876,
+ 0.060945361852645874,
+ 0.12825222313404083,
+ 0.0015646358951926231,
+ 0.032347049564123154,
+ 0.004817267879843712,
+ 0.037089768797159195,
+ 0.042514074593782425,
+ 0.03689097240567207,
+ 0.03328423202037811,
+ 0.01605992577970028,
+ -0.008136461488902569,
+ 0.01463995035737753,
+ 0.04524042829871178,
+ 0.0205470509827137,
+ -0.03754416108131409,
+ 0.002612755401059985,
+ -0.003031648462638259,
+ 0.013532369397580624,
+ 0.06980600953102112,
+ -0.007213477045297623,
+ -0.01579013094305992,
+ 0.050977133214473724,
+ 0.0063614915125072,
+ 0.05145992338657379,
+ 0.042769670486450195,
+ -0.0155913345515728,
+ 0.002696179086342454,
+ -0.014725149609148502,
+ -0.006886882707476616,
+ 0.010564619675278664,
+ 0.0007188627496361732,
+ 0.006897532381117344,
+ 0.01946786791086197,
+ -0.030330684036016464,
+ 0.05586184933781624,
+ -0.06918121874332428,
+ -0.028882307931780815,
+ -0.023344403132796288,
+ 0.018615882843732834,
+ -0.02818652056157589,
+ 0.008974247612059116,
+ 0.005111912731081247,
+ -0.023046206682920456,
+ 0.029336700215935707,
+ -0.04754079133272171,
+ 0.03598218783736229,
+ 0.020305654034018517,
+ -0.0006731572793796659,
+ 0.017408903688192368,
+ -0.016429120674729347,
+ -0.03339783102273941,
+ 0.03211985155940056,
+ 0.024451984092593193,
+ 0.022265220060944557,
+ 0.0012424788437783718,
+ 0.03231864795088768,
+ 0.009144644252955914,
+ 0.05554945394396782,
+ 0.04986955225467682,
+ -0.05895739421248436,
+ -0.016400720924139023,
+ -0.0020412153098732233,
+ 0.038850538432598114,
+ 0.0044125746935606,
+ 0.014725149609148502,
+ 0.006563838105648756,
+ 0.038168951869010925,
+ 0.0013915762538090348,
+ -0.08264259248971939,
+ -0.014135858975350857,
+ -0.02158363163471222,
+ 0.02074584737420082,
+ -0.0020962392445653677,
+ -0.0175935011357069,
+ -0.014235257171094418,
+ 0.029876291751861572,
+ -0.02301780879497528,
+ -0.0019027675734832883,
+ 0.05878699943423271,
+ 0.03939012810587883,
+ 0.007369674276560545,
+ 0.03226185217499733,
+ -0.0038481345400214195,
+ 0.020362453535199165,
+ 0.0036990370135754347,
+ 0.003571239300072193,
+ -0.018814679235219955,
+ -0.03845294564962387,
+ -0.0020128157921135426,
+ 0.0408669039607048,
+ -0.02885390818119049,
+ -0.041946087032556534,
+ 0.044274844229221344,
+ -0.025005774572491646,
+ -0.0076607693918049335,
+ -0.020816845819354057,
+ 0.004274127073585987,
+ -0.017976893112063408,
+ -0.0024547833018004894,
+ -0.055521056056022644,
+ 0.028740311041474342,
+ 0.04200288653373718,
+ 0.01145920529961586,
+ -0.0033138685394078493,
+ 0.0003993682039435953,
+ -0.05285150185227394,
+ 0.024579782038927078,
+ 0.01352526992559433,
+ 0.009322141297161579,
+ -0.06685246527194977,
+ 0.0076607693918049335,
+ 0.014341755770146847,
+ -0.053192295134067535,
+ -0.05165871977806091,
+ -0.030387481674551964,
+ -0.010905413888394833,
+ -0.01676991395652294,
+ 0.006886882707476616,
+ 0.011217809282243252,
+ -0.0009021284058690071,
+ -0.008562454022467136,
+ -0.00877545028924942,
+ 0.026397351175546646,
+ -0.007362574804574251,
+ -0.005836100783199072,
+ -0.009180143475532532,
+ -0.01065691839903593,
+ -0.04913116246461868,
+ -0.011182309128344059,
+ 0.00021920877043157816,
+ 0.00257548107765615,
+ 0.050607938319444656,
+ 0.03655017912387848,
+ -0.006560288369655609,
+ -0.01032322458922863,
+ 0.0026163053698837757,
+ 0.006986280903220177,
+ -0.0077459681779146194,
+ 0.0021903126034885645,
+ 0.0075187720358371735,
+ -0.017210107296705246,
+ 0.04898916557431221,
+ -0.007568471133708954,
+ -0.029507096856832504,
+ 0.01986546255648136,
+ 0.04583682119846344,
+ 0.01821829006075859,
+ -0.03598218783736229,
+ 0.003610288491472602,
+ -0.03004668839275837,
+ -0.009315041825175285,
+ -0.03748736158013344,
+ 0.03433501347899437,
+ 0.015378338284790516,
+ 0.03578339144587517,
+ -0.023912392556667328,
+ 0.044473644345998764,
+ 0.02183922752737999,
+ -0.10774776339530945,
+ 0.021924426779150963,
+ 0.039304930716753006,
+ -0.028527313843369484,
+ -0.006964981555938721,
+ -0.08792490512132645,
+ -0.009123344905674458,
+ 0.04319566488265991,
+ 0.03282983973622322,
+ 0.08349458128213882,
+ -0.05421467497944832,
+ -0.034874606877565384,
+ 0.031012272462248802,
+ 0.01672731526196003,
+ -0.026056556031107903,
+ -0.01821829006075859,
+ -0.011338506825268269,
+ -0.007153128273785114,
+ -0.05049433931708336,
+ 0.013894462957978249,
+ 0.05884379893541336,
+ 0.03169386088848114,
+ -0.007618170231580734,
+ -0.03035908378660679,
+ 0.033994220197200775,
+ -0.02601395733654499,
+ 0.006695185787975788,
+ -0.035641394555568695,
+ 0.013610468246042728,
+ 0.008803850039839745,
+ 0.015889529138803482,
+ -0.020476050674915314,
+ -0.013148976489901543,
+ 0.025005774572491646,
+ 0.018246689811348915,
+ -0.019680865108966827,
+ -0.006549638696014881,
+ -0.008399156853556633,
+ 0.060945361852645874,
+ -0.0037948854733258486,
+ -0.02111504040658474,
+ -0.0024476833641529083,
+ 0.04589361697435379,
+ -0.015463536605238914,
+ 0.038026951253414154,
+ 0.012815281748771667,
+ -0.02240721881389618,
+ -0.0015806106384843588,
+ 0.0051154629327356815,
+ 0.02084524556994438,
+ -0.022322019562125206,
+ -0.04066810756921768,
+ 0.006933032069355249,
+ 0.06935162097215652,
+ -0.010756316594779491,
+ 0.06015017628669739,
+ 0.04620601236820221,
+ 0.025119371712207794,
+ 0.00401498144492507,
+ -0.012914679944515228,
+ 0.014909746125340462,
+ 0.013589168898761272,
+ -0.0219954252243042,
+ 0.006979180965572596,
+ -0.003281919052824378,
+ -0.006638386752456427,
+ 0.030273884534835815,
+ -0.029137903824448586,
+ -0.005246810615062714,
+ -0.0425424762070179,
+ -0.04969915375113487,
+ 0.017479902133345604,
+ 0.0036315880715847015,
+ -0.0016800089506432414,
+ 0.054697468876838684,
+ -0.0233870018273592,
+ -0.005101263057440519,
+ -0.03158026188611984,
+ -0.04827917739748955,
+ -0.0282291192561388,
+ -0.024906376376748085,
+ -0.02044765092432499,
+ 0.03325583413243294,
+ 0.028939107432961464,
+ 0.06986281275749207,
+ -0.0353005975484848,
+ -0.01946786791086197,
+ -0.07389554381370544,
+ 0.01071371790021658,
+ 0.013851864263415337,
+ -0.03180745989084244,
+ 0.03609578683972359,
+ -0.011317207477986813,
+ 0.01427075732499361,
+ -0.013432971201837063,
+ 0.0014776623575016856,
+ 0.013305173255503178,
+ 0.016386520117521286,
+ 0.002607430564239621,
+ -0.022520815953612328,
+ -0.025062574073672295,
+ 0.028214920312166214,
+ 0.07315715402364731,
+ -0.006549638696014881,
+ 0.015562934800982475,
+ 0.007209927309304476,
+ 0.02090204320847988,
+ 0.00035588143509812653,
+ 0.040753304958343506,
+ -0.020121056586503983,
+ -0.014490853063762188,
+ -0.015179541893303394,
+ -0.024806978181004524,
+ -4.972688839188777e-05,
+ -0.008250059559941292,
+ -0.030160285532474518,
+ -0.05611744523048401,
+ -0.02430998533964157,
+ -0.03243224695324898,
+ -0.00557340495288372,
+ -0.0035002403892576694,
+ 0.01417135912925005,
+ 0.0005094163352623582,
+ 0.0340794213116169,
+ -0.005562755279242992,
+ -0.00010488962288945913,
+ -0.005882249679416418,
+ 0.06015017628669739,
+ -0.027732128277420998,
+ 0.005956798791885376,
+ 0.007973164319992065,
+ 0.009222743101418018,
+ -0.00352863990701735,
+ 0.04248567670583725,
+ 0.008732851594686508,
+ 0.0014927495503798127,
+ -0.005158062092959881,
+ -0.03194945678114891,
+ 0.010976413264870644,
+ -1.72816885424254e-06,
+ -0.05341948941349983,
+ 0.007195727434009314,
+ -0.007192177698016167,
+ 0.03092707321047783,
+ 0.02193862572312355,
+ -0.0018850178457796574,
+ -0.0088251493871212,
+ -0.01473934855312109,
+ -0.04867677018046379,
+ -0.053760286420583725,
+ 0.0012398164253681898,
+ 0.02585775963962078,
+ -0.03200625628232956,
+ 0.020973043516278267,
+ -0.02101564221084118,
+ 0.018871478736400604,
+ -0.025119371712207794,
+ -0.015136942267417908,
+ 0.019127074629068375,
+ -0.10655498504638672,
+ 0.025545364245772362,
+ -0.016400720924139023,
+ 0.0010924938833341002,
+ 0.024224787950515747,
+ 0.0481087826192379,
+ 0.0024494582321494818,
+ 0.05074993520975113,
+ -0.03919133171439171,
+ 0.0024352585896849632,
+ -0.022464018315076828,
+ 0.03913453221321106,
+ 0.03836774826049805,
+ 0.008739951066672802,
+ -0.0005480219260789454,
+ -0.004632670897990465,
+ -0.009052345529198647,
+ -0.014398555271327496,
+ 0.018985075876116753,
+ -0.02070324681699276,
+ 0.048080381006002426,
+ 0.06986281275749207,
+ 0.023145606741309166,
+ 0.0034239166416227818,
+ 0.0023110106121748686,
+ -0.05452707037329674,
+ -0.03413621708750725,
+ -0.013787965290248394,
+ 0.007831166498363018,
+ 0.007419373840093613,
+ 0.002115763956680894,
+ -0.014526352286338806,
+ 0.013993862085044384,
+ -0.005825450643897057,
+ -0.0040753306820988655,
+ 0.008143560960888863,
+ -0.01208399422466755,
+ 0.007831166498363018,
+ -0.014867146499454975,
+ 0.04001491889357567,
+ 0.03302863612771034,
+ 0.021810827776789665,
+ 0.016500119119882584,
+ -0.014100359752774239,
+ 0.0239975918084383,
+ 0.02074584737420082,
+ -0.019297471269965172,
+ -0.01109711080789566,
+ 0.013340672478079796,
+ 0.0029322500340640545,
+ 0.00651768920943141,
+ 0.004032731521874666,
+ 0.0169829111546278,
+ -0.00717442762106657,
+ -0.04027051478624344,
+ -0.017976893112063408,
+ 0.02076004631817341,
+ 0.00023895531194284558,
+ 0.014277856796979904,
+ 0.009584836661815643,
+ -0.026028156280517578,
+ -0.002350060036405921,
+ 0.04836437478661537,
+ 0.013432971201837063,
+ -0.021555233746767044,
+ -0.05157352238893509,
+ 0.023273402824997902,
+ 0.06742045283317566,
+ 0.021299637854099274,
+ -0.009286642074584961,
+ 0.009904331527650356,
+ -0.00013567425776273012,
+ -0.001246916246600449,
+ -0.01733790524303913,
+ -0.004117929842323065,
+ 0.00100995774846524,
+ -0.03757255896925926,
+ 0.0020838144700974226,
+ -0.020362453535199165,
+ -0.025886159390211105,
+ 0.00018348750018049031,
+ 0.008739951066672802,
+ 0.05929819121956825,
+ 0.04850637540221214,
+ 0.026056556031107903,
+ 0.04651840776205063,
+ -0.004923766013234854,
+ -0.016968710348010063,
+ -0.03180745989084244,
+ -0.02797352336347103,
+ -0.013205775059759617,
+ -0.04935836046934128,
+ 0.005836100783199072,
+ -0.0044374242424964905,
+ 0.0397593230009079,
+ 0.00517581170424819,
+ 0.024196388199925423,
+ -0.022236822172999382,
+ 0.02534656785428524,
+ -0.008782550692558289,
+ -0.0038942836690694094,
+ 0.028825508430600166,
+ 0.022023824974894524,
+ -0.0030990971717983484,
+ -0.0327446423470974,
+ 0.005832550581544638,
+ 0.022421417757868767,
+ 0.014824547804892063,
+ 0.032347049564123154,
+ -0.01935427077114582,
+ 0.03351143002510071,
+ 0.0683860331773758,
+ 0.006546088494360447,
+ 0.0006656136829406023,
+ 0.03902093693614006,
+ -0.011544403620064259,
+ -0.020973043516278267,
+ -0.005328459199517965,
+ -0.014781948179006577,
+ 0.0075258719734847546,
+ -0.03691937029361725,
+ 0.042656075209379196,
+ 0.0030458481051027775,
+ -0.03422141820192337,
+ -0.002534656785428524,
+ 0.025587964802980423,
+ -0.02301780879497528,
+ -0.07622430473566055,
+ 0.01233959011733532,
+ 0.0012833031360059977,
+ 0.023685196414589882,
+ 0.010025029070675373,
+ -0.057991813868284225,
+ -0.04825077950954437,
+ -0.0038055351469665766,
+ 0.012744283303618431,
+ 0.004117929842323065,
+ -0.024068590253591537,
+ 0.016230324283242226,
+ -0.0011803548550233245,
+ 0.004018531646579504,
+ -0.02581516094505787,
+ -0.03189265727996826,
+ 0.013141876086592674,
+ 0.012453188188374043,
+ 0.0024547833018004894,
+ 0.012048495002090931,
+ -0.046177614480257034,
+ 0.07474752515554428,
+ 0.04461564123630524,
+ -0.017281105741858482,
+ -0.01811889186501503,
+ 0.015662332996726036,
+ -0.006400540936738253,
+ -0.038282547146081924,
+ 0.04413284733891487,
+ -0.07582671195268631,
+ 0.06100216135382652,
+ 0.017068108543753624,
+ -0.026241153478622437,
+ 0.10564620047807693,
+ -0.03126786649227142,
+ 0.04350806027650833,
+ 0.003581888973712921,
+ 0.035584595054388046,
+ -0.022946808487176895,
+ -0.010479421354830265,
+ -0.0021388386376202106,
+ -0.04464403912425041,
+ -0.0052290610037744045,
+ -0.01187809742987156,
+ 0.019084475934505463,
+ 0.03984452039003372,
+ -0.012552586384117603
+ ],
+ "result": "--- 结果 1 (相似度: 1.000) ---\n文件路径: C:\\Steam\\steamapps\\common\\RimWorld\\Data\\dll1.6\\Verse\\DamageWorker.txt\n\npublic class DamageWorker\n{\n\tpublic class DamageResult\n\t{\n\t\tpublic bool wounded;\n\n\t\tpublic bool headshot;\n\n\t\tpublic bool deflected;\n\n\t\tpublic bool stunned;\n\n\t\tpublic bool deflectedByMetalArmor;\n\n\t\tpublic bool diminished;\n\n\t\tpublic bool diminishedByMetalArmor;\n\n\t\tpublic Thing hitThing;\n\n\t\tpublic List parts;\n\n\t\tpublic List hediffs;\n\n\t\tpublic float totalDamageDealt;\n\n\t\tpublic BodyPartRecord LastHitPart\n\t\t{\n\t\t\tget\n\t\t\t{\n\t\t\t\tif (parts == null)\n\t\t\t\t{\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\t\t\t\tif (parts.Count <= 0)\n\t\t\t\t{\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\t\t\t\treturn parts[parts.Count - 1];\n\t\t\t}\n\t\t}\n\n\t\tpublic void AddPart(Thing hitThing, BodyPartRecord part)\n\t\t{\n\t\t\tif (this.hitThing != null && this.hitThing != hitThing)\n\t\t\t{\n\t\t\t\tLog.ErrorOnce(\"Single damage worker referring to multiple things; will cause issues with combat log\", 30667935);\n\t\t\t}\n\t\t\tthis.hitThing = hitThing;\n\t\t\tif (parts == null)\n\t\t\t{\n\t\t\t\tparts = new List();\n\t\t\t}\n\t\t\tparts.Add(part);\n\t\t}\n\n\t\tpublic void AddHediff(Hediff hediff)\n\t\t{\n\t\t\tif (hediffs == null)\n\t\t\t{\n\t\t\t\thediffs = new List();\n\t\t\t}\n\t\t\thediffs.Add(hediff);\n\t\t}\n\n\t\tpublic void AssociateWithLog(LogEntry_DamageResult log)\n\t\t{\n\t\t\tif (log == null)\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tThing thing = hitThing;\n\t\t\tPawn hitPawn = thing as Pawn;\n\t\t\tif (hitPawn != null)\n\t\t\t{\n\t\t\t\tList list = null;\n\t\t\t\tList recipientPartsDestroyed = null;\n\t\t\t\tif (!parts.NullOrEmpty())\n\t\t\t\t{\n\t\t\t\t\tlist = parts.Distinct().ToList();\n\t\t\t\t\trecipientPartsDestroyed = list.Select((BodyPartRecord part) => hitPawn.health.hediffSet.GetPartHealth(part) <= 0f).ToList();\n\t\t\t\t}\n\t\t\t\tlog.FillTargets(list, recipientPartsDestroyed, deflected);\n\t\t\t}\n\t\t\tif (hediffs != null)\n\t\t\t{\n\t\t\t\tfor (int i = 0; i < hediffs.Count; i++)\n\t\t\t\t{\n\t\t\t\t\thediffs[i].combatLogEntry = new WeakReference(log);\n\t\t\t\t\thediffs[i].combatLogText = log.ToGameStringFromPOV(null);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic DamageDef def;\n\n\tprivate const float ExplosionCamShakeMultiplier = 4f;\n\n\tprivate const float DamageToBuildingsFromFlammabilityMinFactor = 0.05f;\n\n\tprivate static List thingsToAffect = new List();\n\n\tprivate static List openCells = new List();\n\n\tprivate static List adjWallCells = new List();\n\n\tpublic virtual DamageResult Apply(DamageInfo dinfo, Thing victim)\n\t{\n\t\tDamageResult damageResult = new DamageResult();\n\t\tif (victim.SpawnedOrAnyParentSpawned)\n\t\t{\n\t\t\tImpactSoundUtility.PlayImpactSound(victim, dinfo.Def.impactSoundType, victim.MapHeld);\n\t\t}\n\t\tif (victim.def.useHitPoints && dinfo.Def.harmsHealth)\n\t\t{\n\t\t\tfloat num = dinfo.Amount;\n\t\t\tif (victim.def.category == ThingCategory.Building)\n\t\t\t{\n\t\t\t\tnum *= dinfo.Def.buildingDamageFactor;\n\t\t\t\tnum = ((victim.def.passability != Traversability.Impassable) ? (num * dinfo.Def.buildingDamageFactorPassable) : (num * dinfo.Def.buildingDamageFactorImpassable));\n\t\t\t\tif (dinfo.Def.scaleDamageToBuildingsBasedOnFlammability)\n\t\t\t\t{\n\t\t\t\t\tnum *= Mathf.Max(0.05f, victim.GetStatValue(StatDefOf.Flammability));\n\t\t\t\t}\n\t\t\t\tif (dinfo.Instigator is Pawn { IsShambler: not false })\n\t\t\t\t{\n\t\t\t\t\tnum *= 1.5f;\n\t\t\t\t}\n\t\t\t\tif (ModsConfig.BiotechActive && dinfo.Instigator != null && (dinfo.WeaponBodyPartGroup != null || (dinfo.Weapon != null && dinfo.Weapon.IsMeleeWeapon)) && victim.def.IsDoor)\n\t\t\t\t{\n\t\t\t\t\tnum *= dinfo.Instigator.GetStatValue(StatDefOf.MeleeDoorDamageFactor);\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (victim.def.category == ThingCategory.Plant)\n\t\t\t{\n\t\t\t\tnum *= dinfo.Def.plantDamageFactor;\n\t\t\t}\n\t\t\telse if (victim.def.IsCorpse)\n\t\t\t{\n\t\t\t\tnum *= dinfo.Def.corpseDamageFactor;\n\t\t\t}\n\t\t\tdamageResult.totalDamageDealt = Mathf.Min(victim.HitPoints, GenMath.RoundRandom(num));\n\t\t\tvictim.HitPoints -= Mathf.RoundToInt(damageResult.totalDamageDealt);\n\t\t\tif (victim.HitPoints <= 0)\n\t\t\t{\n\t\t\t\tvictim.HitPoints = 0;\n\t\t\t\tvictim.Kill(dinfo);\n\t\t\t}\n\t\t}\n\t\treturn damageResult;\n\t}\n\n\tpublic virtual void ExplosionStart(Explosion explosion, List cellsToAffect)\n\t{\n\t\tif (def.explosionHeatEnergyPerCell > float.Epsilon)\n\t\t{\n\t\t\tGenTemperature.PushHeat(explosion.Position, explosion.Map, def.explosionHeatEnergyPerCell * (float)cellsToAffect.Count);\n\t\t}\n\t\tif (explosion.doVisualEffects)\n\t\t{\n\t\t\tFleckMaker.Static(explosion.Position, explosion.Map, FleckDefOf.ExplosionFlash, explosion.radius * 6f);\n\t\t\tif (explosion.Map == Find.CurrentMap)\n\t\t\t{\n\t\t\t\tfloat magnitude = (explosion.Position.ToVector3Shifted() - Find.Camera.transform.position).magnitude;\n\t\t\t\tFind.CameraDriver.shaker.DoShake(4f * explosion.radius * explosion.screenShakeFactor / magnitude);\n\t\t\t}\n\t\t\tExplosionVisualEffectCenter(explosion);\n\t\t}\n\t}\n\n\tprotected virtual void ExplosionVisualEffectCenter(Explosion explosion)\n\t{\n\t\tfor (int i = 0; i < 4; i++)\n\t\t{\n\t\t\tFleckMaker.ThrowSmoke(explosion.Position.ToVector3Shifted() + Gen.RandomHorizontalVector(explosion.radius * 0.7f), explosion.Map, explosion.radius * 0.6f);\n\t\t}\n\t\tif (def.explosionCenterFleck != null)\n\t\t{\n\t\t\tFleckMaker.Static(explosion.Position.ToVector3Shifted(), explosion.Map, def.explosionCenterFleck);\n\t\t}\n\t\telse if (def.explosionCenterMote != null)\n\t\t{\n\t\t\tMoteMaker.MakeStaticMote(explosion.Position.ToVector3Shifted(), explosion.Map, def.explosionCenterMote);\n\t\t}\n\t\tif (def.explosionCenterEffecter != null)\n\t\t{\n\t\t\tdef.explosionCenterEffecter.Spawn(explosion.Position, explosion.Map, Vector3.zero);\n\t\t}\n\t\tif (def.explosionInteriorMote == null && def.explosionInteriorFleck == null && def.explosionInteriorEffecter == null)\n\t\t{\n\t\t\treturn;\n\t\t}\n\t\tint num = Mathf.RoundToInt(MathF.PI * explosion.radius * explosion.radius / 6f * def.explosionInteriorCellCountMultiplier);\n\t\tfor (int j = 0; j < num; j++)\n\t\t{\n\t\t\tVector3 vector = Gen.RandomHorizontalVector(explosion.radius * def.explosionInteriorCellDistanceMultiplier);\n\t\t\tif (def.explosionInteriorEffecter != null)\n\t\t\t{\n\t\t\t\tVector3 vect = explosion.Position.ToVector3Shifted() + vector;\n\t\t\t\tdef.explosionInteriorEffecter.Spawn(explosion.Position, vect.ToIntVec3(), explosion.Map);\n\t\t\t}\n\t\t\telse if (def.explosionInteriorFleck != null)\n\t\t\t{\n\t\t\t\tFleckMaker.ThrowExplosionInterior(explosion.Position.ToVector3Shifted() + vector, explosion.Map, def.explosionInteriorFleck);\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tMoteMaker.ThrowExplosionInteriorMote(explosion.Position.ToVector3Shifted() + vector, explosion.Map, def.explosionInteriorMote);\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic virtual void ExplosionAffectCell(Explosion explosion, IntVec3 c, List damagedThings, List ignoredThings, bool canThrowMotes)\n\t{\n\t\tif (explosion.doVisualEffects && (def.explosionCellMote != null || def.explosionCellFleck != null) && canThrowMotes)\n\t\t{\n\t\t\tfloat t = Mathf.Clamp01((explosion.Position - c).LengthHorizontal / explosion.radius);\n\t\t\tColor color = Color.Lerp(def.explosionColorCenter, def.explosionColorEdge, t);\n\t\t\tif (def.explosionCellMote != null)\n\t\t\t{\n\t\t\t\tif (c.GetFirstThing(explosion.Map, def.explosionCellMote) is Mote mote)\n\t\t\t\t{\n\t\t\t\t\tmote.spawnTick = Find.TickManager.TicksGame;\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\tMoteMaker.ThrowExplosionCell(c, explosion.Map, def.explosionCellMote, color);\n\t\t\t\t}\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tFleckMaker.ThrowExplosionCell(c, explosion.Map, def.explosionCellFleck, color);\n\t\t\t}\n\t\t}\n\t\tif (def.explosionCellEffecter != null && (def.explosionCellEffecterMaxRadius < float.Epsilon || c.InHorDistOf(explosion.Position, def.explosionCellEffecterMaxRadius)) && Rand.Chance(def.explosionCellEffecterChance))\n\t\t{\n\t\t\tdef.explosionCellEffecter.Spawn(explosion.Position, c, explosion.Map);\n\t\t}\n\t\tthingsToAffect.Clear();\n\t\tfloat num = float.MinValue;\n\t\tbool flag = false;\n\t\tList list = explosion.Map.thingGrid.ThingsListAt(c);\n\t\tfor (int i = 0; i < list.Count; i++)\n\t\t{\n\t\t\tThing thing = list[i];\n\t\t\tif (thing.def.category != ThingCategory.Mote && thing.def.category != ThingCategory.Ethereal)\n\t\t\t{\n\t\t\t\tthingsToAffect.Add(thing);\n\t\t\t\tif (thing.def.Fillage == FillCategory.Full && thing.def.Altitude > num)\n\t\t\t\t{\n\t\t\t\t\tflag = true;\n\t\t\t\t\tnum = thing.def.Altitude;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tfor (int j = 0; j < thingsToAffect.Count; j++)\n\t\t{\n\t\t\tif (thingsToAffect[j].def.Altitude >= num)\n\t\t\t{\n\t\t\t\tExplosionDamageThing(explosion, thingsToAffect[j], damagedThings, ignoredThings, c);\n\t\t\t}\n\t\t}\n\t\tif (!flag)\n\t\t{\n\t\t\tExplosionDamageTerrain(explosion, c);\n\t\t}\n\t\tif (def.explosionSnowMeltAmount > 0.0001f)\n\t\t{\n\t\t\tfloat lengthHorizontal = (c - explosion.Position).LengthHorizontal;\n\t\t\tfloat num2 = 1f - lengthHorizontal / explosion.radius;\n\t\t\tif (num2 > 0f)\n\t\t\t{\n\t\t\t\texplosion.Map.snowGrid.AddDepth(c, (0f - num2) * def.explosionSnowMeltAmount);\n\t\t\t}\n\t\t}\n\t\tif (def != DamageDefOf.Bomb && def != DamageDefOf.Flame)\n\t\t{\n\t\t\treturn;\n\t\t}\n\t\tList list2 = explosion.Map.listerThings.ThingsOfDef(ThingDefOf.RectTrigger);\n\t\tfor (int k = 0; k < list2.Count; k++)\n\t\t{\n\t\t\tRectTrigger rectTrigger = (RectTrigger)list2[k];\n\t\t\tif (rectTrigger.activateOnExplosion && rectTrigger.Rect.Contains(c))\n\t\t\t{\n\t\t\t\trectTrigger.ActivatedBy(null);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected virtual void ExplosionDamageThing(Explosion explosion, Thing t, List damagedThings, List ignoredThings, IntVec3 cell)\n\t{\n\t\tif (t.def.category == ThingCategory.Mote || t.def.category == ThingCategory.Ethereal || damagedThings.Contains(t))\n\t\t{\n\t\t\treturn;\n\t\t}\n\t\tdamagedThings.Add(t);\n\t\tif (ignoredThings != null && ignoredThings.Contains(t))\n\t\t{\n\t\t\treturn;\n\t\t}\n\t\tif (def == DamageDefOf.Bomb && t.def == ThingDefOf.Fire && !t.Destroyed)\n\t\t{\n\t\t\tt.Destroy();\n\t\t\treturn;\n\t\t}\n\t\tDamageInfo dinfo = new DamageInfo(angle: (!(t.Position == explosion.Position)) ? (t.Position - explosion.Position).AngleFlat : ((float)Rand.RangeInclusive(0, 359)), def: def, amount: explosion.GetDamageAmountAt(cell), armorPenetration: explosion.GetArmorPenetrationAt(cell), instigator: explosion.instigator, hitPart: null, weapon: explosion.weapon, category: DamageInfo.SourceCategory.ThingOrUnknown, intendedTarget: explosion.intendedTarget);\n\t\tif (def.explosionAffectOutsidePartsOnly)\n\t\t{\n\t\t\tdinfo.SetBodyRegion(BodyPartHeight.Undefined, BodyPartDepth.Outside);\n\t\t}\n\t\tBattleLogEntry_ExplosionImpact battleLogEntry_ExplosionImpact = null;\n\t\tPawn pawn = t as Pawn;\n\t\tif (pawn != null)\n\t\t{\n\t\t\tbattleLogEntry_ExplosionImpact = new BattleLogEntry_ExplosionImpact(explosion.instigator, t, explosion.weapon, explosion.projectile, def);\n\t\t\tFind.BattleLog.Add(battleLogEntry_ExplosionImpact);\n\t\t}\n\t\tDamageResult damageResult = t.TakeDamage(dinfo);\n\t\tdamageResult.AssociateWithLog(battleLogEntry_ExplosionImpact);\n\t\tif (pawn != null && damageResult.wounded && pawn.stances != null)\n\t\t{\n\t\t\tpawn.stances.stagger.StaggerFor(95);\n\t\t}\n\t}\n\n\tprotected virtual void ExplosionDamageTerrain(Explosion explosion, IntVec3 c)\n\t{\n\t\tif (def == DamageDefOf.Bomb && explosion.Map.terrainGrid.CanRemoveTopLayerAt(c))\n\t\t{\n\t\t\tTerrainDef terrain = c.GetTerrain(explosion.Map);\n\t\t\tif (!(terrain.destroyOnBombDamageThreshold < 0f) && (float)explosion.GetDamageAmountAt(c) >= terrain.destroyOnBombDamageThreshold)\n\t\t\t{\n\t\t\t\texplosion.Map.terrainGrid.Notify_TerrainDestroyed(c);\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic IEnumerable ExplosionCellsToHit(Explosion explosion)\n\t{\n\t\treturn ExplosionCellsToHit(explosion.Position, explosion.Map, explosion.radius, explosion.needLOSToCell1, explosion.needLOSToCell2, explosion.affectedAngle);\n\t}\n\n\tpublic virtual IEnumerable ExplosionCellsToHit(IntVec3 center, Map map, float radius, IntVec3? needLOSToCell1 = null, IntVec3? needLOSToCell2 = null, FloatRange? affectedAngle = null)\n\t{\n\t\topenCells.Clear();\n\t\tadjWallCells.Clear();\n\t\tfloat num = affectedAngle?.min ?? 0f;\n\t\tfloat num2 = affectedAngle?.max ?? 0f;\n\t\tint num3 = GenRadial.NumCellsInRadius(radius);\n\t\tfor (int i = 0; i < num3; i++)\n\t\t{\n\t\t\tIntVec3 intVec = center + GenRadial.RadialPattern[i];\n\t\t\tif (!intVec.InBounds(map) || !GenSight.LineOfSight(center, intVec, map, skipFirstCell: true))\n\t\t\t{\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif (affectedAngle.HasValue)\n\t\t\t{\n\t\t\t\tfloat lengthHorizontal = (intVec - center).LengthHorizontal;\n\t\t\t\tfloat num4 = lengthHorizontal / radius;\n\t\t\t\tif (!(lengthHorizontal > 0.5f))\n\t\t\t\t{\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tfloat num5 = Mathf.Atan2(-(intVec.z - center.z), intVec.x - center.x) * 57.29578f;\n\t\t\t\tfloat num6 = num;\n\t\t\t\tfloat num7 = num2;\n\t\t\t\tif (num5 - num6 < -0.5f * num4 || num5 - num7 > 0.5f * num4)\n\t\t\t\t{\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (needLOSToCell1.HasValue || needLOSToCell2.HasValue)\n\t\t\t{\n\t\t\t\tbool flag = needLOSToCell1.HasValue && GenSight.LineOfSight(needLOSToCell1.Value, intVec, map);\n\t\t\t\tbool flag2 = needLOSToCell2.HasValue && GenSight.LineOfSight(needLOSToCell2.Value, intVec, map);\n\t\t\t\tif (!flag && !flag2)\n\t\t\t\t{\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t}\n\t\t\topenCells.Add(intVec);\n\t\t}\n\t\tfor (int j = 0; j < openCells.Count; j++)\n\t\t{\n\t\t\tIntVec3 intVec2 = openCells[j];\n\t\t\tBuilding edifice = intVec2.GetEdifice(map);\n\t\t\tif (!intVec2.Walkable(map) || (edifice != null && edifice.def.Fillage == FillCategory.Full && !(edifice is Building_Door { Open: not false })))\n\t\t\t{\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tfor (int k = 0; k < 4; k++)\n\t\t\t{\n\t\t\t\tIntVec3 intVec3 = intVec2 + GenAdj.CardinalDirections[k];\n\t\t\t\tif (intVec3.InHorDistOf(center, radius) && intVec3.InBounds(map) && !intVec3.Standable(map) && intVec3.GetEdifice(map) != null && !openCells.Contains(intVec3) && !adjWallCells.Contains(intVec3))\n\t\t\t\t{\n\t\t\t\t\tadjWallCells.Add(intVec3);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn openCells.Concat(adjWallCells);\n\t}\n}\n\n",
+ "timestamp": "2025-08-26 18:00:07,719"
+ },
+ "Hediff-伤害减免-伤害抵挡": {
+ "keywords": [
+ "Hediff",
+ "伤害抵挡",
+ "伤害减免"
+ ],
+ "question": "RimWorld Hediff 伤害抵挡 或 伤害减免",
+ "embedding": [
+ 0.039701830595731735,
+ -0.0089564248919487,
+ 0.03833378478884697,
+ -0.015533020719885826,
+ 0.015889283269643784,
+ -0.03237708657979965,
+ 0.003486023051664233,
+ -0.018112357705831528,
+ 0.016858315095305443,
+ 0.06669223308563232,
+ 0.004410522989928722,
+ -0.0076311309821903706,
+ -0.0126259233802557,
+ -0.025308849290013313,
+ 0.04905014485120773,
+ -0.016530554741621017,
+ -0.026334883645176888,
+ -0.106251560151577,
+ 0.01364483218640089,
+ 0.006526718847453594,
+ -0.0476250983774662,
+ -0.03237708657979965,
+ -0.009704574942588806,
+ 0.017314329743385315,
+ -0.011884898878633976,
+ 0.01825486123561859,
+ -0.010531103238463402,
+ -0.0015800216933712363,
+ -0.0012397915124893188,
+ 0.0019434088608250022,
+ -0.03998684138059616,
+ -0.04913564771413803,
+ 0.015590022318065166,
+ 0.01163551490753889,
+ -0.04203891009092331,
+ 0.06173307076096535,
+ -0.029498489573597908,
+ 0.03813427686691284,
+ 0.01787009835243225,
+ 0.0006822416326031089,
+ -0.02107645571231842,
+ -0.01358783058822155,
+ 0.03049602173268795,
+ 0.011913399212062359,
+ -0.049392156302928925,
+ 0.030439021065831184,
+ 0.031522057950496674,
+ -0.055690865963697433,
+ -0.027574675157666206,
+ 0.012476293370127678,
+ 0.06030802056193352,
+ -0.030695529654622078,
+ -0.047539595514535904,
+ 0.009405314922332764,
+ -0.006729788146913052,
+ -0.005440119653940201,
+ 0.0006314743077382445,
+ 0.009440941736102104,
+ -0.012276786379516125,
+ 0.00658015813678503,
+ -0.0032615780364722013,
+ 0.013708959333598614,
+ -0.038818299770355225,
+ -0.03137955069541931,
+ 0.002039599698036909,
+ -0.016701560467481613,
+ -0.10904465615749359,
+ -0.008557411842048168,
+ 0.03551219031214714,
+ -0.006423403043299913,
+ -0.0251663438975811,
+ 0.0205776896327734,
+ 0.05671690031886101,
+ -0.024297064170241356,
+ -0.015932034701108932,
+ 0.04913564771413803,
+ -0.000777541717980057,
+ 0.02825869806110859,
+ -0.033688127994537354,
+ 0.03736475110054016,
+ -0.017941351979970932,
+ 0.007716633845120668,
+ -0.033260613679885864,
+ -0.020477935671806335,
+ 0.05204274505376816,
+ 0.016459301114082336,
+ 0.0001445087546017021,
+ 0.01809810660779476,
+ -0.024311315268278122,
+ 0.07860563695430756,
+ 0.01836886629462242,
+ 0.015917783603072166,
+ -0.005294052418321371,
+ -0.020207177847623825,
+ 0.011143873445689678,
+ 0.02096245251595974,
+ -0.009562070481479168,
+ 0.08322279155254364,
+ -0.009526444599032402,
+ 0.003683748422190547,
+ -0.036965738981962204,
+ 0.02119046077132225,
+ -0.02254425548017025,
+ 0.03146505355834961,
+ -0.02713290974497795,
+ 0.03257659077644348,
+ 0.012732801958918571,
+ 0.03508467599749565,
+ -0.03454315662384033,
+ -0.030211012810468674,
+ -0.01779884658753872,
+ 0.029869001358747482,
+ -0.029926003888249397,
+ 0.06293010711669922,
+ 0.020249929279088974,
+ 0.019280895590782166,
+ 0.01449273619800806,
+ 0.0028126880060881376,
+ -0.01906713843345642,
+ 0.004417648073285818,
+ 0.03964482992887497,
+ 0.015447517856955528,
+ -0.0664072260260582,
+ -0.04845162481069565,
+ 0.04565853253006935,
+ -0.03277609869837761,
+ 0.044147979468107224,
+ 0.01836886629462242,
+ -0.004813098814338446,
+ 0.017699092626571655,
+ 0.008115647360682487,
+ 0.004830911755561829,
+ 0.023869549855589867,
+ 0.00999671034514904,
+ 0.0004996573552489281,
+ 0.00700767245143652,
+ 0.009241434745490551,
+ 0.020164426416158676,
+ -0.0755845308303833,
+ -0.03482816740870476,
+ -0.06327211856842041,
+ -0.04092737287282944,
+ 0.03194957226514816,
+ -0.012519044801592827,
+ 0.09998135268688202,
+ -0.03830528259277344,
+ -0.013167441822588444,
+ 0.040129344910383224,
+ -0.045060012489557266,
+ -0.00884242169559002,
+ 0.025622358545660973,
+ -0.0025383662432432175,
+ -0.008179774507880211,
+ 0.07284843921661377,
+ 0.0003235303738620132,
+ -0.009127430617809296,
+ 0.020520687103271484,
+ -0.01073060929775238,
+ -0.03679473325610161,
+ 0.00286078336648643,
+ 0.01364483218640089,
+ -0.010352971963584423,
+ -0.03830528259277344,
+ 0.011450259014964104,
+ 0.04309344291687012,
+ -0.049848172813653946,
+ -0.03166456148028374,
+ -0.023100024089217186,
+ 0.007143051829189062,
+ -0.005525622516870499,
+ -0.009483693167567253,
+ -0.01883913204073906,
+ -0.05708741396665573,
+ -0.015618523582816124,
+ -0.01024609338492155,
+ 0.023869549855589867,
+ -0.00669772457331419,
+ 0.044489990919828415,
+ 0.03061002679169178,
+ 0.02536584995687008,
+ -0.01530501339584589,
+ 0.0019077827455475926,
+ 0.012184158898890018,
+ 0.014506986364722252,
+ 0.004912852309644222,
+ -0.05771443620324135,
+ 0.012618797831237316,
+ 0.06749026477336884,
+ -0.029669495299458504,
+ 0.032833099365234375,
+ -0.002096601529046893,
+ 0.09029103070497513,
+ 0.0065195937640964985,
+ -0.026349132880568504,
+ 0.016430800780653954,
+ -0.03135105222463608,
+ -0.02536584995687008,
+ 0.042209915816783905,
+ -0.02223074622452259,
+ -0.04468949884176254,
+ 0.007452999707311392,
+ -0.06800328195095062,
+ -0.006526718847453594,
+ -0.0038690047804266214,
+ 0.050902705639600754,
+ -0.005165798123925924,
+ -0.021902984008193016,
+ -0.011336254887282848,
+ 0.010360097512602806,
+ -0.004563715308904648,
+ 0.0116212647408247,
+ -0.004225266631692648,
+ 0.05503534525632858,
+ -0.012711426243185997,
+ 0.04665606468915939,
+ 0.013124690391123295,
+ -0.022487254813313484,
+ 0.025622358545660973,
+ 0.022558506578207016,
+ 0.025650860741734505,
+ -0.06030802056193352,
+ 0.03753575682640076,
+ -0.04531652107834816,
+ -0.019865166395902634,
+ 0.01283255498856306,
+ 0.012212659232318401,
+ 0.012725676409900188,
+ -0.0109657421708107,
+ 0.08419182151556015,
+ 0.024040555581450462,
+ -0.011115373112261295,
+ 0.02288626693189144,
+ -0.08259576559066772,
+ -0.00841490738093853,
+ -0.004813098814338446,
+ 0.0003698444343172014,
+ -0.01757083833217621,
+ -0.06657823175191879,
+ 0.009098930284380913,
+ -0.003557275515049696,
+ 0.02798793837428093,
+ 0.03280460089445114,
+ -0.014556863345205784,
+ 0.014036720618605614,
+ 8.605952461948618e-05,
+ 0.01660180650651455,
+ -0.021418467164039612,
+ 0.010431349277496338,
+ 0.005732254590839148,
+ -0.03103754110634327,
+ -0.0042288294062018394,
+ -0.03286160156130791,
+ 0.00015675525355618447,
+ -0.04531652107834816,
+ 0.02656289003789425,
+ 0.0204921867698431,
+ 0.04454699531197548,
+ -0.02200273796916008,
+ -0.012519044801592827,
+ -0.005981638096272945,
+ -0.02281501516699791,
+ 0.031237047165632248,
+ -0.0142219765111804,
+ 0.036538224667310715,
+ -0.04400547593832016,
+ -0.014442859217524529,
+ 0.03226308152079582,
+ -0.066065214574337,
+ -0.003434365149587393,
+ 0.015376265160739422,
+ -0.01899588666856289,
+ 0.029897501692175865,
+ 0.03061002679169178,
+ -0.01825486123561859,
+ -0.0028981908690184355,
+ -0.02690490148961544,
+ 0.021945735439658165,
+ -0.031094541773200035,
+ 0.0019095640163868666,
+ -0.018468618392944336,
+ -0.00205563148483634,
+ -0.018981635570526123,
+ -0.0029640994034707546,
+ -0.05084570497274399,
+ -0.0410698764026165,
+ 0.04109837859869003,
+ -0.0212332122027874,
+ -0.04511701315641403,
+ -0.013131815008819103,
+ 0.00674403877928853,
+ -0.04087036848068237,
+ -0.03745025396347046,
+ 0.023413535207509995,
+ 0.05184323713183403,
+ 0.011685391888022423,
+ -0.0034397090785205364,
+ 0.016231294721364975,
+ 0.004335707984864712,
+ -0.022301997989416122,
+ 0.02617812715470791,
+ -0.02378404699265957,
+ -0.04300794005393982,
+ -0.04477500170469284,
+ -0.006369963753968477,
+ 0.0345146581530571,
+ -0.03793477267026901,
+ -0.036224715411663055,
+ -0.06646423041820526,
+ 0.02215949259698391,
+ -0.12004602700471878,
+ 0.0003306556027382612,
+ -0.009163057431578636,
+ -0.06264510005712509,
+ -0.002768155187368393,
+ 0.008671415969729424,
+ 0.014471360482275486,
+ -0.038191281259059906,
+ -0.020249929279088974,
+ -0.01391559187322855,
+ 0.04531652107834816,
+ -0.03662372753024101,
+ -0.03562619537115097,
+ -0.08299478143453598,
+ -0.004146888852119446,
+ -0.0038405037485063076,
+ 0.019594406709074974,
+ 0.016730060800909996,
+ -0.0035768698435276747,
+ 0.010687857866287231,
+ -0.032177578657865524,
+ 0.006765414495021105,
+ 0.032092075794935226,
+ -0.013267194852232933,
+ 0.049819670617580414,
+ 0.01368045900017023,
+ 0.0035323372576385736,
+ 0.025893118232488632,
+ 0.015846531838178635,
+ 0.0027307476848363876,
+ -0.009198683314025402,
+ -0.019822414964437485,
+ -0.045373521745204926,
+ -0.012946559116244316,
+ -0.026705395430326462,
+ 0.02972649596631527,
+ 0.014863247983157635,
+ 0.044176481664180756,
+ 0.036994241178035736,
+ 0.02617812715470791,
+ 0.011044120416045189,
+ 0.007210741750895977,
+ 0.020249929279088974,
+ -0.001929158461280167,
+ -0.025223346427083015,
+ 0.008407781831920147,
+ 0.0014392982702702284,
+ -0.027731429785490036,
+ 0.00099842413328588,
+ -0.04337845370173454,
+ 0.024767329916357994,
+ 0.008122771978378296,
+ -0.01942340098321438,
+ -0.011692517437040806,
+ -0.02733241580426693,
+ 0.002321046544238925,
+ -0.003794189775362611,
+ 0.037307750433683395,
+ 0.014065221883356571,
+ -0.05512084811925888,
+ 0.032177578657865524,
+ -0.024653326719999313,
+ -0.05905397981405258,
+ 0.01678706333041191,
+ -0.00036605916102416813,
+ -0.004813098814338446,
+ 0.036110710352659225,
+ 0.024411069229245186,
+ -0.009654698893427849,
+ -0.007331870961934328,
+ -0.0014410795411095023,
+ -0.015447517856955528,
+ 0.0051942989230155945,
+ -0.01048122625797987,
+ -0.07307644933462143,
+ -0.005796381738036871,
+ 0.030752530321478844,
+ 0.047425590455532074,
+ 0.0039972588419914246,
+ 0.02528034709393978,
+ -0.03477116674184799,
+ 0.05611838027834892,
+ 0.02003617212176323,
+ -0.007780760992318392,
+ -0.019979169592261314,
+ 0.03411564230918884,
+ 0.011186624877154827,
+ -0.001638804911635816,
+ 0.006523156072944403,
+ 0.06372813880443573,
+ -0.015661275014281273,
+ 0.005828445311635733,
+ -0.025237595662474632,
+ -0.05563386529684067,
+ -0.03918881341814995,
+ 0.03830528259277344,
+ 0.009163057431578636,
+ 0.0035056176129728556,
+ -0.014692242257297039,
+ -0.01682981476187706,
+ 0.03214907646179199,
+ 0.02374129556119442,
+ -0.03747875615954399,
+ 0.03374513238668442,
+ 0.036110710352659225,
+ -0.01798410341143608,
+ -0.009683199226856232,
+ 0.023214029148221016,
+ 0.000514353159815073,
+ 0.03511317819356918,
+ -0.050275687128305435,
+ -0.033403120934963226,
+ 0.026534389704465866,
+ -0.048508625477552414,
+ -0.02929898165166378,
+ -0.03884680196642876,
+ 0.12415016442537308,
+ -0.009953958913683891,
+ -0.03870429843664169,
+ -0.0396733283996582,
+ 0.020862698554992676,
+ 0.003502054838463664,
+ -0.020135924220085144,
+ -0.023057272657752037,
+ 0.035341184586286545,
+ 0.004538777284324169,
+ -0.015319263562560081,
+ 0.03331761807203293,
+ 0.021489720791578293,
+ -0.0051942989230155945,
+ -0.01976541243493557,
+ -0.006402027327567339,
+ 0.013509453274309635,
+ 0.06469716876745224,
+ 4.6007891796762124e-05,
+ -0.0929701179265976,
+ -0.019622907042503357,
+ 0.011550012044608593,
+ 0.01651630364358425,
+ 0.012996436096727848,
+ 0.030581524595618248,
+ -0.03679473325610161,
+ -0.028116192668676376,
+ 0.01768484339118004,
+ 0.046114545315504074,
+ -0.011314879171550274,
+ 0.03323211520910263,
+ 0.012262536212801933,
+ -0.029042473062872887,
+ -0.0016031787963584065,
+ 0.01872512698173523,
+ 0.014763494953513145,
+ 0.0007873388822190464,
+ -0.03901780769228935,
+ 0.02855795808136463,
+ 0.01229103747755289,
+ 0.015347764827311039,
+ 0.0009627979015931487,
+ 0.025807615369558334,
+ 0.01583228074014187,
+ -0.0065195937640964985,
+ -0.014734993688762188,
+ 0.016202792525291443,
+ -0.015390516258776188,
+ -0.023185526952147484,
+ -0.00533680384978652,
+ -0.04235241934657097,
+ 0.02272951230406761,
+ 0.047881606966257095,
+ 0.016730060800909996,
+ 0.0225870069116354,
+ 0.022330498322844505,
+ 0.04104137420654297,
+ -0.02500958926975727,
+ -0.005215674638748169,
+ -0.10454150289297104,
+ -0.017300080507993698,
+ 0.0015443955780938268,
+ -0.003847629064694047,
+ 0.025465603917837143,
+ -0.014464234933257103,
+ -0.05118771642446518,
+ -0.007025485392659903,
+ 0.024639075621962547,
+ 0.09012002497911453,
+ 0.00703617325052619,
+ 0.051900241523981094,
+ -0.04030035063624382,
+ -0.05740092322230339,
+ -0.04030035063624382,
+ -0.042209915816783905,
+ -0.028016438707709312,
+ 0.02941298671066761,
+ -0.019252395257353783,
+ 0.007652506697922945,
+ 0.012476293370127678,
+ -0.0018035761313512921,
+ 0.01613154076039791,
+ 0.0126259233802557,
+ -0.057885441929101944,
+ -0.009640447795391083,
+ -0.0014090159675106406,
+ -0.019209643825888634,
+ 0.027075907215476036,
+ -0.0030923536978662014,
+ -0.026007121428847313,
+ 0.035569190979003906,
+ -0.005568374413996935,
+ -0.0332036130130291,
+ 0.0008452314650639892,
+ 0.012405040673911572,
+ -0.01725732907652855,
+ -0.007638256065547466,
+ 0.05794244259595871,
+ -0.0258218664675951,
+ -0.02941298671066761,
+ -0.028928469866514206,
+ 0.007445874623954296,
+ -0.007004109676927328,
+ 0.004136200994253159,
+ -0.007445874623954296,
+ -0.002613181248307228,
+ -0.01714332401752472,
+ -0.0012816523667424917,
+ 0.008949300274252892,
+ 0.03739325329661369,
+ 0.022758012637495995,
+ 0.023912301287055016,
+ 0.0037407504860311747,
+ 0.0543513223528862,
+ 0.026733895763754845,
+ 0.02030692994594574,
+ 0.014079472050070763,
+ -0.010167716071009636,
+ 0.04409097880125046,
+ 0.028785964474081993,
+ 0.054493825882673264,
+ 0.03656672686338425,
+ -0.0370512418448925,
+ 0.022401751950383186,
+ -0.022301997989416122,
+ 0.01034584641456604,
+ 0.04049985855817795,
+ -0.05192873999476433,
+ -0.07222142070531845,
+ 0.012269661761820316,
+ -0.010445600375533104,
+ 0.029583992436528206,
+ 0.05098820850253105,
+ 0.004549465142190456,
+ -0.006042202468961477,
+ -0.00037986430106684566,
+ 0.0034646473359316587,
+ 0.008621538989245892,
+ -0.031237047165632248,
+ -0.0030086322221904993,
+ 0.020007669925689697,
+ -0.06412714719772339,
+ -0.015803780406713486,
+ -0.042437922209501266,
+ 0.029697995632886887,
+ -0.04577253386378288,
+ 0.021917235106229782,
+ -0.02200273796916008,
+ -0.0019950668793171644,
+ -0.011108247563242912,
+ -0.04967716708779335,
+ 0.03334611654281616,
+ -0.004150451626628637,
+ 0.08441983163356781,
+ -0.015390516258776188,
+ -0.03377363085746765,
+ 0.017813097685575485,
+ 0.032092075794935226,
+ -0.009832829236984253,
+ 0.022601258009672165,
+ 0.0056431894190609455,
+ -0.0022729511838406324,
+ 0.0014268291415646672,
+ -0.0031778565607964993,
+ 0.05532035604119301,
+ 0.04924965277314186,
+ 0.04588653892278671,
+ -0.05292627587914467,
+ -0.01497725211083889,
+ -0.02446806989610195,
+ 0.014963001944124699,
+ -0.007766510359942913,
+ 0.04149739071726799,
+ -0.0026594954542815685,
+ 0.02555110678076744,
+ 0.015661275014281273,
+ -0.02941298671066761,
+ 0.005443682428449392,
+ -0.018311863765120506,
+ 0.055405858904123306,
+ -0.0030763219110667706,
+ -0.033061109483242035,
+ -0.010174840688705444,
+ 0.02509509213268757,
+ -0.029355984181165695,
+ -0.020520687103271484,
+ -0.0011070839827880263,
+ 0.020563438534736633,
+ 0.01092299073934555,
+ 0.02238750085234642,
+ 0.016544803977012634,
+ 0.0023851736914366484,
+ 0.0029676619451493025,
+ -0.009234309196472168,
+ -0.010666482150554657,
+ -0.02458207495510578,
+ 0.0007330089574679732,
+ 0.012262536212801933,
+ -0.02161797508597374,
+ -0.03254809230566025,
+ -0.04095587134361267,
+ -0.029811998829245567,
+ 0.021062206476926804,
+ 0.020606189966201782,
+ -0.03277609869837761,
+ 0.008742667734622955,
+ 0.02679089829325676,
+ 0.0038547541480511427,
+ 0.021603723987936974,
+ 0.013851464726030827,
+ -0.03782076761126518,
+ -0.04195340722799301,
+ -0.01806960627436638,
+ -0.03474266454577446,
+ 0.017813097685575485,
+ 0.046114545315504074,
+ 0.03160756081342697,
+ -0.027660178020596504,
+ 0.028614958748221397,
+ 0.025451352819800377,
+ -0.06253109872341156,
+ -0.01757083833217621,
+ -0.026776647195219994,
+ -0.04773909971117973,
+ 0.007638256065547466,
+ -0.012953684665262699,
+ 0.05073169991374016,
+ 0.004399835132062435,
+ 0.009191557765007019,
+ -0.023114275187253952,
+ 0.03995833918452263,
+ 0.0029694433324038982,
+ -0.008550286293029785,
+ -0.009241434745490551,
+ -0.022130992263555527,
+ -0.023983554914593697,
+ -0.02579336427152157,
+ 0.008101396262645721,
+ 0.015846531838178635,
+ 0.02200273796916008,
+ -0.013630582019686699,
+ 0.009298436343669891,
+ -0.009170182049274445,
+ 0.0021340090315788984,
+ 0.014963001944124699,
+ -0.055833373218774796,
+ -0.008072895929217339,
+ 0.01416497491300106,
+ 0.010780486278235912,
+ 0.03725074976682663,
+ 0.008065770380198956,
+ -0.014749244786798954,
+ 0.00918443314731121,
+ 0.012191283516585827,
+ -0.0018258424242958426,
+ -0.029056724160909653,
+ -0.008578787557780743,
+ -0.016901066526770592,
+ -0.005489996634423733,
+ 0.00011934775102417916,
+ -0.007474375423043966,
+ 0.006277335342019796,
+ 0.028016438707709312,
+ -0.0032027948182076216,
+ 0.022758012637495995,
+ 0.02084844931960106,
+ -0.08282377570867538,
+ -0.000916483870241791,
+ 0.009170182049274445,
+ -0.024453820660710335,
+ 0.004606466740369797,
+ -0.06144805997610092,
+ 0.009490817785263062,
+ 0.022900518029928207,
+ 0.01795560121536255,
+ 0.13828663527965546,
+ -0.020976703613996506,
+ -0.041981905698776245,
+ 0.05520635098218918,
+ -0.009647573344409466,
+ -0.04249492287635803,
+ 0.04104137420654297,
+ -0.011457384563982487,
+ -0.005415181629359722,
+ -0.06840229034423828,
+ 0.020549189299345016,
+ 0.02570786140859127,
+ -0.0096119474619627,
+ 0.006654973141849041,
+ -0.018582623451948166,
+ 0.00991833209991455,
+ 0.045145515352487564,
+ 0.001861468655988574,
+ -0.05523485317826271,
+ 0.014749244786798954,
+ 0.0020609754137694836,
+ 0.02941298671066761,
+ -0.00036450050538405776,
+ 0.008058644831180573,
+ -0.0396733283996582,
+ 0.039388321340084076,
+ -0.0450030080974102,
+ -0.004264455288648605,
+ 0.011200875975191593,
+ 0.048081111162900925,
+ -0.02154672145843506,
+ -0.021988486871123314,
+ 0.0009458754793740809,
+ 0.03636721894145012,
+ 0.038932304829359055,
+ 0.04201040789484978,
+ 0.002807344077154994,
+ 0.012269661761820316,
+ -0.010737734846770763,
+ -0.03454315662384033,
+ 0.0046385303139686584,
+ -0.026605641469359398,
+ 0.057343922555446625,
+ 0.0032348583918064833,
+ 0.1467229127883911,
+ 0.011464509181678295,
+ 0.01798410341143608,
+ -0.005532748065888882,
+ 0.0583699569106102,
+ 0.010203341953456402,
+ 0.009526444599032402,
+ -0.010694983415305614,
+ 0.019793912768363953,
+ -0.037193745374679565,
+ -0.015761028975248337,
+ 0.011913399212062359,
+ -0.00938393920660019,
+ 0.01057385466992855,
+ -0.007445874623954296,
+ 0.03374513238668442,
+ -0.022359000518918037,
+ -0.058227453380823135,
+ 0.030239513143897057,
+ 0.005058919545263052,
+ 0.01606028899550438,
+ 0.030353518202900887,
+ 0.007738009560853243,
+ 0.008229650557041168,
+ -0.01757083833217621,
+ -0.005048231687396765,
+ -0.027959438040852547,
+ -0.015775278210639954,
+ -0.029270481318235397,
+ 0.02069169282913208,
+ 0.03736475110054016,
+ 0.03613921254873276,
+ -0.015533020719885826,
+ -0.018311863765120506,
+ -0.014948750846087933,
+ -0.0002311249409103766,
+ -0.04226691648364067,
+ -0.02728966437280178,
+ 0.0705113634467125,
+ -0.003405864117667079,
+ 0.012953684665262699,
+ 0.03346012160181999,
+ 0.05044669285416603,
+ -0.0008853109320625663,
+ 0.03873279690742493,
+ -0.025494104251265526,
+ -0.009391064755618572,
+ 0.03990133851766586,
+ 0.0032295144628733397,
+ 0.02748917229473591,
+ 0.006430528126657009,
+ 0.027745680883526802,
+ 0.008201150223612785,
+ 0.0571444146335125,
+ -0.016459301114082336,
+ 0.018197860568761826,
+ -0.04739708825945854,
+ -0.040015339851379395,
+ -0.0397588312625885,
+ -0.03918881341814995,
+ -0.04685557261109352,
+ 0.007153739687055349,
+ -0.014863247983157635,
+ -0.038390785455703735,
+ -0.015803780406713486,
+ -0.01891038380563259,
+ 0.00249917758628726,
+ 0.015290762297809124,
+ 0.019466152414679527,
+ 0.02952698990702629,
+ 0.00669772457331419,
+ 0.0017626059707254171,
+ -0.028272947296500206,
+ -0.0017857629572972655,
+ 0.03257659077644348,
+ 0.03083803318440914,
+ -0.018867632374167442,
+ -0.011279253289103508,
+ -0.014065221883356571,
+ -0.01268292497843504,
+ -0.005066044628620148,
+ -0.011150998994708061,
+ -0.017186075448989868,
+ -0.007588379550725222,
+ -0.03049602173268795,
+ -0.01687256619334221,
+ -0.02157522365450859,
+ 6.28468333161436e-05,
+ -0.034030139446258545,
+ 0.029669495299458504,
+ 0.02609262429177761,
+ -0.019309397786855698,
+ 0.020720195025205612,
+ -0.014734993688762188,
+ -0.025950120761990547,
+ -0.10414249449968338,
+ -0.02941298671066761,
+ -0.030097009614109993,
+ -0.017770346254110336,
+ -0.0006123252096585929,
+ 0.03029651567339897,
+ 0.01530501339584589,
+ -0.007239242549985647,
+ -0.003044258337467909,
+ -0.02964099310338497,
+ 0.02037818357348442,
+ -0.07775060832500458,
+ 0.04486050456762314,
+ -0.006017264444380999,
+ -0.03747875615954399,
+ 0.04916414991021156,
+ 0.03551219031214714,
+ 0.003044258337467909,
+ 0.07552753388881683,
+ -0.034144144505262375,
+ 0.008671415969729424,
+ -0.010958617553114891,
+ -0.016502052545547485,
+ 0.014791996218264103,
+ 0.0019950668793171644,
+ 0.0072143045254051685,
+ 0.04315044730901718,
+ 0.032947104424238205,
+ -0.01249054353684187,
+ -0.028657710179686546,
+ -0.005169360898435116,
+ 0.07700958102941513,
+ 0.02069169282913208,
+ 0.04323595017194748,
+ 0.03166456148028374,
+ 0.025536855682730675,
+ -0.03679473325610161,
+ -0.016345297917723656,
+ -0.0122981620952487,
+ 0.01086598914116621,
+ -0.025522606447339058,
+ -0.053097281605005264,
+ -0.022031238302588463,
+ -0.0020609754137694836,
+ 0.023641543462872505,
+ -0.002116195857524872,
+ -0.008935049176216125,
+ -0.022359000518918037,
+ -0.0041860779747366905,
+ -0.029213478788733482,
+ 0.024311315268278122,
+ 0.04126938432455063,
+ -0.008835296146571636,
+ 0.023955052718520164,
+ 0.03596820682287216,
+ 0.07136639207601547,
+ 0.03856179118156433,
+ -0.02995450422167778,
+ -0.005343928933143616,
+ 0.019694160670042038,
+ 0.0068865432403981686,
+ 0.01497725211083889,
+ 0.03334611654281616,
+ 0.02119046077132225,
+ -0.012804054655134678,
+ -0.07376047223806381,
+ -0.008365030400454998,
+ 0.005803507287055254,
+ -0.02297176979482174,
+ 0.01597478613257408,
+ -0.015889283269643784,
+ -0.05617538467049599,
+ -0.017015069723129272,
+ -0.002639900892972946,
+ 0.010659357532858849,
+ 0.01567552611231804,
+ -0.044062476605176926,
+ 0.008792544715106487,
+ 0.02037818357348442,
+ 0.04890764132142067,
+ 0.013936967588961124,
+ 0.022515755146741867,
+ -0.0003072759136557579,
+ 0.021176209673285484,
+ -0.0013350916560739279,
+ 0.002351328730583191,
+ 0.016858315095305443,
+ -0.034600161015987396,
+ 0.04557302966713905,
+ 0.007973141968250275,
+ -0.037735264748334885,
+ 0.006562345195561647,
+ -0.018269112333655357,
+ 0.06834529340267181,
+ 0.018497120589017868,
+ 0.041782401502132416,
+ 0.03166456148028374,
+ 0.03668072819709778,
+ -0.0271756611764431,
+ -0.06395614147186279,
+ -0.006099204532802105,
+ -0.0059638251550495625,
+ -0.06207508221268654,
+ 0.0179128497838974,
+ 0.0001756816782290116,
+ 0.02374129556119442,
+ -0.0092841861769557,
+ 0.025807615369558334,
+ -0.010210467502474785,
+ 0.012041653506457806,
+ 0.005023293197154999,
+ -0.031066041439771652,
+ -0.019694160670042038,
+ -0.01949465274810791,
+ 0.014136473648250103,
+ 0.02895697019994259,
+ -0.0010028773685917258,
+ -0.015191009268164635,
+ 0.012939433567225933,
+ 0.021760478615760803,
+ -0.02335653267800808,
+ 0.06760426610708237,
+ 0.02227349765598774,
+ 0.03548368811607361,
+ -0.0044390237890183926,
+ 0.003936694469302893,
+ -0.01574677787721157,
+ 0.008863797411322594,
+ -0.019466152414679527,
+ 0.00222485582344234,
+ 0.011093996465206146,
+ -0.07102438062429428,
+ -0.0033542062155902386,
+ 0.0099610835313797,
+ -0.05161523073911667,
+ -0.005807069595903158,
+ 0.02748917229473591,
+ -0.029270481318235397,
+ -0.034600161015987396,
+ 0.006084953900426626,
+ 0.02555110678076744,
+ 0.026448886841535568,
+ 0.021404217928647995,
+ -0.03214907646179199,
+ -0.03266209363937378,
+ -0.0291849784553051,
+ 0.03870429843664169,
+ 0.031294047832489014,
+ -0.03776376694440842,
+ -0.011172374710440636,
+ 0.028657710179686546,
+ 0.007574128918349743,
+ -0.02362729236483574,
+ 0.001709166681393981,
+ 0.011179500259459019,
+ 0.02168922685086727,
+ 0.004976979456841946,
+ 0.01698656938970089,
+ -0.007114551030099392,
+ 0.03710824251174927,
+ 0.024952586740255356,
+ -0.000464921846287325,
+ -0.010452724993228912,
+ 0.02667689509689808,
+ -0.016302546486258507,
+ -0.0145497377961874,
+ 0.008037269115447998,
+ -0.09200108796358109,
+ 0.052897773683071136,
+ -0.03049602173268795,
+ -0.002515209373086691,
+ 0.06931432336568832,
+ -0.01132913026958704,
+ 0.08276677131652832,
+ -0.011664016172289848,
+ 0.0291849784553051,
+ -0.007844887673854828,
+ -0.025579607114195824,
+ -0.0076311309821903706,
+ -0.019508903846144676,
+ -0.002892846940085292,
+ -0.06635022163391113,
+ 0.00976870208978653,
+ -0.006565907504409552,
+ -0.0066514103673398495
+ ],
+ "result": "--- 结果 1 (相似度: 1.000) ---\n文件路径: C:\\Steam\\steamapps\\common\\RimWorld\\Data\\dll1.6\\Verse\\Hediff.txt\n\npublic class Hediff : IExposable, ILoadReferenceable\n{\n\tpublic HediffDef def;\n\n\tpublic int ageTicks;\n\n\tpublic int tickAdded = -1;\n\n\tprivate BodyPartRecord part;\n\n\tpublic string sourceLabel;\n\n\tpublic ThingDef sourceDef;\n\n\tpublic BodyPartGroupDef sourceBodyPartGroup;\n\n\tpublic string sourceToolLabel;\n\n\tpublic HediffDef sourceHediffDef;\n\n\tpublic int loadID = -1;\n\n\tprotected float severityInt;\n\n\tprivate bool recordedTale;\n\n\tprotected bool causesNoPain;\n\n\tprivate bool visible;\n\n\tpublic WeakReference combatLogEntry;\n\n\tpublic string combatLogText;\n\n\tpublic int temp_partIndexToSetLater = -1;\n\n\tpublic bool canBeThreateningToPart = true;\n\n\tprivate List abilities;\n\n\t[Unsaved(false)]\n\tpublic Pawn pawn;\n\n\tprivate static StringBuilder tipSb = new StringBuilder();\n\n\tpublic virtual string LabelBase => CurStage?.overrideLabel ?? def.label;\n\n\tpublic string LabelBaseCap => LabelBase.CapitalizeFirst(def);\n\n\tpublic virtual string Label\n\t{\n\t\tget\n\t\t{\n\t\t\tstring labelInBrackets = LabelInBrackets;\n\t\t\treturn LabelBase + (labelInBrackets.NullOrEmpty() ? \"\" : (\" (\" + labelInBrackets + \")\"));\n\t\t}\n\t}\n\n\tpublic string LabelCap => Label.CapitalizeFirst(def);\n\n\tpublic virtual Color LabelColor => def.defaultLabelColor;\n\n\tpublic virtual string LabelInBrackets\n\t{\n\t\tget\n\t\t{\n\t\t\tif (CurStage != null && !CurStage.label.NullOrEmpty())\n\t\t\t{\n\t\t\t\treturn CurStage.label;\n\t\t\t}\n\t\t\treturn null;\n\t\t}\n\t}\n\n\tpublic virtual string SeverityLabel\n\t{\n\t\tget\n\t\t{\n\t\t\tif (!IsLethal && !def.alwaysShowSeverity)\n\t\t\t{\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\treturn (Severity / Mathf.Abs(def.lethalSeverity)).ToStringPercent();\n\t\t}\n\t}\n\n\tpublic virtual int UIGroupKey => Label.GetHashCode();\n\n\tpublic virtual string TipStringExtra\n\t{\n\t\tget\n\t\t{\n\t\t\tStringBuilder stringBuilder = new StringBuilder();\n\t\t\tforeach (StatDrawEntry item in HediffStatsUtility.SpecialDisplayStats(CurStage, this))\n\t\t\t{\n\t\t\t\tif (item.ShouldDisplay())\n\t\t\t\t{\n\t\t\t\t\tstringBuilder.Append(\" - \" + item.LabelCap + \": \" + item.ValueString);\n\t\t\t\t\tif (CurStage?.statOffsetEffectMultiplier != null)\n\t\t\t\t\t{\n\t\t\t\t\t\tstringBuilder.Append($\" x {CurStage.statOffsetEffectMultiplier.LabelCap}\");\n\t\t\t\t\t}\n\t\t\t\t\telse if (CurStage?.statFactorEffectMultiplier != null)\n\t\t\t\t\t{\n\t\t\t\t\t\tstringBuilder.Append($\" x {CurStage.statFactorEffectMultiplier.LabelCap}\");\n\t\t\t\t\t}\n\t\t\t\t\tstringBuilder.AppendLine();\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (ModsConfig.AnomalyActive && !def.aptitudes.NullOrEmpty())\n\t\t\t{\n\t\t\t\tstringBuilder.AppendLine(def.aptitudes.Select((Aptitude x) => x.skill.LabelCap.ToString() + \" \" + x.level.ToStringWithSign()).ToLineList(\" - \", capitalizeItems: true));\n\t\t\t}\n\t\t\tHediffStage stage = CurStage;\n\t\t\tif (stage != null)\n\t\t\t{\n\t\t\t\tif (!stage.enablesNeeds.NullOrEmpty())\n\t\t\t\t{\n\t\t\t\t\tif (stringBuilder.Length > 0)\n\t\t\t\t\t{\n\t\t\t\t\t\tstringBuilder.AppendLine();\n\t\t\t\t\t}\n\t\t\t\t\tstringBuilder.AppendLine((\"AddsNeeds\".Translate().CapitalizeFirst() + \":\").Colorize(ColoredText.TipSectionTitleColor));\n\t\t\t\t\tstringBuilder.AppendLine(stage.enablesNeeds.Select((NeedDef x) => x.LabelCap.ToString()).ToLineList(\" - \"));\n\t\t\t\t}\n\t\t\t\tif (!stage.disablesNeeds.NullOrEmpty())\n\t\t\t\t{\n\t\t\t\t\tif (stringBuilder.Length > 0)\n\t\t\t\t\t{\n\t\t\t\t\t\tstringBuilder.AppendLine();\n\t\t\t\t\t}\n\t\t\t\t\tstringBuilder.AppendLine((\"DisabledNeedsLabel\".Translate().CapitalizeFirst() + \":\").Colorize(ColoredText.TipSectionTitleColor));\n\t\t\t\t\tstringBuilder.AppendLine(stage.disablesNeeds.Select((NeedDef x) => x.LabelCap.ToString()).ToLineList(\" - \"));\n\t\t\t\t}\n\t\t\t\tif (stage.disabledWorkTags != 0)\n\t\t\t\t{\n\t\t\t\t\tif (stringBuilder.Length > 0)\n\t\t\t\t\t{\n\t\t\t\t\t\tstringBuilder.AppendLine();\n\t\t\t\t\t}\n\t\t\t\t\tstringBuilder.AppendLine((\"DisabledWorkLabel\".Translate().CapitalizeFirst() + \":\").Colorize(ColoredText.TipSectionTitleColor));\n\t\t\t\t\tIEnumerable items = from x in DefDatabase.AllDefsListForReading\n\t\t\t\t\t\twhere (stage.disabledWorkTags & x.workTags) != 0\n\t\t\t\t\t\tselect x.labelShort;\n\t\t\t\t\tstringBuilder.Append(\" - \" + items.ToCommaList().CapitalizeFirst());\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (def.CompProps() != null)\n\t\t\t{\n\t\t\t\tstringBuilder.AppendLine(\" - \" + \"IncreasesChanceOfLovin\".Translate());\n\t\t\t}\n\t\t\treturn stringBuilder.ToString();\n\t\t}\n\t}\n\n\tpublic virtual HediffStage CurStage\n\t{\n\t\tget\n\t\t{\n\t\t\tif (!def.stages.NullOrEmpty())\n\t\t\t{\n\t\t\t\treturn def.stages[CurStageIndex];\n\t\t\t}\n\t\t\treturn null;\n\t\t}\n\t}\n\n\tpublic virtual bool ShouldRemove => Severity <= 0f;\n\n\tpublic virtual bool Visible\n\t{\n\t\tget\n\t\t{\n\t\t\tif (!visible && CurStage != null)\n\t\t\t{\n\t\t\t\treturn CurStage.becomeVisible;\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t}\n\n\tpublic virtual float BleedRate => 0f;\n\n\tpublic virtual float BleedRateScaled => BleedRate / pawn.HealthScale;\n\n\tpublic bool Bleeding => BleedRate > 1E-05f;\n\n\tpublic virtual float PainOffset\n\t{\n\t\tget\n\t\t{\n\t\t\tif (CurStage != null && !causesNoPain)\n\t\t\t{\n\t\t\t\treturn CurStage.painOffset;\n\t\t\t}\n\t\t\treturn 0f;\n\t\t}\n\t}\n\n\tpublic virtual float PainFactor => CurStage?.painFactor ?? 1f;\n\n\tpublic List CapMods => CurStage?.capMods;\n\n\tpublic virtual float SummaryHealthPercentImpact => 0f;\n\n\tpublic virtual float TendPriority\n\t{\n\t\tget\n\t\t{\n\t\t\tfloat a = 0f;\n\t\t\tHediffStage curStage = CurStage;\n\t\t\tif (curStage != null && curStage.lifeThreatening)\n\t\t\t{\n\t\t\t\ta = Mathf.Max(a, 1f);\n\t\t\t}\n\t\t\ta = Mathf.Max(a, BleedRate * 1.5f);\n\t\t\tHediffComp_TendDuration hediffComp_TendDuration = this.TryGetComp();\n\t\t\tif (hediffComp_TendDuration != null && hediffComp_TendDuration.TProps.severityPerDayTended < 0f)\n\t\t\t{\n\t\t\t\ta = Mathf.Max(a, 0.025f);\n\t\t\t}\n\t\t\treturn a;\n\t\t}\n\t}\n\n\tpublic virtual TextureAndColor StateIcon => TextureAndColor.None;\n\n\tpublic virtual int CurStageIndex => def.StageAtSeverity(Severity);\n\n\tpublic virtual float Severity\n\t{\n\t\tget\n\t\t{\n\t\t\treturn severityInt;\n\t\t}\n\t\tset\n\t\t{\n\t\t\tbool flag = false;\n\t\t\tif (IsLethal && value >= def.lethalSeverity)\n\t\t\t{\n\t\t\t\tvalue = def.lethalSeverity;\n\t\t\t\tflag = true;\n\t\t\t}\n\t\t\tbool flag2 = this is Hediff_Injury && value > severityInt && Mathf.RoundToInt(value) != Mathf.RoundToInt(severityInt);\n\t\t\tint curStageIndex = CurStageIndex;\n\t\t\tseverityInt = Mathf.Clamp(value, def.minSeverity, def.maxSeverity);\n\t\t\tif (CurStageIndex != curStageIndex)\n\t\t\t{\n\t\t\t\tOnStageIndexChanged(CurStageIndex);\n\t\t\t}\n\t\t\tif ((CurStageIndex != curStageIndex || flag || flag2) && pawn.health.hediffSet.hediffs.Contains(this))\n\t\t\t{\n\t\t\t\tpawn.health.Notify_HediffChanged(this);\n\t\t\t\tif (!pawn.Dead && pawn.needs.mood != null)\n\t\t\t\t{\n\t\t\t\t\tpawn.needs.mood.thoughts.situational.Notify_SituationalThoughtsDirty();\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic BodyPartRecord Part\n\t{\n\t\tget\n\t\t{\n\t\t\treturn part;\n\t\t}\n\t\tset\n\t\t{\n\t\t\tif (pawn == null && value != null)\n\t\t\t{\n\t\t\t\tLog.Error(\"Hediff: Cannot set Part without setting pawn first.\");\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tpart = value;\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic bool IsLethal\n\t{\n\t\tget\n\t\t{\n\t\t\tif (def.lethalSeverity > 0f)\n\t\t\t{\n\t\t\t\treturn canBeThreateningToPart;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic bool IsCurrentlyLifeThreatening => IsStageLifeThreatening(CurStage);\n\n\tpublic List AllAbilitiesForReading\n\t{\n\t\tget\n\t\t{\n\t\t\tif (abilities == null && !def.abilities.NullOrEmpty())\n\t\t\t{\n\t\t\t\tabilities = new List();\n\t\t\t\tforeach (AbilityDef ability in def.abilities)\n\t\t\t\t{\n\t\t\t\t\tabilities.Add(AbilityUtility.MakeAbility(ability, pawn));\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn abilities;\n\t\t}\n\t}\n\n\tpublic virtual string Description => def.Description;\n\n\tpublic virtual bool TendableNow(bool ignoreTimer = false)\n\t{\n\t\tif (!def.tendable || Severity <= 0f || this.FullyImmune() || !Visible || this.IsPermanent() || !pawn.RaceProps.IsFlesh || (this is Hediff_Injury && !pawn.health.CanBleed))\n\t\t{\n\t\t\treturn false;\n\t\t}\n\t\tif (!ignoreTimer)\n\t\t{\n\t\t\tHediffComp_TendDuration hediffComp_TendDuration = this.TryGetComp();\n\t\t\tif (hediffComp_TendDuration != null && !hediffComp_TendDuration.AllowTend)\n\t\t\t{\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n\n\tpublic bool IsStageLifeThreatening(HediffStage stage)\n\t{\n\t\tif (stage == null)\n\t\t{\n\t\t\treturn false;\n\t\t}\n\t\tif (stage.lifeThreatening)\n\t\t{\n\t\t\treturn canBeThreateningToPart;\n\t\t}\n\t\treturn false;\n\t}\n\n\tpublic bool IsAnyStageLifeThreatening()\n\t{\n\t\tif (def.stages == null || !canBeThreateningToPart)\n\t\t{\n\t\t\treturn false;\n\t\t}\n\t\tfor (int i = 0; i < def.stages.Count; i++)\n\t\t{\n\t\t\tif (def.stages[i].lifeThreatening)\n\t\t\t{\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n\tpublic bool CanEverKill()\n\t{\n\t\tif (!IsLethal)\n\t\t{\n\t\t\treturn IsAnyStageLifeThreatening();\n\t\t}\n\t\treturn true;\n\t}\n\n\tpublic void SetVisible()\n\t{\n\t\tvisible = true;\n\t}\n\n\tprotected virtual void OnStageIndexChanged(int stageIndex)\n\t{\n\t\tif (CurStage.pctConditionalThoughtsNullified > 0f || CurStage.pctAllThoughtNullification > 0f)\n\t\t{\n\t\t\tpawn.health.hediffSet.CacheThoughtsNullified();\n\t\t}\n\t}\n\n\tpublic virtual void ExposeData()\n\t{\n\t\tif (Scribe.mode == LoadSaveMode.Saving && combatLogEntry != null)\n\t\t{\n\t\t\tLogEntry target = combatLogEntry.Target;\n\t\t\tif (target == null || !Current.Game.battleLog.IsEntryActive(target))\n\t\t\t{\n\t\t\t\tcombatLogEntry = null;\n\t\t\t}\n\t\t}\n\t\tScribe_Values.Look(ref loadID, \"loadID\", 0);\n\t\tScribe_Values.Look(ref ageTicks, \"ageTicks\", 0);\n\t\tScribe_Values.Look(ref tickAdded, \"tickAdded\", 0);\n\t\tScribe_Values.Look(ref visible, \"visible\", defaultValue: false);\n\t\tScribe_Values.Look(ref severityInt, \"severity\", 0f);\n\t\tScribe_Values.Look(ref recordedTale, \"recordedTale\", defaultValue: false);\n\t\tScribe_Values.Look(ref causesNoPain, \"causesNoPain\", defaultValue: false);\n\t\tScribe_Values.Look(ref combatLogText, \"combatLogText\");\n\t\tScribe_Values.Look(ref canBeThreateningToPart, \"canBeThreateningToPart\", defaultValue: false);\n\t\tScribe_Defs.Look(ref def, \"def\");\n\t\tScribe_Defs.Look(ref sourceDef, \"source\");\n\t\tScribe_Defs.Look(ref sourceHediffDef, \"sourceHediffDef\");\n\t\tScribe_Defs.Look(ref sourceBodyPartGroup, \"sourceBodyPartGroup\");\n\t\tScribe_Values.Look(ref sourceLabel, \"sourceLabel\");\n\t\tScribe_Values.Look(ref sourceToolLabel, \"sourceToolLabel\");\n\t\tScribe_BodyParts.Look(ref part, \"part\");\n\t\tScribe_References.Look(ref combatLogEntry, \"combatLogEntry\");\n\t\tScribe_Collections.Look(ref abilities, \"abilities\", LookMode.Deep);\n\t\tif (Scribe.mode == LoadSaveMode.PostLoadInit && abilities != null)\n\t\t{\n\t\t\tforeach (Ability ability in abilities)\n\t\t\t{\n\t\t\t\tability.pawn = pawn;\n\t\t\t\tability.verb.caster = pawn;\n\t\t\t}\n\t\t}\n\t\tBackCompatibility.PostExposeData(this);\n\t}\n\n\tpublic virtual void Tick()\n\t{\n\t}\n\n\tpublic virtual void TickInterval(int delta)\n\t{\n\t\tageTicks += delta;\n\t\tif (def.hediffGivers != null && pawn.IsHashIntervalTick(60, delta))\n\t\t{\n\t\t\tfor (int i = 0; i < def.hediffGivers.Count; i++)\n\t\t\t{\n\t\t\t\tdef.hediffGivers[i].OnIntervalPassed(pawn, this);\n\t\t\t}\n\t\t}\n\t\tif (Visible && !visible)\n\t\t{\n\t\t\tvisible = true;\n\t\t\tif (def.taleOnVisible != null)\n\t\t\t{\n\t\t\t\tTaleRecorder.RecordTale(def.taleOnVisible, pawn, def);\n\t\t\t}\n\t\t}\n\t\tHediffStage curStage = CurStage;\n\t\tif (curStage == null)\n\t\t{\n\t\t\treturn;\n\t\t}\n\t\tif (curStage.hediffGivers != null && pawn.IsHashIntervalTick(60, delta))\n\t\t{\n\t\t\tfor (int j = 0; j < curStage.hediffGivers.Count; j++)\n\t\t\t{\n\t\t\t\tcurStage.hediffGivers[j].OnIntervalPassed(pawn, this);\n\t\t\t}\n\t\t}\n\t\tif (curStage.mentalStateGivers != null && pawn.IsHashIntervalTick(60, delta) && !pawn.InMentalState)\n\t\t{\n\t\t\tfor (int k = 0; k < curStage.mentalStateGivers.Count; k++)\n\t\t\t{\n\t\t\t\tMentalStateGiver mentalStateGiver = curStage.mentalStateGivers[k];\n\t\t\t\tif (Rand.MTBEventOccurs(mentalStateGiver.mtbDays, 60000f, 60f))\n\t\t\t\t{\n\t\t\t\t\tpawn.mindState.mentalStateHandler.TryStartMentalState(mentalStateGiver.mentalState, \"MentalStateReason_Hediff\".Translate(Label));\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (curStage.mentalBreakMtbDays > 0f && pawn.IsHashIntervalTick(60, delta) && !pawn.InMentalState && !pawn.Downed && Rand.MTBEventOccurs(curStage.mentalBreakMtbDays, 60000f, 60f))\n\t\t{\n\t\t\tTryDoRandomMentalBreak();\n\t\t}\n\t\tif (curStage.vomitMtbDays > 0f && pawn.IsHashIntervalTick(600, delta) && Rand.MTBEventOccurs(curStage.vomitMtbDays, 60000f, 600f) && pawn.Spawned && pawn.Awake() && pawn.RaceProps.IsFlesh)\n\t\t{\n\t\t\tpawn.jobs.StartJob(JobMaker.MakeJob(JobDefOf.Vomit), JobCondition.InterruptForced, null, resumeCurJobAfterwards: true);\n\t\t}\n\t\tif (curStage.forgetMemoryThoughtMtbDays > 0f && pawn.needs?.mood != null && pawn.IsHashIntervalTick(400, delta) && Rand.MTBEventOccurs(curStage.forgetMemoryThoughtMtbDays, 60000f, 400f) && pawn.needs.mood.thoughts.memories.Memories.TryRandomElement(out var result))\n\t\t{\n\t\t\tpawn.needs.mood.thoughts.memories.RemoveMemory(result);\n\t\t}\n\t\tif (!recordedTale && curStage.tale != null)\n\t\t{\n\t\t\tTaleRecorder.RecordTale(curStage.tale, pawn);\n\t\t\trecordedTale = true;\n\t\t}\n\t\tif (curStage.destroyPart && Part != null && Part != pawn.RaceProps.body.corePart)\n\t\t{\n\t\t\tpawn.health.AddHediff(HediffDefOf.MissingBodyPart, Part);\n\t\t}\n\t\tif (curStage.deathMtbDays > 0f && pawn.IsHashIntervalTick(200, delta) && Rand.MTBEventOccurs(curStage.deathMtbDays, 60000f, 200f))\n\t\t{\n\t\t\tDoMTBDeath();\n\t\t}\n\t}\n\n\tprivate void DoMTBDeath()\n\t{\n\t\tHediffStage curStage = CurStage;\n\t\tif (!curStage.mtbDeathDestroysBrain && ModsConfig.BiotechActive)\n\t\t{\n\t\t\tPawn_GeneTracker genes = pawn.genes;\n\t\t\tif (genes != null && genes.HasActiveGene(GeneDefOf.Deathless))\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tpawn.Kill(null, this);\n\t\tif (curStage.mtbDeathDestroysBrain)\n\t\t{\n\t\t\tBodyPartRecord brain = pawn.health.hediffSet.GetBrain();\n\t\t\tif (brain != null)\n\t\t\t{\n\t\t\t\tHediff hediff = HediffMaker.MakeHediff(HediffDefOf.MissingBodyPart, pawn, brain);\n\t\t\t\tpawn.health.AddHediff(hediff, brain);\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate void TryDoRandomMentalBreak()\n\t{\n\t\tHediffStage curStage = CurStage;\n\t\tif (curStage != null)\n\t\t{\n\t\t\tTaggedString taggedString = \"MentalStateReason_Hediff\".Translate(Label);\n\t\t\tif (!curStage.mentalBreakExplanation.NullOrEmpty())\n\t\t\t{\n\t\t\t\ttaggedString += \"\\n\\n\" + curStage.mentalBreakExplanation.Formatted(pawn.Named(\"PAWN\"));\n\t\t\t}\n\t\t\tMentalBreakDef result;\n\t\t\tif (pawn.NonHumanlikeOrWildMan())\n\t\t\t{\n\t\t\t\tpawn.mindState.mentalStateHandler.TryStartMentalState(MentalStateDefOf.Manhunter, taggedString);\n\t\t\t}\n\t\t\telse if (DefDatabase.AllDefsListForReading.Where((MentalBreakDef x) => x.Worker.BreakCanOccur(pawn) && (curStage.allowedMentalBreakIntensities == null || curStage.allowedMentalBreakIntensities.Contains(x.intensity))).TryRandomElementByWeight((MentalBreakDef x) => x.Worker.CommonalityFor(pawn), out result))\n\t\t\t{\n\t\t\t\tresult.Worker.TryStart(pawn, taggedString.Resolve(), causedByMood: false);\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic virtual void PostMake()\n\t{\n\t\tSeverity = Mathf.Max(Severity, def.initialSeverity);\n\t\tcausesNoPain = Rand.Value < def.chanceToCauseNoPain;\n\t\tif (def.onlyLifeThreateningTo == null)\n\t\t{\n\t\t\treturn;\n\t\t}\n\t\tbool flag = false;\n\t\tfor (int i = 0; i < def.onlyLifeThreateningTo.Count; i++)\n\t\t{\n\t\t\tif (Part.def == def.onlyLifeThreateningTo[i])\n\t\t\t{\n\t\t\t\tflag = true;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tif (!flag)\n\t\t{\n\t\t\tcanBeThreateningToPart = false;\n\t\t}\n\t}\n\n\tpublic virtual void PostAdd(DamageInfo? dinfo)\n\t{\n\t\ttickAdded = Find.TickManager.TicksGame;\n\t\tif (!def.abilities.NullOrEmpty())\n\t\t{\n\t\t\tpawn.abilities?.Notify_TemporaryAbilitiesChanged();\n\t\t}\n\t\tif (!def.removeWithTags.NullOrEmpty())\n\t\t{\n\t\t\tfor (int num = pawn.health.hediffSet.hediffs.Count - 1; num >= 0; num--)\n\t\t\t{\n\t\t\t\tHediff hediff = pawn.health.hediffSet.hediffs[num];\n\t\t\t\tif (hediff != this && !hediff.def.tags.NullOrEmpty())\n\t\t\t\t{\n\t\t\t\t\tfor (int i = 0; i < def.removeWithTags.Count; i++)\n\t\t\t\t\t{\n\t\t\t\t\t\tif (hediff.def.tags.Contains(def.removeWithTags[i]))\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tpawn.health.RemoveHediff(hediff);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (!def.aptitudes.NullOrEmpty())\n\t\t{\n\t\t\tpawn.skills.DirtyAptitudes();\n\t\t}\n\t\tif (def.clearsEgo)\n\t\t{\n\t\t\tpawn.everLostEgo = true;\n\t\t}\n\t}\n\n\tpublic virtual void PreRemoved()\n\t{\n\t}\n\n\tpublic virtual void PostRemoved()\n\t{\n\t\tHediffStage curStage = CurStage;\n\t\tif (!pawn.Dead && def.chemicalNeed != null)\n\t\t{\n\t\t\tpawn.needs?.AddOrRemoveNeedsAsAppropriate();\n\t\t}\n\t\telse if (curStage != null && !pawn.Dead && (!curStage.disablesNeeds.NullOrEmpty() || !curStage.enablesNeeds.NullOrEmpty()))\n\t\t{\n\t\t\tpawn.needs?.AddOrRemoveNeedsAsAppropriate();\n\t\t}\n\t\tif (!def.abilities.NullOrEmpty())\n\t\t{\n\t\t\tpawn.abilities?.Notify_TemporaryAbilitiesChanged();\n\t\t}\n\t\tif (!def.aptitudes.NullOrEmpty())\n\t\t{\n\t\t\tpawn.skills.DirtyAptitudes();\n\t\t}\n\t}\n\n\tpublic virtual void PostTick()\n\t{\n\t}\n\n\tpublic virtual void PostTickInterval(int delta)\n\t{\n\t}\n\n\tpublic virtual void Tended(float quality, float maxQuality, int batchPosition = 0)\n\t{\n\t}\n\n\tpublic virtual void Heal(float amount)\n\t{\n\t\tif (!(amount <= 0f))\n\t\t{\n\t\t\tSeverity -= amount;\n\t\t\tpawn.health.Notify_HediffChanged(this);\n\t\t}\n\t}\n\n\tpublic virtual void ModifyChemicalEffect(ChemicalDef chem, ref float effect)\n\t{\n\t}\n\n\tpublic virtual bool TryMergeWith(Hediff other)\n\t{\n\t\tif (other == null || other.def != def || other.Part != Part)\n\t\t{\n\t\t\treturn false;\n\t\t}\n\t\tSeverity += other.Severity;\n\t\tageTicks = 0;\n\t\treturn true;\n\t}\n\n\tpublic virtual bool CauseDeathNow()\n\t{\n\t\tif (IsLethal)\n\t\t{\n\t\t\tbool num = Severity >= def.lethalSeverity;\n\t\t\tif (num && DebugViewSettings.logCauseOfDeath)\n\t\t\t{\n\t\t\t\tLog.Message(\"CauseOfDeath: lethal severity exceeded \" + Severity + \" >= \" + def.lethalSeverity);\n\t\t\t}\n\t\t\treturn num;\n\t\t}\n\t\treturn false;\n\t}\n\n\tpublic virtual void Notify_Downed()\n\t{\n\t}\n\n\tpublic virtual void Notify_PawnDied(DamageInfo? dinfo, Hediff culprit = null)\n\t{\n\t}\n\n\tpublic virtual void Notify_PawnKilled()\n\t{\n\t}\n\n\tpublic virtual void Notify_PawnPostApplyDamage(DamageInfo dinfo, float totalDamageDealt)\n\t{\n\t}\n\n\tpublic virtual void Notify_PawnDamagedThing(Thing thing, DamageInfo dinfo, DamageWorker.DamageResult result)\n\t{\n\t}\n\n\tpublic virtual void Notify_PawnUsedVerb(Verb verb, LocalTargetInfo targets)\n\t{\n\t}\n\n\tpublic virtual void Notify_EntropyGained(float baseAmount, float finalAmount, Thing source = null)\n\t{\n\t}\n\n\tpublic virtual void Notify_RelationAdded(Pawn otherPawn, PawnRelationDef relationDef)\n\t{\n\t}\n\n\tpublic virtual void Notify_ImplantUsed(string violationSourceName, float detectionChance, int violationSourceLevel = -1)\n\t{\n\t}\n\n\tpublic virtual void Notify_KilledPawn(Pawn victim, DamageInfo? dinfo)\n\t{\n\t}\n\n\tpublic virtual void Notify_IngestedThing(Thing thing, int amount)\n\t{\n\t}\n\n\tpublic virtual void Notify_Resurrected()\n\t{\n\t}\n\n\tpublic virtual void Notify_PawnCorpseSpawned()\n\t{\n\t}\n\n\tpublic virtual void Notify_PawnCorpseDestroyed()\n\t{\n\t}\n\n\tpublic virtual void Notify_Regenerated(float hp)\n\t{\n\t}\n\n\tpublic virtual void Notify_SurgicallyRemoved(Pawn surgeon)\n\t{\n\t\tif (def.HasDefinedGraphicProperties || def.forceRenderTreeRecache)\n\t\t{\n\t\t\tpawn.Drawer.renderer.SetAllGraphicsDirty();\n\t\t}\n\t}\n\n\tpublic virtual void Notify_SurgicallyReplaced(Pawn surgeon)\n\t{\n\t\tif (def.HasDefinedGraphicProperties || def.forceRenderTreeRecache)\n\t\t{\n\t\t\tpawn.Drawer.renderer.SetAllGraphicsDirty();\n\t\t}\n\t}\n\n\tpublic virtual void Notify_Spawned()\n\t{\n\t}\n\n\tpublic virtual IEnumerable GetGizmos()\n\t{\n\t\treturn null;\n\t}\n\n\tpublic virtual string GetInspectString()\n\t{\n\t\treturn def.inspectString ?? string.Empty;\n\t}\n\n\tpublic virtual string GetTooltip(Pawn pawn, bool showHediffsDebugInfo)\n\t{\n\t\ttipSb.Clear();\n\t\tHediffStage curStage = CurStage;\n\t\tif (!LabelCap.NullOrEmpty())\n\t\t{\n\t\t\ttipSb.AppendTagged(LabelCap.Colorize(ColoredText.TipSectionTitleColor));\n\t\t}\n\t\tstring severityLabel = SeverityLabel;\n\t\tif (!severityLabel.NullOrEmpty())\n\t\t{\n\t\t\ttipSb.Append(\": \").Append(severityLabel);\n\t\t}\n\t\ttipSb.AppendLine();\n\t\tif (!def.overrideTooltip.NullOrEmpty())\n\t\t{\n\t\t\ttipSb.AppendLine().AppendLineTagged(def.overrideTooltip.Formatted(pawn.Named(\"PAWN\")));\n\t\t}\n\t\telse if (curStage != null && !curStage.overrideTooltip.NullOrEmpty())\n\t\t{\n\t\t\ttipSb.AppendLine().AppendLineTagged(curStage.overrideTooltip.Formatted(pawn.Named(\"PAWN\")));\n\t\t}\n\t\telse\n\t\t{\n\t\t\tstring description = Description;\n\t\t\tif (!description.NullOrEmpty())\n\t\t\t{\n\t\t\t\ttipSb.AppendLine().AppendLine(description);\n\t\t\t}\n\t\t}\n\t\tif (!def.extraTooltip.NullOrEmpty())\n\t\t{\n\t\t\ttipSb.AppendLine().AppendLineTagged(def.extraTooltip.Formatted(pawn.Named(\"PAWN\")));\n\t\t}\n\t\tif (curStage != null && !curStage.extraTooltip.NullOrEmpty())\n\t\t{\n\t\t\ttipSb.AppendLine().AppendLineTagged(curStage.extraTooltip.Formatted(pawn.Named(\"PAWN\")));\n\t\t}\n\t\tstring tipStringExtra = TipStringExtra;\n\t\tif (!tipStringExtra.NullOrEmpty())\n\t\t{\n\t\t\ttipSb.AppendLine().AppendLine(tipStringExtra.TrimEndNewlines());\n\t\t}\n\t\tif (HealthCardUtility.GetCombatLogInfo(Gen.YieldSingle(this), out var taggedString, out var _) && !taggedString.NullOrEmpty())\n\t\t{\n\t\t\ttipSb.AppendLine().AppendLineTagged((\"Cause\".Translate() + \": \" + taggedString).Colorize(ColoredText.SubtleGrayColor));\n\t\t}\n\t\tif (showHediffsDebugInfo && !DebugString().NullOrEmpty() && !DebugString().NullOrEmpty())\n\t\t{\n\t\t\ttipSb.AppendLine().AppendLine(DebugString().TrimEndNewlines());\n\t\t}\n\t\treturn tipSb.ToString().TrimEnd();\n\t}\n\n\tpublic virtual void CopyFrom(Hediff other)\n\t{\n\t\tageTicks = other.ageTicks;\n\t\tsourceLabel = other.sourceLabel;\n\t\tsourceDef = other.sourceDef;\n\t\tsourceBodyPartGroup = other.sourceBodyPartGroup;\n\t\tseverityInt = other.severityInt;\n\t}\n\n\tpublic virtual void PostDebugAdd()\n\t{\n\t}\n\n\tpublic virtual string DebugString()\n\t{\n\t\tstring text = \"\";\n\t\tif (!Visible)\n\t\t{\n\t\t\ttext += \"hidden\\n\";\n\t\t}\n\t\ttext = text + \"severity: \" + Severity.ToString(\"F3\") + ((Severity >= def.maxSeverity) ? \" (reached max)\" : \"\");\n\t\tif (TendableNow())\n\t\t{\n\t\t\ttext = text + \"\\ntend priority: \" + TendPriority;\n\t\t}\n\t\treturn text.Indented();\n\t}\n\n\tpublic virtual IEnumerable SpecialDisplayStats(StatRequest req)\n\t{\n\t\tforeach (StatDrawEntry item in def.SpecialDisplayStats(req))\n\t\t{\n\t\t\tyield return item;\n\t\t}\n\t}\n\n\tpublic override string ToString()\n\t{\n\t\treturn \"(\" + (def?.defName ?? GetType().Name) + ((part != null) ? (\" \" + part.Label) : \"\") + \" ticksSinceCreation=\" + ageTicks + \")\";\n\t}\n\n\tpublic string GetUniqueLoadID()\n\t{\n\t\treturn \"Hediff_\" + loadID;\n\t}\n}\n\n",
+ "timestamp": "2025-08-26 18:06:29,333"
+ },
+ "Hediff-Notify_PawnPostApplyDamage": {
+ "keywords": [
+ "Notify_PawnPostApplyDamage",
+ "Hediff"
+ ],
+ "question": "Notify_PawnPostApplyDamage 伤害抵挡 Hediff 伤害减免 例子",
+ "embedding": [
+ 0.026338106021285057,
+ -0.025699695572257042,
+ 0.04287736490368843,
+ -0.022730348631739616,
+ -0.01838025636970997,
+ -0.013800038956105709,
+ 0.007582969032227993,
+ 0.01722221076488495,
+ -0.014624032191932201,
+ 0.08818959444761276,
+ -0.003440730506554246,
+ -0.04323368892073631,
+ 0.019939163699746132,
+ -0.03863120079040527,
+ 0.05650666728615761,
+ -0.0017333561554551125,
+ -0.02420017495751381,
+ -0.12002099305391312,
+ 0.030613964423537254,
+ -0.01156560517847538,
+ -0.04177870973944664,
+ -0.009071353822946548,
+ 0.026278719305992126,
+ -0.02679835446178913,
+ -0.022284947335720062,
+ 0.011721496470272541,
+ -0.038898441940546036,
+ 0.021379295736551285,
+ 0.00014614753308705986,
+ -0.02439318411052227,
+ -0.02191377803683281,
+ -0.0464702770113945,
+ 0.023784467950463295,
+ -0.0045282538048923016,
+ -0.02890658937394619,
+ 0.04421357437968254,
+ -0.007219224236905575,
+ 0.034177180379629135,
+ 0.006031485740095377,
+ -0.01627201959490776,
+ -0.049231767654418945,
+ -0.008321594446897507,
+ 0.021067515015602112,
+ 0.024927666410803795,
+ -0.014163783751428127,
+ 0.015603916719555855,
+ 0.00876699574291706,
+ -0.06372217833995819,
+ -0.03696836531162262,
+ -0.03705744817852974,
+ 0.0324549600481987,
+ -0.005233473610132933,
+ 0.01631656102836132,
+ -0.01842479594051838,
+ -0.01756368577480316,
+ 0.0185881108045578,
+ -0.006510292645543814,
+ -0.014668572694063187,
+ 0.0036597198341041803,
+ -0.010407560504972935,
+ -0.007556987460702658,
+ 0.054932914674282074,
+ -0.04534192383289337,
+ -0.02667958103120327,
+ 0.012263402342796326,
+ -0.003416604595258832,
+ -0.0853390246629715,
+ -0.025848163291811943,
+ 0.04739077389240265,
+ -0.03000524826347828,
+ 0.013599608093500137,
+ 0.03575093299150467,
+ 0.02222556062042713,
+ -0.026412339881062508,
+ 0.009026814252138138,
+ 0.03693867474794388,
+ 0.005775379482656717,
+ 0.0008903400739654899,
+ -0.0348898246884346,
+ -0.01854356937110424,
+ 0.016554107889533043,
+ 0.009553872980177402,
+ -0.06164363771677017,
+ -0.0347413569688797,
+ 0.05808041989803314,
+ 0.02308667078614235,
+ 0.006439770571887493,
+ -0.017118284478783607,
+ -0.02075573429465294,
+ 0.10131411254405975,
+ 0.012753344140946865,
+ 0.013102242723107338,
+ 0.0150100477039814,
+ -0.026931975036859512,
+ -0.005307707469910383,
+ 0.03779978305101395,
+ 0.013124512508511543,
+ 0.036463577300310135,
+ -0.014534952118992805,
+ 0.014831886626780033,
+ -0.051458779722452164,
+ -0.010682225227355957,
+ -0.037888865917921066,
+ 0.05897122621536255,
+ -0.01754883863031864,
+ 0.006458329036831856,
+ -0.006335843354463577,
+ 0.0321580246090889,
+ -0.022982744500041008,
+ 0.005482156295329332,
+ -0.03156415373086929,
+ -0.009902771562337875,
+ -0.03604786843061447,
+ 0.04848943278193474,
+ -0.005433904472738504,
+ 0.008039506152272224,
+ 0.022967897355556488,
+ -0.01557422336190939,
+ 0.01034817285835743,
+ -0.005983233451843262,
+ 0.0767873078584671,
+ 0.019404681399464607,
+ -0.0208745077252388,
+ -0.02676866017282009,
+ 0.014327097684144974,
+ 0.013117088936269283,
+ 0.011818000115454197,
+ 0.0034852707758545876,
+ -0.011810576543211937,
+ 0.011424561031162739,
+ 0.009702340699732304,
+ 0.004476290196180344,
+ 0.037651315331459045,
+ 0.029292605817317963,
+ -0.0012740353122353554,
+ -0.007920732721686363,
+ -0.010221975855529308,
+ 0.014089549891650677,
+ -0.03824518620967865,
+ -0.021587150171399117,
+ -0.048044029623270035,
+ -0.030762432143092155,
+ 0.032959748059511185,
+ 0.0033256683964282274,
+ 0.06360340863466263,
+ -0.019033512100577354,
+ -0.029188677668571472,
+ 0.00933859497308731,
+ -0.07257083058357239,
+ -0.0012072250247001648,
+ 0.010763881728053093,
+ 0.025180060416460037,
+ -0.020443951711058617,
+ 0.06164363771677017,
+ -0.020072784274816513,
+ -0.00018512021051719785,
+ 0.02537306770682335,
+ -0.02420017495751381,
+ -0.014720536768436432,
+ 0.0003331235784571618,
+ 0.01506943441927433,
+ -0.010585720650851727,
+ -0.008306747302412987,
+ -0.012931505218148232,
+ 0.016925277188420296,
+ -0.041125450283288956,
+ -0.01753399148583412,
+ -0.025788776576519012,
+ -0.0007989398436620831,
+ -0.04044250398874283,
+ -0.01506201084703207,
+ -0.0025499265175312757,
+ -0.041214533150196075,
+ -0.03396932780742645,
+ 0.029886474832892418,
+ 0.0303170308470726,
+ -0.043619703501462936,
+ 0.04287736490368843,
+ 0.04412449151277542,
+ 0.0012192879803478718,
+ -0.0013269268674775958,
+ 0.0019337870180606842,
+ -0.022359181195497513,
+ 0.003648584708571434,
+ 0.016761962324380875,
+ -0.05178540572524071,
+ -0.011758613400161266,
+ 0.05092429742217064,
+ -0.011276094242930412,
+ 0.042283497750759125,
+ 0.02795640006661415,
+ 0.08094438910484314,
+ 0.009457369334995747,
+ 0.014549799263477325,
+ 0.04044250398874283,
+ 0.0015542673645541072,
+ -0.016940122470259666,
+ 0.03272220119833946,
+ -0.05101337656378746,
+ -0.023606305941939354,
+ 0.008046929724514484,
+ -0.019137440249323845,
+ 0.0009116822620853782,
+ 0.009702340699732304,
+ 0.07399611920118332,
+ -0.008024659939110279,
+ 0.017756693065166473,
+ -0.016494721174240112,
+ 0.006855479441583157,
+ 0.00038926280103623867,
+ 0.012278248555958271,
+ -4.6483033656841144e-05,
+ 0.0348898246884346,
+ -0.03153446316719055,
+ -0.00489571038633585,
+ 0.007519870530813932,
+ -0.0749463140964508,
+ 0.01968676783144474,
+ 0.023992322385311127,
+ 0.02433379553258419,
+ -0.03809671849012375,
+ 0.060812219977378845,
+ -0.038571812212467194,
+ 0.014312251470983028,
+ 0.018959278240799904,
+ 0.008737302385270596,
+ 0.010140319354832172,
+ -0.019078053534030914,
+ 0.08029113709926605,
+ 0.01329525001347065,
+ -0.007308304775506258,
+ 0.030613964423537254,
+ -0.057456858456134796,
+ 0.020488493144512177,
+ -0.021483223885297775,
+ -0.01855841651558876,
+ -0.008618528954684734,
+ -0.10523364692926407,
+ -0.016940122470259666,
+ 0.01743006519973278,
+ 0.016524413600564003,
+ 0.046945370733737946,
+ -0.012441562488675117,
+ -0.005678875371813774,
+ 0.002711384790018201,
+ -0.002659421181306243,
+ -0.019122593104839325,
+ 0.0024070267099887133,
+ -0.02099328115582466,
+ -0.025239447131752968,
+ 0.008373557589948177,
+ -0.004179355688393116,
+ -0.005040465854108334,
+ -0.016791654750704765,
+ 0.0326034277677536,
+ 0.002505386248230934,
+ 0.007148702163249254,
+ -0.0008894121274352074,
+ -0.003539090044796467,
+ -0.030940592288970947,
+ -0.029693467542529106,
+ 0.020191557705402374,
+ -0.02080027386546135,
+ 0.06021835282444954,
+ -0.04540131241083145,
+ 0.026397492736577988,
+ 0.02675381302833557,
+ -0.011528488248586655,
+ -0.01443844847381115,
+ 0.007965272292494774,
+ -0.012983468361198902,
+ 0.030762432143092155,
+ 0.02679835446178913,
+ -0.04608426243066788,
+ -0.0367308184504509,
+ -0.02681320160627365,
+ 0.03349423035979271,
+ -0.018187249079346657,
+ -0.015559377148747444,
+ 0.0016136543126776814,
+ -0.03848273307085037,
+ -0.015633611008524895,
+ 0.003596621099859476,
+ -0.015782076865434647,
+ -0.015247595496475697,
+ 0.03135630115866661,
+ -0.003260713769122958,
+ -0.07043290138244629,
+ 0.019464068114757538,
+ 0.04486683011054993,
+ -0.03569154813885689,
+ -0.04142238572239876,
+ 0.028624502941966057,
+ 0.025254294276237488,
+ -0.0040531582199037075,
+ -0.012397022917866707,
+ 0.03958139196038246,
+ -0.015440602786839008,
+ -0.014920967631042004,
+ 0.008380981162190437,
+ -0.03581032156944275,
+ -0.0443323478102684,
+ -0.012679110281169415,
+ 0.039997100830078125,
+ 0.04070974513888359,
+ -0.005868171341717243,
+ -0.0348898246884346,
+ -0.11004398763179779,
+ 0.02792670577764511,
+ -0.10814360529184341,
+ 0.011602722108364105,
+ -0.016925277188420296,
+ -0.06627582013607025,
+ -0.026917127892374992,
+ -0.0003804475418291986,
+ -0.014334521256387234,
+ -0.04085820913314819,
+ -0.009041660465300083,
+ -0.020533032715320587,
+ 0.07744055986404419,
+ -0.02449711039662361,
+ -0.04430265352129936,
+ -0.09187158942222595,
+ -0.0007247061585076153,
+ 0.009375711902976036,
+ -0.0010021545458585024,
+ 0.030406109988689423,
+ 0.020206404849886894,
+ 0.02317575179040432,
+ -0.02100812830030918,
+ 0.015752384439110756,
+ 0.017979394644498825,
+ -0.012924081645905972,
+ 0.09365319460630417,
+ 0.03572124242782593,
+ 0.027600077912211418,
+ 0.04168962687253952,
+ 0.02192862518131733,
+ -0.020265791565179825,
+ -0.03197986260056496,
+ 0.0007655346998944879,
+ -0.04026434198021889,
+ 0.01977584883570671,
+ -0.016940122470259666,
+ 0.008818959817290306,
+ 0.02085966058075428,
+ 0.04198656231164932,
+ 0.04964747652411461,
+ 0.0035873421002179384,
+ 0.015722690150141716,
+ 0.015217902138829231,
+ 0.020191557705402374,
+ -0.03373177722096443,
+ 0.00986565463244915,
+ 0.009049084037542343,
+ 0.010214552283287048,
+ -0.016747115179896355,
+ 0.02670927345752716,
+ -0.016509568318724632,
+ 0.020310331135988235,
+ -0.00870018545538187,
+ -0.011973890475928783,
+ -0.0513400062918663,
+ 0.007787111680954695,
+ -0.006758975330740213,
+ -0.015306982211768627,
+ 0.02063695900142193,
+ 0.03236588090658188,
+ -0.09608805924654007,
+ 0.024823738262057304,
+ -0.01748945191502571,
+ -0.029322298243641853,
+ 0.001760265906341374,
+ 0.01854356937110424,
+ 0.005177798215299845,
+ 0.02431895025074482,
+ 0.0371762216091156,
+ 0.014601762406527996,
+ 0.010058661922812462,
+ -0.008685339242219925,
+ 0.039908021688461304,
+ 0.009449945762753487,
+ -0.010867808945477009,
+ -0.04311491549015045,
+ -0.014156360179185867,
+ -0.006758975330740213,
+ 0.04762832075357437,
+ -0.003492694115266204,
+ 0.011313211172819138,
+ -0.02213647961616516,
+ 0.031920477747917175,
+ 0.012552913278341293,
+ 0.014364214614033699,
+ -0.01961253583431244,
+ 0.034385036677122116,
+ 0.0014800337376073003,
+ -0.00821766722947359,
+ 0.00407914025709033,
+ 0.0601886585354805,
+ -0.030613964423537254,
+ -0.02895113080739975,
+ -0.008098892867565155,
+ -0.060812219977378845,
+ -0.0603371262550354,
+ 0.02567000314593315,
+ 0.020414259284734726,
+ -0.003654152387753129,
+ -0.0017045906279236078,
+ -0.03349423035979271,
+ 0.008373557589948177,
+ -0.015455449931323528,
+ -0.03934384509921074,
+ 0.09786966443061829,
+ 0.03676051273941994,
+ -0.04044250398874283,
+ -0.01271622721105814,
+ 0.002520232927054167,
+ 0.010734188370406628,
+ 0.016672881320118904,
+ -0.020488493144512177,
+ -0.051607247442007065,
+ 0.02314605750143528,
+ -0.05552678182721138,
+ -0.005805072840303183,
+ -0.02999040111899376,
+ 0.07845014333724976,
+ 0.008922887034714222,
+ -0.02890658937394619,
+ -0.027332836762070656,
+ -0.001516222720965743,
+ -0.004034599754959345,
+ -0.025803623721003532,
+ -0.0197313092648983,
+ 0.03791855648159981,
+ 0.03364269807934761,
+ -0.016539260745048523,
+ 0.019464068114757538,
+ 0.016925277188420296,
+ -0.044748056679964066,
+ -0.01965707540512085,
+ -0.03836395964026451,
+ 0.011402291245758533,
+ 0.06158424913883209,
+ -0.004275859333574772,
+ -0.10535242408514023,
+ -0.0163017138838768,
+ 0.009628106839954853,
+ -0.001290737884119153,
+ 0.016643188893795013,
+ 0.022255253046751022,
+ -0.07340224832296371,
+ -5.132562364451587e-05,
+ 0.02650141902267933,
+ 0.029337145388126373,
+ -0.014690842479467392,
+ 0.05217142030596733,
+ -0.000717282819095999,
+ 0.01270880363881588,
+ -0.026397492736577988,
+ -0.014475565403699875,
+ -0.00495509710162878,
+ -0.008677915669977665,
+ -0.034206874668598175,
+ 0.022923355922102928,
+ 0.024571344256401062,
+ -0.01952345483005047,
+ 0.01731129176914692,
+ 0.0025517824105918407,
+ 0.008373557589948177,
+ -0.047865867614746094,
+ -0.044748056679964066,
+ 0.018944432958960533,
+ 0.015024893917143345,
+ 0.004112545400857925,
+ 0.018855351954698563,
+ -0.04840034991502762,
+ -0.015121398493647575,
+ 0.033167604357004166,
+ 0.0145126823335886,
+ 0.009650376625359058,
+ 0.015811771154403687,
+ 0.0344444215297699,
+ -0.041125450283288956,
+ 0.0010541180381551385,
+ -0.09941373020410538,
+ -0.06692907214164734,
+ -0.0015319973463192582,
+ 0.009546449407935143,
+ 0.020087631419301033,
+ -0.0604855939745903,
+ -0.01633140631020069,
+ -0.006276456639170647,
+ 0.02077057957649231,
+ 0.059713561087846756,
+ -0.0008462638361379504,
+ 0.03720591589808464,
+ -0.04079882428050041,
+ -0.052705902606248856,
+ 0.002819023560732603,
+ -0.07714362442493439,
+ -0.045817021280527115,
+ 0.02448226325213909,
+ -0.0018660487839952111,
+ 0.02421502210199833,
+ -0.016598647460341454,
+ 0.0005581444129347801,
+ 0.026931975036859512,
+ 0.025105826556682587,
+ -0.01277561392635107,
+ -0.011610145680606365,
+ 0.010756458155810833,
+ -0.0421944186091423,
+ 0.028535421937704086,
+ -0.01950860768556595,
+ -0.016568955034017563,
+ 0.0463218092918396,
+ 0.0460248738527298,
+ -0.028090020641684532,
+ -0.002238145098090172,
+ 0.006974252872169018,
+ -0.010296209715306759,
+ -0.0005664956988766789,
+ 0.0531810000538826,
+ -0.05953540280461311,
+ -0.049142688512802124,
+ -0.016004778444767,
+ 0.0039009791798889637,
+ -0.017637919634580612,
+ 0.016806501895189285,
+ -0.011662108823657036,
+ -0.010533757507801056,
+ -0.04050188884139061,
+ 0.04706414416432381,
+ 0.025803623721003532,
+ 0.06413789093494415,
+ 0.01852872408926487,
+ 0.030524883419275284,
+ 0.0011877387296408415,
+ 0.06930455565452576,
+ 0.0658007264137268,
+ 0.027496149763464928,
+ 0.008811536245048046,
+ -0.00993246491998434,
+ 0.03025764226913452,
+ 0.04658905044198036,
+ 0.03325668349862099,
+ 0.03132660686969757,
+ -0.034385036677122116,
+ 0.010674801655113697,
+ 0.0031753452494740486,
+ 0.02335391193628311,
+ 0.05906030535697937,
+ -0.012738496996462345,
+ -0.03869058936834335,
+ 0.0267389677464962,
+ 0.018068475648760796,
+ 0.04424326494336128,
+ 0.06366279721260071,
+ -0.019983703270554543,
+ -0.01754883863031864,
+ -0.02418532967567444,
+ -0.008187973871827126,
+ -0.013146782293915749,
+ -0.03569154813885689,
+ 0.005864459555596113,
+ 0.0054673096165061,
+ -0.04848943278193474,
+ 0.0014753941213712096,
+ -0.02420017495751381,
+ 0.0023587748873978853,
+ -0.055170461535453796,
+ 0.002705817110836506,
+ -0.030331876128911972,
+ 0.023532072082161903,
+ -0.02783762477338314,
+ 0.006603084970265627,
+ 0.02451195754110813,
+ 0.0046247574500739574,
+ 0.11865509301424026,
+ -0.03168293088674545,
+ -0.01857326366007328,
+ -0.007052198518067598,
+ 0.03390993922948837,
+ -0.01264941692352295,
+ 0.04180840030312538,
+ 0.02304213121533394,
+ 0.004023464862257242,
+ -0.01613839901983738,
+ 0.01845449022948742,
+ 0.012374752201139927,
+ 0.06259382516145706,
+ 0.02439318411052227,
+ -0.038839053362607956,
+ -0.01163241546601057,
+ -0.013013161718845367,
+ 0.06271260231733322,
+ -0.029767701402306557,
+ 0.054962608963251114,
+ 0.017652766779065132,
+ 0.049142688512802124,
+ 0.0012638282496482134,
+ -0.049112994223833084,
+ -0.00725262938067317,
+ -0.024571344256401062,
+ 0.0122262854129076,
+ -0.012025854550302029,
+ -0.026115404441952705,
+ -0.008908039890229702,
+ 0.037681009620428085,
+ -0.005652893800288439,
+ 0.003598476992920041,
+ 0.040056485682725906,
+ 0.015559377148747444,
+ 0.015113974921405315,
+ 0.0417490154504776,
+ 0.020592419430613518,
+ 0.004019753076136112,
+ 0.025877855718135834,
+ -0.034117795526981354,
+ -0.005151816643774509,
+ -0.04712353274226189,
+ -0.0020247232168912888,
+ 0.012931505218148232,
+ -0.022477954626083374,
+ -0.01036302000284195,
+ -0.011350328102707863,
+ -0.010882656089961529,
+ 0.007349133025854826,
+ 0.008366134017705917,
+ -0.003080697264522314,
+ 0.0007868768880143762,
+ 0.029218371957540512,
+ -0.014750230126082897,
+ 0.0048660170286893845,
+ 0.028550269082188606,
+ -0.008187973871827126,
+ -0.020072784274816513,
+ 0.0010522622615098953,
+ -0.05540800839662552,
+ 0.004487425088882446,
+ 0.007772265002131462,
+ 0.025180060416460037,
+ -0.04261012375354767,
+ 0.04397602379322052,
+ 0.02204739861190319,
+ -0.055200155824422836,
+ -0.07156125456094742,
+ -0.010006698779761791,
+ -0.02800093963742256,
+ -0.00496252067387104,
+ -3.0389408493647352e-05,
+ 0.04065035656094551,
+ -0.008462638594210148,
+ 0.017073743045330048,
+ -0.011446831747889519,
+ 0.018870199099183083,
+ -0.004851170349866152,
+ -0.016954969614744186,
+ -0.004131103400141001,
+ -0.04837065935134888,
+ -0.02109720930457115,
+ -0.020043089985847473,
+ 0.013748074881732464,
+ -0.0011701082112267613,
+ 0.03396932780742645,
+ -0.03331606835126877,
+ 0.0024163059424608946,
+ -0.01506201084703207,
+ 0.017088590189814568,
+ -0.002522088820114732,
+ -0.010823268443346024,
+ 0.006510292645543814,
+ -0.015871157869696617,
+ -0.00928663183003664,
+ 0.05095398798584938,
+ -0.014171207323670387,
+ -0.03108906000852585,
+ 0.00579022616147995,
+ 0.03114844672381878,
+ -0.008878346532583237,
+ -0.0421944186091423,
+ 0.002058128360658884,
+ -0.013258133083581924,
+ 0.022670961916446686,
+ 0.0045839291997253895,
+ 0.012634570710361004,
+ 0.008336440660059452,
+ 0.029292605817317963,
+ -0.0513400062918663,
+ 0.021587150171399117,
+ 0.03168293088674545,
+ -0.0624750554561615,
+ 0.050360120832920074,
+ -0.007597815711051226,
+ -0.007735148072242737,
+ -0.007345421239733696,
+ -0.09252484142780304,
+ -0.009323748759925365,
+ 0.014111820608377457,
+ 0.045965489000082016,
+ 0.10570874065160751,
+ -0.03233618661761284,
+ -0.08058807253837585,
+ 0.01740037091076374,
+ 0.03506798297166824,
+ -0.03515706583857536,
+ 0.021275369450449944,
+ -0.019107745960354805,
+ -0.014705689623951912,
+ -0.029203524813055992,
+ -0.00439463322982192,
+ -0.0014521961566060781,
+ -0.0022307217586785555,
+ 0.0327518954873085,
+ -0.010273939929902554,
+ 0.02320544421672821,
+ 0.04136300086975098,
+ -0.016836196184158325,
+ -0.017088590189814568,
+ 0.007980119436979294,
+ 0.03679020702838898,
+ 0.013577338308095932,
+ 0.00033080377033911645,
+ -0.044510506093502045,
+ 0.008870922960340977,
+ 0.04510437697172165,
+ -0.0396110862493515,
+ -0.007260052487254143,
+ -0.003501973347738385,
+ 0.06122792884707451,
+ -0.04323368892073631,
+ -0.020102476701140404,
+ -0.01385200209915638,
+ 0.017875466495752335,
+ 0.004877151921391487,
+ 0.03601817414164543,
+ 0.02541760727763176,
+ -0.008269630372524261,
+ 0.010311056859791279,
+ -0.041006676852703094,
+ -0.013621877878904343,
+ -0.008863500319421291,
+ 0.017920007929205894,
+ -0.008418098092079163,
+ 0.12209953367710114,
+ 0.008982273750007153,
+ -0.0038453040178865194,
+ 0.03352392464876175,
+ 0.022967897355556488,
+ 0.010578298009932041,
+ 0.017623072490096092,
+ -0.04409479722380638,
+ 0.05911969393491745,
+ -0.03699805960059166,
+ 0.013948505744338036,
+ 0.007913309149444103,
+ 0.028372107073664665,
+ 0.017652766779065132,
+ -0.0017546983435750008,
+ 0.03711683303117752,
+ -0.016821349039673805,
+ -0.056180041283369064,
+ 0.03735437989234924,
+ 0.011751189827919006,
+ -0.02789701148867607,
+ 0.05344824120402336,
+ -0.04293675348162651,
+ -0.020057937130331993,
+ -0.010036392137408257,
+ -0.04638119414448738,
+ -0.05442812666296959,
+ 0.012567760422825813,
+ -0.0323064923286438,
+ 0.019939163699746132,
+ 0.051636938005685806,
+ 0.026011476293206215,
+ -0.005738262552767992,
+ -0.03575093299150467,
+ 0.0018326436402276158,
+ 0.007972695864737034,
+ -0.013013161718845367,
+ -0.030910899862647057,
+ -0.014193477109074593,
+ -0.015039741061627865,
+ 0.01343629416078329,
+ 0.0348898246884346,
+ 0.03319729492068291,
+ -0.00750873563811183,
+ 0.001985750626772642,
+ -0.026145098730921745,
+ 0.007430789992213249,
+ 0.025907550007104874,
+ 0.013102242723107338,
+ 0.06538501381874084,
+ 0.01857326366007328,
+ -0.005166663322597742,
+ -0.006068602204322815,
+ 0.06776048988103867,
+ -0.005678875371813774,
+ 0.025684848427772522,
+ -0.008536871522665024,
+ 0.0,
+ -0.022953050211071968,
+ -0.04991471767425537,
+ -0.03352392464876175,
+ 0.006803515832871199,
+ -0.022270100191235542,
+ -0.05335916206240654,
+ -0.012619723565876484,
+ -0.014238017611205578,
+ -0.012857271358370781,
+ 0.002499818801879883,
+ -0.0034258838277310133,
+ 0.0028320143464952707,
+ 0.028565116226673126,
+ -0.021676231175661087,
+ 0.0019486338132992387,
+ -0.003488982329145074,
+ 0.020265791565179825,
+ -0.023843854665756226,
+ 0.001762121682986617,
+ 0.021156596019864082,
+ -0.004951385781168938,
+ -0.010036392137408257,
+ -0.005823631305247545,
+ -0.011662108823657036,
+ -0.015752384439110756,
+ -0.004416903015226126,
+ -0.04148177430033684,
+ -0.004561658948659897,
+ -0.04076912999153137,
+ -0.026204485446214676,
+ -0.007594104390591383,
+ 0.014787347055971622,
+ 0.015247595496475697,
+ -0.006885172799229622,
+ -0.010311056859791279,
+ 0.007935578934848309,
+ 0.0013955929316580296,
+ -0.060990381985902786,
+ 0.01041498314589262,
+ -0.00463960412889719,
+ 0.009531603194773197,
+ 0.018068475648760796,
+ 0.015811771154403687,
+ -0.020176710560917854,
+ -0.010763881728053093,
+ 0.0011385588441044092,
+ -0.014059856534004211,
+ 0.02537306770682335,
+ -0.07827197760343552,
+ 0.027466457337141037,
+ -0.02071119286119938,
+ -0.0022808294743299484,
+ 0.05537831783294678,
+ 0.025788776576519012,
+ -0.002635295270010829,
+ 0.014601762406527996,
+ -0.0064286356791853905,
+ 0.023725079372525215,
+ -0.01835056208074093,
+ -0.009977005422115326,
+ 0.03670112416148186,
+ -0.01392623595893383,
+ -0.022181019186973572,
+ -0.0033089658245444298,
+ 0.03548369184136391,
+ -0.017801232635974884,
+ -0.005775379482656717,
+ -0.05199326202273369,
+ 0.07310531288385391,
+ 0.01970161497592926,
+ 0.021290216594934464,
+ 0.05324038490653038,
+ 0.025699695572257042,
+ -0.02565515600144863,
+ -0.00927920825779438,
+ -0.009093624539673328,
+ 0.0035316667053848505,
+ -0.028505727648735046,
+ 0.008492331951856613,
+ 0.0017556262901052833,
+ 0.0040049063973128796,
+ 0.018320869654417038,
+ -0.006265321746468544,
+ -0.018840504810214043,
+ -0.021423837170004845,
+ -0.0018066618358716369,
+ -0.013503104448318481,
+ 0.024808891117572784,
+ 0.008314170874655247,
+ -0.010570874437689781,
+ 0.03132660686969757,
+ 0.008752149529755116,
+ 0.02664988674223423,
+ 0.02189893275499344,
+ -0.0255957692861557,
+ 0.007404808420687914,
+ -0.019122593104839325,
+ 0.0027503573801368475,
+ -0.00034611448063515127,
+ -0.013569914735853672,
+ 0.01869203709065914,
+ 0.013414023444056511,
+ -0.07381796091794968,
+ -0.04952870309352875,
+ 0.0003765038854908198,
+ -0.02650141902267933,
+ 0.007159837055951357,
+ -0.005730838980525732,
+ -0.024571344256401062,
+ -0.0461733415722847,
+ 0.0027781950775533915,
+ 0.015722690150141716,
+ 0.011595298536121845,
+ -0.05131031200289726,
+ 0.0394626185297966,
+ 0.007853922434151173,
+ 0.030643658712506294,
+ 0.029604386538267136,
+ 0.018202096223831177,
+ -0.03141568973660469,
+ 0.0221661739051342,
+ 0.0014020884409546852,
+ 0.005289149004966021,
+ 0.00979884434491396,
+ -0.017177671194076538,
+ 0.0368792861700058,
+ -0.0195828415453434,
+ -0.014846733771264553,
+ 0.005070159677416086,
+ 0.019360139966011047,
+ 0.06669152528047562,
+ 0.02565515600144863,
+ 0.024571344256401062,
+ 0.06158424913883209,
+ 0.03358330950140953,
+ -0.02439318411052227,
+ -0.02319059707224369,
+ -0.021527763456106186,
+ 0.00375251192599535,
+ -0.06574133783578873,
+ 0.01754883863031864,
+ 0.003527955152094364,
+ 0.016940122470259666,
+ -0.007493888959288597,
+ 0.017830926924943924,
+ -0.02798609249293804,
+ 0.017816079780459404,
+ -0.017118284478783607,
+ -0.023962628096342087,
+ 0.010118048638105392,
+ 0.017162824049592018,
+ 0.014297404326498508,
+ 0.010867808945477009,
+ -0.006588237825781107,
+ 0.018009087070822716,
+ 0.008440367877483368,
+ 0.012515796348452568,
+ -0.0350382924079895,
+ 0.04946931451559067,
+ 0.005545254796743393,
+ 0.016717422753572464,
+ -0.028579961508512497,
+ 0.03554308041930199,
+ -0.015960238873958588,
+ 0.015871157869696617,
+ -0.010533757507801056,
+ 0.025966936722397804,
+ 0.003882420714944601,
+ -0.06140609085559845,
+ 0.0012629003031179309,
+ 0.027392223477363586,
+ -0.058703985065221786,
+ 0.009650376625359058,
+ 0.033048827201128006,
+ -0.04498560354113579,
+ -0.020443951711058617,
+ -0.03224710375070572,
+ 0.00044053042074665427,
+ 0.02681320160627365,
+ 0.01971646212041378,
+ -0.016984663903713226,
+ -0.015425756573677063,
+ -0.021661384031176567,
+ -0.010303633287549019,
+ 0.022567035630345345,
+ -0.021512916311621666,
+ -0.001564474543556571,
+ 0.01328040286898613,
+ 0.0021434971131384373,
+ -0.04495590925216675,
+ -0.010830692015588284,
+ 0.016732268035411835,
+ 0.04747985303401947,
+ -0.010704495012760162,
+ -0.005404211115092039,
+ -0.04076912999153137,
+ 0.025937244296073914,
+ 0.037829477339982986,
+ -0.012241131626069546,
+ -0.01745975948870182,
+ 0.025877855718135834,
+ 0.005259455181658268,
+ 0.01722221076488495,
+ 0.04088790342211723,
+ -0.12732559442520142,
+ 0.06586010754108429,
+ -0.024823738262057304,
+ 0.010979159735143185,
+ 0.0676417201757431,
+ -0.00866306945681572,
+ 0.060990381985902786,
+ -0.03340515121817589,
+ 0.020132170990109444,
+ -0.016836196184158325,
+ -0.022641269490122795,
+ 0.011342904530465603,
+ -0.00813600979745388,
+ 0.0009385919547639787,
+ -0.027347683906555176,
+ 0.035275839269161224,
+ -0.0013018728932365775,
+ -0.00028139198548160493
+ ],
+ "result": "--- 结果 1 (相似度: 1.000) ---\n文件路径: C:\\Steam\\steamapps\\common\\RimWorld\\Data\\dll1.6\\Verse\\Hediff.txt\n\npublic class Hediff : IExposable, ILoadReferenceable\n{\n\tpublic HediffDef def;\n\n\tpublic int ageTicks;\n\n\tpublic int tickAdded = -1;\n\n\tprivate BodyPartRecord part;\n\n\tpublic string sourceLabel;\n\n\tpublic ThingDef sourceDef;\n\n\tpublic BodyPartGroupDef sourceBodyPartGroup;\n\n\tpublic string sourceToolLabel;\n\n\tpublic HediffDef sourceHediffDef;\n\n\tpublic int loadID = -1;\n\n\tprotected float severityInt;\n\n\tprivate bool recordedTale;\n\n\tprotected bool causesNoPain;\n\n\tprivate bool visible;\n\n\tpublic WeakReference combatLogEntry;\n\n\tpublic string combatLogText;\n\n\tpublic int temp_partIndexToSetLater = -1;\n\n\tpublic bool canBeThreateningToPart = true;\n\n\tprivate List abilities;\n\n\t[Unsaved(false)]\n\tpublic Pawn pawn;\n\n\tprivate static StringBuilder tipSb = new StringBuilder();\n\n\tpublic virtual string LabelBase => CurStage?.overrideLabel ?? def.label;\n\n\tpublic string LabelBaseCap => LabelBase.CapitalizeFirst(def);\n\n\tpublic virtual string Label\n\t{\n\t\tget\n\t\t{\n\t\t\tstring labelInBrackets = LabelInBrackets;\n\t\t\treturn LabelBase + (labelInBrackets.NullOrEmpty() ? \"\" : (\" (\" + labelInBrackets + \")\"));\n\t\t}\n\t}\n\n\tpublic string LabelCap => Label.CapitalizeFirst(def);\n\n\tpublic virtual Color LabelColor => def.defaultLabelColor;\n\n\tpublic virtual string LabelInBrackets\n\t{\n\t\tget\n\t\t{\n\t\t\tif (CurStage != null && !CurStage.label.NullOrEmpty())\n\t\t\t{\n\t\t\t\treturn CurStage.label;\n\t\t\t}\n\t\t\treturn null;\n\t\t}\n\t}\n\n\tpublic virtual string SeverityLabel\n\t{\n\t\tget\n\t\t{\n\t\t\tif (!IsLethal && !def.alwaysShowSeverity)\n\t\t\t{\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\treturn (Severity / Mathf.Abs(def.lethalSeverity)).ToStringPercent();\n\t\t}\n\t}\n\n\tpublic virtual int UIGroupKey => Label.GetHashCode();\n\n\tpublic virtual string TipStringExtra\n\t{\n\t\tget\n\t\t{\n\t\t\tStringBuilder stringBuilder = new StringBuilder();\n\t\t\tforeach (StatDrawEntry item in HediffStatsUtility.SpecialDisplayStats(CurStage, this))\n\t\t\t{\n\t\t\t\tif (item.ShouldDisplay())\n\t\t\t\t{\n\t\t\t\t\tstringBuilder.Append(\" - \" + item.LabelCap + \": \" + item.ValueString);\n\t\t\t\t\tif (CurStage?.statOffsetEffectMultiplier != null)\n\t\t\t\t\t{\n\t\t\t\t\t\tstringBuilder.Append($\" x {CurStage.statOffsetEffectMultiplier.LabelCap}\");\n\t\t\t\t\t}\n\t\t\t\t\telse if (CurStage?.statFactorEffectMultiplier != null)\n\t\t\t\t\t{\n\t\t\t\t\t\tstringBuilder.Append($\" x {CurStage.statFactorEffectMultiplier.LabelCap}\");\n\t\t\t\t\t}\n\t\t\t\t\tstringBuilder.AppendLine();\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (ModsConfig.AnomalyActive && !def.aptitudes.NullOrEmpty())\n\t\t\t{\n\t\t\t\tstringBuilder.AppendLine(def.aptitudes.Select((Aptitude x) => x.skill.LabelCap.ToString() + \" \" + x.level.ToStringWithSign()).ToLineList(\" - \", capitalizeItems: true));\n\t\t\t}\n\t\t\tHediffStage stage = CurStage;\n\t\t\tif (stage != null)\n\t\t\t{\n\t\t\t\tif (!stage.enablesNeeds.NullOrEmpty())\n\t\t\t\t{\n\t\t\t\t\tif (stringBuilder.Length > 0)\n\t\t\t\t\t{\n\t\t\t\t\t\tstringBuilder.AppendLine();\n\t\t\t\t\t}\n\t\t\t\t\tstringBuilder.AppendLine((\"AddsNeeds\".Translate().CapitalizeFirst() + \":\").Colorize(ColoredText.TipSectionTitleColor));\n\t\t\t\t\tstringBuilder.AppendLine(stage.enablesNeeds.Select((NeedDef x) => x.LabelCap.ToString()).ToLineList(\" - \"));\n\t\t\t\t}\n\t\t\t\tif (!stage.disablesNeeds.NullOrEmpty())\n\t\t\t\t{\n\t\t\t\t\tif (stringBuilder.Length > 0)\n\t\t\t\t\t{\n\t\t\t\t\t\tstringBuilder.AppendLine();\n\t\t\t\t\t}\n\t\t\t\t\tstringBuilder.AppendLine((\"DisabledNeedsLabel\".Translate().CapitalizeFirst() + \":\").Colorize(ColoredText.TipSectionTitleColor));\n\t\t\t\t\tstringBuilder.AppendLine(stage.disablesNeeds.Select((NeedDef x) => x.LabelCap.ToString()).ToLineList(\" - \"));\n\t\t\t\t}\n\t\t\t\tif (stage.disabledWorkTags != 0)\n\t\t\t\t{\n\t\t\t\t\tif (stringBuilder.Length > 0)\n\t\t\t\t\t{\n\t\t\t\t\t\tstringBuilder.AppendLine();\n\t\t\t\t\t}\n\t\t\t\t\tstringBuilder.AppendLine((\"DisabledWorkLabel\".Translate().CapitalizeFirst() + \":\").Colorize(ColoredText.TipSectionTitleColor));\n\t\t\t\t\tIEnumerable items = from x in DefDatabase.AllDefsListForReading\n\t\t\t\t\t\twhere (stage.disabledWorkTags & x.workTags) != 0\n\t\t\t\t\t\tselect x.labelShort;\n\t\t\t\t\tstringBuilder.Append(\" - \" + items.ToCommaList().CapitalizeFirst());\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (def.CompProps() != null)\n\t\t\t{\n\t\t\t\tstringBuilder.AppendLine(\" - \" + \"IncreasesChanceOfLovin\".Translate());\n\t\t\t}\n\t\t\treturn stringBuilder.ToString();\n\t\t}\n\t}\n\n\tpublic virtual HediffStage CurStage\n\t{\n\t\tget\n\t\t{\n\t\t\tif (!def.stages.NullOrEmpty())\n\t\t\t{\n\t\t\t\treturn def.stages[CurStageIndex];\n\t\t\t}\n\t\t\treturn null;\n\t\t}\n\t}\n\n\tpublic virtual bool ShouldRemove => Severity <= 0f;\n\n\tpublic virtual bool Visible\n\t{\n\t\tget\n\t\t{\n\t\t\tif (!visible && CurStage != null)\n\t\t\t{\n\t\t\t\treturn CurStage.becomeVisible;\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t}\n\n\tpublic virtual float BleedRate => 0f;\n\n\tpublic virtual float BleedRateScaled => BleedRate / pawn.HealthScale;\n\n\tpublic bool Bleeding => BleedRate > 1E-05f;\n\n\tpublic virtual float PainOffset\n\t{\n\t\tget\n\t\t{\n\t\t\tif (CurStage != null && !causesNoPain)\n\t\t\t{\n\t\t\t\treturn CurStage.painOffset;\n\t\t\t}\n\t\t\treturn 0f;\n\t\t}\n\t}\n\n\tpublic virtual float PainFactor => CurStage?.painFactor ?? 1f;\n\n\tpublic List CapMods => CurStage?.capMods;\n\n\tpublic virtual float SummaryHealthPercentImpact => 0f;\n\n\tpublic virtual float TendPriority\n\t{\n\t\tget\n\t\t{\n\t\t\tfloat a = 0f;\n\t\t\tHediffStage curStage = CurStage;\n\t\t\tif (curStage != null && curStage.lifeThreatening)\n\t\t\t{\n\t\t\t\ta = Mathf.Max(a, 1f);\n\t\t\t}\n\t\t\ta = Mathf.Max(a, BleedRate * 1.5f);\n\t\t\tHediffComp_TendDuration hediffComp_TendDuration = this.TryGetComp();\n\t\t\tif (hediffComp_TendDuration != null && hediffComp_TendDuration.TProps.severityPerDayTended < 0f)\n\t\t\t{\n\t\t\t\ta = Mathf.Max(a, 0.025f);\n\t\t\t}\n\t\t\treturn a;\n\t\t}\n\t}\n\n\tpublic virtual TextureAndColor StateIcon => TextureAndColor.None;\n\n\tpublic virtual int CurStageIndex => def.StageAtSeverity(Severity);\n\n\tpublic virtual float Severity\n\t{\n\t\tget\n\t\t{\n\t\t\treturn severityInt;\n\t\t}\n\t\tset\n\t\t{\n\t\t\tbool flag = false;\n\t\t\tif (IsLethal && value >= def.lethalSeverity)\n\t\t\t{\n\t\t\t\tvalue = def.lethalSeverity;\n\t\t\t\tflag = true;\n\t\t\t}\n\t\t\tbool flag2 = this is Hediff_Injury && value > severityInt && Mathf.RoundToInt(value) != Mathf.RoundToInt(severityInt);\n\t\t\tint curStageIndex = CurStageIndex;\n\t\t\tseverityInt = Mathf.Clamp(value, def.minSeverity, def.maxSeverity);\n\t\t\tif (CurStageIndex != curStageIndex)\n\t\t\t{\n\t\t\t\tOnStageIndexChanged(CurStageIndex);\n\t\t\t}\n\t\t\tif ((CurStageIndex != curStageIndex || flag || flag2) && pawn.health.hediffSet.hediffs.Contains(this))\n\t\t\t{\n\t\t\t\tpawn.health.Notify_HediffChanged(this);\n\t\t\t\tif (!pawn.Dead && pawn.needs.mood != null)\n\t\t\t\t{\n\t\t\t\t\tpawn.needs.mood.thoughts.situational.Notify_SituationalThoughtsDirty();\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic BodyPartRecord Part\n\t{\n\t\tget\n\t\t{\n\t\t\treturn part;\n\t\t}\n\t\tset\n\t\t{\n\t\t\tif (pawn == null && value != null)\n\t\t\t{\n\t\t\t\tLog.Error(\"Hediff: Cannot set Part without setting pawn first.\");\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tpart = value;\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic bool IsLethal\n\t{\n\t\tget\n\t\t{\n\t\t\tif (def.lethalSeverity > 0f)\n\t\t\t{\n\t\t\t\treturn canBeThreateningToPart;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic bool IsCurrentlyLifeThreatening => IsStageLifeThreatening(CurStage);\n\n\tpublic List AllAbilitiesForReading\n\t{\n\t\tget\n\t\t{\n\t\t\tif (abilities == null && !def.abilities.NullOrEmpty())\n\t\t\t{\n\t\t\t\tabilities = new List();\n\t\t\t\tforeach (AbilityDef ability in def.abilities)\n\t\t\t\t{\n\t\t\t\t\tabilities.Add(AbilityUtility.MakeAbility(ability, pawn));\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn abilities;\n\t\t}\n\t}\n\n\tpublic virtual string Description => def.Description;\n\n\tpublic virtual bool TendableNow(bool ignoreTimer = false)\n\t{\n\t\tif (!def.tendable || Severity <= 0f || this.FullyImmune() || !Visible || this.IsPermanent() || !pawn.RaceProps.IsFlesh || (this is Hediff_Injury && !pawn.health.CanBleed))\n\t\t{\n\t\t\treturn false;\n\t\t}\n\t\tif (!ignoreTimer)\n\t\t{\n\t\t\tHediffComp_TendDuration hediffComp_TendDuration = this.TryGetComp();\n\t\t\tif (hediffComp_TendDuration != null && !hediffComp_TendDuration.AllowTend)\n\t\t\t{\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n\n\tpublic bool IsStageLifeThreatening(HediffStage stage)\n\t{\n\t\tif (stage == null)\n\t\t{\n\t\t\treturn false;\n\t\t}\n\t\tif (stage.lifeThreatening)\n\t\t{\n\t\t\treturn canBeThreateningToPart;\n\t\t}\n\t\treturn false;\n\t}\n\n\tpublic bool IsAnyStageLifeThreatening()\n\t{\n\t\tif (def.stages == null || !canBeThreateningToPart)\n\t\t{\n\t\t\treturn false;\n\t\t}\n\t\tfor (int i = 0; i < def.stages.Count; i++)\n\t\t{\n\t\t\tif (def.stages[i].lifeThreatening)\n\t\t\t{\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n\tpublic bool CanEverKill()\n\t{\n\t\tif (!IsLethal)\n\t\t{\n\t\t\treturn IsAnyStageLifeThreatening();\n\t\t}\n\t\treturn true;\n\t}\n\n\tpublic void SetVisible()\n\t{\n\t\tvisible = true;\n\t}\n\n\tprotected virtual void OnStageIndexChanged(int stageIndex)\n\t{\n\t\tif (CurStage.pctConditionalThoughtsNullified > 0f || CurStage.pctAllThoughtNullification > 0f)\n\t\t{\n\t\t\tpawn.health.hediffSet.CacheThoughtsNullified();\n\t\t}\n\t}\n\n\tpublic virtual void ExposeData()\n\t{\n\t\tif (Scribe.mode == LoadSaveMode.Saving && combatLogEntry != null)\n\t\t{\n\t\t\tLogEntry target = combatLogEntry.Target;\n\t\t\tif (target == null || !Current.Game.battleLog.IsEntryActive(target))\n\t\t\t{\n\t\t\t\tcombatLogEntry = null;\n\t\t\t}\n\t\t}\n\t\tScribe_Values.Look(ref loadID, \"loadID\", 0);\n\t\tScribe_Values.Look(ref ageTicks, \"ageTicks\", 0);\n\t\tScribe_Values.Look(ref tickAdded, \"tickAdded\", 0);\n\t\tScribe_Values.Look(ref visible, \"visible\", defaultValue: false);\n\t\tScribe_Values.Look(ref severityInt, \"severity\", 0f);\n\t\tScribe_Values.Look(ref recordedTale, \"recordedTale\", defaultValue: false);\n\t\tScribe_Values.Look(ref causesNoPain, \"causesNoPain\", defaultValue: false);\n\t\tScribe_Values.Look(ref combatLogText, \"combatLogText\");\n\t\tScribe_Values.Look(ref canBeThreateningToPart, \"canBeThreateningToPart\", defaultValue: false);\n\t\tScribe_Defs.Look(ref def, \"def\");\n\t\tScribe_Defs.Look(ref sourceDef, \"source\");\n\t\tScribe_Defs.Look(ref sourceHediffDef, \"sourceHediffDef\");\n\t\tScribe_Defs.Look(ref sourceBodyPartGroup, \"sourceBodyPartGroup\");\n\t\tScribe_Values.Look(ref sourceLabel, \"sourceLabel\");\n\t\tScribe_Values.Look(ref sourceToolLabel, \"sourceToolLabel\");\n\t\tScribe_BodyParts.Look(ref part, \"part\");\n\t\tScribe_References.Look(ref combatLogEntry, \"combatLogEntry\");\n\t\tScribe_Collections.Look(ref abilities, \"abilities\", LookMode.Deep);\n\t\tif (Scribe.mode == LoadSaveMode.PostLoadInit && abilities != null)\n\t\t{\n\t\t\tforeach (Ability ability in abilities)\n\t\t\t{\n\t\t\t\tability.pawn = pawn;\n\t\t\t\tability.verb.caster = pawn;\n\t\t\t}\n\t\t}\n\t\tBackCompatibility.PostExposeData(this);\n\t}\n\n\tpublic virtual void Tick()\n\t{\n\t}\n\n\tpublic virtual void TickInterval(int delta)\n\t{\n\t\tageTicks += delta;\n\t\tif (def.hediffGivers != null && pawn.IsHashIntervalTick(60, delta))\n\t\t{\n\t\t\tfor (int i = 0; i < def.hediffGivers.Count; i++)\n\t\t\t{\n\t\t\t\tdef.hediffGivers[i].OnIntervalPassed(pawn, this);\n\t\t\t}\n\t\t}\n\t\tif (Visible && !visible)\n\t\t{\n\t\t\tvisible = true;\n\t\t\tif (def.taleOnVisible != null)\n\t\t\t{\n\t\t\t\tTaleRecorder.RecordTale(def.taleOnVisible, pawn, def);\n\t\t\t}\n\t\t}\n\t\tHediffStage curStage = CurStage;\n\t\tif (curStage == null)\n\t\t{\n\t\t\treturn;\n\t\t}\n\t\tif (curStage.hediffGivers != null && pawn.IsHashIntervalTick(60, delta))\n\t\t{\n\t\t\tfor (int j = 0; j < curStage.hediffGivers.Count; j++)\n\t\t\t{\n\t\t\t\tcurStage.hediffGivers[j].OnIntervalPassed(pawn, this);\n\t\t\t}\n\t\t}\n\t\tif (curStage.mentalStateGivers != null && pawn.IsHashIntervalTick(60, delta) && !pawn.InMentalState)\n\t\t{\n\t\t\tfor (int k = 0; k < curStage.mentalStateGivers.Count; k++)\n\t\t\t{\n\t\t\t\tMentalStateGiver mentalStateGiver = curStage.mentalStateGivers[k];\n\t\t\t\tif (Rand.MTBEventOccurs(mentalStateGiver.mtbDays, 60000f, 60f))\n\t\t\t\t{\n\t\t\t\t\tpawn.mindState.mentalStateHandler.TryStartMentalState(mentalStateGiver.mentalState, \"MentalStateReason_Hediff\".Translate(Label));\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (curStage.mentalBreakMtbDays > 0f && pawn.IsHashIntervalTick(60, delta) && !pawn.InMentalState && !pawn.Downed && Rand.MTBEventOccurs(curStage.mentalBreakMtbDays, 60000f, 60f))\n\t\t{\n\t\t\tTryDoRandomMentalBreak();\n\t\t}\n\t\tif (curStage.vomitMtbDays > 0f && pawn.IsHashIntervalTick(600, delta) && Rand.MTBEventOccurs(curStage.vomitMtbDays, 60000f, 600f) && pawn.Spawned && pawn.Awake() && pawn.RaceProps.IsFlesh)\n\t\t{\n\t\t\tpawn.jobs.StartJob(JobMaker.MakeJob(JobDefOf.Vomit), JobCondition.InterruptForced, null, resumeCurJobAfterwards: true);\n\t\t}\n\t\tif (curStage.forgetMemoryThoughtMtbDays > 0f && pawn.needs?.mood != null && pawn.IsHashIntervalTick(400, delta) && Rand.MTBEventOccurs(curStage.forgetMemoryThoughtMtbDays, 60000f, 400f) && pawn.needs.mood.thoughts.memories.Memories.TryRandomElement(out var result))\n\t\t{\n\t\t\tpawn.needs.mood.thoughts.memories.RemoveMemory(result);\n\t\t}\n\t\tif (!recordedTale && curStage.tale != null)\n\t\t{\n\t\t\tTaleRecorder.RecordTale(curStage.tale, pawn);\n\t\t\trecordedTale = true;\n\t\t}\n\t\tif (curStage.destroyPart && Part != null && Part != pawn.RaceProps.body.corePart)\n\t\t{\n\t\t\tpawn.health.AddHediff(HediffDefOf.MissingBodyPart, Part);\n\t\t}\n\t\tif (curStage.deathMtbDays > 0f && pawn.IsHashIntervalTick(200, delta) && Rand.MTBEventOccurs(curStage.deathMtbDays, 60000f, 200f))\n\t\t{\n\t\t\tDoMTBDeath();\n\t\t}\n\t}\n\n\tprivate void DoMTBDeath()\n\t{\n\t\tHediffStage curStage = CurStage;\n\t\tif (!curStage.mtbDeathDestroysBrain && ModsConfig.BiotechActive)\n\t\t{\n\t\t\tPawn_GeneTracker genes = pawn.genes;\n\t\t\tif (genes != null && genes.HasActiveGene(GeneDefOf.Deathless))\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tpawn.Kill(null, this);\n\t\tif (curStage.mtbDeathDestroysBrain)\n\t\t{\n\t\t\tBodyPartRecord brain = pawn.health.hediffSet.GetBrain();\n\t\t\tif (brain != null)\n\t\t\t{\n\t\t\t\tHediff hediff = HediffMaker.MakeHediff(HediffDefOf.MissingBodyPart, pawn, brain);\n\t\t\t\tpawn.health.AddHediff(hediff, brain);\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate void TryDoRandomMentalBreak()\n\t{\n\t\tHediffStage curStage = CurStage;\n\t\tif (curStage != null)\n\t\t{\n\t\t\tTaggedString taggedString = \"MentalStateReason_Hediff\".Translate(Label);\n\t\t\tif (!curStage.mentalBreakExplanation.NullOrEmpty())\n\t\t\t{\n\t\t\t\ttaggedString += \"\\n\\n\" + curStage.mentalBreakExplanation.Formatted(pawn.Named(\"PAWN\"));\n\t\t\t}\n\t\t\tMentalBreakDef result;\n\t\t\tif (pawn.NonHumanlikeOrWildMan())\n\t\t\t{\n\t\t\t\tpawn.mindState.mentalStateHandler.TryStartMentalState(MentalStateDefOf.Manhunter, taggedString);\n\t\t\t}\n\t\t\telse if (DefDatabase.AllDefsListForReading.Where((MentalBreakDef x) => x.Worker.BreakCanOccur(pawn) && (curStage.allowedMentalBreakIntensities == null || curStage.allowedMentalBreakIntensities.Contains(x.intensity))).TryRandomElementByWeight((MentalBreakDef x) => x.Worker.CommonalityFor(pawn), out result))\n\t\t\t{\n\t\t\t\tresult.Worker.TryStart(pawn, taggedString.Resolve(), causedByMood: false);\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic virtual void PostMake()\n\t{\n\t\tSeverity = Mathf.Max(Severity, def.initialSeverity);\n\t\tcausesNoPain = Rand.Value < def.chanceToCauseNoPain;\n\t\tif (def.onlyLifeThreateningTo == null)\n\t\t{\n\t\t\treturn;\n\t\t}\n\t\tbool flag = false;\n\t\tfor (int i = 0; i < def.onlyLifeThreateningTo.Count; i++)\n\t\t{\n\t\t\tif (Part.def == def.onlyLifeThreateningTo[i])\n\t\t\t{\n\t\t\t\tflag = true;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tif (!flag)\n\t\t{\n\t\t\tcanBeThreateningToPart = false;\n\t\t}\n\t}\n\n\tpublic virtual void PostAdd(DamageInfo? dinfo)\n\t{\n\t\ttickAdded = Find.TickManager.TicksGame;\n\t\tif (!def.abilities.NullOrEmpty())\n\t\t{\n\t\t\tpawn.abilities?.Notify_TemporaryAbilitiesChanged();\n\t\t}\n\t\tif (!def.removeWithTags.NullOrEmpty())\n\t\t{\n\t\t\tfor (int num = pawn.health.hediffSet.hediffs.Count - 1; num >= 0; num--)\n\t\t\t{\n\t\t\t\tHediff hediff = pawn.health.hediffSet.hediffs[num];\n\t\t\t\tif (hediff != this && !hediff.def.tags.NullOrEmpty())\n\t\t\t\t{\n\t\t\t\t\tfor (int i = 0; i < def.removeWithTags.Count; i++)\n\t\t\t\t\t{\n\t\t\t\t\t\tif (hediff.def.tags.Contains(def.removeWithTags[i]))\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tpawn.health.RemoveHediff(hediff);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (!def.aptitudes.NullOrEmpty())\n\t\t{\n\t\t\tpawn.skills.DirtyAptitudes();\n\t\t}\n\t\tif (def.clearsEgo)\n\t\t{\n\t\t\tpawn.everLostEgo = true;\n\t\t}\n\t}\n\n\tpublic virtual void PreRemoved()\n\t{\n\t}\n\n\tpublic virtual void PostRemoved()\n\t{\n\t\tHediffStage curStage = CurStage;\n\t\tif (!pawn.Dead && def.chemicalNeed != null)\n\t\t{\n\t\t\tpawn.needs?.AddOrRemoveNeedsAsAppropriate();\n\t\t}\n\t\telse if (curStage != null && !pawn.Dead && (!curStage.disablesNeeds.NullOrEmpty() || !curStage.enablesNeeds.NullOrEmpty()))\n\t\t{\n\t\t\tpawn.needs?.AddOrRemoveNeedsAsAppropriate();\n\t\t}\n\t\tif (!def.abilities.NullOrEmpty())\n\t\t{\n\t\t\tpawn.abilities?.Notify_TemporaryAbilitiesChanged();\n\t\t}\n\t\tif (!def.aptitudes.NullOrEmpty())\n\t\t{\n\t\t\tpawn.skills.DirtyAptitudes();\n\t\t}\n\t}\n\n\tpublic virtual void PostTick()\n\t{\n\t}\n\n\tpublic virtual void PostTickInterval(int delta)\n\t{\n\t}\n\n\tpublic virtual void Tended(float quality, float maxQuality, int batchPosition = 0)\n\t{\n\t}\n\n\tpublic virtual void Heal(float amount)\n\t{\n\t\tif (!(amount <= 0f))\n\t\t{\n\t\t\tSeverity -= amount;\n\t\t\tpawn.health.Notify_HediffChanged(this);\n\t\t}\n\t}\n\n\tpublic virtual void ModifyChemicalEffect(ChemicalDef chem, ref float effect)\n\t{\n\t}\n\n\tpublic virtual bool TryMergeWith(Hediff other)\n\t{\n\t\tif (other == null || other.def != def || other.Part != Part)\n\t\t{\n\t\t\treturn false;\n\t\t}\n\t\tSeverity += other.Severity;\n\t\tageTicks = 0;\n\t\treturn true;\n\t}\n\n\tpublic virtual bool CauseDeathNow()\n\t{\n\t\tif (IsLethal)\n\t\t{\n\t\t\tbool num = Severity >= def.lethalSeverity;\n\t\t\tif (num && DebugViewSettings.logCauseOfDeath)\n\t\t\t{\n\t\t\t\tLog.Message(\"CauseOfDeath: lethal severity exceeded \" + Severity + \" >= \" + def.lethalSeverity);\n\t\t\t}\n\t\t\treturn num;\n\t\t}\n\t\treturn false;\n\t}\n\n\tpublic virtual void Notify_Downed()\n\t{\n\t}\n\n\tpublic virtual void Notify_PawnDied(DamageInfo? dinfo, Hediff culprit = null)\n\t{\n\t}\n\n\tpublic virtual void Notify_PawnKilled()\n\t{\n\t}\n\n\tpublic virtual void Notify_PawnPostApplyDamage(DamageInfo dinfo, float totalDamageDealt)\n\t{\n\t}\n\n\tpublic virtual void Notify_PawnDamagedThing(Thing thing, DamageInfo dinfo, DamageWorker.DamageResult result)\n\t{\n\t}\n\n\tpublic virtual void Notify_PawnUsedVerb(Verb verb, LocalTargetInfo targets)\n\t{\n\t}\n\n\tpublic virtual void Notify_EntropyGained(float baseAmount, float finalAmount, Thing source = null)\n\t{\n\t}\n\n\tpublic virtual void Notify_RelationAdded(Pawn otherPawn, PawnRelationDef relationDef)\n\t{\n\t}\n\n\tpublic virtual void Notify_ImplantUsed(string violationSourceName, float detectionChance, int violationSourceLevel = -1)\n\t{\n\t}\n\n\tpublic virtual void Notify_KilledPawn(Pawn victim, DamageInfo? dinfo)\n\t{\n\t}\n\n\tpublic virtual void Notify_IngestedThing(Thing thing, int amount)\n\t{\n\t}\n\n\tpublic virtual void Notify_Resurrected()\n\t{\n\t}\n\n\tpublic virtual void Notify_PawnCorpseSpawned()\n\t{\n\t}\n\n\tpublic virtual void Notify_PawnCorpseDestroyed()\n\t{\n\t}\n\n\tpublic virtual void Notify_Regenerated(float hp)\n\t{\n\t}\n\n\tpublic virtual void Notify_SurgicallyRemoved(Pawn surgeon)\n\t{\n\t\tif (def.HasDefinedGraphicProperties || def.forceRenderTreeRecache)\n\t\t{\n\t\t\tpawn.Drawer.renderer.SetAllGraphicsDirty();\n\t\t}\n\t}\n\n\tpublic virtual void Notify_SurgicallyReplaced(Pawn surgeon)\n\t{\n\t\tif (def.HasDefinedGraphicProperties || def.forceRenderTreeRecache)\n\t\t{\n\t\t\tpawn.Drawer.renderer.SetAllGraphicsDirty();\n\t\t}\n\t}\n\n\tpublic virtual void Notify_Spawned()\n\t{\n\t}\n\n\tpublic virtual IEnumerable GetGizmos()\n\t{\n\t\treturn null;\n\t}\n\n\tpublic virtual string GetInspectString()\n\t{\n\t\treturn def.inspectString ?? string.Empty;\n\t}\n\n\tpublic virtual string GetTooltip(Pawn pawn, bool showHediffsDebugInfo)\n\t{\n\t\ttipSb.Clear();\n\t\tHediffStage curStage = CurStage;\n\t\tif (!LabelCap.NullOrEmpty())\n\t\t{\n\t\t\ttipSb.AppendTagged(LabelCap.Colorize(ColoredText.TipSectionTitleColor));\n\t\t}\n\t\tstring severityLabel = SeverityLabel;\n\t\tif (!severityLabel.NullOrEmpty())\n\t\t{\n\t\t\ttipSb.Append(\": \").Append(severityLabel);\n\t\t}\n\t\ttipSb.AppendLine();\n\t\tif (!def.overrideTooltip.NullOrEmpty())\n\t\t{\n\t\t\ttipSb.AppendLine().AppendLineTagged(def.overrideTooltip.Formatted(pawn.Named(\"PAWN\")));\n\t\t}\n\t\telse if (curStage != null && !curStage.overrideTooltip.NullOrEmpty())\n\t\t{\n\t\t\ttipSb.AppendLine().AppendLineTagged(curStage.overrideTooltip.Formatted(pawn.Named(\"PAWN\")));\n\t\t}\n\t\telse\n\t\t{\n\t\t\tstring description = Description;\n\t\t\tif (!description.NullOrEmpty())\n\t\t\t{\n\t\t\t\ttipSb.AppendLine().AppendLine(description);\n\t\t\t}\n\t\t}\n\t\tif (!def.extraTooltip.NullOrEmpty())\n\t\t{\n\t\t\ttipSb.AppendLine().AppendLineTagged(def.extraTooltip.Formatted(pawn.Named(\"PAWN\")));\n\t\t}\n\t\tif (curStage != null && !curStage.extraTooltip.NullOrEmpty())\n\t\t{\n\t\t\ttipSb.AppendLine().AppendLineTagged(curStage.extraTooltip.Formatted(pawn.Named(\"PAWN\")));\n\t\t}\n\t\tstring tipStringExtra = TipStringExtra;\n\t\tif (!tipStringExtra.NullOrEmpty())\n\t\t{\n\t\t\ttipSb.AppendLine().AppendLine(tipStringExtra.TrimEndNewlines());\n\t\t}\n\t\tif (HealthCardUtility.GetCombatLogInfo(Gen.YieldSingle(this), out var taggedString, out var _) && !taggedString.NullOrEmpty())\n\t\t{\n\t\t\ttipSb.AppendLine().AppendLineTagged((\"Cause\".Translate() + \": \" + taggedString).Colorize(ColoredText.SubtleGrayColor));\n\t\t}\n\t\tif (showHediffsDebugInfo && !DebugString().NullOrEmpty() && !DebugString().NullOrEmpty())\n\t\t{\n\t\t\ttipSb.AppendLine().AppendLine(DebugString().TrimEndNewlines());\n\t\t}\n\t\treturn tipSb.ToString().TrimEnd();\n\t}\n\n\tpublic virtual void CopyFrom(Hediff other)\n\t{\n\t\tageTicks = other.ageTicks;\n\t\tsourceLabel = other.sourceLabel;\n\t\tsourceDef = other.sourceDef;\n\t\tsourceBodyPartGroup = other.sourceBodyPartGroup;\n\t\tseverityInt = other.severityInt;\n\t}\n\n\tpublic virtual void PostDebugAdd()\n\t{\n\t}\n\n\tpublic virtual string DebugString()\n\t{\n\t\tstring text = \"\";\n\t\tif (!Visible)\n\t\t{\n\t\t\ttext += \"hidden\\n\";\n\t\t}\n\t\ttext = text + \"severity: \" + Severity.ToString(\"F3\") + ((Severity >= def.maxSeverity) ? \" (reached max)\" : \"\");\n\t\tif (TendableNow())\n\t\t{\n\t\t\ttext = text + \"\\ntend priority: \" + TendPriority;\n\t\t}\n\t\treturn text.Indented();\n\t}\n\n\tpublic virtual IEnumerable SpecialDisplayStats(StatRequest req)\n\t{\n\t\tforeach (StatDrawEntry item in def.SpecialDisplayStats(req))\n\t\t{\n\t\t\tyield return item;\n\t\t}\n\t}\n\n\tpublic override string ToString()\n\t{\n\t\treturn \"(\" + (def?.defName ?? GetType().Name) + ((part != null) ? (\" \" + part.Label) : \"\") + \" ticksSinceCreation=\" + ageTicks + \")\";\n\t}\n\n\tpublic string GetUniqueLoadID()\n\t{\n\t\treturn \"Hediff_\" + loadID;\n\t}\n}\n\n",
+ "timestamp": "2025-08-26 18:06:38,879"
+ },
+ "C#-Pawn": {
+ "keywords": [
+ "Pawn",
+ "C#"
+ ],
+ "question": "RimWorld Pawn C# 代码",
+ "embedding": [
+ 0.022088462486863136,
+ 0.006633533630520105,
+ 0.001554430928081274,
+ -0.027902035042643547,
+ -0.04681945964694023,
+ 0.018171297386288643,
+ 0.009870636276900768,
+ 0.02815074287354946,
+ 0.03886077180504799,
+ 0.14474859833717346,
+ -0.023705070838332176,
+ -0.07442615181207657,
+ -0.04088153317570686,
+ -0.04377277195453644,
+ 0.035223402082920074,
+ 0.06404255330562592,
+ 0.019663549959659576,
+ -0.08051951974630356,
+ -0.042871203273534775,
+ -0.030249224975705147,
+ 0.027140364050865173,
+ 0.059192728251218796,
+ 0.021404514089226723,
+ 0.05005267634987831,
+ 0.01494585257023573,
+ -0.060280829668045044,
+ -0.02440456487238407,
+ 0.018186841160058975,
+ -0.01197689026594162,
+ -0.013173801824450493,
+ -0.02748233824968338,
+ 0.00398322893306613,
+ 0.022725779563188553,
+ -0.01367121934890747,
+ 0.007033799774944782,
+ 0.05714087933301926,
+ -0.01652359962463379,
+ 0.0016865575453266501,
+ -0.06827060133218765,
+ -0.01238104235380888,
+ -0.04271576181054115,
+ -0.015109067782759666,
+ 0.030824365094304085,
+ 0.009536433033645153,
+ -0.008106357418000698,
+ -0.009777369908988476,
+ 0.03628041595220566,
+ -0.06534827500581741,
+ -0.028539350256323814,
+ 0.01154164969921112,
+ 0.0011425067204982042,
+ 0.015691980719566345,
+ 0.02101590484380722,
+ 0.034352920949459076,
+ 0.02137342467904091,
+ 0.07169035077095032,
+ -0.0022247792221605778,
+ 0.06239485740661621,
+ -0.02521286904811859,
+ 0.023549627512693405,
+ 0.007476812694221735,
+ 0.04386603832244873,
+ 0.008300661109387875,
+ 0.013321472331881523,
+ -0.02651859074831009,
+ -0.015311144292354584,
+ -0.0021276273764669895,
+ 0.006244926247745752,
+ -0.01216342207044363,
+ -0.038891859352588654,
+ -0.056332577019929886,
+ 0.0072630783542990685,
+ 0.017005473375320435,
+ 0.013064991682767868,
+ 0.0003108861856162548,
+ 0.014168637804687023,
+ 0.013251523487269878,
+ 0.025990083813667297,
+ -0.0557108037173748,
+ 0.035596467554569244,
+ 0.02968963049352169,
+ 0.015567624941468239,
+ -0.011121952906250954,
+ -0.029005680233240128,
+ 0.04828062281012535,
+ 0.04311991110444069,
+ 0.046104419976472855,
+ -0.00852605327963829,
+ 0.02886578068137169,
+ 0.06541045010089874,
+ 0.0011803959496319294,
+ 0.009800686500966549,
+ 0.05350350961089134,
+ -0.03646694868803024,
+ 0.0018633740255609155,
+ -0.024435654282569885,
+ -0.03012487106025219,
+ 0.0163837019354105,
+ -0.015979548916220665,
+ -0.00534724211320281,
+ -0.021622134372591972,
+ -0.04538938030600548,
+ -0.009279952384531498,
+ 0.028819149360060692,
+ -0.029130034148693085,
+ 0.04871586337685585,
+ -0.014829270541667938,
+ -0.025896819308400154,
+ 0.011712636798620224,
+ 0.04585571214556694,
+ -0.02491752803325653,
+ -0.036404769867658615,
+ -0.007406863383948803,
+ 0.06578351557254791,
+ -0.02159104496240616,
+ -0.02689165435731411,
+ -0.01969463936984539,
+ -0.004193077329546213,
+ -0.040384113788604736,
+ 0.036995455622673035,
+ 0.06702706217765808,
+ -0.010064939968287945,
+ -0.022974489256739616,
+ -0.029580820351839066,
+ 0.018202384933829308,
+ 0.0005809685681015253,
+ 0.005871862638741732,
+ 0.005537659861147404,
+ -0.01212456077337265,
+ 0.009093420580029488,
+ -0.012777421623468399,
+ -0.020331956446170807,
+ -0.01197689026594162,
+ 0.0036062796134501696,
+ 0.001697244239039719,
+ -0.001969269709661603,
+ -0.005370558705180883,
+ 0.01711428351700306,
+ -0.07958686351776123,
+ 0.02923884429037571,
+ -0.007884850725531578,
+ 0.016585778445005417,
+ 0.012870687991380692,
+ -0.027684414759278297,
+ 0.05686108022928238,
+ -0.038612063974142075,
+ -0.0395447202026844,
+ 0.01683448627591133,
+ -0.004127013962715864,
+ 0.00881362333893776,
+ -0.009287724271416664,
+ -0.0030583427287638187,
+ -0.014090916141867638,
+ 0.04560700058937073,
+ 0.027793224900960922,
+ -0.016197169199585915,
+ 0.0020887665450572968,
+ -0.015482131391763687,
+ -0.018093574792146683,
+ -0.006769546307623386,
+ -0.020907094702124596,
+ -0.04927545785903931,
+ 0.0043601784855127335,
+ 0.02836836315691471,
+ 0.02462218515574932,
+ -0.012909548357129097,
+ -0.06665399670600891,
+ 0.037523962557315826,
+ -0.021435601636767387,
+ -0.00959083903580904,
+ -0.023021120578050613,
+ 0.027435705065727234,
+ 0.01194580178707838,
+ 0.01135511789470911,
+ 0.048684775829315186,
+ -0.0009185714880004525,
+ 0.0031768681947141886,
+ 0.05754503235220909,
+ 0.022368259727954865,
+ 0.0020440765656530857,
+ -0.01814020797610283,
+ 0.021046994253993034,
+ 0.009544205851852894,
+ 0.023269830271601677,
+ 0.03680892288684845,
+ -0.008937977254390717,
+ -0.00933435745537281,
+ 0.04013540595769882,
+ -0.006178862880915403,
+ 0.05707870051264763,
+ 0.013103852048516273,
+ 0.060871511697769165,
+ -0.012248915620148182,
+ 0.016119448468089104,
+ -0.0417209267616272,
+ -0.03503687307238579,
+ -0.014020966365933418,
+ 0.01845109462738037,
+ -0.10806403309106827,
+ -0.01138620637357235,
+ -0.017751600593328476,
+ -0.023642893880605698,
+ -0.004344634246081114,
+ -0.009761826135218143,
+ 0.03048238903284073,
+ -0.014129776507616043,
+ -0.021186893805861473,
+ 0.019523652270436287,
+ 0.05937926098704338,
+ 2.3923663320601918e-05,
+ 0.056177131831645966,
+ 0.004605001304298639,
+ -0.03767940402030945,
+ -0.001167766167782247,
+ -0.03587626665830612,
+ 0.0015320859383791685,
+ -0.053596775978803635,
+ 0.043834950774908066,
+ 0.007597281131893396,
+ 0.04113024100661278,
+ -0.03836335614323616,
+ -0.003182697342708707,
+ -0.04638421908020973,
+ 0.014199726283550262,
+ 0.003942425362765789,
+ 0.008704813197255135,
+ 0.03422856703400612,
+ 0.04871586337685585,
+ 0.046259861439466476,
+ 0.0035285581834614277,
+ 0.002597842598333955,
+ 0.0050363559275865555,
+ -0.060280829668045044,
+ 0.00598844513297081,
+ 0.037368517369031906,
+ -0.05785591900348663,
+ -0.008316204883158207,
+ -0.07498574256896973,
+ 0.004663292784243822,
+ -0.01112972479313612,
+ 0.02659631334245205,
+ 0.03938927873969078,
+ 0.022166185081005096,
+ -0.008013091050088406,
+ -0.021326791495084763,
+ -0.025243958458304405,
+ -0.04209398850798607,
+ 0.024202488362789154,
+ 0.005024697631597519,
+ -0.016492512077093124,
+ 0.014805953949689865,
+ -0.015186789445579052,
+ -0.002457943744957447,
+ -0.011596054770052433,
+ 0.02373616024851799,
+ 0.0009754053899087012,
+ -0.004838166292756796,
+ -0.017611701041460037,
+ -0.006489749066531658,
+ -0.01593291573226452,
+ -0.03360679745674133,
+ 0.011479471810162067,
+ 0.013383650220930576,
+ 0.03373115137219429,
+ -0.02036304399371147,
+ 0.0357208214700222,
+ 0.010243699885904789,
+ 0.010624535381793976,
+ 0.012637523002922535,
+ -0.013422510586678982,
+ -0.010220383293926716,
+ 0.037275251001119614,
+ 0.010585674084722996,
+ -0.06366948783397675,
+ -0.0278554018586874,
+ 0.025150692090392113,
+ 0.015894055366516113,
+ 0.001944981631822884,
+ -0.03035803511738777,
+ -0.0111685860902071,
+ -0.02344081737101078,
+ -0.02219727262854576,
+ 0.02527504600584507,
+ -0.00026061004609800875,
+ 0.004752672277390957,
+ 0.05878857523202896,
+ 0.007791584823280573,
+ -0.01705210655927658,
+ 0.010515725240111351,
+ 0.013212662190198898,
+ -0.020767197012901306,
+ 0.002796032465994358,
+ -0.002597842598333955,
+ 0.01624380238354206,
+ -0.05002158507704735,
+ 0.04386603832244873,
+ 0.016445878893136978,
+ 0.027000464498996735,
+ -0.021404514089226723,
+ 0.006299331318587065,
+ -0.032580871134996414,
+ -0.029223300516605377,
+ -0.005638698115944862,
+ -0.0043096598237752914,
+ 0.02446674183011055,
+ 0.017316360026597977,
+ -0.03323373198509216,
+ -0.056114956736564636,
+ 0.06895455718040466,
+ -0.0383322648704052,
+ -0.005856318399310112,
+ -0.03115079551935196,
+ -0.03348243981599808,
+ -0.003806412685662508,
+ -0.01859099417924881,
+ -0.018901878967881203,
+ -0.0633586049079895,
+ 0.002986450446769595,
+ 0.018995145335793495,
+ 0.04408365860581398,
+ -0.020145423710346222,
+ 0.0007198958192020655,
+ -0.04961743205785751,
+ 0.003375058062374592,
+ 0.03621824085712433,
+ -0.01969463936984539,
+ 0.026067806407809258,
+ 0.02101590484380722,
+ -0.003946311306208372,
+ 0.020907094702124596,
+ -0.018932968378067017,
+ 0.016787853091955185,
+ -0.012824054807424545,
+ 0.0906544104218483,
+ -0.011642687022686005,
+ 0.011292940005660057,
+ 0.02850826270878315,
+ -0.009225547313690186,
+ -0.0003927366924472153,
+ 0.02292785607278347,
+ -0.0008491078624501824,
+ 0.012520940974354744,
+ -0.023767247796058655,
+ -0.03429074585437775,
+ 0.030902085825800896,
+ 0.04374168440699577,
+ 0.03161712363362312,
+ 0.04053955897688866,
+ 0.010305876843631268,
+ -0.01039137039333582,
+ 0.03079327568411827,
+ 0.012839599512517452,
+ -0.02858598344027996,
+ -0.007581736426800489,
+ -0.0012911491794511676,
+ -0.015746384859085083,
+ -0.03202127665281296,
+ 0.020549576729536057,
+ -0.06105804443359375,
+ 0.020238690078258514,
+ -0.0391094796359539,
+ 0.0019440101459622383,
+ -0.040228672325611115,
+ -0.029067857190966606,
+ 0.05306826904416084,
+ -0.006897787097841501,
+ -0.01902623474597931,
+ 0.03631150722503662,
+ -0.054498348385095596,
+ 0.011914712376892567,
+ -0.05798027291893959,
+ -0.0677110105752945,
+ -0.02159104496240616,
+ 0.018420005217194557,
+ 0.02350299432873726,
+ 0.052353233098983765,
+ 0.035596467554569244,
+ 0.0023899374064058065,
+ -0.02409367822110653,
+ 0.00289318454451859,
+ -0.016399245709180832,
+ 0.019601373001933098,
+ 0.004756558686494827,
+ -0.03144613653421402,
+ -0.012186737731099129,
+ -0.006952192168682814,
+ -0.026440870016813278,
+ -0.01241213083267212,
+ 0.022539248690009117,
+ -0.04116132855415344,
+ 0.04196963459253311,
+ 0.04218725487589836,
+ 0.009847319684922695,
+ -0.015536536462605,
+ 0.03460163250565529,
+ 0.021870842203497887,
+ 0.0370265431702137,
+ 0.036995455622673035,
+ 0.019383752718567848,
+ 0.009155597537755966,
+ -0.02044076658785343,
+ -0.005852432455867529,
+ -0.05754503235220909,
+ -0.03836335614323616,
+ 0.01632152497768402,
+ 0.040601734071969986,
+ -0.009233319200575352,
+ 0.02145114541053772,
+ -0.05673672631382942,
+ 0.020518487319350243,
+ -0.042871203273534775,
+ -0.014448435045778751,
+ 0.0854315236210823,
+ 0.013010586611926556,
+ -0.0008452218025922775,
+ -0.013686764054000378,
+ 0.045886799693107605,
+ -0.010818839073181152,
+ 0.010119345039129257,
+ 0.067275770008564,
+ -0.014813726767897606,
+ 0.015381094068288803,
+ -0.027451248839497566,
+ -0.0057785967364907265,
+ 0.009466484189033508,
+ 0.11732844263315201,
+ -0.03161712363362312,
+ -0.004364064894616604,
+ 0.01961691863834858,
+ -0.019072866067290306,
+ -0.004255254752933979,
+ -0.021124714985489845,
+ -0.08536934107542038,
+ 0.04650857299566269,
+ 0.03534775972366333,
+ -0.023238740861415863,
+ 0.00439126743003726,
+ 0.04688163474202156,
+ -0.03223889693617821,
+ -0.0031749249901622534,
+ -0.1017841324210167,
+ -0.006788976956158876,
+ 0.05798027291893959,
+ -0.01315048523247242,
+ -0.04880912974476814,
+ -0.02622324973344803,
+ -0.012450991198420525,
+ -0.02564810961484909,
+ -0.0053938752971589565,
+ 0.03777267038822174,
+ -0.014440663158893585,
+ -0.031197428703308105,
+ 0.029518643394112587,
+ 0.02123352512717247,
+ -0.012660839594900608,
+ 0.038021378219127655,
+ -0.028788059949874878,
+ -0.03513013944029808,
+ -0.04759667441248894,
+ -0.0065208375453948975,
+ 0.011930257081985474,
+ -0.0202076006680727,
+ -0.03851879760622978,
+ 0.04057064652442932,
+ -0.010717800818383694,
+ -0.02903676964342594,
+ -0.030529022216796875,
+ 0.03223889693617821,
+ 0.0037772669456899166,
+ -0.09245754778385162,
+ -0.019057322293519974,
+ 0.009567522443830967,
+ 0.012015750631690025,
+ -0.04277793690562248,
+ -0.01939929835498333,
+ -0.07175253331661224,
+ -0.018544360995292664,
+ 0.033637885004282,
+ 0.02093818411231041,
+ 0.004655520431697369,
+ -0.01800031028687954,
+ 0.005906837526708841,
+ -0.022368259727954865,
+ 0.0480630025267601,
+ -0.09345238655805588,
+ -0.043088823556900024,
+ 0.010181521996855736,
+ -0.017969220876693726,
+ -0.0075351037085056305,
+ -0.03144613653421402,
+ -0.03152385726571083,
+ -0.012684156186878681,
+ 0.0178604107350111,
+ 0.06851931661367416,
+ -0.008067496120929718,
+ 0.004554482642561197,
+ -0.0002269711985718459,
+ 0.008020862936973572,
+ 0.012101244181394577,
+ -0.0744883269071579,
+ -0.02703155390918255,
+ 0.013500232249498367,
+ 0.040011052042245865,
+ -0.006664622575044632,
+ 0.006439229939132929,
+ -0.0026192159857600927,
+ -0.04983505606651306,
+ 0.04859150946140289,
+ -0.03584517538547516,
+ -0.006586900912225246,
+ -0.007084318902343512,
+ -0.02821291983127594,
+ 0.011479471810162067,
+ -0.008331749588251114,
+ -0.023332007229328156,
+ 0.021109171211719513,
+ 0.01326706726104021,
+ -0.000505675794556737,
+ 0.022088462486863136,
+ 0.038767505437135696,
+ 0.03323373198509216,
+ 0.027808768674731255,
+ 0.06314098089933395,
+ -0.017751600593328476,
+ -0.015707524493336678,
+ -0.014386258088052273,
+ 0.009575294330716133,
+ -0.015964005142450333,
+ 0.033109378069639206,
+ -0.023565173149108887,
+ -0.010842155665159225,
+ -0.003445007372647524,
+ -0.0031010895036160946,
+ 0.03665348142385483,
+ 0.034415099769830704,
+ 0.06214614585042,
+ 0.030155958607792854,
+ 0.02196410857141018,
+ 0.07461268454790115,
+ 0.0808304026722908,
+ 0.005082989111542702,
+ 0.02734243869781494,
+ -0.0002545380557421595,
+ 0.005724191665649414,
+ 0.03004714846611023,
+ 0.006046736147254705,
+ 0.013453599065542221,
+ -0.02667403407394886,
+ 0.037803757935762405,
+ -0.03444618731737137,
+ 0.039202746003866196,
+ 0.015901828184723854,
+ 0.012676384299993515,
+ -0.0659700483083725,
+ 0.015365549363195896,
+ -0.005619267467409372,
+ 0.01859099417924881,
+ 0.08599111437797546,
+ 0.022570336237549782,
+ -0.040290847420692444,
+ 0.0021703741513192654,
+ -0.015202334150671959,
+ 0.02446674183011055,
+ -0.02299003303050995,
+ -0.014254131354391575,
+ -0.0057125333696603775,
+ -0.02850826270878315,
+ -0.009163370355963707,
+ 0.029642997309565544,
+ -0.007026027422398329,
+ -0.03270522505044937,
+ 0.00756619218736887,
+ -0.03851879760622978,
+ 0.012583117932081223,
+ 0.049120016396045685,
+ 0.04156548157334328,
+ 0.02858598344027996,
+ 0.0552755631506443,
+ 0.06609439849853516,
+ 0.03071555495262146,
+ 0.00995612982660532,
+ -0.01762724667787552,
+ -0.014386258088052273,
+ -0.03270522505044937,
+ 0.006975508760660887,
+ 0.022150639444589615,
+ 0.025896819308400154,
+ -0.02145114541053772,
+ 0.059192728251218796,
+ -0.01608835905790329,
+ 0.042062900960445404,
+ 0.0005226773791946471,
+ -0.03864315152168274,
+ -0.018855245783925056,
+ -0.023098843172192574,
+ 0.04218725487589836,
+ 0.028383908793330193,
+ 0.0151012958958745,
+ 0.02857043966650963,
+ 0.035969529300928116,
+ 0.000662090431433171,
+ -0.04548264667391777,
+ 0.011666003614664078,
+ -0.002897070487961173,
+ 0.005044128280133009,
+ -0.020394133403897285,
+ -0.0005076188244856894,
+ 0.005514343734830618,
+ 0.03578300029039383,
+ -0.0012960067251697183,
+ -0.028990136459469795,
+ 0.015513219870626926,
+ 0.034570541232824326,
+ 0.0010434117866680026,
+ 0.05002158507704735,
+ -0.0007903309306129813,
+ 0.010204838588833809,
+ -0.005269520916044712,
+ -0.03540993481874466,
+ -0.0019061209168285131,
+ -0.02895904704928398,
+ -0.00962192751467228,
+ 0.007430179510265589,
+ -0.0557108037173748,
+ -0.021699855104088783,
+ -0.012629751116037369,
+ -0.006804521195590496,
+ -0.028244009241461754,
+ -0.0077371797524392605,
+ 0.014992485754191875,
+ 0.0002955847594421357,
+ -0.00992504134774208,
+ -0.043990395963191986,
+ -0.010018306784331799,
+ 0.03382441774010658,
+ -0.025306135416030884,
+ -0.007127065677195787,
+ -0.004639976192265749,
+ -0.03631150722503662,
+ -0.011805902235209942,
+ 0.020409677177667618,
+ 0.01740962639451027,
+ -0.03223889693617821,
+ -0.01695884019136429,
+ -0.014153093099594116,
+ -0.03351353108882904,
+ -0.03323373198509216,
+ -0.07150381803512573,
+ -0.004702153615653515,
+ -0.004084267187863588,
+ -0.02188638597726822,
+ 0.013632358983159065,
+ -0.001962468959391117,
+ -0.0023122159764170647,
+ -0.04535829275846481,
+ 0.02344081737101078,
+ -0.0041581024415791035,
+ -0.020145423710346222,
+ -0.017456259578466415,
+ -0.007811015006154776,
+ 0.014378485269844532,
+ -0.05428072810173035,
+ 0.0066568502224981785,
+ 0.010002763010561466,
+ 0.024000413715839386,
+ 0.011728181503713131,
+ -0.03012487106025219,
+ -0.035596467554569244,
+ 0.006998824886977673,
+ -0.020689474418759346,
+ -0.016057271510362625,
+ -0.004437900148332119,
+ 0.021808665245771408,
+ 0.031492769718170166,
+ 0.008829167112708092,
+ 0.020238690078258514,
+ -0.0013270953204482794,
+ -0.03245651721954346,
+ -0.0030758301727473736,
+ 0.002471545012667775,
+ 0.004200849682092667,
+ -0.008300661109387875,
+ -0.029642997309565544,
+ 0.00460888771340251,
+ -0.0002504090953152627,
+ 0.009295497089624405,
+ 0.0024423995055258274,
+ 0.0278554018586874,
+ 0.010158205404877663,
+ -0.011868080124258995,
+ 0.01517124567180872,
+ -0.08282008022069931,
+ 0.012140105478465557,
+ 0.013430282473564148,
+ -0.12553584575653076,
+ -0.037741582840681076,
+ -0.05225996673107147,
+ -0.040974799543619156,
+ 0.008020862936973572,
+ 0.005930153653025627,
+ 0.057420678436756134,
+ 0.009878408163785934,
+ 0.040011052042245865,
+ -0.0006533467094413936,
+ 0.02218172885477543,
+ -0.047285787761211395,
+ -0.047068167477846146,
+ -0.03739960864186287,
+ 0.0038783049676567316,
+ -0.008533825166523457,
+ 0.005677558947354555,
+ 0.042280521243810654,
+ 0.017176460474729538,
+ -0.020689474418759346,
+ -0.01859099417924881,
+ 0.029627453535795212,
+ 0.025041881948709488,
+ -0.0464153066277504,
+ -0.066405288875103,
+ 0.009046787396073341,
+ 0.011090864427387714,
+ 0.010453547351062298,
+ -0.03122851625084877,
+ 0.019368208944797516,
+ -0.006112799514085054,
+ 0.013919929042458534,
+ -0.01150278840214014,
+ -0.003384773153811693,
+ -0.029332110658288002,
+ 0.0107333455234766,
+ -0.054498348385095596,
+ -0.013609042391180992,
+ -0.007628369610756636,
+ -0.017300816252827644,
+ 0.01608835905790329,
+ 0.04880912974476814,
+ 0.03326481953263283,
+ -0.012489852495491505,
+ 0.014565017074346542,
+ -0.026052260771393776,
+ 0.004138672258704901,
+ -0.02482426166534424,
+ -0.0078032431192696095,
+ -0.03220780938863754,
+ 0.03671565651893616,
+ 0.011650459840893745,
+ -0.0008520224364474416,
+ 0.0314616821706295,
+ 0.062923364341259,
+ -0.012132332660257816,
+ 0.009567522443830967,
+ -0.029130034148693085,
+ 0.07778371870517731,
+ -0.0071503822691738605,
+ 0.02152886800467968,
+ 0.025617020204663277,
+ 0.012544257566332817,
+ 0.03792811185121536,
+ 0.018932968378067017,
+ -0.004663292784243822,
+ 0.03357570618391037,
+ -0.039793431758880615,
+ -0.003991001285612583,
+ -0.02026977948844433,
+ 0.01793813332915306,
+ 0.05530665069818497,
+ -0.041410040110349655,
+ -0.016508055850863457,
+ 0.02109362743794918,
+ 0.010018306784331799,
+ -0.043679509311914444,
+ -0.043679509311914444,
+ -0.038985125720500946,
+ 0.046322040259838104,
+ 0.009318812750279903,
+ -0.007453496102243662,
+ -0.016663499176502228,
+ 0.03680892288684845,
+ -0.040757179260253906,
+ 0.011440611444413662,
+ 0.015497676096856594,
+ -0.064664326608181,
+ 0.011020914651453495,
+ -0.0214666910469532,
+ 0.006369280628859997,
+ 0.03531666845083237,
+ 0.003258475800976157,
+ -0.013787802308797836,
+ -0.043524064123630524,
+ 0.04315100237727165,
+ -0.013352561742067337,
+ 0.0015281998785212636,
+ 0.042000722140073776,
+ -0.014184181578457355,
+ -0.0068122935481369495,
+ 0.0034391782246530056,
+ 0.015381094068288803,
+ 0.03556538000702858,
+ 0.032518692314624786,
+ 0.027311351150274277,
+ -0.027513425797224045,
+ -0.0692654401063919,
+ 0.0005362786469049752,
+ -0.0399799607694149,
+ 0.020021069794893265,
+ -0.03167930245399475,
+ -0.026658490300178528,
+ -0.04091262072324753,
+ -0.03230107203125954,
+ 0.01610390469431877,
+ -0.010251471772789955,
+ -0.03326481953263283,
+ 0.01800031028687954,
+ 0.0019187505822628736,
+ 0.037213075906038284,
+ -0.028819149360060692,
+ 0.0012969783274456859,
+ -0.009614154696464539,
+ 0.03733742982149124,
+ -0.02505742572247982,
+ 0.009427622891962528,
+ 0.04035302624106407,
+ 0.004674951080232859,
+ 0.013235978782176971,
+ -0.0041114697232842445,
+ -0.040757179260253906,
+ -0.052353233098983765,
+ -0.02042522095143795,
+ -0.026409780606627464,
+ 0.03070000931620598,
+ 7.189242751337588e-05,
+ -0.021109171211719513,
+ -0.0031982415821403265,
+ 0.0383322648704052,
+ 0.04722360894083977,
+ -0.002749399747699499,
+ -0.032767403870821,
+ -0.0035052415914833546,
+ -0.0015903770690783858,
+ 0.02322319708764553,
+ 0.016119448468089104,
+ 0.013026130385696888,
+ 0.0016642125556245446,
+ -0.00040658083162270486,
+ 0.0015903770690783858,
+ -0.0070610023103654385,
+ -0.014487295411527157,
+ -0.0011415352346375585,
+ -0.02269469015300274,
+ -0.0471925213932991,
+ -0.02286567911505699,
+ 0.04700598865747452,
+ -0.019648006185889244,
+ -0.03739960864186287,
+ 0.013632358983159065,
+ 0.018917424604296684,
+ -0.02138896845281124,
+ 0.01566089130938053,
+ -0.019290488213300705,
+ 0.07218777388334274,
+ -0.005957356188446283,
+ -0.026332059875130653,
+ -0.02247706986963749,
+ 0.01697438582777977,
+ -0.012334409169852734,
+ -0.016212714836001396,
+ 0.0077371797524392605,
+ -0.001457278965972364,
+ -0.006932761985808611,
+ -0.006808407139033079,
+ 0.08219830691814423,
+ 0.06839495897293091,
+ -0.0014524213038384914,
+ 0.02953418716788292,
+ 0.05679890513420105,
+ -0.03854988515377045,
+ -0.042591407895088196,
+ -0.004655520431697369,
+ 0.009085648693144321,
+ -0.0008350208518095315,
+ -0.011549421586096287,
+ 0.01296395342797041,
+ 0.02168431133031845,
+ -0.008036407642066479,
+ -0.008836939930915833,
+ -0.011378434486687183,
+ 0.013033903203904629,
+ -0.029425377026200294,
+ -0.04812518134713173,
+ 0.01859099417924881,
+ 0.048684775829315186,
+ -0.00896129384636879,
+ -0.0035887924022972584,
+ 0.04638421908020973,
+ 0.03693327680230141,
+ -0.002879583276808262,
+ -0.05468487739562988,
+ 0.0037306342273950577,
+ 0.019072866067290306,
+ 0.006081711035221815,
+ -0.003283735364675522,
+ -0.029052313417196274,
+ 0.02249261550605297,
+ 0.01691220887005329,
+ -0.03609388694167137,
+ 0.021264614537358284,
+ -0.0014019024092704058,
+ -0.006687938701361418,
+ -0.03348243981599808,
+ -0.00597290089353919,
+ 0.00031185770058073103,
+ 0.011028687469661236,
+ 0.02710927464067936,
+ 0.006602445151656866,
+ -0.025088515132665634,
+ -0.010057168081402779,
+ 0.02961190789937973,
+ 0.057420678436756134,
+ 0.049182191491127014,
+ -0.020316410809755325,
+ -4.87581237393897e-05,
+ -0.013989877887070179,
+ 0.015217877924442291,
+ -0.012450991198420525,
+ 0.022601425647735596,
+ 0.005152938421815634,
+ 0.013414738699793816,
+ 0.054560523480176926,
+ -0.003617937909439206,
+ 0.0332026444375515,
+ -0.024435654282569885,
+ -0.031197428703308105,
+ 0.04439454525709152,
+ 0.04053955897688866,
+ 0.028896870091557503,
+ 0.00556874880567193,
+ 0.006940533872693777,
+ -0.017658334225416183,
+ -0.006345964036881924,
+ -0.030249224975705147,
+ 0.017005473375320435,
+ -0.03298502415418625,
+ 0.04113024100661278,
+ 0.006528609897941351,
+ 0.044270191341638565,
+ -0.009653015993535519,
+ 0.026409780606627464,
+ -0.011689320206642151,
+ -0.00020559776748996228,
+ -0.007045458070933819,
+ -0.03298502415418625,
+ 0.02211955189704895,
+ 0.00714649586006999,
+ -0.019135044887661934,
+ -0.011774813756346703,
+ 0.0028951275162398815,
+ 0.019197221845388412,
+ -0.016818942502141,
+ -0.02278795652091503,
+ -0.01660132221877575,
+ 0.007344685960561037,
+ -0.0037520076148211956,
+ 0.02247706986963749,
+ -0.018901878967881203,
+ 0.044270191341638565,
+ 0.008689268492162228,
+ 0.03786593675613403,
+ 0.004896457307040691,
+ 0.05530665069818497,
+ -0.012730789370834827,
+ -0.04212507605552673,
+ 0.03966907784342766,
+ 0.01330592855811119,
+ -0.02387605793774128,
+ 0.03116633929312229,
+ 0.0659700483083725,
+ -0.0063887108117341995,
+ -0.06907890737056732,
+ -0.11683102697134018,
+ 0.013430282473564148,
+ 0.04100588709115982,
+ 0.0151012958958745,
+ -0.031135249882936478,
+ 0.0034916403237730265,
+ 0.02373616024851799,
+ 0.012707472778856754,
+ 0.041907455772161484,
+ -0.013609042391180992,
+ -0.004519507754594088,
+ -0.011269624345004559,
+ -0.04156548157334328,
+ -0.040508467704057693,
+ -0.010375826619565487,
+ -0.005094647407531738,
+ -0.016554689034819603,
+ -0.029440920799970627,
+ 0.0010045509552583098,
+ -0.03945145756006241,
+ 0.03786593675613403,
+ 0.021793121472001076,
+ -0.0059146094135940075,
+ 0.028756970539689064,
+ -0.012295547872781754,
+ -0.033762238919734955,
+ 0.003684001276269555,
+ 0.022088462486863136,
+ -0.07840549200773239,
+ 0.02050294354557991,
+ -0.030187048017978668,
+ -0.024233577772974968,
+ 0.10719355195760727,
+ -0.029409833252429962,
+ 0.03799029067158699,
+ -0.013834434561431408,
+ 0.010500180535018444,
+ -0.051109686493873596,
+ 0.013204890303313732,
+ 0.022072918713092804,
+ 0.03509904816746712,
+ -0.033544618636369705,
+ -0.019570285454392433,
+ 0.017518436536192894,
+ 0.0570165254175663,
+ -0.0178604107350111
+ ],
+ "result": "--- 结果 1 (相似度: 1.000) ---\n文件路径: C:\\Steam\\steamapps\\common\\RimWorld\\Data\\dll1.6\\Verse\\Pawn.txt\n\npublic class Pawn : ThingWithComps, IStrippable, IBillGiver, IVerbOwner, ITrader, IAttackTarget, ILoadReferenceable, IAttackTargetSearcher, IThingHolder, IObservedThoughtGiver, ISearchableContents, IEquatable\n{\n\tpublic PawnKindDef kindDef;\n\n\tprivate Name nameInt;\n\n\tpublic Gender gender;\n\n\tpublic Pawn_AgeTracker ageTracker;\n\n\tpublic Pawn_HealthTracker health;\n\n\tpublic Pawn_RecordsTracker records;\n\n\tpublic Pawn_InventoryTracker inventory;\n\n\tpublic Pawn_MeleeVerbs meleeVerbs;\n\n\tpublic VerbTracker verbTracker;\n\n\tpublic Pawn_Ownership ownership;\n\n\tpublic Pawn_CarryTracker carryTracker;\n\n\tpublic Pawn_NeedsTracker needs;\n\n\tpublic Pawn_MindState mindState;\n\n\tpublic Pawn_SurroundingsTracker surroundings;\n\n\tpublic Pawn_Thinker thinker;\n\n\tpublic Pawn_JobTracker jobs;\n\n\tpublic Pawn_StanceTracker stances;\n\n\tpublic Pawn_InfectionVectorTracker infectionVectors;\n\n\tpublic Pawn_DuplicateTracker duplicate;\n\n\tpublic Pawn_RotationTracker rotationTracker;\n\n\tpublic Pawn_PathFollower pather;\n\n\tpublic Pawn_NativeVerbs natives;\n\n\tpublic Pawn_FilthTracker filth;\n\n\tpublic Pawn_RopeTracker roping;\n\n\tpublic Pawn_FlightTracker flight;\n\n\tpublic Pawn_EquipmentTracker equipment;\n\n\tpublic Pawn_ApparelTracker apparel;\n\n\tpublic Pawn_SkillTracker skills;\n\n\tpublic Pawn_StoryTracker story;\n\n\tpublic Pawn_GuestTracker guest;\n\n\tpublic Pawn_GuiltTracker guilt;\n\n\tpublic Pawn_RoyaltyTracker royalty;\n\n\tpublic Pawn_AbilityTracker abilities;\n\n\tpublic Pawn_IdeoTracker ideo;\n\n\tpublic Pawn_GeneTracker genes;\n\n\tpublic Pawn_CreepJoinerTracker creepjoiner;\n\n\tpublic Pawn_WorkSettings workSettings;\n\n\tpublic Pawn_TraderTracker trader;\n\n\tpublic Pawn_StyleTracker style;\n\n\tpublic Pawn_StyleObserverTracker styleObserver;\n\n\tpublic Pawn_ConnectionsTracker connections;\n\n\tpublic Pawn_TrainingTracker training;\n\n\tpublic Pawn_CallTracker caller;\n\n\tpublic Pawn_PsychicEntropyTracker psychicEntropy;\n\n\tpublic Pawn_MutantTracker mutant;\n\n\tpublic Pawn_RelationsTracker relations;\n\n\tpublic Pawn_InteractionsTracker interactions;\n\n\tpublic Pawn_PlayerSettings playerSettings;\n\n\tpublic Pawn_OutfitTracker outfits;\n\n\tpublic Pawn_DrugPolicyTracker drugs;\n\n\tpublic Pawn_FoodRestrictionTracker foodRestriction;\n\n\tpublic Pawn_TimetableTracker timetable;\n\n\tpublic Pawn_InventoryStockTracker inventoryStock;\n\n\tpublic Pawn_MechanitorTracker mechanitor;\n\n\tpublic Pawn_LearningTracker learning;\n\n\tpublic Pawn_ReadingTracker reading;\n\n\tpublic Pawn_DraftController drafter;\n\n\tpublic Lord lord;\n\n\tpublic bool markedForDiscard;\n\n\tprivate Pawn_DrawTracker drawer;\n\n\tpublic int becameWorldPawnTickAbs = -1;\n\n\tpublic bool teleporting;\n\n\tpublic bool forceNoDeathNotification;\n\n\tpublic int showNamePromptOnTick = -1;\n\n\tpublic int babyNamingDeadline = -1;\n\n\tprivate Sustainer sustainerAmbient;\n\n\tprivate Sustainer sustainerMoving;\n\n\tpublic bool addCorpseToLord;\n\n\tpublic int timesRaisedAsShambler;\n\n\tprivate int lastSleepDisturbedTick;\n\n\tpublic int lastVacuumBurntTick;\n\n\tpublic Map prevMap;\n\n\tprivate Faction deadlifeDustFaction;\n\n\tprivate int deadlifeDustFactionTick;\n\n\tpublic bool wasLeftBehindStartingPawn;\n\n\tpublic bool debugMaxMoveSpeed;\n\n\tpublic bool wasDraftedBeforeSkip;\n\n\tpublic bool dontGivePreArrivalPathway;\n\n\tpublic bool everLostEgo;\n\n\tprivate const float HumanSizedHeatOutput = 0.3f;\n\n\tprivate const float AnimalHeatOutputFactor = 0.6f;\n\n\tpublic const int DefaultBabyNamingPeriod = 60000;\n\n\tpublic const int DefaultGrowthMomentChoicePeriod = 120000;\n\n\tprivate const int SleepDisturbanceMinInterval = 300;\n\n\tprivate const int DeadlifeFactionExpiryTicks = 12500;\n\n\tprivate const float HeatPushMaxTemperature = 40f;\n\n\tpublic const int MaxMoveTicks = 450;\n\n\tprivate static string NotSurgeryReadyTrans;\n\n\tprivate static string CannotReachTrans;\n\n\tprivate CompOverseerSubject overseerSubject;\n\n\tprivate static List tmpExtraFactions = new List();\n\n\tprivate static List states = new List();\n\n\tprivate List cachedDisabledWorkTypes;\n\n\tprivate List cachedDisabledWorkTypesPermanent;\n\n\tprivate Dictionary> cachedReasonsForDisabledWorkTypes;\n\n\tpublic Name Name\n\t{\n\t\tget\n\t\t{\n\t\t\treturn nameInt;\n\t\t}\n\t\tset\n\t\t{\n\t\t\tnameInt = value;\n\t\t}\n\t}\n\n\tpublic RaceProperties RaceProps => def.race;\n\n\tpublic Job CurJob => jobs?.curJob;\n\n\tpublic JobDef CurJobDef => CurJob?.def;\n\n\tpublic bool Downed => health.Downed;\n\n\tpublic bool Crawling\n\t{\n\t\tget\n\t\t{\n\t\t\tif (Downed && health.CanCrawl && CurJobDef != null && CurJobDef.isCrawlingIfDowned)\n\t\t\t{\n\t\t\t\treturn !this.InBed();\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic bool CanAttackWhileCrawling\n\t{\n\t\tget\n\t\t{\n\t\t\tif (IsMutant)\n\t\t\t{\n\t\t\t\treturn mutant.Def.canAttackWhileCrawling;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic bool Flying => flight?.Flying ?? false;\n\n\tpublic bool Swimming => CurJob?.swimming ?? false;\n\n\tpublic bool Dead => health.Dead;\n\n\tpublic bool DeadOrDowned\n\t{\n\t\tget\n\t\t{\n\t\t\tif (!Dead)\n\t\t\t{\n\t\t\t\treturn Downed;\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t}\n\n\tpublic string KindLabel => GenLabel.BestKindLabel(this);\n\n\tpublic bool InMentalState\n\t{\n\t\tget\n\t\t{\n\t\t\tif (!Dead)\n\t\t\t{\n\t\t\t\treturn mindState.mentalStateHandler.InMentalState;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic MentalState MentalState\n\t{\n\t\tget\n\t\t{\n\t\t\tif (!Dead)\n\t\t\t{\n\t\t\t\treturn mindState.mentalStateHandler.CurState;\n\t\t\t}\n\t\t\treturn null;\n\t\t}\n\t}\n\n\tpublic MentalStateDef MentalStateDef\n\t{\n\t\tget\n\t\t{\n\t\t\tif (!Dead)\n\t\t\t{\n\t\t\t\treturn mindState.mentalStateHandler.CurStateDef;\n\t\t\t}\n\t\t\treturn null;\n\t\t}\n\t}\n\n\tpublic bool InAggroMentalState\n\t{\n\t\tget\n\t\t{\n\t\t\tif (!Dead && mindState.mentalStateHandler.InMentalState)\n\t\t\t{\n\t\t\t\treturn mindState.mentalStateHandler.CurStateDef.IsAggro;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic bool Inspired\n\t{\n\t\tget\n\t\t{\n\t\t\tif (!Dead && mindState?.inspirationHandler != null)\n\t\t\t{\n\t\t\t\treturn mindState.inspirationHandler.Inspired;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic Inspiration Inspiration\n\t{\n\t\tget\n\t\t{\n\t\t\tif (!Dead)\n\t\t\t{\n\t\t\t\treturn mindState.inspirationHandler.CurState;\n\t\t\t}\n\t\t\treturn null;\n\t\t}\n\t}\n\n\tpublic InspirationDef InspirationDef\n\t{\n\t\tget\n\t\t{\n\t\t\tif (!Dead)\n\t\t\t{\n\t\t\t\treturn mindState.inspirationHandler.CurStateDef;\n\t\t\t}\n\t\t\treturn null;\n\t\t}\n\t}\n\n\tpublic override Vector3 DrawPos => Drawer.DrawPos;\n\n\tpublic VerbTracker VerbTracker => verbTracker;\n\n\tpublic List VerbProperties => def.Verbs;\n\n\tpublic List Tools => def.tools;\n\n\tpublic bool ShouldAvoidFences\n\t{\n\t\tget\n\t\t{\n\t\t\tif (!def.race.FenceBlocked)\n\t\t\t{\n\t\t\t\tif (roping != null)\n\t\t\t\t{\n\t\t\t\t\treturn roping.AnyRopeesFenceBlocked;\n\t\t\t\t}\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t}\n\n\tpublic bool DrawNonHumanlikeSwimmingGraphic\n\t{\n\t\tget\n\t\t{\n\t\t\tif (!base.Spawned || !WaterCellCost.HasValue || RaceProps.Humanlike)\n\t\t\t{\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tif (ageTracker.CurKindLifeStage.swimmingGraphicData != null)\n\t\t\t{\n\t\t\t\treturn base.Position.GetTerrain(base.Map).IsWater;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic bool CanOpenDoors\n\t{\n\t\tget\n\t\t{\n\t\t\tif (IsMutant && !mutant.Def.canOpenDoors)\n\t\t\t{\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tif (!kindDef.canOpenDoors)\n\t\t\t{\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t}\n\n\tpublic bool CanOpenAnyDoor\n\t{\n\t\tget\n\t\t{\n\t\t\tif (WildManUtility.WildManShouldReachOutsideNow(this))\n\t\t\t{\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tif (lord?.LordJob != null && lord.LordJob.CanOpenAnyDoor(this))\n\t\t\t{\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tif (IsMutant && mutant.Def.canOpenAnyDoor)\n\t\t\t{\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tif (kindDef.canOpenAnyDoor)\n\t\t\t{\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic int? WaterCellCost\n\t{\n\t\tget\n\t\t{\n\t\t\tif (Flying)\n\t\t\t{\n\t\t\t\treturn 1;\n\t\t\t}\n\t\t\tif (ModsConfig.BiotechActive && genes != null && genes.HasActiveGene(GeneDefOf.WebbedPhalanges))\n\t\t\t{\n\t\t\t\treturn 1;\n\t\t\t}\n\t\t\tif (def.race.waterCellCost.HasValue)\n\t\t\t{\n\t\t\t\treturn def.race.waterCellCost;\n\t\t\t}\n\t\t\tif (!Swimming)\n\t\t\t{\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\treturn 1;\n\t\t}\n\t}\n\n\tpublic bool IsColonist\n\t{\n\t\tget\n\t\t{\n\t\t\tif (base.Faction != null && base.Faction.IsPlayer && RaceProps.Humanlike && (!IsSlave || guest.SlaveIsSecure))\n\t\t\t{\n\t\t\t\treturn !IsSubhuman;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic bool IsFreeColonist\n\t{\n\t\tget\n\t\t{\n\t\t\tif (IsColonist)\n\t\t\t{\n\t\t\t\treturn HostFaction == null;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic bool IsFreeNonSlaveColonist\n\t{\n\t\tget\n\t\t{\n\t\t\tif (IsFreeColonist)\n\t\t\t{\n\t\t\t\treturn !IsSlave;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic bool CanTakeOrder\n\t{\n\t\tget\n\t\t{\n\t\t\tif (!IsColonistPlayerControlled && !IsColonyMech)\n\t\t\t{\n\t\t\t\treturn IsColonySubhumanPlayerControlled;\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t}\n\n\tpublic bool IsCreepJoiner\n\t{\n\t\tget\n\t\t{\n\t\t\tif (ModsConfig.AnomalyActive)\n\t\t\t{\n\t\t\t\treturn creepjoiner != null;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic Faction HostFaction => guest?.HostFaction;\n\n\tpublic Faction SlaveFaction => guest?.SlaveFaction;\n\n\tpublic Ideo Ideo => ideo?.Ideo;\n\n\tpublic bool ShouldHaveIdeo\n\t{\n\t\tget\n\t\t{\n\t\t\tif (!DevelopmentalStage.Baby() && !kindDef.preventIdeo)\n\t\t\t{\n\t\t\t\tif (IsMutant)\n\t\t\t\t{\n\t\t\t\t\treturn !mutant.Def.disablesIdeo;\n\t\t\t\t}\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic bool Drafted\n\t{\n\t\tget\n\t\t{\n\t\t\tif (drafter != null)\n\t\t\t{\n\t\t\t\treturn drafter.Drafted;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic bool IsPrisoner\n\t{\n\t\tget\n\t\t{\n\t\t\tif (guest != null)\n\t\t\t{\n\t\t\t\treturn guest.IsPrisoner;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic bool IsPrisonerOfColony\n\t{\n\t\tget\n\t\t{\n\t\t\tif (guest != null && guest.IsPrisoner)\n\t\t\t{\n\t\t\t\treturn guest.HostFaction.IsPlayer;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic bool IsSlave\n\t{\n\t\tget\n\t\t{\n\t\t\tif (guest != null)\n\t\t\t{\n\t\t\t\treturn guest.IsSlave;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic bool IsSlaveOfColony\n\t{\n\t\tget\n\t\t{\n\t\t\tif (IsSlave)\n\t\t\t{\n\t\t\t\treturn base.Faction.IsPlayer;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic bool IsFreeman => HostFaction == null;\n\n\tpublic bool IsMutant => mutant != null;\n\n\tpublic bool IsSubhuman\n\t{\n\t\tget\n\t\t{\n\t\t\tif (IsMutant)\n\t\t\t{\n\t\t\t\treturn mutant.Def.consideredSubhuman;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic bool IsDuplicate\n\t{\n\t\tget\n\t\t{\n\t\t\tif (ModsConfig.AnomalyActive && duplicate != null && duplicate.duplicateOf != int.MinValue)\n\t\t\t{\n\t\t\t\treturn duplicate.duplicateOf != thingIDNumber;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic bool IsEntity\n\t{\n\t\tget\n\t\t{\n\t\t\tif (ModsConfig.AnomalyActive && (!RaceProps.Humanlike || IsSubhuman || IsShambler))\n\t\t\t{\n\t\t\t\treturn base.Faction == Faction.OfEntities;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic bool IsShambler\n\t{\n\t\tget\n\t\t{\n\t\t\tif (ModsConfig.AnomalyActive)\n\t\t\t{\n\t\t\t\tif (!IsMutant || mutant.Def != MutantDefOf.Shambler)\n\t\t\t\t{\n\t\t\t\t\treturn health.hediffSet.HasHediff(HediffDefOf.ShamblerCorpse);\n\t\t\t\t}\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic bool IsGhoul\n\t{\n\t\tget\n\t\t{\n\t\t\tif (ModsConfig.AnomalyActive && IsMutant)\n\t\t\t{\n\t\t\t\treturn mutant.Def == MutantDefOf.Ghoul;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic bool IsAwokenCorpse\n\t{\n\t\tget\n\t\t{\n\t\t\tif (ModsConfig.AnomalyActive && IsMutant)\n\t\t\t{\n\t\t\t\treturn mutant.Def == MutantDefOf.AwokenCorpse;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic bool IsAnimal\n\t{\n\t\tget\n\t\t{\n\t\t\tif (RaceProps.Animal)\n\t\t\t{\n\t\t\t\treturn !IsSubhuman;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic bool HasShowGizmosOnCorpseHediff\n\t{\n\t\tget\n\t\t{\n\t\t\tif (health?.hediffSet != null)\n\t\t\t{\n\t\t\t\treturn health.hediffSet.HasHediffShowGizmosOnCorpse();\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic DevelopmentalStage DevelopmentalStage => ageTracker?.CurLifeStage?.developmentalStage ?? DevelopmentalStage.Adult;\n\n\tpublic GuestStatus? GuestStatus\n\t{\n\t\tget\n\t\t{\n\t\t\tif (guest != null && (HostFaction != null || guest.GuestStatus != 0))\n\t\t\t{\n\t\t\t\treturn guest.GuestStatus;\n\t\t\t}\n\t\t\treturn null;\n\t\t}\n\t}\n\n\tpublic bool IsColonistPlayerControlled\n\t{\n\t\tget\n\t\t{\n\t\t\tif (base.Spawned && IsColonist && MentalStateDef == null)\n\t\t\t{\n\t\t\t\tif (HostFaction != null)\n\t\t\t\t{\n\t\t\t\t\treturn IsSlave;\n\t\t\t\t}\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic bool IsColonyMech\n\t{\n\t\tget\n\t\t{\n\t\t\tif (ModsConfig.BiotechActive && RaceProps.IsMechanoid && base.Faction == Faction.OfPlayer && MentalStateDef == null)\n\t\t\t{\n\t\t\t\tif (HostFaction != null)\n\t\t\t\t{\n\t\t\t\t\treturn IsSlave;\n\t\t\t\t}\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic bool IsColonyMechPlayerControlled\n\t{\n\t\tget\n\t\t{\n\t\t\tif (base.Spawned && IsColonyMech && OverseerSubject != null)\n\t\t\t{\n\t\t\t\treturn OverseerSubject.State == OverseerSubjectState.Overseen;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic bool IsColonySubhuman\n\t{\n\t\tget\n\t\t{\n\t\t\tif (IsSubhuman)\n\t\t\t{\n\t\t\t\treturn base.Faction == Faction.OfPlayer;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic bool IsColonySubhumanPlayerControlled\n\t{\n\t\tget\n\t\t{\n\t\t\tif (base.Spawned && IsColonySubhuman)\n\t\t\t{\n\t\t\t\treturn mutant.Def.canBeDrafted;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic bool IsPlayerControlled\n\t{\n\t\tget\n\t\t{\n\t\t\tif (!IsColonistPlayerControlled && !IsColonyMechPlayerControlled)\n\t\t\t{\n\t\t\t\treturn IsColonySubhumanPlayerControlled;\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t}\n\n\tpublic IEnumerable IngredientStackCells\n\t{\n\t\tget\n\t\t{\n\t\t\tyield return InteractionCell;\n\t\t}\n\t}\n\n\tpublic bool InContainerEnclosed => base.ParentHolder.IsEnclosingContainer();\n\n\tpublic Corpse Corpse => base.ParentHolder as Corpse;\n\n\tpublic Pawn CarriedBy\n\t{\n\t\tget\n\t\t{\n\t\t\tif (!(base.ParentHolder is Pawn_CarryTracker pawn_CarryTracker))\n\t\t\t{\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\treturn pawn_CarryTracker.pawn;\n\t\t}\n\t}\n\n\tpublic virtual bool CanAttackWhenPathingBlocked => !IsAwokenCorpse;\n\n\tpublic bool HarmedByVacuum\n\t{\n\t\tget\n\t\t{\n\t\t\tif (!ModsConfig.OdysseyActive)\n\t\t\t{\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tif (RaceProps.IsMechanoid || (IsMutant && !mutant.Def.breathesAir))\n\t\t\t{\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\treturn this.GetStatValue(StatDefOf.VacuumResistance, applyPostProcess: true, 60) < 1f;\n\t\t}\n\t}\n\n\tpublic bool ConcernedByVacuum\n\t{\n\t\tget\n\t\t{\n\t\t\tif (!ModsConfig.OdysseyActive)\n\t\t\t{\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tif (RaceProps.IsMechanoid || (IsMutant && !mutant.Def.breathesAir))\n\t\t\t{\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\treturn this.GetStatValue(StatDefOf.VacuumResistance, applyPostProcess: true, 60) < 0.75f;\n\t\t}\n\t}\n\n\tprivate string LabelPrefix\n\t{\n\t\tget\n\t\t{\n\t\t\tif (IsMutant && mutant.HasTurned)\n\t\t\t{\n\t\t\t\treturn mutant.Def.namePrefix;\n\t\t\t}\n\t\t\treturn string.Empty;\n\t\t}\n\t}\n\n\tpublic override string LabelNoCount\n\t{\n\t\tget\n\t\t{\n\t\t\tif (Name != null)\n\t\t\t{\n\t\t\t\tif (story == null || story.TitleShortCap.NullOrEmpty() || IsSubhuman)\n\t\t\t\t{\n\t\t\t\t\treturn LabelPrefix + Name.ToStringShort;\n\t\t\t\t}\n\t\t\t\treturn LabelPrefix + Name.ToStringShort + (\", \" + story.TitleShortCap).Colorize(ColoredText.SubtleGrayColor);\n\t\t\t}\n\t\t\treturn LabelPrefix + KindLabel;\n\t\t}\n\t}\n\n\tpublic override string LabelShort\n\t{\n\t\tget\n\t\t{\n\t\t\tif (Name != null)\n\t\t\t{\n\t\t\t\treturn LabelPrefix + Name.ToStringShort;\n\t\t\t}\n\t\t\treturn LabelNoCount;\n\t\t}\n\t}\n\n\tpublic TaggedString LabelNoCountColored\n\t{\n\t\tget\n\t\t{\n\t\t\tif (Name != null)\n\t\t\t{\n\t\t\t\tif (story == null || story.TitleShortCap.NullOrEmpty() || IsSubhuman)\n\t\t\t\t{\n\t\t\t\t\treturn LabelPrefix + Name.ToStringShort.Colorize(ColoredText.NameColor);\n\t\t\t\t}\n\t\t\t\treturn LabelPrefix + Name.ToStringShort.Colorize(ColoredText.NameColor) + (\", \" + story.TitleShortCap).Colorize(ColoredText.SubtleGrayColor);\n\t\t\t}\n\t\t\treturn LabelPrefix + KindLabel;\n\t\t}\n\t}\n\n\tpublic TaggedString NameShortColored\n\t{\n\t\tget\n\t\t{\n\t\t\tif (Name != null)\n\t\t\t{\n\t\t\t\treturn LabelPrefix + Name.ToStringShort.Colorize(ColoredText.NameColor);\n\t\t\t}\n\t\t\treturn LabelPrefix + KindLabel;\n\t\t}\n\t}\n\n\tpublic TaggedString NameFullColored\n\t{\n\t\tget\n\t\t{\n\t\t\tif (Name != null)\n\t\t\t{\n\t\t\t\treturn LabelPrefix + Name.ToStringFull.Colorize(ColoredText.NameColor);\n\t\t\t}\n\t\t\treturn LabelPrefix + KindLabel;\n\t\t}\n\t}\n\n\tpublic TaggedString LegalStatus\n\t{\n\t\tget\n\t\t{\n\t\t\tif (IsSlave)\n\t\t\t{\n\t\t\t\treturn \"Slave\".Translate().CapitalizeFirst();\n\t\t\t}\n\t\t\tif (base.Faction != null)\n\t\t\t{\n\t\t\t\treturn new TaggedString(base.Faction.def.pawnSingular);\n\t\t\t}\n\t\t\treturn \"Colonist\".Translate();\n\t\t}\n\t}\n\n\tpublic float TicksPerMoveCardinal => TicksPerMove(diagonal: false);\n\n\tpublic float TicksPerMoveDiagonal => TicksPerMove(diagonal: true);\n\n\tpublic override string DescriptionDetailed => DescriptionFlavor;\n\n\tpublic override string DescriptionFlavor\n\t{\n\t\tget\n\t\t{\n\t\t\tif (ModsConfig.AnomalyActive && IsSubhuman && !mutant.Def.description.NullOrEmpty())\n\t\t\t{\n\t\t\t\treturn mutant.Def.description;\n\t\t\t}\n\t\t\tif (this.IsBaseliner())\n\t\t\t{\n\t\t\t\treturn def.description;\n\t\t\t}\n\t\t\tstring text = ((genes.Xenotype != XenotypeDefOf.Baseliner) ? genes.Xenotype.description : ((genes.CustomXenotype == null) ? genes.Xenotype.description : ((string)\"UniqueXenotypeDesc\".Translate())));\n\t\t\treturn \"StatsReport_NonBaselinerDescription\".Translate(genes.XenotypeLabel) + \"\\n\\n\" + text;\n\t\t}\n\t}\n\n\tpublic override IEnumerable DescriptionHyperlinks\n\t{\n\t\tget\n\t\t{\n\t\t\tforeach (DefHyperlink descriptionHyperlink in base.DescriptionHyperlinks)\n\t\t\t{\n\t\t\t\tyield return descriptionHyperlink;\n\t\t\t}\n\t\t\tif (!this.IsBaseliner() && genes.CustomXenotype == null)\n\t\t\t{\n\t\t\t\tyield return new DefHyperlink(genes.Xenotype);\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic Pawn_DrawTracker Drawer => drawer ?? (drawer = new Pawn_DrawTracker(this));\n\n\tpublic Faction HomeFaction\n\t{\n\t\tget\n\t\t{\n\t\t\tif (base.Faction != null && base.Faction.IsPlayer)\n\t\t\t{\n\t\t\t\tif (IsSlave && SlaveFaction != null)\n\t\t\t\t{\n\t\t\t\t\treturn SlaveFaction;\n\t\t\t\t}\n\t\t\t\tif (this.HasExtraMiniFaction())\n\t\t\t\t{\n\t\t\t\t\treturn this.GetExtraMiniFaction();\n\t\t\t\t}\n\t\t\t\treturn this.GetExtraHomeFaction() ?? base.Faction;\n\t\t\t}\n\t\t\treturn base.Faction;\n\t\t}\n\t}\n\n\tpublic bool Deathresting\n\t{\n\t\tget\n\t\t{\n\t\t\tif (ModsConfig.BiotechActive)\n\t\t\t{\n\t\t\t\treturn health.hediffSet.HasHediff(HediffDefOf.Deathrest);\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic bool HasDeathRefusalOrResurrecting\n\t{\n\t\tget\n\t\t{\n\t\t\tif (ModsConfig.AnomalyActive)\n\t\t\t{\n\t\t\t\tif (!health.hediffSet.HasHediff())\n\t\t\t\t{\n\t\t\t\t\treturn health.hediffSet.HasHediff(HediffDefOf.Rising);\n\t\t\t\t}\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic override bool Suspended\n\t{\n\t\tget\n\t\t{\n\t\t\tif (base.Suspended)\n\t\t\t{\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tif (Find.WorldPawns.GetSituation(this) == WorldPawnSituation.ReservedByQuest)\n\t\t\t{\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic Faction DeadlifeDustFaction\n\t{\n\t\tget\n\t\t{\n\t\t\tif (GenTicks.TicksGame - deadlifeDustFactionTick < 12500 && deadlifeDustFaction != null)\n\t\t\t{\n\t\t\t\treturn deadlifeDustFaction;\n\t\t\t}\n\t\t\treturn Faction.OfPlayer;\n\t\t}\n\t}\n\n\tpublic bool HasPsylink => psychicEntropy?.Psylink != null;\n\n\tpublic CompOverseerSubject OverseerSubject\n\t{\n\t\tget\n\t\t{\n\t\t\tif (ModsConfig.BiotechActive && overseerSubject == null && RaceProps.IsMechanoid)\n\t\t\t{\n\t\t\t\toverseerSubject = GetComp();\n\t\t\t}\n\t\t\treturn overseerSubject;\n\t\t}\n\t}\n\n\tpublic override int UpdateRateTicks\n\t{\n\t\tget\n\t\t{\n\t\t\tif (!RaceProps.Animal)\n\t\t\t{\n\t\t\t\treturn base.UpdateRateTicks;\n\t\t\t}\n\t\t\treturn 15;\n\t\t}\n\t}\n\n\tpublic WorkTags CombinedDisabledWorkTags\n\t{\n\t\tget\n\t\t{\n\t\t\tWorkTags workTags = story?.DisabledWorkTagsBackstoryTraitsAndGenes ?? WorkTags.None;\n\t\t\tworkTags |= kindDef.disabledWorkTags;\n\t\t\tif (royalty != null)\n\t\t\t{\n\t\t\t\tforeach (RoyalTitle item in royalty.AllTitlesForReading)\n\t\t\t\t{\n\t\t\t\t\tif (item.conceited)\n\t\t\t\t\t{\n\t\t\t\t\t\tworkTags |= item.def.disabledWorkTags;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (ModsConfig.IdeologyActive && Ideo != null)\n\t\t\t{\n\t\t\t\tPrecept_Role role = Ideo.GetRole(this);\n\t\t\t\tif (role != null)\n\t\t\t\t{\n\t\t\t\t\tworkTags |= role.def.roleDisabledWorkTags;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (health?.hediffSet != null)\n\t\t\t{\n\t\t\t\tforeach (Hediff hediff in health.hediffSet.hediffs)\n\t\t\t\t{\n\t\t\t\t\tHediffStage curStage = hediff.CurStage;\n\t\t\t\t\tif (curStage != null)\n\t\t\t\t\t{\n\t\t\t\t\t\tworkTags |= curStage.disabledWorkTags;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tforeach (QuestPart_WorkDisabled item2 in QuestUtility.GetWorkDisabledQuestPart(this))\n\t\t\t{\n\t\t\t\tworkTags |= item2.disabledWorkTags;\n\t\t\t}\n\t\t\tif (IsMutant)\n\t\t\t{\n\t\t\t\tworkTags |= mutant.Def.workDisables;\n\t\t\t\tif (!mutant.IsPassive)\n\t\t\t\t{\n\t\t\t\t\tworkTags &= ~WorkTags.Violent;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn workTags;\n\t\t}\n\t}\n\n\tpublic TraderKindDef TraderKind => trader?.traderKind;\n\n\tpublic TradeCurrency TradeCurrency => TraderKind.tradeCurrency;\n\n\tpublic IEnumerable Goods => trader.Goods;\n\n\tpublic int RandomPriceFactorSeed => trader.RandomPriceFactorSeed;\n\n\tpublic string TraderName => trader.TraderName;\n\n\tpublic bool CanTradeNow\n\t{\n\t\tget\n\t\t{\n\t\t\tif (trader != null)\n\t\t\t{\n\t\t\t\treturn trader.CanTradeNow;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic float TradePriceImprovementOffsetForPlayer => 0f;\n\n\tpublic float BodySize => ageTracker.CurLifeStage.bodySizeFactor * RaceProps.baseBodySize;\n\n\tpublic float HealthScale => ageTracker.CurLifeStage.healthScaleFactor * RaceProps.baseHealthScale;\n\n\tpublic IEnumerable EquippedWornOrInventoryThings => inventory.innerContainer.ConcatIfNotNull(apparel?.WornApparel).ConcatIfNotNull(equipment?.AllEquipmentListForReading);\n\n\tThing IAttackTarget.Thing => this;\n\n\tpublic float TargetPriorityFactor => 1f;\n\n\tpublic LocalTargetInfo TargetCurrentlyAimingAt\n\t{\n\t\tget\n\t\t{\n\t\t\tif (!base.Spawned)\n\t\t\t{\n\t\t\t\treturn LocalTargetInfo.Invalid;\n\t\t\t}\n\t\t\tStance curStance = stances.curStance;\n\t\t\tif (curStance is Stance_Warmup || curStance is Stance_Cooldown)\n\t\t\t{\n\t\t\t\treturn ((Stance_Busy)curStance).focusTarg;\n\t\t\t}\n\t\t\treturn LocalTargetInfo.Invalid;\n\t\t}\n\t}\n\n\tThing IAttackTargetSearcher.Thing => this;\n\n\tpublic LocalTargetInfo LastAttackedTarget => mindState.lastAttackedTarget;\n\n\tpublic int LastAttackTargetTick => mindState.lastAttackTargetTick;\n\n\tpublic Verb CurrentEffectiveVerb\n\t{\n\t\tget\n\t\t{\n\t\t\tif (this.MannedThing() is Building_Turret building_Turret)\n\t\t\t{\n\t\t\t\treturn building_Turret.AttackVerb;\n\t\t\t}\n\t\t\treturn TryGetAttackVerb(null, !IsColonist);\n\t\t}\n\t}\n\n\tprivate bool ForceNoDeathNotification\n\t{\n\t\tget\n\t\t{\n\t\t\tif (!forceNoDeathNotification)\n\t\t\t{\n\t\t\t\treturn kindDef.forceNoDeathNotification;\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t}\n\n\tThing IVerbOwner.ConstantCaster => this;\n\n\tImplementOwnerTypeDef IVerbOwner.ImplementOwnerTypeDef => ImplementOwnerTypeDefOf.Bodypart;\n\n\tpublic BillStack BillStack => health.surgeryBills;\n\n\tpublic override IntVec3 InteractionCell => this.CurrentBed()?.FindPreferredInteractionCell(base.Position) ?? base.InteractionCell;\n\n\tpublic ThingOwner SearchableContents => carryTracker?.innerContainer;\n\n\tpublic virtual bool ShouldShowQuestionMark()\n\t{\n\t\tif (ModsConfig.AnomalyActive && creepjoiner != null)\n\t\t{\n\t\t\treturn creepjoiner.IsOnEntryLord;\n\t\t}\n\t\treturn CanTradeNow;\n\t}\n\n\tpublic string GetKindLabelSingular()\n\t{\n\t\treturn GenLabel.BestKindLabel(this);\n\t}\n\n\tpublic string GetKindLabelPlural(int count = -1)\n\t{\n\t\treturn GenLabel.BestKindLabel(this, mustNoteGender: false, mustNoteLifeStage: false, plural: true, count);\n\t}\n\n\tpublic static void ResetStaticData()\n\t{\n\t\tNotSurgeryReadyTrans = \"NotSurgeryReady\".Translate();\n\t\tCannotReachTrans = \"CannotReach\".Translate();\n\t}\n\n\tpublic override void Notify_DefsHotReloaded()\n\t{\n\t\tbase.Notify_DefsHotReloaded();\n\t\tDrawer.renderer.SetAllGraphicsDirty();\n\t}\n\n\tpublic void MarkDeadlifeDustForFaction(Faction faction)\n\t{\n\t\tdeadlifeDustFaction = faction;\n\t\tdeadlifeDustFactionTick = GenTicks.TicksGame;\n\t}\n\n\tpublic override void SpawnSetup(Map map, bool respawningAfterLoad)\n\t{\n\t\tif (Dead)\n\t\t{\n\t\t\tLog.Warning(\"Tried to spawn Dead Pawn \" + this.ToStringSafe() + \". Replacing with corpse.\");\n\t\t\tCorpse obj = (Corpse)ThingMaker.MakeThing(RaceProps.corpseDef);\n\t\t\tobj.InnerPawn = this;\n\t\t\tGenSpawn.Spawn(obj, base.Position, map);\n\t\t\treturn;\n\t\t}\n\t\tif (def == null || kindDef == null)\n\t\t{\n\t\t\tLog.Warning(\"Tried to spawn pawn without def \" + this.ToStringSafe() + \".\");\n\t\t\treturn;\n\t\t}\n\t\tbase.SpawnSetup(map, respawningAfterLoad);\n\t\tif (Find.WorldPawns.Contains(this))\n\t\t{\n\t\t\tFind.WorldPawns.RemovePawn(this);\n\t\t}\n\t\tPawnComponentsUtility.AddComponentsForSpawn(this);\n\t\tif (!PawnUtility.InValidState(this))\n\t\t{\n\t\t\tLog.Error(\"Pawn \" + this.ToStringSafe() + \" spawned in invalid state. Destroying...\");\n\t\t\ttry\n\t\t\t{\n\t\t\t\tDeSpawn();\n\t\t\t}\n\t\t\tcatch (Exception ex)\n\t\t\t{\n\t\t\t\tLog.Error(\"Tried to despawn \" + this.ToStringSafe() + \" because of the previous error but couldn't: \" + ex);\n\t\t\t}\n\t\t\tFind.WorldPawns.PassToWorld(this, PawnDiscardDecideMode.Discard);\n\t\t\treturn;\n\t\t}\n\t\tDrawer.Notify_Spawned();\n\t\trotationTracker.Notify_Spawned();\n\t\tif (!respawningAfterLoad)\n\t\t{\n\t\t\tpather.ResetToCurrentPosition();\n\t\t}\n\t\tbase.Map.mapPawns.RegisterPawn(this);\n\t\tbase.Map.autoSlaughterManager.Notify_PawnSpawned();\n\t\tif (relations != null)\n\t\t{\n\t\t\trelations.everSeenByPlayer = true;\n\t\t}\n\t\tAddictionUtility.CheckDrugAddictionTeachOpportunity(this);\n\t\tneeds?.mood?.recentMemory?.Notify_Spawned(respawningAfterLoad);\n\t\tequipment?.Notify_PawnSpawned();\n\t\thealth?.Notify_Spawned();\n\t\tmechanitor?.Notify_PawnSpawned(respawningAfterLoad);\n\t\tmutant?.Notify_Spawned(respawningAfterLoad);\n\t\tinfectionVectors?.NotifySpawned(respawningAfterLoad);\n\t\tif (base.Faction == Faction.OfPlayer)\n\t\t{\n\t\t\tIdeo?.RecacheColonistBelieverCount();\n\t\t}\n\t\tif (!respawningAfterLoad)\n\t\t{\n\t\t\tif ((base.Faction == Faction.OfPlayer || IsPlayerControlled) && base.Position.Fogged(map))\n\t\t\t{\n\t\t\t\tFloodFillerFog.FloodUnfog(base.Position, map);\n\t\t\t}\n\t\t\tFind.GameEnder.CheckOrUpdateGameOver();\n\t\t\tif (base.Faction == Faction.OfPlayer)\n\t\t\t{\n\t\t\t\tFind.StoryWatcher.statsRecord.UpdateGreatestPopulation();\n\t\t\t\tFind.World.StoryState.RecordPopulationIncrease();\n\t\t\t}\n\t\t\tif (!IsSubhuman)\n\t\t\t{\n\t\t\t\tPawnDiedOrDownedThoughtsUtility.RemoveDiedThoughts(this);\n\t\t\t}\n\t\t\tif (this.IsQuestLodger())\n\t\t\t{\n\t\t\t\tfor (int num = health.hediffSet.hediffs.Count - 1; num >= 0; num--)\n\t\t\t\t{\n\t\t\t\t\tif (health.hediffSet.hediffs[num].def.removeOnQuestLodgers)\n\t\t\t\t\t{\n\t\t\t\t\t\thealth.RemoveHediff(health.hediffSet.hediffs[num]);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tLongEventHandler.ExecuteWhenFinished(delegate\n\t\t{\n\t\t\tif (IsPlayerControlled && base.PositionHeld.Fogged(base.Map))\n\t\t\t{\n\t\t\t\tFloodFillerFog.FloodUnfog(base.PositionHeld, base.Map);\n\t\t\t}\n\t\t});\n\t\tif (RaceProps.soundAmbience != null)\n\t\t{\n\t\t\tLongEventHandler.ExecuteWhenFinished(delegate\n\t\t\t{\n\t\t\t\tsustainerAmbient = RaceProps.soundAmbience.TrySpawnSustainer(SoundInfo.InMap(this, MaintenanceType.PerTick));\n\t\t\t});\n\t\t}\n\t\tif (RaceProps.soundMoving != null)\n\t\t{\n\t\t\tLongEventHandler.ExecuteWhenFinished(delegate\n\t\t\t{\n\t\t\t\tsustainerMoving = RaceProps.soundMoving.TrySpawnSustainer(SoundInfo.InMap(this, MaintenanceType.PerTick));\n\t\t\t});\n\t\t}\n\t\tif (Ideo != null && Ideo.hidden)\n\t\t{\n\t\t\tIdeo.hidden = false;\n\t\t}\n\t}\n\n\tpublic override void PostMapInit()\n\t{\n\t\tbase.PostMapInit();\n\t\tpather.TryResumePathingAfterLoading();\n\t}\n\n\tpublic void DrawShadowAt(Vector3 drawLoc)\n\t{\n\t\tDrawer.DrawShadowAt(drawLoc);\n\t}\n\n\tpublic override void DynamicDrawPhaseAt(DrawPhase phase, Vector3 drawLoc, bool flip = false)\n\t{\n\t\tbase.DynamicDrawPhaseAt(phase, drawLoc, flip);\n\t\tDrawer.renderer.DynamicDrawPhaseAt(phase, drawLoc);\n\t}\n\n\tprotected override void DrawAt(Vector3 drawLoc, bool flip = false)\n\t{\n\t\tComps_PostDraw();\n\t\tmechanitor?.DrawCommandRadius();\n\t}\n\n\tpublic override void DrawGUIOverlay()\n\t{\n\t\tDrawer.ui.DrawPawnGUIOverlay();\n\t\tfor (int i = 0; i < base.AllComps.Count; i++)\n\t\t{\n\t\t\tbase.AllComps[i].DrawGUIOverlay();\n\t\t}\n\t\tSilhouetteUtility.DrawGUISilhouette(this);\n\t\tif (DebugViewSettings.drawPatherState)\n\t\t{\n\t\t\tpather.DrawDebugGUI();\n\t\t}\n\t}\n\n\tpublic override void DrawExtraSelectionOverlays()\n\t{\n\t\tbase.DrawExtraSelectionOverlays();\n\t\tif (IsPlayerControlled)\n\t\t{\n\t\t\tpather.curPath?.DrawPath(this);\n\t\t\tjobs.DrawLinesBetweenTargets();\n\t\t}\n\t}\n\n\tpublic override void TickRare()\n\t{\n\t\tbase.TickRare();\n\t\tif (!Suspended)\n\t\t{\n\t\t\tapparel?.ApparelTrackerTickRare();\n\t\t}\n\t\ttraining?.TrainingTrackerTickRare();\n\t\tif (base.Spawned && RaceProps.IsFlesh && base.AmbientTemperature < 40f)\n\t\t{\n\t\t\tGenTemperature.PushHeat(this, 0.3f * BodySize * 4.1666665f * (def.race.Humanlike ? 1f : 0.6f));\n\t\t}\n\t}\n\n\tprotected override void Tick()\n\t{\n\t\tif (DebugSettings.noAnimals && base.Spawned && IsAnimal)\n\t\t{\n\t\t\tDestroy();\n\t\t\treturn;\n\t\t}\n\t\tbase.Tick();\n\t\tif (this.IsHashIntervalTick(250))\n\t\t{\n\t\t\tTickRare();\n\t\t}\n\t\tbool suspended = Suspended;\n\t\tif (!suspended)\n\t\t{\n\t\t\tif (base.Spawned)\n\t\t\t{\n\t\t\t\tpather.PatherTick();\n\t\t\t}\n\t\t\tif (base.Spawned)\n\t\t\t{\n\t\t\t\tverbTracker.VerbsTick();\n\t\t\t}\n\t\t\tif (base.Spawned)\n\t\t\t{\n\t\t\t\troping?.RopingTick();\n\t\t\t\tflight?.FlightTick();\n\t\t\t\tnatives.NativeVerbsTick();\n\t\t\t}\n\t\t\tif (base.Spawned)\n\t\t\t{\n\t\t\t\tstances.StanceTrackerTick();\n\t\t\t}\n\t\t\tif (!this.IsWorldPawn())\n\t\t\t{\n\t\t\t\tjobs?.JobTrackerTick();\n\t\t\t}\n\t\t\thealth.HealthTick();\n\t\t\tif (base.Spawned && this.IsHiddenFromPlayer() && Find.Selector.IsSelected(this))\n\t\t\t{\n\t\t\t\tFind.Selector.Deselect(this);\n\t\t\t}\n\t\t}\n\t\tif (!suspended)\n\t\t{\n\t\t\tif (equipment != null)\n\t\t\t{\n\t\t\t\tusing (ProfilerBlock.Scope(\"equipment\"))\n\t\t\t\t{\n\t\t\t\t\tequipment.EquipmentTrackerTick();\n\t\t\t\t}\n\t\t\t}\n\t\t\tabilities?.AbilitiesTick();\n\t\t\tinventory?.InventoryTrackerTick();\n\t\t\tgenes?.GeneTrackerTick();\n\t\t\tif (ModsConfig.AnomalyActive && base.Spawned)\n\t\t\t{\n\t\t\t\tmutant?.MutantTrackerTick();\n\t\t\t}\n\t\t}\n\t\tif (base.Spawned && !base.Position.Fogged(base.Map))\n\t\t{\n\t\t\tif (RaceProps.soundAmbience != null && (sustainerAmbient == null || sustainerAmbient.Ended))\n\t\t\t{\n\t\t\t\tsustainerAmbient = RaceProps.soundAmbience.TrySpawnSustainer(SoundInfo.InMap(this, MaintenanceType.PerTick));\n\t\t\t}\n\t\t\tsustainerAmbient?.Maintain();\n\t\t\tif (pather != null && pather.Moving && RaceProps.soundMoving != null)\n\t\t\t{\n\t\t\t\tif (sustainerMoving == null || sustainerMoving.Ended)\n\t\t\t\t{\n\t\t\t\t\tsustainerMoving = RaceProps.soundMoving.TrySpawnSustainer(SoundInfo.InMap(this, MaintenanceType.PerTick));\n\t\t\t\t}\n\t\t\t\tsustainerMoving?.Maintain();\n\t\t\t}\n\t\t}\n\t\tdrawer?.renderer.EffectersTick(suspended || this.IsWorldPawn());\n\t}\n\n\tprotected override void TickInterval(int delta)\n\t{\n\t\tif (DebugSettings.noAnimals && base.Spawned && IsAnimal)\n\t\t{\n\t\t\tDestroy();\n\t\t\treturn;\n\t\t}\n\t\tbase.TickInterval(delta);\n\t\tbool suspended = Suspended;\n\t\tif (!suspended)\n\t\t{\n\t\t\tif (!this.IsWorldPawn())\n\t\t\t{\n\t\t\t\tusing (ProfilerBlock.Scope(\"jobs interval\"))\n\t\t\t\t{\n\t\t\t\t\tjobs?.JobTrackerTickInterval(delta);\n\t\t\t\t}\n\t\t\t}\n\t\t\tusing (ProfilerBlock.Scope(\"health interval\"))\n\t\t\t{\n\t\t\t\thealth.HealthTickInterval(delta);\n\t\t\t}\n\t\t\tif (!Dead)\n\t\t\t{\n\t\t\t\tusing (ProfilerBlock.Scope(\"mind state interval\"))\n\t\t\t\t{\n\t\t\t\t\tmindState.MindStateTickInterval(delta);\n\t\t\t\t}\n\t\t\t\tcarryTracker.CarryHandsTickInterval(delta);\n\t\t\t\tif (!base.InCryptosleep && RaceProps.Humanlike)\n\t\t\t\t{\n\t\t\t\t\tinfectionVectors?.InfectionTickInterval(delta);\n\t\t\t\t}\n\t\t\t\tif (showNamePromptOnTick != -1 && showNamePromptOnTick == Find.TickManager.TicksGame)\n\t\t\t\t{\n\t\t\t\t\tFind.WindowStack.Add(this.NamePawnDialog());\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (!base.Spawned)\n\t\t{\n\t\t\tThing firstParentThing = ThingOwnerUtility.GetFirstParentThing(this);\n\t\t\tif (firstParentThing != null)\n\t\t\t{\n\t\t\t\tPawnUtility.GainComfortFromThingIfPossible(this, firstParentThing, delta);\n\t\t\t}\n\t\t}\n\t\tif (!Dead)\n\t\t{\n\t\t\tneeds.NeedsTrackerTickInterval(delta);\n\t\t}\n\t\tif (!suspended)\n\t\t{\n\t\t\tapparel?.ApparelTrackerTickInterval(delta);\n\t\t\tif (interactions != null && base.Spawned)\n\t\t\t{\n\t\t\t\tusing (ProfilerBlock.Scope(\"interactions\"))\n\t\t\t\t{\n\t\t\t\t\tinteractions.InteractionsTrackerTickInterval(delta);\n\t\t\t\t}\n\t\t\t}\n\t\t\tcaller?.CallTrackerTickInterval(delta);\n\t\t\tskills?.SkillsTickInterval(delta);\n\t\t\tdrafter?.DraftControllerTickInterval(delta);\n\t\t\trelations?.RelationsTrackerTickInterval(delta);\n\t\t\tif (ModsConfig.RoyaltyActive && psychicEntropy != null)\n\t\t\t{\n\t\t\t\tpsychicEntropy.PsychicEntropyTrackerTickInterval(delta);\n\t\t\t}\n\t\t\tif (RaceProps.Humanlike)\n\t\t\t{\n\t\t\t\tguest.GuestTrackerTickInterval(delta);\n\t\t\t}\n\t\t\tideo?.IdeoTrackerTickInterval(delta);\n\t\t\tgenes?.GeneTrackerTickInterval(delta);\n\t\t\tif (royalty != null && ModsConfig.RoyaltyActive)\n\t\t\t{\n\t\t\t\troyalty.RoyaltyTrackerTickInterval(delta);\n\t\t\t}\n\t\t\tif (style != null && ModsConfig.IdeologyActive)\n\t\t\t{\n\t\t\t\tstyle.StyleTrackerTickInterval(delta);\n\t\t\t}\n\t\t\tif (styleObserver != null && ModsConfig.IdeologyActive)\n\t\t\t{\n\t\t\t\tstyleObserver.StyleObserverTickInterval(delta);\n\t\t\t}\n\t\t\tif (surroundings != null && ModsConfig.IdeologyActive)\n\t\t\t{\n\t\t\t\tsurroundings.SurroundingsTrackerTickInterval(delta);\n\t\t\t}\n\t\t\tif (ModsConfig.BiotechActive)\n\t\t\t{\n\t\t\t\tlearning?.LearningTickInterval(delta);\n\t\t\t\tPollutionUtility.PawnPollutionTickInterval(this, delta);\n\t\t\t}\n\t\t\tif (ModsConfig.BiotechActive || ModsConfig.AnomalyActive)\n\t\t\t{\n\t\t\t\tGasUtility.PawnGasEffectsTickInterval(this, delta);\n\t\t\t}\n\t\t\tToxicUtility.PawnToxicTickInterval(this, delta);\n\t\t\tVacuumUtility.PawnVacuumTickInterval(this, delta);\n\t\t\tif (ModsConfig.AnomalyActive && base.Spawned)\n\t\t\t{\n\t\t\t\tmutant?.MutantTrackerTickInterval(delta);\n\t\t\t\tcreepjoiner?.TickInterval(delta);\n\t\t\t}\n\t\t\tif (!IsMutant || !mutant.Def.disableAging)\n\t\t\t{\n\t\t\t\tageTracker.AgeTickInterval(delta);\n\t\t\t}\n\t\t\trecords.RecordsTickInterval(delta);\n\t\t}\n\t\tguilt?.GuiltTrackerTickInterval(delta);\n\t}\n\n\tpublic void ProcessPostTickVisuals(int ticksPassed, CellRect viewRect)\n\t{\n\t\tif (!Suspended && base.Spawned)\n\t\t{\n\t\t\tif (Current.ProgramState != ProgramState.Playing || viewRect.Contains(base.Position))\n\t\t\t{\n\t\t\t\tDrawer.ProcessPostTickVisuals(ticksPassed);\n\t\t\t}\n\t\t\trotationTracker.ProcessPostTickVisuals(ticksPassed);\n\t\t}\n\t}\n\n\tpublic void TickMothballed(int interval)\n\t{\n\t\tif (!Suspended)\n\t\t{\n\t\t\tageTracker.AgeTickMothballed(interval);\n\t\t\trecords.RecordsTickMothballed(interval);\n\t\t}\n\t}\n\n\tpublic void Notify_Teleported(bool endCurrentJob = true, bool resetTweenedPos = true)\n\t{\n\t\tif (resetTweenedPos)\n\t\t{\n\t\t\tDrawer.tweener.Notify_Teleported();\n\t\t}\n\t\tpather.Notify_Teleported_Int();\n\t\tif (endCurrentJob && jobs?.curJob != null)\n\t\t{\n\t\t\tjobs.EndCurrentJob(JobCondition.InterruptForced, jobs.curJob.startTick != GenTicks.TicksGame);\n\t\t}\n\t}\n\n\tpublic virtual SurgicalInspectionOutcome DoSurgicalInspection(Pawn surgeon, out string desc)\n\t{\n\t\tif (!ModsConfig.AnomalyActive)\n\t\t{\n\t\t\tdesc = \"\";\n\t\t\treturn SurgicalInspectionOutcome.Nothing;\n\t\t}\n\t\tbool flag = false;\n\t\tbool flag2 = false;\n\t\tStringBuilder stringBuilder = new StringBuilder();\n\t\tfor (int num = health.hediffSet.hediffs.Count - 1; num >= 0; num--)\n\t\t{\n\t\t\tHediff hediff = health.hediffSet.hediffs[num];\n\t\t\tif (hediff.TryGetComp(out var comp))\n\t\t\t{\n\t\t\t\tif (hediff.Visible)\n\t\t\t\t{\n\t\t\t\t\tcomp.DoSurgicalInspectionVisible(surgeon);\n\t\t\t\t\tif (comp.Props.preventLetterIfPreviouslyDetected)\n\t\t\t\t\t{\n\t\t\t\t\t\tflag2 = true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\tswitch (comp.DoSurgicalInspection(surgeon))\n\t\t\t\t\t{\n\t\t\t\t\tcase SurgicalInspectionOutcome.DetectedNoLetter:\n\t\t\t\t\t\tflag2 = true;\n\t\t\t\t\t\thediff.SetVisible();\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase SurgicalInspectionOutcome.Detected:\n\t\t\t\t\t\tflag = true;\n\t\t\t\t\t\tif (!string.IsNullOrEmpty(comp.Props.surgicalDetectionDesc))\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tstringBuilder.Append(\"\\n\\n\" + comp.Props.surgicalDetectionDesc.Formatted(this.Named(\"PAWN\"), surgeon.Named(\"SURGEON\")));\n\t\t\t\t\t\t}\n\t\t\t\t\t\thediff.SetVisible();\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (IsCreepJoiner && creepjoiner.DoSurgicalInspection(surgeon, stringBuilder))\n\t\t{\n\t\t\tflag = true;\n\t\t}\n\t\tdesc = stringBuilder.ToString();\n\t\tif (flag2)\n\t\t{\n\t\t\treturn SurgicalInspectionOutcome.DetectedNoLetter;\n\t\t}\n\t\tif (!flag)\n\t\t{\n\t\t\treturn SurgicalInspectionOutcome.Nothing;\n\t\t}\n\t\treturn SurgicalInspectionOutcome.Detected;\n\t}\n\n\tpublic void Notify_BecameVisible()\n\t{\n\t\tList allComps = base.AllComps;\n\t\tfor (int i = 0; i < allComps.Count; i++)\n\t\t{\n\t\t\tallComps[i].Notify_BecameVisible();\n\t\t}\n\t}\n\n\tpublic void Notify_BecameInvisible()\n\t{\n\t\tList allComps = base.AllComps;\n\t\tfor (int i = 0; i < allComps.Count; i++)\n\t\t{\n\t\t\tallComps[i].Notify_BecameInvisible();\n\t\t}\n\t}\n\n\tpublic void Notify_ForcedVisible()\n\t{\n\t\tList allComps = base.AllComps;\n\t\tfor (int i = 0; i < allComps.Count; i++)\n\t\t{\n\t\t\tallComps[i].Notify_ForcedVisible();\n\t\t}\n\t}\n\n\tpublic void Notify_PassedToWorld()\n\t{\n\t\tif (((base.Faction == null && RaceProps.Humanlike) || (base.Faction != null && base.Faction.IsPlayer) || base.Faction == Faction.OfAncients || base.Faction == Faction.OfAncientsHostile) && !Dead && Find.WorldPawns.GetSituation(this) == WorldPawnSituation.Free)\n\t\t{\n\t\t\tbool tryMedievalOrBetter = base.Faction != null && (int)base.Faction.def.techLevel >= 3;\n\t\t\tFaction faction;\n\t\t\tif (this.HasExtraHomeFaction() && !this.GetExtraHomeFaction().IsPlayer)\n\t\t\t{\n\t\t\t\tif (base.Faction != this.GetExtraHomeFaction())\n\t\t\t\t{\n\t\t\t\t\tSetFaction(this.GetExtraHomeFaction());\n\t\t\t\t}\n\t\t\t}\n\t\t\telse if (Find.FactionManager.TryGetRandomNonColonyHumanlikeFaction(out faction, tryMedievalOrBetter))\n\t\t\t{\n\t\t\t\tif (base.Faction != faction)\n\t\t\t\t{\n\t\t\t\t\tSetFaction(faction);\n\t\t\t\t}\n\t\t\t}\n\t\t\telse if (Find.FactionManager.TryGetRandomNonColonyHumanlikeFaction(out faction, tryMedievalOrBetter, allowDefeated: true))\n\t\t\t{\n\t\t\t\tif (base.Faction != faction)\n\t\t\t\t{\n\t\t\t\t\tSetFaction(faction);\n\t\t\t\t}\n\t\t\t}\n\t\t\telse if (base.Faction != null)\n\t\t\t{\n\t\t\t\tSetFaction(null);\n\t\t\t}\n\t\t}\n\t\tbecameWorldPawnTickAbs = GenTicks.TicksAbs;\n\t\tif (!this.IsCaravanMember() && !PawnUtility.IsTravelingInTransportPodWorldObject(this))\n\t\t{\n\t\t\tClearMind();\n\t\t}\n\t\trelations?.Notify_PassedToWorld();\n\t\tforeach (ThingComp allComp in base.AllComps)\n\t\t{\n\t\t\tallComp.Notify_PassedToWorld();\n\t\t}\n\t\tdrawer?.renderer?.renderTree?.SetDirty();\n\t}\n\n\tpublic void Notify_AddBedThoughts()\n\t{\n\t\tforeach (ThingComp allComp in base.AllComps)\n\t\t{\n\t\t\tallComp.Notify_AddBedThoughts(this);\n\t\t}\n\t\tIdeo?.Notify_AddBedThoughts(this);\n\t}\n\n\tpublic override void PreApplyDamage(ref DamageInfo dinfo, out bool absorbed)\n\t{\n\t\tfloat num = 1f;\n\t\tif (ModsConfig.BiotechActive && genes != null)\n\t\t{\n\t\t\tnum *= genes.FactorForDamage(dinfo);\n\t\t}\n\t\tnum *= health.FactorForDamage(dinfo);\n\t\tdinfo.SetAmount(dinfo.Amount * num);\n\t\tbase.PreApplyDamage(ref dinfo, out absorbed);\n\t\tif (!absorbed)\n\t\t{\n\t\t\thealth.PreApplyDamage(dinfo, out absorbed);\n\t\t}\n\t}\n\n\tpublic override void PostApplyDamage(DamageInfo dinfo, float totalDamageDealt)\n\t{\n\t\tbase.PostApplyDamage(dinfo, totalDamageDealt);\n\t\tif (dinfo.Def.ExternalViolenceFor(this))\n\t\t{\n\t\t\trecords.AddTo(RecordDefOf.DamageTaken, totalDamageDealt);\n\t\t}\n\t\tif (dinfo.Def.makesBlood && health.CanBleed && !dinfo.InstantPermanentInjury && totalDamageDealt > 0f && Rand.Chance(0.5f))\n\t\t{\n\t\t\thealth.DropBloodFilth();\n\t\t}\n\t\thealth.PostApplyDamage(dinfo, totalDamageDealt);\n\t\tif (Dead)\n\t\t{\n\t\t\treturn;\n\t\t}\n\t\tmindState.Notify_DamageTaken(dinfo);\n\t\tif (ModsConfig.AnomalyActive && dinfo.Instigator is Pawn pawn)\n\t\t{\n\t\t\tList list = (dinfo.Def.isRanged ? pawn.kindDef.rangedAttackInfectionPathways : pawn.kindDef.meleeAttackInfectionPathways);\n\t\t\tif (list != null)\n\t\t\t{\n\t\t\t\tInfectionPathwayUtility.AddInfectionPathways(list, this, pawn);\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic override Thing SplitOff(int count)\n\t{\n\t\tif (count <= 0 || count >= stackCount)\n\t\t{\n\t\t\treturn base.SplitOff(count);\n\t\t}\n\t\tthrow new NotImplementedException(\"Split off on Pawns is not supported (unless we're taking a full stack).\");\n\t}\n\n\tprivate float TicksPerMove(bool diagonal)\n\t{\n\t\tfloat num = this.GetStatValue(StatDefOf.MoveSpeed);\n\t\tif (Downed && health.CanCrawl)\n\t\t{\n\t\t\tnum = this.GetStatValue(StatDefOf.CrawlSpeed);\n\t\t}\n\t\tif (RestraintsUtility.InRestraints(this))\n\t\t{\n\t\t\tnum *= 0.35f;\n\t\t}\n\t\tif (carryTracker?.CarriedThing != null && carryTracker.CarriedThing.def.category == ThingCategory.Pawn)\n\t\t{\n\t\t\tnum *= 0.6f;\n\t\t}\n\t\tfloat num2 = num / 60f;\n\t\tfloat num3;\n\t\tif (num2 == 0f)\n\t\t{\n\t\t\tnum3 = 450f;\n\t\t}\n\t\telse\n\t\t{\n\t\t\tnum3 = 1f / num2;\n\t\t\tif (base.Spawned && !base.Map.roofGrid.Roofed(base.Position))\n\t\t\t{\n\t\t\t\tnum3 /= base.Map.weatherManager.CurMoveSpeedMultiplier;\n\t\t\t}\n\t\t\tif (diagonal)\n\t\t\t{\n\t\t\t\tnum3 *= 1.41421f;\n\t\t\t}\n\t\t}\n\t\tnum3 = Mathf.Clamp(num3, 1f, 450f);\n\t\tif (debugMaxMoveSpeed)\n\t\t{\n\t\t\treturn 1f;\n\t\t}\n\t\treturn num3;\n\t}\n\n\tprivate void DoKillSideEffects(DamageInfo? dinfo, Hediff exactCulprit, bool spawned)\n\t{\n\t\tif (Current.ProgramState == ProgramState.Playing)\n\t\t{\n\t\t\tFind.Storyteller.Notify_PawnEvent(this, AdaptationEvent.Died);\n\t\t}\n\t\tif (IsColonist && !wasLeftBehindStartingPawn)\n\t\t{\n\t\t\tFind.StoryWatcher.statsRecord.Notify_ColonistKilled();\n\t\t}\n\t\tif (spawned && ((dinfo.HasValue && dinfo.Value.Def.ExternalViolenceFor(this)) || (exactCulprit?.sourceDef != null && exactCulprit.sourceDef.IsWeapon)))\n\t\t{\n\t\t\tLifeStageUtility.PlayNearestLifestageSound(this, (LifeStageAge lifeStage) => lifeStage.soundDeath, (GeneDef gene) => gene.soundDeath, (MutantDef mutantDef) => mutantDef.soundDeath);\n\t\t}\n\t\tif (dinfo?.Instigator != null && dinfo.Value.Instigator is Pawn pawn)\n\t\t{\n\t\t\tRecordsUtility.Notify_PawnKilled(this, pawn);\n\t\t\tpawn.equipment?.Notify_KilledPawn();\n\t\t\tif (RaceProps.Humanlike && pawn.needs != null && pawn.needs.TryGetNeed(out Need_KillThirst need))\n\t\t\t{\n\t\t\t\tneed.Notify_KilledPawn(dinfo);\n\t\t\t}\n\t\t\tif (pawn.health.hediffSet != null)\n\t\t\t{\n\t\t\t\tfor (int i = 0; i < pawn.health.hediffSet.hediffs.Count; i++)\n\t\t\t\t{\n\t\t\t\t\tpawn.health.hediffSet.hediffs[i].Notify_KilledPawn(this, dinfo);\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (HistoryEventUtility.IsKillingInnocentAnimal(pawn, this))\n\t\t\t{\n\t\t\t\tFind.HistoryEventsManager.RecordEvent(new HistoryEvent(HistoryEventDefOf.KilledInnocentAnimal, pawn.Named(HistoryEventArgsNames.Doer), this.Named(HistoryEventArgsNames.Victim)));\n\t\t\t}\n\t\t}\n\t\tTaleUtility.Notify_PawnDied(this, dinfo);\n\t\tif (spawned)\n\t\t{\n\t\t\tFind.BattleLog.Add(new BattleLogEntry_StateTransition(this, RaceProps.DeathActionWorker.DeathRules, dinfo?.Instigator as Pawn, exactCulprit, dinfo?.HitPart));\n\t\t}\n\t}\n\n\tprivate void PreDeathPawnModifications(DamageInfo? dinfo, Map map)\n\t{\n\t\thealth.surgeryBills.Clear();\n\t\tfor (int i = 0; i < health.hediffSet.hediffs.Count; i++)\n\t\t{\n\t\t\thealth.hediffSet.hediffs[i].Notify_PawnKilled();\n\t\t}\n\t\tapparel?.Notify_PawnKilled(dinfo);\n\t\trelations?.Notify_PawnKilled(dinfo, map);\n\t\tconnections?.Notify_PawnKilled();\n\t\tmeleeVerbs.Notify_PawnKilled();\n\t}\n\n\tprivate void DropBeforeDying(DamageInfo? dinfo, ref Map map, ref bool spawned)\n\t{\n\t\tif (base.ParentHolder is Pawn_CarryTracker pawn_CarryTracker && holdingOwner.TryDrop(this, pawn_CarryTracker.pawn.Position, pawn_CarryTracker.pawn.Map, ThingPlaceMode.Near, out var _))\n\t\t{\n\t\t\tmap = pawn_CarryTracker.pawn.Map;\n\t\t\tspawned = true;\n\t\t}\n\t\tPawnDiedOrDownedThoughtsUtility.RemoveLostThoughts(this);\n\t\tPawnDiedOrDownedThoughtsUtility.RemoveResuedRelativeThought(this);\n\t\tPawnDiedOrDownedThoughtsUtility.TryGiveThoughts(this, dinfo, PawnDiedOrDownedThoughtsKind.Died);\n\t\tif (IsAnimal)\n\t\t{\n\t\t\tPawnDiedOrDownedThoughtsUtility.GiveVeneratedAnimalDiedThoughts(this, map);\n\t\t}\n\t}\n\n\tprivate void RemoveFromHoldingContainer(ref Map map, ref bool spawned, DamageInfo? dinfo)\n\t{\n\t\tif (ModsConfig.AnomalyActive && base.ParentHolder is Building_HoldingPlatform { Spawned: not false } building_HoldingPlatform)\n\t\t{\n\t\t\tbuilding_HoldingPlatform.Notify_PawnDied(this, dinfo);\n\t\t\tspawned = true;\n\t\t\tmap = building_HoldingPlatform.Map;\n\t\t}\n\t\tif (base.ParentHolder is CompTransporter compTransporter)\n\t\t{\n\t\t\tcompTransporter.innerContainer.TryDrop(this, ThingPlaceMode.Near, out var _);\n\t\t}\n\t}\n\n\tpublic override void Kill(DamageInfo? dinfo, Hediff exactCulprit = null)\n\t{\n\t\tint num = 0;\n\t\thealth.isBeingKilled = true;\n\t\ttry\n\t\t{\n\t\t\tnum = 1;\n\t\t\tIntVec3 positionHeld = base.PositionHeld;\n\t\t\tMap map = base.Map;\n\t\t\tMap map2 = (prevMap = base.MapHeld);\n\t\t\tLord prevLord = this.GetLord();\n\t\t\tbool spawned = base.Spawned;\n\t\t\tbool spawnedOrAnyParentSpawned = base.SpawnedOrAnyParentSpawned;\n\t\t\tbool wasWorldPawn = this.IsWorldPawn();\n\t\t\tbool? flag = guilt?.IsGuilty;\n\t\t\tCaravan caravan = this.GetCaravan();\n\t\t\tbool isShambler = IsShambler;\n\t\t\tBuilding_Grave assignedGrave = null;\n\t\t\tif (ownership != null)\n\t\t\t{\n\t\t\t\tassignedGrave = ownership.AssignedGrave;\n\t\t\t}\n\t\t\tBuilding_Bed currentBed = this.CurrentBed();\n\t\t\tRemoveFromHoldingContainer(ref map, ref spawned, dinfo);\n\t\t\tThingOwner thingOwner = null;\n\t\t\tbool inContainerEnclosed = InContainerEnclosed;\n\t\t\tif (inContainerEnclosed)\n\t\t\t{\n\t\t\t\tthingOwner = holdingOwner;\n\t\t\t\tthingOwner.Remove(this);\n\t\t\t}\n\t\t\tbool flag2 = false;\n\t\t\tbool flag3 = false;\n\t\t\tbool flag4 = false;\n\t\t\tif (Current.ProgramState == ProgramState.Playing && map != null)\n\t\t\t{\n\t\t\t\tflag2 = map.designationManager.DesignationOn(this, DesignationDefOf.Hunt) != null;\n\t\t\t\tflag3 = this.ShouldBeSlaughtered();\n\t\t\t\tforeach (Lord lord2 in map.lordManager.lords)\n\t\t\t\t{\n\t\t\t\t\tif (lord2.LordJob is LordJob_Ritual lordJob_Ritual && lordJob_Ritual.pawnsDeathIgnored.Contains(this))\n\t\t\t\t\t{\n\t\t\t\t\t\tflag4 = true;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tbool flag5 = PawnUtility.ShouldSendNotificationAbout(this) && (!(flag3 || flag4) || !dinfo.HasValue || dinfo.Value.Def != DamageDefOf.ExecutionCut) && !ForceNoDeathNotification;\n\t\t\tnum = 2;\n\t\t\tDoKillSideEffects(dinfo, exactCulprit, spawned);\n\t\t\tnum = 3;\n\t\t\tPreDeathPawnModifications(dinfo, map);\n\t\t\tnum = 4;\n\t\t\tDropBeforeDying(dinfo, ref map, ref spawned);\n\t\t\tnum = 5;\n\t\t\thealth.SetDead();\n\t\t\tif (health.deflectionEffecter != null)\n\t\t\t{\n\t\t\t\thealth.deflectionEffecter.Cleanup();\n\t\t\t\thealth.deflectionEffecter = null;\n\t\t\t}\n\t\t\tif (health.woundedEffecter != null)\n\t\t\t{\n\t\t\t\thealth.woundedEffecter.Cleanup();\n\t\t\t\thealth.woundedEffecter = null;\n\t\t\t}\n\t\t\tcaravan?.Notify_MemberDied(this);\n\t\t\tLord lord = this.GetLord();\n\t\t\tlord?.Notify_PawnLost(this, PawnLostCondition.Killed, dinfo);\n\t\t\tif (ModsConfig.AnomalyActive)\n\t\t\t{\n\t\t\t\tFind.Anomaly.Notify_PawnDied(this);\n\t\t\t}\n\t\t\tMeditationFocusTypeAvailabilityCache.Notify_PawnDiedOrDestroyed(this);\n\t\t\tbool num2 = DeSpawnOrDeselect();\n\t\t\tif (royalty != null)\n\t\t\t{\n\t\t\t\troyalty.Notify_PawnKilled();\n\t\t\t}\n\t\t\tCorpse corpse = null;\n\t\t\tif (!PawnGenerator.IsPawnBeingGeneratedAndNotAllowsDead(this) && RaceProps.corpseDef != null)\n\t\t\t{\n\t\t\t\tif (inContainerEnclosed)\n\t\t\t\t{\n\t\t\t\t\tcorpse = MakeCorpse(assignedGrave, currentBed);\n\t\t\t\t\tif (!thingOwner.TryAdd(corpse))\n\t\t\t\t\t{\n\t\t\t\t\t\tcorpse.Destroy();\n\t\t\t\t\t\tcorpse = null;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse if (spawnedOrAnyParentSpawned)\n\t\t\t\t{\n\t\t\t\t\tif (holdingOwner != null)\n\t\t\t\t\t{\n\t\t\t\t\t\tholdingOwner.Remove(this);\n\t\t\t\t\t}\n\t\t\t\t\tcorpse = MakeCorpse(assignedGrave, currentBed);\n\t\t\t\t\tif (GenPlace.TryPlaceThing(corpse, positionHeld, map2, ThingPlaceMode.Direct) || GenPlace.TryPlaceThing(corpse, positionHeld, map2, ThingPlaceMode.Near))\n\t\t\t\t\t{\n\t\t\t\t\t\tcorpse.Rotation = base.Rotation;\n\t\t\t\t\t\tif (HuntJobUtility.WasKilledByHunter(this, dinfo))\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t((Pawn)dinfo.Value.Instigator).Reserve(corpse, ((Pawn)dinfo.Value.Instigator).CurJob);\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse if (!flag2 && !flag3)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tcorpse.SetForbiddenIfOutsideHomeArea();\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (this.GetAttachment(ThingDefOf.Fire) is Fire fire)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tFireUtility.TryStartFireIn(corpse.Position, corpse.Map, fire.CurrentSize(), fire.instigator);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\telse\n\t\t\t\t\t{\n\t\t\t\t\t\tcorpse.Destroy();\n\t\t\t\t\t\tcorpse = null;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse if (caravan != null && caravan.Spawned)\n\t\t\t\t{\n\t\t\t\t\tcorpse = MakeCorpse(assignedGrave, currentBed);\n\t\t\t\t\tcaravan.AddPawnOrItem(corpse, addCarriedPawnToWorldPawnsIfAny: true);\n\t\t\t\t}\n\t\t\t\telse if (holdingOwner != null || this.IsWorldPawn())\n\t\t\t\t{\n\t\t\t\t\tCorpse.PostCorpseDestroy(this);\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\tcorpse = MakeCorpse(assignedGrave, currentBed);\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (spawned)\n\t\t\t{\n\t\t\t\tDropAndForbidEverything();\n\t\t\t}\n\t\t\tif (spawned)\n\t\t\t{\n\t\t\t\tGenLeaving.DoLeavingsFor(this, map, DestroyMode.KillFinalize);\n\t\t\t}\n\t\t\tif (corpse != null)\n\t\t\t{\n\t\t\t\tHediff firstHediffOfDef = health.hediffSet.GetFirstHediffOfDef(HediffDefOf.ToxicBuildup);\n\t\t\t\tHediff firstHediffOfDef2 = health.hediffSet.GetFirstHediffOfDef(HediffDefOf.Scaria);\n\t\t\t\tCompRottable comp = corpse.GetComp();\n\t\t\t\tif (comp != null && ((firstHediffOfDef != null && Rand.Value < firstHediffOfDef.Severity) || (firstHediffOfDef2 != null && Rand.Chance(Find.Storyteller.difficulty.scariaRotChance))))\n\t\t\t\t{\n\t\t\t\t\tcomp.RotImmediately();\n\t\t\t\t}\n\t\t\t\tif (addCorpseToLord)\n\t\t\t\t{\n\t\t\t\t\tlord?.AddCorpse(corpse);\n\t\t\t\t}\n\t\t\t}\n\t\t\tDrawer.renderer.SetAllGraphicsDirty();\n\t\t\tif (ModsConfig.AnomalyActive && kindDef == PawnKindDefOf.Revenant)\n\t\t\t{\n\t\t\t\tRevenantUtility.OnRevenantDeath(this, map);\n\t\t\t}\n\t\t\tduplicate?.Notify_PawnKilled();\n\t\t\tDrawer.renderer.SetAnimation(null);\n\t\t\tif (!base.Destroyed)\n\t\t\t{\n\t\t\t\tbase.Kill(dinfo, exactCulprit);\n\t\t\t}\n\t\t\tPawnComponentsUtility.RemoveComponentsOnKilled(this);\n\t\t\thealth.hediffSet.DirtyCache();\n\t\t\tPortraitsCache.SetDirty(this);\n\t\t\tGlobalTextureAtlasManager.TryMarkPawnFrameSetDirty(this);\n\t\t\tif (num2 && corpse != null && !corpse.Destroyed)\n\t\t\t{\n\t\t\t\tFind.Selector.Select(corpse, playSound: false, forceDesignatorDeselect: false);\n\t\t\t}\n\t\t\tnum = 6;\n\t\t\thealth.hediffSet.Notify_PawnDied(dinfo, exactCulprit);\n\t\t\tif (IsMutant)\n\t\t\t{\n\t\t\t\tmutant.Notify_Died(corpse, dinfo, exactCulprit);\n\t\t\t}\n\t\t\tgenes?.Notify_PawnDied(dinfo, exactCulprit);\n\t\t\tHomeFaction?.Notify_MemberDied(this, dinfo, wasWorldPawn, flag == true, map2);\n\t\t\tif (corpse != null)\n\t\t\t{\n\t\t\t\tif (RaceProps.DeathActionWorker != null && spawned && !isShambler)\n\t\t\t\t{\n\t\t\t\t\tRaceProps.DeathActionWorker.PawnDied(corpse, prevLord);\n\t\t\t\t}\n\t\t\t\tif (Find.Scenario != null)\n\t\t\t\t{\n\t\t\t\t\tFind.Scenario.Notify_PawnDied(corpse);\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (base.Faction != null && base.Faction.IsPlayer)\n\t\t\t{\n\t\t\t\tBillUtility.Notify_ColonistUnavailable(this);\n\t\t\t}\n\t\t\tif (spawnedOrAnyParentSpawned)\n\t\t\t{\n\t\t\t\tGenHostility.Notify_PawnLostForTutor(this, map2);\n\t\t\t}\n\t\t\tif (base.Faction != null && base.Faction.IsPlayer && Current.ProgramState == ProgramState.Playing)\n\t\t\t{\n\t\t\t\tFind.ColonistBar.MarkColonistsDirty();\n\t\t\t}\n\t\t\tpsychicEntropy?.Notify_PawnDied();\n\t\t\ttry\n\t\t\t{\n\t\t\t\tIdeo?.Notify_MemberDied(this);\n\t\t\t\tIdeo?.Notify_MemberLost(this, map);\n\t\t\t}\n\t\t\tcatch (Exception ex)\n\t\t\t{\n\t\t\t\tLog.Error(\"Error while notifying ideo of pawn death: \" + ex);\n\t\t\t}\n\t\t\tif (IsMutant && mutant.Def.clearMutantStatusOnDeath)\n\t\t\t{\n\t\t\t\tif (mutant.HasTurned)\n\t\t\t\t{\n\t\t\t\t\tmutant.Revert(beingKilled: true);\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\tmutant = null;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (flag5)\n\t\t\t{\n\t\t\t\thealth.NotifyPlayerOfKilled(dinfo, exactCulprit, caravan);\n\t\t\t}\n\t\t\tFind.QuestManager.Notify_PawnKilled(this, dinfo);\n\t\t\tFind.FactionManager.Notify_PawnKilled(this);\n\t\t\tFind.IdeoManager.Notify_PawnKilled(this);\n\t\t\tif (ModsConfig.BiotechActive && MechanitorUtility.IsMechanitor(this))\n\t\t\t{\n\t\t\t\tFind.History.Notify_MechanitorDied();\n\t\t\t}\n\t\t\tNotify_DisabledWorkTypesChanged();\n\t\t\tFind.BossgroupManager.Notify_PawnKilled(this);\n\t\t\tif (IsCreepJoiner)\n\t\t\t{\n\t\t\t\tcreepjoiner.Notify_CreepJoinerKilled();\n\t\t\t}\n\t\t\tprevMap = null;\n\t\t\thealth.isBeingKilled = false;\n\t\t}\n\t\tcatch (Exception arg)\n\t\t{\n\t\t\tLog.Error($\"Error while killing {this.ToStringSafe()} during phase {num}: {arg}\");\n\t\t}\n\t}\n\n\tpublic override void Destroy(DestroyMode mode = DestroyMode.Vanish)\n\t{\n\t\tif (mode != 0 && mode != DestroyMode.KillFinalize)\n\t\t{\n\t\t\tLog.Error(\"Destroyed pawn \" + this?.ToString() + \" with unsupported mode \" + mode.ToString() + \".\");\n\t\t}\n\t\t_ = base.MapHeld;\n\t\tbase.Destroy(mode);\n\t\tFind.WorldPawns.Notify_PawnDestroyed(this);\n\t\tif (ownership != null)\n\t\t{\n\t\t\tBuilding_Grave assignedGrave = ownership.AssignedGrave;\n\t\t\townership.UnclaimAll();\n\t\t\tif (mode == DestroyMode.KillFinalize)\n\t\t\t{\n\t\t\t\tassignedGrave?.CompAssignableToPawn.TryAssignPawn(this);\n\t\t\t}\n\t\t}\n\t\tClearMind(ifLayingKeepLaying: false, clearInspiration: true);\n\t\tLord lord = this.GetLord();\n\t\tif (lord != null)\n\t\t{\n\t\t\tPawnLostCondition cond = ((mode != DestroyMode.KillFinalize) ? PawnLostCondition.Vanished : PawnLostCondition.Killed);\n\t\t\tlord.Notify_PawnLost(this, cond);\n\t\t}\n\t\tif (Current.ProgramState == ProgramState.Playing)\n\t\t{\n\t\t\tFind.GameEnder.CheckOrUpdateGameOver();\n\t\t\tFind.TaleManager.Notify_PawnDestroyed(this);\n\t\t}\n\t\tforeach (Pawn item in PawnsFinder.AllMapsWorldAndTemporary_Alive.Where((Pawn p) => p.playerSettings != null && p.playerSettings.Master == this))\n\t\t{\n\t\t\titem.playerSettings.Master = null;\n\t\t}\n\t\tequipment?.Notify_PawnDied();\n\t\tif (ModsConfig.AnomalyActive && Find.Anomaly != null)\n\t\t{\n\t\t\tFind.Anomaly.Notify_PawnDied(this);\n\t\t}\n\t\tif (mode != DestroyMode.KillFinalize)\n\t\t{\n\t\t\tequipment?.DestroyAllEquipment();\n\t\t\tinventory?.DestroyAll();\n\t\t\tapparel?.DestroyAll();\n\t\t}\n\t\tWorldPawns worldPawns = Find.WorldPawns;\n\t\tif (!worldPawns.IsBeingDiscarded(this) && !worldPawns.Contains(this))\n\t\t{\n\t\t\tworldPawns.PassToWorld(this);\n\t\t}\n\t\tif (base.Faction.IsPlayerSafe())\n\t\t{\n\t\t\tIdeo?.RecacheColonistBelieverCount();\n\t\t}\n\t\trelations?.Notify_PawnDestroyed(mode);\n\t\tMeditationFocusTypeAvailabilityCache.Notify_PawnDiedOrDestroyed(this);\n\t\tDrawer?.renderer?.renderTree?.SetDirty();\n\t}\n\n\tpublic override void DeSpawn(DestroyMode mode = DestroyMode.Vanish)\n\t{\n\t\tMap map = base.Map;\n\t\tif (jobs?.curJob != null)\n\t\t{\n\t\t\tjobs.StopAll();\n\t\t}\n\t\tbase.DeSpawn(mode);\n\t\tpather?.StopDead();\n\t\troping?.Notify_DeSpawned();\n\t\tmindState.droppedWeapon = null;\n\t\tneeds?.mood?.thoughts.situational.Notify_SituationalThoughtsDirty();\n\t\tmeleeVerbs?.Notify_PawnDespawned();\n\t\tmechanitor?.Notify_DeSpawned(mode);\n\t\tMeditationFocusTypeAvailabilityCache.Notify_PawnDiedOrDestroyed(this);\n\t\tClearAllReservations(releaseDestinationsOnlyIfObsolete: false);\n\t\tif (map != null)\n\t\t{\n\t\t\tmap.mapPawns.DeRegisterPawn(this);\n\t\t\tmap.autoSlaughterManager.Notify_PawnDespawned();\n\t\t}\n\t\tPawnComponentsUtility.RemoveComponentsOnDespawned(this);\n\t\tif (sustainerAmbient != null)\n\t\t{\n\t\t\tsustainerAmbient.End();\n\t\t\tsustainerAmbient = null;\n\t\t}\n\t\tif (sustainerMoving != null)\n\t\t{\n\t\t\tsustainerMoving.End();\n\t\t\tsustainerMoving = null;\n\t\t}\n\t}\n\n\tpublic override void Discard(bool silentlyRemoveReferences = false)\n\t{\n\t\tif (Find.WorldPawns.Contains(this))\n\t\t{\n\t\t\tLog.Warning(\"Tried to discard a world pawn \" + this?.ToString() + \".\");\n\t\t\treturn;\n\t\t}\n\t\tbase.Discard(silentlyRemoveReferences);\n\t\tif (relations != null)\n\t\t{\n\t\t\tif (RaceProps.Humanlike && relations.Children.Count((Pawn x) => !x.markedForDiscard) > 1)\n\t\t\t{\n\t\t\t\tforeach (Pawn child in relations.Children)\n\t\t\t\t{\n\t\t\t\t\tif (!child.markedForDiscard)\n\t\t\t\t\t{\n\t\t\t\t\t\tDirectPawnRelation directRelation = child.relations.GetDirectRelation(PawnRelationDefOf.Parent, this);\n\t\t\t\t\t\tchild.relations.ElevateToVirtualRelation(directRelation);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\trelations.ClearAllRelations();\n\t\t}\n\t\tif (pather != null)\n\t\t{\n\t\t\tpather.DisposeAndClearCurPathRequest();\n\t\t\tpather.DisposeAndClearCurPath();\n\t\t}\n\t\tif (Current.ProgramState == ProgramState.Playing)\n\t\t{\n\t\t\tFind.PlayLog.Notify_PawnDiscarded(this, silentlyRemoveReferences);\n\t\t\tFind.BattleLog.Notify_PawnDiscarded(this, silentlyRemoveReferences);\n\t\t\tFind.TaleManager.Notify_PawnDiscarded(this, silentlyRemoveReferences);\n\t\t\tFind.QuestManager.Notify_PawnDiscarded(this);\n\t\t}\n\t\tforeach (Pawn item in PawnsFinder.AllMapsWorldAndTemporary_Alive)\n\t\t{\n\t\t\titem.needs?.mood?.thoughts.memories.Notify_PawnDiscarded(this);\n\t\t}\n\t\tCorpse.PostCorpseDestroy(this, discarded: true);\n\t}\n\n\tpublic Corpse MakeCorpse(Building_Grave assignedGrave, Building_Bed currentBed)\n\t{\n\t\treturn MakeCorpse(assignedGrave, currentBed != null, currentBed?.Rotation.AsAngle ?? 0f);\n\t}\n\n\tpublic Corpse MakeCorpse(Building_Grave assignedGrave, bool inBed, float bedRotation)\n\t{\n\t\tif (holdingOwner != null)\n\t\t{\n\t\t\tLog.Warning(\"We can't make corpse because the pawn is in a ThingOwner. Remove him from the container first. This should have been already handled before calling this method. holder=\" + base.ParentHolder);\n\t\t\treturn null;\n\t\t}\n\t\tif (RaceProps.corpseDef == null)\n\t\t{\n\t\t\treturn null;\n\t\t}\n\t\tCorpse corpse = (Corpse)ThingMaker.MakeThing(RaceProps.corpseDef);\n\t\tcorpse.InnerPawn = this;\n\t\tif (assignedGrave != null)\n\t\t{\n\t\t\tcorpse.InnerPawn.ownership.ClaimGrave(assignedGrave);\n\t\t}\n\t\tif (inBed)\n\t\t{\n\t\t\tcorpse.InnerPawn.Drawer.renderer.wiggler.SetToCustomRotation(bedRotation + 180f);\n\t\t}\n\t\treturn corpse;\n\t}\n\n\tpublic void ExitMap(bool allowedToJoinOrCreateCaravan, Rot4 exitDir)\n\t{\n\t\tif (this.IsWorldPawn())\n\t\t{\n\t\t\tLog.Warning(\"Called ExitMap() on world pawn \" + this);\n\t\t\treturn;\n\t\t}\n\t\tIdeo?.Notify_MemberLost(this, base.Map);\n\t\tif (allowedToJoinOrCreateCaravan && CaravanExitMapUtility.CanExitMapAndJoinOrCreateCaravanNow(this))\n\t\t{\n\t\t\tCaravanExitMapUtility.ExitMapAndJoinOrCreateCaravan(this, exitDir);\n\t\t\treturn;\n\t\t}\n\t\tthis.GetLord()?.Notify_PawnLost(this, PawnLostCondition.ExitedMap);\n\t\tif (carryTracker?.CarriedThing != null)\n\t\t{\n\t\t\tPawn pawn = carryTracker.CarriedThing as Pawn;\n\t\t\tif (pawn != null)\n\t\t\t{\n\t\t\t\tif (base.Faction != null && base.Faction != pawn.Faction)\n\t\t\t\t{\n\t\t\t\t\tbase.Faction.kidnapped.Kidnap(pawn, this);\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\tif (!teleporting)\n\t\t\t\t\t{\n\t\t\t\t\t\tcarryTracker.innerContainer.Remove(pawn);\n\t\t\t\t\t}\n\t\t\t\t\tpawn.teleporting = teleporting;\n\t\t\t\t\tpawn.ExitMap(allowedToJoinOrCreateCaravan: false, exitDir);\n\t\t\t\t\tpawn.teleporting = false;\n\t\t\t\t}\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tcarryTracker.CarriedThing.Destroy();\n\t\t\t}\n\t\t\tif (!teleporting || pawn == null)\n\t\t\t{\n\t\t\t\tcarryTracker.innerContainer.Clear();\n\t\t\t}\n\t\t}\n\t\tbool flag = ThingOwnerUtility.AnyParentIs(this) || ThingOwnerUtility.AnyParentIs(this);\n\t\tbool flag2 = this.IsCaravanMember() || teleporting || flag;\n\t\tbool flag3 = !flag2 || (!IsPrisoner && !IsSlave && !flag) || (guest != null && guest.Released);\n\t\tbool flag4 = flag3 && (IsPrisoner || IsSlave) && guest != null && guest.Released;\n\t\tbool flag5 = flag4 || (guest != null && guest.HostFaction == Faction.OfPlayer);\n\t\tif (flag3 && !flag2)\n\t\t{\n\t\t\tforeach (Thing equippedWornOrInventoryThing in EquippedWornOrInventoryThings)\n\t\t\t{\n\t\t\t\tequippedWornOrInventoryThing.GetStyleSourcePrecept()?.Notify_ThingLost(equippedWornOrInventoryThing);\n\t\t\t}\n\t\t}\n\t\tbase.Faction?.Notify_MemberExitedMap(this, flag4);\n\t\tif (base.Faction == Faction.OfPlayer && IsSlave && SlaveFaction != null && SlaveFaction != Faction.OfPlayer && guest.Released)\n\t\t{\n\t\t\tSlaveFaction.Notify_MemberExitedMap(this, flag4);\n\t\t}\n\t\tif (ownership != null && flag5)\n\t\t{\n\t\t\townership.UnclaimAll();\n\t\t}\n\t\tif (guest != null)\n\t\t{\n\t\t\tbool isPrisonerOfColony = IsPrisonerOfColony;\n\t\t\tif (flag4)\n\t\t\t{\n\t\t\t\tguest.SetGuestStatus(null);\n\t\t\t}\n\t\t\tif (isPrisonerOfColony)\n\t\t\t{\n\t\t\t\tguest.SetNoInteraction();\n\t\t\t\tif (!guest.Released && flag3)\n\t\t\t\t{\n\t\t\t\t\tGuestUtility.Notify_PrisonerEscaped(this);\n\t\t\t\t}\n\t\t\t}\n\t\t\tguest.Released = false;\n\t\t}\n\t\tDeSpawnOrDeselect();\n\t\tinventory.UnloadEverything = false;\n\t\tif (flag3)\n\t\t{\n\t\t\tClearMind();\n\t\t}\n\t\trelations?.Notify_ExitedMap();\n\t\tFind.WorldPawns.PassToWorld(this);\n\t\tQuestUtility.SendQuestTargetSignals(questTags, \"LeftMap\", this.Named(\"SUBJECT\"));\n\t\tFind.FactionManager.Notify_PawnLeftMap(this);\n\t\tFind.IdeoManager.Notify_PawnLeftMap(this);\n\t}\n\n\tpublic override void PreTraded(TradeAction action, Pawn playerNegotiator, ITrader trader)\n\t{\n\t\tbase.PreTraded(action, playerNegotiator, trader);\n\t\tif (base.SpawnedOrAnyParentSpawned)\n\t\t{\n\t\t\tDropAndForbidEverything();\n\t\t}\n\t\townership?.UnclaimAll();\n\t\tif (action == TradeAction.PlayerSells)\n\t\t{\n\t\t\tFaction faction = this.GetExtraHomeFaction() ?? this.GetExtraHostFaction();\n\t\t\tif (faction != null && faction != Faction.OfPlayer)\n\t\t\t{\n\t\t\t\tFaction.OfPlayer.TryAffectGoodwillWith(faction, Faction.OfPlayer.GoodwillToMakeHostile(faction), canSendMessage: true, canSendHostilityLetter: true, HistoryEventDefOf.MemberSold, this);\n\t\t\t}\n\t\t}\n\t\tguest?.SetGuestStatus(null);\n\t\tswitch (action)\n\t\t{\n\t\tcase TradeAction.PlayerBuys:\n\t\t\tif (guest != null && guest.joinStatus == JoinStatus.JoinAsSlave)\n\t\t\t{\n\t\t\t\tguest.SetGuestStatus(Faction.OfPlayer, RimWorld.GuestStatus.Slave);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tneeds.mood?.thoughts.memories.TryGainMemory(ThoughtDefOf.FreedFromSlavery);\n\t\t\tSetFaction(Faction.OfPlayer);\n\t\t\tbreak;\n\t\tcase TradeAction.PlayerSells:\n\t\t\tif (RaceProps.Humanlike)\n\t\t\t{\n\t\t\t\tTaleRecorder.RecordTale(TaleDefOf.SoldPrisoner, playerNegotiator, this, trader);\n\t\t\t}\n\t\t\tif (base.Faction != null)\n\t\t\t{\n\t\t\t\tSetFaction(null);\n\t\t\t}\n\t\t\tif (RaceProps.IsFlesh)\n\t\t\t{\n\t\t\t\trelations.Notify_PawnSold(playerNegotiator);\n\t\t\t}\n\t\t\tbreak;\n\t\t}\n\t\tClearMind();\n\t}\n\n\tpublic void PreKidnapped(Pawn kidnapper)\n\t{\n\t\tFind.Storyteller.Notify_PawnEvent(this, AdaptationEvent.Kidnapped);\n\t\tif (IsColonist && kidnapper != null)\n\t\t{\n\t\t\tTaleRecorder.RecordTale(TaleDefOf.KidnappedColonist, kidnapper, this);\n\t\t}\n\t\townership?.UnclaimAll();\n\t\tif (guest != null && !guest.IsSlave)\n\t\t{\n\t\t\tguest.SetGuestStatus(null);\n\t\t}\n\t\tif (RaceProps.IsFlesh)\n\t\t{\n\t\t\trelations.Notify_PawnKidnapped();\n\t\t}\n\t\tClearMind();\n\t}\n\n\tpublic override AcceptanceReport ClaimableBy(Faction by)\n\t{\n\t\treturn false;\n\t}\n\n\tpublic override bool AdoptableBy(Faction by, StringBuilder reason = null)\n\t{\n\t\tif (base.Faction == by)\n\t\t{\n\t\t\treturn false;\n\t\t}\n\t\tPawn_AgeTracker pawn_AgeTracker = ageTracker;\n\t\tif (pawn_AgeTracker != null && pawn_AgeTracker.CurLifeStage?.claimable == false)\n\t\t{\n\t\t\treturn false;\n\t\t}\n\t\tif (FactionPreventsClaimingOrAdopting(base.Faction, forClaim: false, out var reason2))\n\t\t{\n\t\t\treason?.Append(reason2);\n\t\t\treturn false;\n\t\t}\n\t\treturn true;\n\t}\n\n\tpublic override void SetFaction(Faction newFaction, Pawn recruiter = null)\n\t{\n\t\tif (newFaction == base.Faction)\n\t\t{\n\t\t\tLog.Warning(\"Used SetFaction to change \" + this.ToStringSafe() + \" to same faction \" + newFaction.ToStringSafe());\n\t\t\treturn;\n\t\t}\n\t\tFaction faction = base.Faction;\n\t\tguest?.SetGuestStatus(null);\n\t\tif (base.Spawned)\n\t\t{\n\t\t\tbase.Map.mapPawns.DeRegisterPawn(this);\n\t\t\tbase.Map.pawnDestinationReservationManager.ReleaseAllClaimedBy(this);\n\t\t\tbase.Map.designationManager.RemoveAllDesignationsOn(this);\n\t\t\tbase.Map.autoSlaughterManager.Notify_PawnChangedFaction();\n\t\t}\n\t\tif ((newFaction == Faction.OfPlayer || base.Faction == Faction.OfPlayer) && Current.ProgramState == ProgramState.Playing)\n\t\t{\n\t\t\tFind.ColonistBar.MarkColonistsDirty();\n\t\t}\n\t\tthis.GetLord()?.Notify_PawnLost(this, PawnLostCondition.ChangedFaction);\n\t\tif (PawnUtility.IsFactionLeader(this))\n\t\t{\n\t\t\tFaction factionLeaderFaction = PawnUtility.GetFactionLeaderFaction(this);\n\t\t\tif (newFaction != factionLeaderFaction && !this.HasExtraHomeFaction(factionLeaderFaction) && !this.HasExtraMiniFaction(factionLeaderFaction))\n\t\t\t{\n\t\t\t\tfactionLeaderFaction.Notify_LeaderLost();\n\t\t\t}\n\t\t}\n\t\tif (newFaction == Faction.OfPlayer && RaceProps.Humanlike && !this.IsQuestLodger())\n\t\t{\n\t\t\tChangeKind(newFaction.def.basicMemberKind);\n\t\t}\n\t\tbase.SetFaction(newFaction);\n\t\tPawnComponentsUtility.AddAndRemoveDynamicComponents(this);\n\t\tif (base.Faction != null && base.Faction.IsPlayer)\n\t\t{\n\t\t\tworkSettings?.EnableAndInitialize();\n\t\t\tFind.StoryWatcher.watcherPopAdaptation.Notify_PawnEvent(this, PopAdaptationEvent.GainedColonist);\n\t\t}\n\t\tif (Drafted)\n\t\t{\n\t\t\tdrafter.Drafted = false;\n\t\t}\n\t\tReachabilityUtility.ClearCacheFor(this);\n\t\thealth.surgeryBills.Clear();\n\t\tif (base.Spawned)\n\t\t{\n\t\t\tbase.Map.mapPawns.RegisterPawn(this);\n\t\t}\n\t\tGenerateNecessaryName();\n\t\tplayerSettings?.ResetMedicalCare();\n\t\tClearMind(ifLayingKeepLaying: true);\n\t\tif (!Dead && needs.mood != null)\n\t\t{\n\t\t\tneeds.mood.thoughts.situational.Notify_SituationalThoughtsDirty();\n\t\t}\n\t\tif (base.Spawned)\n\t\t{\n\t\t\tbase.Map.attackTargetsCache.UpdateTarget(this);\n\t\t}\n\t\tFind.GameEnder.CheckOrUpdateGameOver();\n\t\tAddictionUtility.CheckDrugAddictionTeachOpportunity(this);\n\t\tneeds?.AddOrRemoveNeedsAsAppropriate();\n\t\tplayerSettings?.Notify_FactionChanged();\n\t\trelations?.Notify_ChangedFaction();\n\t\tif (IsAnimal && newFaction == Faction.OfPlayer)\n\t\t{\n\t\t\ttraining.SetWantedRecursive(TrainableDefOf.Tameness, checkOn: true);\n\t\t\ttraining.Train(TrainableDefOf.Tameness, recruiter, complete: true);\n\t\t\tif (RaceProps.Roamer && mindState != null)\n\t\t\t{\n\t\t\t\tmindState.lastStartRoamCooldownTick = Find.TickManager.TicksGame;\n\t\t\t}\n\t\t}\n\t\tif (faction == Faction.OfPlayer)\n\t\t{\n\t\t\tBillUtility.Notify_ColonistUnavailable(this);\n\t\t}\n\t\tif (newFaction == Faction.OfPlayer)\n\t\t{\n\t\t\tFind.StoryWatcher.statsRecord.UpdateGreatestPopulation();\n\t\t\tFind.World.StoryState.RecordPopulationIncrease();\n\t\t}\n\t\tnewFaction?.Notify_PawnJoined(this);\n\t\tIdeo?.Notify_MemberChangedFaction(this, faction, newFaction);\n\t\tageTracker?.ResetAgeReversalDemand(Pawn_AgeTracker.AgeReversalReason.Recruited);\n\t\troping?.BreakAllRopes();\n\t\tif (ModsConfig.BiotechActive)\n\t\t{\n\t\t\tmechanitor?.Notify_ChangedFaction();\n\t\t}\n\t\tcreepjoiner?.Notify_ChangedFaction();\n\t\tif (faction != null)\n\t\t{\n\t\t\tFind.FactionManager.Notify_PawnLeftFaction(faction);\n\t\t}\n\t}\n\n\tpublic void ClearMind(bool ifLayingKeepLaying = false, bool clearInspiration = false, bool clearMentalState = true)\n\t{\n\t\tpather?.StopDead();\n\t\tmindState?.Reset(clearInspiration, clearMentalState);\n\t\tjobs?.StopAll(ifLayingKeepLaying);\n\t\tVerifyReservations();\n\t}\n\n\tpublic void ClearAllReservations(bool releaseDestinationsOnlyIfObsolete = true)\n\t{\n\t\tList