2014-08-10 11:10:21 -05:00
|
|
|
|
namespace Ficdown.Parser.Model.Player
|
2014-07-26 23:54:50 -05:00
|
|
|
|
{
|
|
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
2014-08-09 15:18:31 -05:00
|
|
|
|
using Ficdown.Parser.Player;
|
2014-07-26 23:54:50 -05:00
|
|
|
|
using Story;
|
|
|
|
|
|
|
|
|
|
internal class PageState
|
|
|
|
|
{
|
2019-09-21 18:52:00 -05:00
|
|
|
|
public StateManager Manager { get; set; }
|
|
|
|
|
|
2014-07-26 23:54:50 -05:00
|
|
|
|
public Guid Id { get; set; }
|
|
|
|
|
public Scene Scene { get; set; }
|
2014-07-27 00:43:32 -05:00
|
|
|
|
public State State { get; set; }
|
|
|
|
|
public State AffectedState { get; set; }
|
2014-07-26 23:54:50 -05:00
|
|
|
|
|
2014-08-10 11:10:21 -05:00
|
|
|
|
public IDictionary<string, int> StateMatrix { get; set; }
|
2014-08-09 15:18:31 -05:00
|
|
|
|
|
2014-07-26 23:54:50 -05:00
|
|
|
|
public IDictionary<string, string> Links { get; set; }
|
|
|
|
|
|
|
|
|
|
private string _uniqueHash;
|
2014-08-09 15:18:31 -05:00
|
|
|
|
private string _compressedHash;
|
|
|
|
|
|
2014-07-26 23:54:50 -05:00
|
|
|
|
public string UniqueHash
|
|
|
|
|
{
|
2019-09-21 18:52:00 -05:00
|
|
|
|
get { return _uniqueHash ?? (_uniqueHash = Manager.GetUniqueHash(State, Scene.Key)); }
|
2014-08-09 15:18:31 -05:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public string CompressedHash
|
|
|
|
|
{
|
2019-09-21 18:52:00 -05:00
|
|
|
|
get { return _compressedHash ?? (_compressedHash = Manager.GetCompressedHash(this)); }
|
2014-07-26 23:54:50 -05:00
|
|
|
|
}
|
|
|
|
|
}
|
2019-09-21 18:52:00 -05:00
|
|
|
|
}
|