Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Next Next commit
更新:阻止地牢神庙插件支持醉酒了
  • Loading branch information
THEXN committed Jul 30, 2024
commit b23ab037f44513c3c9df1a0585ef1e4b5215db42
17 changes: 12 additions & 5 deletions DTEntryBlock/DTEntryBlock.cs
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public class DTEntryBlock : TerrariaPlugin
public override string Author => "肝帝熙恩";
public override string Name => "阻止进入地牢或神庙";
public override string Description => "阻止玩家在击败骷髅王/世纪之花前进入地牢/神庙";
public override Version Version => new Version(1, 1, 4);
public override Version Version => new Version(1, 1, 5);
public static Configuration Config;
Color orangeColor = new Color(255, 165, 0);

Expand Down Expand Up @@ -62,9 +62,10 @@ private void CheckPlayerLocation(TSPlayer player)
// 检查骷髅王是否被击败
if (!NPC.downedBoss3)
{
player.SendMessage("因为在没击败骷髅王的时候探索地牢,你被传送到出生点.", orangeColor);

if (Config.TeleportPlayersEnterDungeonForUnkilledSkullKing)
{
player.SendMessage("因为在没击败骷髅王的时候探索地牢,你被传送到出生点.", orangeColor);
player.Teleport(Main.spawnTileX * 16, Main.spawnTileY * 16);
player.TPlayer.ZoneDungeon = false;
}
Expand All @@ -83,9 +84,9 @@ private void CheckPlayerLocation(TSPlayer player)
// 检查世纪之花是否被击败
if (!NPC.downedPlantBoss)
{
player.SendMessage("禁止在没击败世纪之花的时候探索神庙,你被传送到出生点", orangeColor);
if (Config.TeleportPlayersEnterTempleForUnkilledPlantBoss)
{
player.SendMessage("禁止在没击败世纪之花的时候探索神庙,你被传送到出生点", orangeColor);
player.Teleport(Main.spawnTileX * 16, Main.spawnTileY * 16);
player.TPlayer.ZoneLihzhardTemple = false;
}
Expand All @@ -101,12 +102,18 @@ private void CheckPlayerLocation(TSPlayer player)

private bool IsPlayerInDungeon(TSPlayer player)
{
return player.TPlayer.ZoneDungeon;
if (Main.drunkWorld)
{
return player.TPlayer.ZoneDungeon && !(player.TPlayer.position.Y / 16f < (float)(Main.dungeonY + 40));
}
else
{
return player.TPlayer.ZoneDungeon;
}
}

private bool IsPlayerInTemple(TSPlayer player)
{
// 假设您有与神庙相关的Zone属性,例如 ZoneLihzhardTemple,此处替换为实际属性名
return player.TPlayer.ZoneLihzhardTemple;
}
}
Expand Down
3 changes: 3 additions & 0 deletions DTEntryBlock/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,9 @@
## 更新日志

```
v1.1.5
补充对醉酒世界的支持

v1.1.4
补全卸载函数
```
Expand Down