Добавил задержку перед удалением блока

This commit is contained in:
2026-07-03 00:57:17 +03:00
parent 6d7ee18874
commit daac4b0b33
2 changed files with 7 additions and 1 deletions
+1
View File
@@ -171,6 +171,7 @@ MonoBehaviour:
_pathStart: {fileID: 1415278839}
_pathEnd: {fileID: 761061820}
_resetBlockTime: 0.03
_destroyBlockDelay: 0.5
_pathFinish:
- {fileID: 1987853413}
- {fileID: 1569763699}
+5
View File
@@ -13,12 +13,15 @@ public class SandPathBuildService : MonoBehaviour
[SerializeField] private BlockScript _pathStart;
[SerializeField] private BlockScript _pathEnd;
[SerializeField] private float _resetBlockTime = 0.5f;
[SerializeField] private float _destroyBlockDelay = 1f;
[SerializeField] private BlockScript[] _pathFinish;
[SerializeField] private BlockScript[] _predefinedBlocks;
[SerializeField] private UnityEvent<BlockScript> _onBlockDestroy;
[SerializeField] private UnityEvent _onBuildComplete;
private float _spawnBlockTime;
public event UnityAction<BlockScript> OnBlockDestroy
{
add => _onBlockDestroy.AddListener(value);
@@ -95,6 +98,7 @@ public class SandPathBuildService : MonoBehaviour
return;
if (block == _currentBlock)
{
if (Time.time - _spawnBlockTime >= _destroyBlockDelay)
ResetLastBlock();
return;
}
@@ -106,6 +110,7 @@ public class SandPathBuildService : MonoBehaviour
var t = block.transform;
_currentBlock = Instantiate(_blockPrefab, t.position, t.localRotation, t.parent);
_blocksInPath.Add(_currentBlock);
_spawnBlockTime = Time.time;
if (_pathFinish.Contains(block))
{
_currentBlock = _pathEnd;