31using System.Collections.Generic;
65 protected static readonly ChangePredicate<ControllerState>
AlwaysTrigger
66 = delegate {
return true; };
67 protected static readonly ChangePredicate<ControllerState>
NeverTrigger
68 = delegate {
return false; };
76 public ControllerState
PrevState {
get;
protected set; }
102 protected Listener AddListener( ChangePredicate<ControllerState> rule, Control control,
string controlName,
string helpText, Delegate handler, params
object[] args )
123 if ( predicate( l ) )
140 if ( predicate( l ) )
155 Disable( l => l.Control.Equals( c ) );
164 Enable( l => l.Control.Equals( c ) );
187 if ( l.ControlName !=
null && l.HelpText !=
null )
188 yield
return String.Format(
"{0} - {1}", l.ControlName, l.HelpText );
ListenContext ControlContext
Pelin pääohjainkonteksti.
static Time Time
Peliaika. Sisältää tiedon siitä, kuinka kauan peliä on pelattu (Time.SinceStartOfGame) ja kuinka kaua...
static Game Instance
Käynnissä olevan pelin pääolio.
Synkroninen lista, eli lista joka päivittyy vasta kun sen Update-metodia kutsutaan....
void Enable(Predicate< Listener< ControllerState, Control > > predicate)
Ottaa käytöstä poistetun kontrollin takaisin käyttöön.
ControllerState CurrentState
Nykyinen tila.
void Enable(Control c)
Ottaa kontrollin takaisin käyttöön.
ControllerState PrevState
Viimeisin tila.
void DisableAll()
Poistaa kaikki kontrollit käytöstä.
IEnumerable< string > GetHelpTexts()
Palauttaa asetettujen kuuntelijoiden ohjetekstit.
static readonly ChangePredicate< ControllerState > NeverTrigger
void EnableAll()
Ottaa takaisin käyttöön kaikki Disable-metodilla poistetut kontrollit.
SynchronousList< Listener< ControllerState, Control > > listeners
void Clear()
Poistaa kaikki kuuntelijat.
Listener AddListener(ChangePredicate< ControllerState > rule, Control control, string controlName, string helpText, Delegate handler, params object[] args)
void Disable(Predicate< Listener< ControllerState, Control > > predicate)
Poistaa tietyt kuuntelutapahtumat käytöstä.
void Disable(Control c)
Poistaa kontrollin käytöstä.
abstract ControllerState GetState()
Lukee ja palauttaa laitteen viimeisimmän tilan.
void Update()
Lukee uuden tilan laitteelta ja päivittää sen nykyiseksi sekä laukaisee tapahtumia.
static readonly ChangePredicate< ControllerState > AlwaysTrigger
SynchronousList< Listener< ControllerState, Control > > disabledListeners
Ohjaintapahtumien kuuntelija.