49 lines
1.1 KiB
C#
49 lines
1.1 KiB
C#
using System;
|
|
using System.Threading;
|
|
using Cysharp.Threading.Tasks;
|
|
using SzafaKit.Foundation;
|
|
using UnityEngine;
|
|
|
|
namespace SzafaKit.Defaults
|
|
{
|
|
public class DefaultGameModeController : IController
|
|
{
|
|
private DefaultGameMode.Config _config;
|
|
|
|
public DefaultGameModeController(DefaultGameMode.Config config)
|
|
{
|
|
_config = config;
|
|
}
|
|
|
|
public async UniTask OnStart(CancellationToken cancellationToken)
|
|
{
|
|
await UniTask.Yield();
|
|
}
|
|
|
|
public void OnStop()
|
|
{
|
|
}
|
|
|
|
public void OnTick()
|
|
{
|
|
}
|
|
}
|
|
|
|
[CreateAssetMenu(menuName = SzafaConsts.AssetMenu + "Defaults/Game Mode Controller")]
|
|
public class DefaultGameMode : ScriptableGameMode
|
|
{
|
|
[Serializable]
|
|
public class Config
|
|
{
|
|
public int value;
|
|
}
|
|
|
|
[SerializeField]
|
|
private Config _config;
|
|
|
|
public override void ConfigureGameMode(GameMode gameMode)
|
|
{
|
|
gameMode.AddController(new DefaultGameModeController(_config));
|
|
}
|
|
}
|
|
} |