Class ContractClause
Base class for any contract clause that a contract can contain.
Inheritance
System.Object
ContractClause
Implements
System.ComponentModel.INotifyPropertyChanged
Assembly: Eco.Gameplay.dll
Syntax
public abstract class ContractClause : Object, IController, IViewController, IHasUniversalID, INotifyPropertyChanged, IThreadSafeSubscriptions, ISubscriptions<ThreadSafeSubscriptions>, ISubscriptions
Constructors
ContractClause()
Declaration
protected ContractClause()
Properties
ClientUser
Declaration
public User ClientUser { get; set; }
Property Value
ContractorUser
Declaration
public User ContractorUser { get; }
Property Value
ControllerID
Declaration
public ref int ControllerID { get; }
Property Value
Type |
Description |
System.Int32 |
|
Describe
Declaration
public abstract LocString Describe { get; }
Property Value
HelpText
Declaration
public abstract LocString HelpText { get; }
Property Value
Name
Declaration
public abstract LocString Name { get; }
Property Value
OnChanged
Declaration
public ThreadSafeAction<ContractClause> OnChanged { get; }
Property Value
ParentContract
Declaration
public Contract ParentContract { get; }
Property Value
Pickers
Declaration
public virtual IEnumerable<Picker> Pickers { get; }
Property Value
Type |
Description |
System.Collections.Generic.IEnumerable<Picker> |
|
Subscriptions
Declaration
public ref ThreadSafeSubscriptions Subscriptions { get; }
Property Value
Methods
Declaration
public virtual bool ActionPerformed(GameAction action)
Parameters
Returns
Type |
Description |
System.Boolean |
|
CanJoin(User, User)
Declaration
public virtual Result CanJoin(User contractor, User client)
Parameters
Type |
Name |
Description |
User |
contractor |
|
User |
client |
|
Returns
CanSucceed(User, User)
Declaration
public virtual Result CanSucceed(User contractor, User client)
Parameters
Type |
Name |
Description |
User |
contractor |
|
User |
client |
|
Returns
Changed(Object, PropertyChangedEventArgs)
Declaration
protected static void Changed(object clauseObject, PropertyChangedEventArgs args)
Parameters
Type |
Name |
Description |
System.Object |
clauseObject |
|
System.ComponentModel.PropertyChangedEventArgs |
args |
|
GetActionDeed(GameAction)
Declaration
protected static Deed GetActionDeed(GameAction action)
Parameters
Returns
Initialize(User, User)
Declaration
public virtual void Initialize(User contractor, User client)
Parameters
Type |
Name |
Description |
User |
contractor |
|
User |
client |
|
LateInit()
This is always called after parent contract has already been initialized and set.
Declaration
OnCreate(User)
Declaration
public virtual void OnCreate(User client)
Parameters
Type |
Name |
Description |
User |
client |
|
OnDisabled()
This is called whenever the contract parent is removed and so all clauses must be cleaned from all subscription.
Declaration
public virtual void OnDisabled()
SetParentContract(Contract)
Declaration
public void SetParentContract(Contract contract)
Parameters
ShouldOverrideAuth(GameAction)
Declaration
public virtual bool ShouldOverrideAuth(GameAction action)
Parameters
Returns
Type |
Description |
System.Boolean |
|
TryFail(GameActionPack, User, User)
Declaration
public virtual void TryFail(GameActionPack pack, User contractor, User client)
Parameters
TryJoin(GameActionPack, User, User)
Declaration
public virtual void TryJoin(GameActionPack pack, User contractor, User client)
Parameters
TryPostJob(GameActionPack, User)
Declaration
public virtual void TryPostJob(GameActionPack pack, User client)
Parameters
TrySucceed(GameActionPack, User, User, Boolean)
Declaration
public virtual void TrySucceed(GameActionPack pack, User contractor, User client, bool forced)
Parameters
Valid(User, User)
Declaration
public virtual Result Valid(User contractor, User client)
Parameters
Type |
Name |
Description |
User |
contractor |
|
User |
client |
|
Returns
Events
PropertyChanged
Declaration
public event PropertyChangedEventHandler PropertyChanged
Event Type
Type |
Description |
System.ComponentModel.PropertyChangedEventHandler |
|
Implements
System.ComponentModel.INotifyPropertyChanged
Extension Methods