Инкапсулированы методы появления и ухода персонажа Инкапсулирована работа с аниматором Работа с репликами вынесена в ScriptableObject Логика MessageBox вынесена в отдельный класс Переработан event bus персонажей Сложность и призовой модуль вынесены в отдельные классы Character.cs приведён к Single Responsibility Principle.
30 lines
814 B
C#
30 lines
814 B
C#
using UnityEngine;
|
|
|
|
namespace CharacterSystem
|
|
{
|
|
public class Character : MonoBehaviour
|
|
{
|
|
public string characterName;
|
|
public DifficultyModule difficultyModule;
|
|
public VisualModule visualModule;
|
|
public PrizeModule prizeModule;
|
|
|
|
public int CharacterIndex { get; private set; }
|
|
|
|
public void Initialize(int characterIndex)
|
|
{
|
|
CharacterIndex = characterIndex;
|
|
|
|
difficultyModule.PullSettings();
|
|
SettingsManager.OnSettingsChanged += difficultyModule.PullSettings;
|
|
visualModule.Initialize(characterName);
|
|
}
|
|
|
|
public void ResetCharacter()
|
|
{
|
|
difficultyModule.ResetPresetIndex();
|
|
visualModule.ResetModule();
|
|
prizeModule.ResetModule();
|
|
}
|
|
}
|
|
} |