diff --git a/README.md b/README.md index b1971394..4b1e3714 100644 --- a/README.md +++ b/README.md @@ -17,7 +17,8 @@ | 游戏版本 | 模组版本 | 发布日期 | 链接 | | ------------------- | -------- | --------- | ------------------------------------------------------------ | -| 2024.3.5 ~ 2024.6.4 | v1.0.6.6 | 2024.8.14 | [下载](https://github.com/mxyx-club/TheOtherUs-Edited/releases/download/v1.0.6.2/TheOtherUs.zip) | +| 2024.3.5 ~ 2024.6.4 | v1.0.7.2 | 2024.9.6 | [下载](https://github.com/mxyx-club/TheOtherUs-Edited/releases/download/v1.0.7.2/TheOtherUs.zip) | +| 2024.3.5 ~ 2024.6.4 | v1.0.6.6 | 2024.8.14 | [下载](https://github.com/mxyx-club/TheOtherUs-Edited/releases/download/v1.0.6.6/TheOtherUs.zip) | | 2024.3.5 ~ 2024.6.4 | v1.0.6.2 | 2024.7.26 | [下载](https://github.com/mxyx-club/TheOtherUs-Edited/releases/download/v1.0.6.2/TheOtherUs.zip) | | 2024.3.5 ~ 2024.6.4 | v1.0.5.3 | 2024.7.8 | [下载](https://github.com/mxyx-club/TheOtherUs-Edited/releases/download/v1.0.5.3/TheOtherUs.zip) | | 2024.3.5 ~ 2024.6.4 | v1.0.4.6 | 2024.6.29 | [下载](https://github.com/mxyx-club/TheOtherUs-Edited/releases/download/v1.0.4.6/TheOtherUs.zip) | @@ -31,6 +32,34 @@ ## 更新日志 +### v1.0.7.2: + + - #### 新增内容: + + - 全新的模组选项与键位设定!(核心代码来自Nebula) + - 市长:添加选项 “市长票数”、“市长揭示后视野减少”。 + - 传送师 & 逃逸者:将标记与传送分离为两个按钮,即现在可以自由标点与传送。 + + - #### Bug修复: + + - 修复选项 “隐藏受阻碍的玩家名称” 无效的问题 + - 工程师:修复选项 “远程修理可用次数” 无效的问题 + - 清理者:小孩清理者时,清理技能的cd不会双倍了 + + - #### 其它优化: + + - 删除船员职业:观察者 + - 删除伪装者职业:传教士 + - 删除 “船员、伪装者职业数量” 设定,由模组自动分配,以保证所有玩家必定获得职业。(除非职业数量不足) + - 在会议中,市长揭示身份后,仍然可以被赌怪猜测其它身份,例如模仿者。 + - 如果刺客与专业刺客同时在一位玩家中,则隐藏刺客职业信息。(避免显示太多职业名称) + - 如果开启选项 “通信破坏开启小黑人”,不会分配隐蔽者。 + - 换票师:将 “确认换票” 按钮删除,即如果选中两位玩家即可直接换票。[Beta] + - 侦探:在会议中以及死亡时不会再刷新脚印。 + +
+ 点我查看更多更新日志 + ### v1.0.6.6: - #### 新增内容: @@ -49,9 +78,6 @@ - 交换师:修复交换部分中立职业可能会出错的问题 - 诱饵:修复部分情况下被击杀不会报告的问题 -
- 点我查看更多更新日志 - ### v1.0.6.2: - #### 新增内容: diff --git a/TheOtherRoles/Patches/RoleAssignmentPatch.cs b/TheOtherRoles/Patches/RoleAssignmentPatch.cs index 206fefd0..21ca988c 100644 --- a/TheOtherRoles/Patches/RoleAssignmentPatch.cs +++ b/TheOtherRoles/Patches/RoleAssignmentPatch.cs @@ -129,7 +129,7 @@ public static RoleAssignmentData getRoleAssignmentData() var crewSettings = new Dictionary(); impSettings.Add((byte)RoleId.Morphling, CustomOptionHolder.morphlingSpawnRate.getSelection()); - impSettings.Add((byte)RoleId.Camouflager, CustomOptionHolder.camouflagerSpawnRate.getSelection()); + if (!ModOption.camoComms) impSettings.Add((byte)RoleId.Camouflager, CustomOptionHolder.camouflagerSpawnRate.getSelection()); impSettings.Add((byte)RoleId.Vampire, CustomOptionHolder.vampireSpawnRate.getSelection()); impSettings.Add((byte)RoleId.Eraser, CustomOptionHolder.eraserSpawnRate.getSelection()); impSettings.Add((byte)RoleId.Trickster, CustomOptionHolder.tricksterSpawnRate.getSelection()); @@ -142,8 +142,7 @@ public static RoleAssignmentData getRoleAssignmentData() impSettings.Add((byte)RoleId.Witch, CustomOptionHolder.witchSpawnRate.getSelection()); impSettings.Add((byte)RoleId.Escapist, CustomOptionHolder.escapistSpawnRate.getSelection()); impSettings.Add((byte)RoleId.Ninja, CustomOptionHolder.ninjaSpawnRate.getSelection()); - if (!Poucher.spawnModifier) - impSettings.Add((byte)RoleId.Poucher, CustomOptionHolder.poucherSpawnRate.getSelection()); + if (!Poucher.spawnModifier) impSettings.Add((byte)RoleId.Poucher, CustomOptionHolder.poucherSpawnRate.getSelection()); impSettings.Add((byte)RoleId.Mimic, CustomOptionHolder.mimicSpawnRate.getSelection()); impSettings.Add((byte)RoleId.Terrorist, CustomOptionHolder.terroristSpawnRate.getSelection()); impSettings.Add((byte)RoleId.Bomber, CustomOptionHolder.bomberSpawnRate.getSelection()); @@ -762,7 +761,7 @@ private static void assignModifiersToPlayers(List modifiers, List x.PlayerId == playerId); + impPlayer.RemoveAll(x => x.PlayerId == playerId); playerList.RemoveAll(x => x.PlayerId == playerId); modifiers.RemoveAll(x => x == RoleId.Specoality); } diff --git a/TheOtherRoles/Roles/Impostor/Poucher.cs b/TheOtherRoles/Roles/Impostor/Poucher.cs index 5093b133..7b5b6970 100644 --- a/TheOtherRoles/Roles/Impostor/Poucher.cs +++ b/TheOtherRoles/Roles/Impostor/Poucher.cs @@ -11,10 +11,10 @@ public static class Poucher public static List killed = new(); - public static void clearAndReload(bool clearList = true) + public static void clearAndReload() { poucher = null; + killed = new(); spawnModifier = CustomOptionHolder.poucherSpawnModifier.getBool(); - if (clearList) killed = new List(); } } diff --git a/TheOtherRoles/Roles/RoleInfo.cs b/TheOtherRoles/Roles/RoleInfo.cs index 052d682f..1f4f18a3 100644 --- a/TheOtherRoles/Roles/RoleInfo.cs +++ b/TheOtherRoles/Roles/RoleInfo.cs @@ -258,6 +258,7 @@ public static List getRoleInfoForPlayer(PlayerControl p, bool showModi } if (p == Lovers.lover1 || p == Lovers.lover2) infos.Add(lover); + if (Assassin.assassin.Any(x => x.PlayerId == p.PlayerId) && p != Specoality.specoality) infos.Add(assassin); if (AntiTeleport.antiTeleport.Any(x => x.PlayerId == p.PlayerId)) infos.Add(antiTeleport); if (Sunglasses.sunglasses.Any(x => x.PlayerId == p.PlayerId)) infos.Add(sunglasses); if (Torch.torch.Any(x => x.PlayerId == p.PlayerId)) infos.Add(torch); @@ -277,7 +278,6 @@ public static List getRoleInfoForPlayer(PlayerControl p, bool showModi if (Invert.invert.Any(x => x.PlayerId == p.PlayerId)) infos.Add(invert); if (Chameleon.chameleon.Any(x => x.PlayerId == p.PlayerId)) infos.Add(chameleon); if (p == Shifter.shifter) infos.Add(shifter); - if (Assassin.assassin.Any(x => x.PlayerId == p.PlayerId)) infos.Add(assassin); if (p == LastImpostor.lastImpostor) infos.Add(lastImpostor); } diff --git a/TheOtherRoles/TheOtherRoles.csproj b/TheOtherRoles/TheOtherRoles.csproj index 467bb23b..650b7f7e 100644 --- a/TheOtherRoles/TheOtherRoles.csproj +++ b/TheOtherRoles/TheOtherRoles.csproj @@ -1,7 +1,7 @@  net6.0 - 1.0.7.1 + 1.0.7.2 TheOtherUs mxyx-club latest