50 lines
1.3 KiB
C#
Raw Normal View History

2026-01-05 12:16:58 +05:30
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ObstacleTrainMover : SpawnableMoverBase
{
private ObstaclesManager obstaclesManager;
private AudioSource audioSource;
private void Awake()
{
audioSource = GetComponent<AudioSource>();
}
private void OnEnable()
{
SetObstaclesManager();
obstaclesManager?.GameManager?.SoundManager?.RegisterToMultiSources(audioSource);
}
private void OnDisable()
{
SetObstaclesManager();
obstaclesManager?.GameManager?.SoundManager?.UnregisterFromMultiSources();
}
protected override void Update()
{
if (!worldSpawnManager || !obstaclesManager)
{
worldSpawnManager = InterfaceManager.Instance?.GetInterfaceInstance<WorldSpawnManager>();
SetObstaclesManager();
}
if (worldSpawnManager && obstaclesManager)
{
moveSpeed = obstaclesManager.MovableTrainSpeed;
Debug.Log($"## obstaclesManager.MovableTrainSpeed: {obstaclesManager.MovableTrainSpeed}");
base.Update();
}
}
private void SetObstaclesManager()
{
obstaclesManager = InterfaceManager.Instance?.GetInterfaceInstance<ObstaclesManager>();
}
}