Черепа-ретрансляторы отменены: череп-декор нить не передаёт, нити через черепа снимаются при загрузке; тексты на 13 языках
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
8a5f4fa0e3
commit
54cafab4f1
@@ -152,8 +152,7 @@ namespace NecromancerTome
|
||||
{
|
||||
if (IsRelay(w.GetBlock(_pos).Block))
|
||||
{
|
||||
ClickRelay(_pl, w, _pos, _connect);
|
||||
return;
|
||||
return; // 23.10: черепа-ретрансляторы отменены - череп-декор нитью не задевается
|
||||
}
|
||||
bool ok = Resolve(w, _pos, out Vector3i owner, out TEFeatureCinerarium urn);
|
||||
bool station = false;
|
||||
@@ -290,53 +289,6 @@ namespace NecromancerTome
|
||||
_pl.PlayOneShot("wiretool_place");
|
||||
}
|
||||
|
||||
/// <summary>Щелчок ножом по черепу-ретранслятору: ПКМ при тянущейся нити - провести её через череп; ЛКМ - снять все нити
|
||||
/// через него (или бросить тянущуюся).</summary>
|
||||
static void ClickRelay(EntityPlayerLocal _pl, World _w, Vector3i _skull, bool _connect)
|
||||
{
|
||||
if (!_connect)
|
||||
{
|
||||
if (_start.HasValue)
|
||||
{
|
||||
Cancel();
|
||||
GameManager.ShowTooltip(_pl, Localization.Get("necroThreadCancel"));
|
||||
return;
|
||||
}
|
||||
int n = 0;
|
||||
foreach (Vector3i p in CinerariumRegistry.All())
|
||||
{
|
||||
TEFeatureCinerarium u = UrnAt(_w, p);
|
||||
if (u != null)
|
||||
{
|
||||
n += u.RemoveThreadsVia(_skull);
|
||||
}
|
||||
}
|
||||
if (n > 0)
|
||||
{
|
||||
_pl.PlayOneShot("wiretool_grab");
|
||||
GameManager.ShowTooltip(_pl, Localization.Get("necroThreadRemoved"));
|
||||
}
|
||||
return;
|
||||
}
|
||||
if (!_start.HasValue)
|
||||
{
|
||||
GameManager.ShowTooltip(_pl, Localization.Get("necroThreadRelayFirst"));
|
||||
return;
|
||||
}
|
||||
if (_via.Contains(_skull))
|
||||
{
|
||||
return;
|
||||
}
|
||||
if (Vector3.Distance(LastPoint.Value.ToVector3(), _skull.ToVector3()) > MaxLength)
|
||||
{
|
||||
GameManager.ShowTooltip(_pl, Localization.Get("necroThreadTooFar"));
|
||||
return;
|
||||
}
|
||||
_via.Add(_skull);
|
||||
_pl.PlayOneShot("wiretool_place");
|
||||
GameManager.ShowTooltip(_pl, Localization.Get("necroThreadRelay"));
|
||||
}
|
||||
|
||||
/// <summary>Нить урны _urn к _end через черепа _via (по порядку от урны) - пролётами в _pairs, огоньки бегут по направлению
|
||||
/// нити: _toUrn - от конца к урне (нить «откуда»), иначе от урны к концу.</summary>
|
||||
public static void AddPath(List<(Vector3 a, Vector3 b)> _pairs, Vector3i _urn, List<Vector3i> _via, Vector3i _end, bool _toUrn)
|
||||
|
||||
Reference in New Issue
Block a user