Roses/Assets/Scripts/View/Dependencies.cs
2024-04-17 10:16:55 +02:00

35 lines
No EOL
1 KiB
C#

using System;
using Domain;
using Presenter;
using Presenter.SaveSystem;
using UnityEngine;
using View.UI;
namespace View {
public class Dependencies : MonoBehaviour {
public ExpressionClick ExpressionClick { private set; get; }
public Score Score { private set; get; }
public CustomInput CustomInput { private set; get; }
public SaveGame Saver { private set; get; }
public LoadGame Loader { private set; get; }
private void Awake() {
Score = new Score(20, 5);
IExpressionInput input = FindObjectOfType<ExpressionInput>();
IExpressionInput visibility = FindObjectOfType<UIVisibility>();
IExpressionInput inputCollections = new ExpressionInputCollection(new[] { input, visibility });
IRoseSpawner spawner = FindObjectOfType<RoseSpawner>();
ExpressionClick = new ExpressionClick(Score, inputCollections, spawner);
CustomInput = new CustomInput();
PlayerPrefsRepository repository = new();
Saver = new SaveGame(repository, Score);
Loader = new LoadGame(repository, Score, inputCollections, spawner);
}
}
}