40 lines
1.3 KiB
C#
40 lines
1.3 KiB
C#
using UnityEngine;
|
|
|
|
namespace Nullframes.Intrigues.UI {
|
|
public abstract class IUIActorBehaviour : MonoBehaviour {
|
|
public Actor Actor { get; private set; }
|
|
public Clan Clan { get; private set; }
|
|
public Scheme Scheme { get; private set; }
|
|
public Actor Conspirator { get; private set; }
|
|
public Actor Target { get; private set; }
|
|
|
|
public virtual void OnMenuOpened(Actor actor) { }
|
|
public virtual void OnPageUpdated() { }
|
|
public virtual void OnFamilyMemberLoaded(Actor actor, Transform Transform) { }
|
|
public virtual void OnAvailableSchemeLoaded(RuleResult result, Scheme scheme, Transform Transform) { }
|
|
public virtual void OnPolicyLoaded(Policy policy, Transform Transform) { }
|
|
|
|
public virtual void OnSchemeButtonTriggered(Transform Transform) {
|
|
StartScheme();
|
|
}
|
|
|
|
protected void StartScheme() {
|
|
if (Conspirator == null) return;
|
|
Conspirator.StartScheme(Scheme, Target);
|
|
}
|
|
|
|
public void Init(Actor actor) {
|
|
Actor = actor;
|
|
}
|
|
|
|
public void Init(Clan clan) {
|
|
Clan = clan;
|
|
}
|
|
|
|
public void Init(Actor conspirator, Actor target, Scheme scheme) {
|
|
Conspirator = conspirator;
|
|
Target = target;
|
|
Scheme = scheme;
|
|
}
|
|
}
|
|
} |