Change fixed skin root to configurable root element in skin container.
This commit is contained in:
@@ -72,7 +72,7 @@ namespace Cryville.Crtr.Event {
|
||||
SkinContainer skinContainer;
|
||||
protected Judge judge;
|
||||
public void AttachSystems(PdtSkin skin, Judge judge) {
|
||||
skinContainer = new SkinContainer(skin);
|
||||
skinContainer = new SkinContainer(skin.elements);
|
||||
this.judge = judge;
|
||||
}
|
||||
|
||||
|
@@ -6,7 +6,7 @@ using UnityEngine.Profiling;
|
||||
|
||||
namespace Cryville.Crtr {
|
||||
public class SkinContainer {
|
||||
readonly PdtSkin skin;
|
||||
readonly SkinElement _rootElement;
|
||||
readonly DynamicStack[] _stacks = new DynamicStack[2];
|
||||
class DynamicStack {
|
||||
public readonly List<DynamicProperty> Properties = new List<DynamicProperty>();
|
||||
@@ -26,8 +26,8 @@ namespace Cryville.Crtr {
|
||||
public SkinSelectors Selectors { get; set; }
|
||||
public SkinElement Element { get; set; }
|
||||
}
|
||||
public SkinContainer(PdtSkin _skin) {
|
||||
skin = _skin;
|
||||
public SkinContainer(SkinElement rootElement) {
|
||||
_rootElement = rootElement;
|
||||
for (int i = 0; i < _stacks.Length; i++) _stacks[i] = new DynamicStack();
|
||||
}
|
||||
public void MatchStatic(ContainerState state) {
|
||||
@@ -35,7 +35,7 @@ namespace Cryville.Crtr {
|
||||
stack.Clear();
|
||||
ChartPlayer.etor.ContextState = state;
|
||||
ChartPlayer.etor.ContextEvent = state.Container;
|
||||
MatchStatic(skin, state, stack, new RuntimeSkinContext(state.Handler.SkinContext));
|
||||
MatchStatic(_rootElement, state, stack, new RuntimeSkinContext(state.Handler.SkinContext));
|
||||
ChartPlayer.etor.ContextEvent = null;
|
||||
ChartPlayer.etor.ContextState = null;
|
||||
}
|
||||
|
Reference in New Issue
Block a user