Commit e65a049c authored by 17임경현's avatar 17임경현

model binding for civiii-model-proto@a5bf5d81c2fcad6e96a5d2fb3ba3334299b0d638

parent 9693ff37
fileFormatVersion: 2 fileFormatVersion: 2
guid: bc9194866a2426140b08bf3c39c0fab0 guid: c800ce5388c3bc444a6ef0af5bd6d2c8
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}
userData: userData:
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: cba6a49c9be804e4cadbc06e83ca7aad guid: ef46e7a8aff58d349a718719d0d4f525
PluginImporter: PluginImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: 74c9cc2d5f6442a4da1631019cf1b979 guid: 5bdfe9218b228b043ad54860fb953b37
TextScriptImporter: TextScriptImporter:
externalObjects: {} externalObjects: {}
userData: userData:
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: fbb15a9f322dbd14c81f80d4fe80a489 guid: 4d1beb06362ffb346aebb74771cdbb3f
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}
userData: userData:
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: 46dca745362ab8e46bddc678b3bf1f25 guid: 20c8b15f5d160ae46bb184ebb97e7b8c
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}
userData: userData:
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: 04efde913b784134bb072a57ae08dbf1 guid: 67e2f38aa64b8a74eb664ca86f5b8e04
PluginImporter: PluginImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: 0c67f4c81a8d44e4589ee960f07853d3 guid: 8ec3fb5bb7c60e94bb192f81a5fffc0d
TextScriptImporter: TextScriptImporter:
externalObjects: {} externalObjects: {}
userData: userData:
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: 3e2442d926890bf4c832a52f25339743 guid: d84b203a422ccc24aa2118546557f084
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}
userData: userData:
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: c733c60972c56cb4592ba00650f2ef2b guid: 56991a73eb80c7648968a1e05cb7f173
PluginImporter: PluginImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: 81bec8d8b9cfaa940a95228c28c99ba0 guid: e32ebf32f337e7249810b0c91ff4f5d0
TextScriptImporter: TextScriptImporter:
externalObjects: {} externalObjects: {}
userData: userData:
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: ad348e39339ef8148a3069a6b7ffa7c2 guid: d5e181aec2e0f9248832cd6a0f92c360
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}
userData: userData:
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: b1639ae97ca2f0b45ba8c04582895579 guid: b560c632aa9cc024ba462979836506c0
PluginImporter: PluginImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: 8bf3abc23579c0b48a521921ddc710b8 guid: 49ed64ab11294714e94f9d86fbdcb99b
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}
userData: userData:
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: d8dd3157efea20a469cc10f27f68ec36 guid: afb5cf5381a891e42ba57a2635a9a6dc
PluginImporter: PluginImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: 1eaf2166eb20b994d912298a56579be0 guid: ff298d80d66215f488d5b154dc233808
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}
userData: userData:
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: 681ea679d2e10f343b5deba331f28c91 guid: ca750ce144a573841a848ffc667301ab
PluginImporter: PluginImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: 06b66a2aa4e1b544d9b2c59a26bd1956 guid: 5ce9fccc160213b4aa19cdbd7a15619e
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}
userData: userData:
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: f52d77299045efb49afe99cb7e287a9e guid: 98e67cff4991f934786754cfbbed3187
PluginImporter: PluginImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2
......
<?xml version="1.0" encoding="utf-8"?>
<doc>
<assembly><name>CivModel.Path</name></assembly>
<members>
</members>
</doc>
fileFormatVersion: 2 fileFormatVersion: 2
guid: c58bb3c550012ab4b94ad8bd678f1cee guid: 4dc167cac06c45c4f959c5a50d60fba4
TextScriptImporter: TextScriptImporter:
externalObjects: {} externalObjects: {}
userData: userData:
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: 4027e9b7597b0194093c590dc228dd27 guid: 3cca8313d400def4fa347425296b20d6
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}
userData: userData:
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: 8c8d07a0d376d014a80d4a2e16c57844 guid: 6fe4ca1be533c6240a89a4d5b02b6390
PluginImporter: PluginImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: 11f21f0da932f8a47a2585837f35e29a guid: ffd11cf8434a88f4fa7ca487feec52da
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}
userData: userData:
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: 0ee29d1eb8499bc44843e23c28b4dd2b guid: 561511a5e7ebfee4983ff8a25acf5409
PluginImporter: PluginImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: e32ad906a49871042ae7318f780177f1 guid: 9713aa65cdf41184a88a2227c0844589
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}
userData: userData:
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: ef00a40607a57f3479ec2350426a94ab guid: 7e9fa7484babb5b4587becf993cd10fb
PluginImporter: PluginImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2
......
...@@ -252,6 +252,20 @@ ...@@ -252,6 +252,20 @@
</summary> </summary>
<returns>The copy of this object.</returns> <returns>The copy of this object.</returns>
</member> </member>
<member name="T:CivModel.IActorProductionFactory">
<summary>
The factory interface of <see cref="T:CivModel.Production"/> which products <see cref="T:CivModel.Actor"/> objects.
This interface also provides <see cref="P:CivModel.IActorProductionFactory.ActorConstants"/> of production results.
</summary>
<seealso cref="T:CivModel.ActorConstants"/>
<seealso cref="T:CivModel.ITileObjectProductionFactory"/>
</member>
<member name="P:CivModel.IActorProductionFactory.ActorConstants">
<summary>
The constants of production result <see cref="T:CivModel.Actor"/>.
</summary>
<seealso cref="P:CivModel.IActorProductionFactory.ActorConstants"/>
</member>
<member name="T:CivModel.IAIController"> <member name="T:CivModel.IAIController">
<summary> <summary>
The interface represents AI controlling a player. The interface represents AI controlling a player.
...@@ -298,12 +312,13 @@ ...@@ -298,12 +312,13 @@
</param> </param>
<exception cref="T:System.ArgumentNullException"><paramref name="owner"/> is <c>null</c>.</exception> <exception cref="T:System.ArgumentNullException"><paramref name="owner"/> is <c>null</c>.</exception>
</member> </member>
<member name="M:CivModel.AttackActorAction.GetRequiredAP(System.Nullable{CivModel.Terrain.Point})"> <member name="M:CivModel.AttackActorAction.GetRequiredAP(CivModel.Terrain.Point,System.Nullable{CivModel.Terrain.Point})">
<summary> <summary>
Test if the action with given parameter is valid and return required AP to act. Test if the action with given parameter is valid and return required AP to act.
Returns <see cref="F:CivModel.ActionPoint.NonAvailable"/> if the action is invalid. Returns <see cref="F:CivModel.ActionPoint.NonAvailable"/> if the action is invalid.
</summary> </summary>
<param name="pt">the parameter with which action will be tested.</param> <param name="origin">the point where <see cref="P:CivModel.AttackActorAction.Owner"/> would be while testing.</param>
<param name="target">the parameter with which action will be tested.</param>
<returns> <returns>
the required AP to act. If the action is invalid, <see cref="F:CivModel.ActionPoint.NonAvailable"/>. the required AP to act. If the action is invalid, <see cref="F:CivModel.ActionPoint.NonAvailable"/>.
</returns> </returns>
...@@ -375,13 +390,14 @@ ...@@ -375,13 +390,14 @@
The list of <see cref="T:CivModel.InteriorBuilding"/> this city owns. The list of <see cref="T:CivModel.InteriorBuilding"/> this city owns.
</summary> </summary>
</member> </member>
<member name="M:CivModel.CityBase.#ctor(CivModel.Player,CivModel.ActorConstants,CivModel.Terrain.Point)"> <member name="M:CivModel.CityBase.#ctor(CivModel.Player,CivModel.ActorConstants,CivModel.Terrain.Point,CivModel.Player)">
<summary> <summary>
Initializes a new instance of the <see cref="T:CivModel.CityBase"/> class. Initializes a new instance of the <see cref="T:CivModel.CityBase"/> class.
</summary> </summary>
<param name="owner">The player who owns this city.</param> <param name="owner">The player who owns this city.</param>
<param name="constants">constants of this actor.</param> <param name="constants">constants of this actor.</param>
<param name="point">The tile where the object will be.</param> <param name="point">The tile where the object will be.</param>
<param name="donator">The player donated this TileBuilding. If this TileBuilding is not donated, <c>null</c>.</param>
<exception cref="T:System.ArgumentNullException"> <exception cref="T:System.ArgumentNullException">
<paramref name="owner"/> is <c>null</c>. <paramref name="owner"/> is <c>null</c>.
or or
...@@ -751,6 +767,11 @@ ...@@ -751,6 +767,11 @@
An <see cref="T:CivModel.Observable`1"/> object which can be observed by <see cref="T:CivModel.ITurnObserver"/>. An <see cref="T:CivModel.Observable`1"/> object which can be observed by <see cref="T:CivModel.ITurnObserver"/>.
</summary> </summary>
</member> </member>
<member name="P:CivModel.Game.ProductionObservable">
<summary>
An <see cref="T:CivModel.Observable`1"/> object which can be observed by <see cref="T:CivModel.IProductionObserver"/>.
</summary>
</member>
<member name="P:CivModel.Game.TileObjectObservable"> <member name="P:CivModel.Game.TileObjectObservable">
<summary> <summary>
An <see cref="T:CivModel.Observable`1"/> object which can be observed by <see cref="T:CivModel.ITileObjectObserver"/>. An <see cref="T:CivModel.Observable`1"/> object which can be observed by <see cref="T:CivModel.ITileObjectObserver"/>.
...@@ -766,6 +787,11 @@ ...@@ -766,6 +787,11 @@
An <see cref="T:CivModel.Observable`1"/> object which can be observed by <see cref="T:CivModel.IQuestObserver"/>. An <see cref="T:CivModel.Observable`1"/> object which can be observed by <see cref="T:CivModel.IQuestObserver"/>.
</summary> </summary>
</member> </member>
<member name="P:CivModel.Game.VictoryObservable">
<summary>
An <see cref="T:CivModel.Observable`1"/> object which can be observed by <see cref="T:CivModel.IVictoryObserver"/>.
</summary>
</member>
<member name="T:CivModel.GameConstants"> <member name="T:CivModel.GameConstants">
<summary> <summary>
Represents a game constants storage. Constant values are copied from an applied <seealso cref="T:CivModel.IGameConstantScheme"/>. Represents a game constants storage. Constant values are copied from an applied <seealso cref="T:CivModel.IGameConstantScheme"/>.
...@@ -857,6 +883,47 @@ ...@@ -857,6 +883,47 @@
In this case, <paramref name="atkOwner"/> and <paramref name="defOwner"/> parameters can be used to get their previous value. In this case, <paramref name="atkOwner"/> and <paramref name="defOwner"/> parameters can be used to get their previous value.
</remarks> </remarks>
</member> </member>
<member name="T:CivModel.IProductionResult">
<summary>
The interface represents the result of <see cref="T:CivModel.Production"/>
</summary>
<seealso cref="T:CivModel.Production"/>
</member>
<member name="M:CivModel.IProductionResult.OnAfterProduce(CivModel.Production)">
<summary>
Called when production is finished, that is, <see cref="M:CivModel.Production.Place(CivModel.Terrain.Point)"/> is succeeded.
</summary>
<param name="production">
The <see cref="T:CivModel.Production"/> object that produced this object.
If this method is called by initialization purpose, <c>null</c>.
</param>
</member>
<member name="T:CivModel.IVictoryObserver">
<summary>
The interface to observe victories and defeats of <see cref="T:CivModel.Player"/>.
</summary>
</member>
<member name="M:CivModel.IVictoryObserver.OnVictory(CivModel.Player,CivModel.IVictoryCondition)">
<summary>
Called when a player achieves victory.
</summary>
<param name="player">The player.</param>
<param name="victory">The victory that player achieves.</param>
</member>
<member name="M:CivModel.IVictoryObserver.OnDefeat(CivModel.Player,CivModel.IDefeatCondition)">
<summary>
Called when a player achieves defeat.
</summary>
<param name="player">The player.</param>
<param name="defeat">The defeat that player achieves.</param>
</member>
<member name="M:CivModel.IVictoryObserver.OnDraw(CivModel.Player,CivModel.IDrawCondition)">
<summary>
Called when a player achieves draw.
</summary>
<param name="player">The player.</param>
<param name="draw">The draw that player achieves.</param>
</member>
<member name="T:CivModel.IGameSchemeFactory"> <member name="T:CivModel.IGameSchemeFactory">
<summary> <summary>
The factory interface of <see cref="T:CivModel.IGameScheme"/> The factory interface of <see cref="T:CivModel.IGameScheme"/>
...@@ -1047,12 +1114,13 @@ ...@@ -1047,12 +1114,13 @@
Whether the action has a target parameter or not. Whether the action has a target parameter or not.
</summary> </summary>
</member> </member>
<member name="M:CivModel.IReadOnlyActorAction.GetRequiredAP(System.Nullable{CivModel.Terrain.Point})"> <member name="M:CivModel.IReadOnlyActorAction.GetRequiredAP(CivModel.Terrain.Point,System.Nullable{CivModel.Terrain.Point})">
<summary> <summary>
Test if the action with given parameter is valid and return required AP to act. Test if the action with given parameter is valid and return required AP to act.
Returns <see cref="F:CivModel.ActionPoint.NonAvailable"/> if the action is invalid. Returns <see cref="F:CivModel.ActionPoint.NonAvailable"/> if the action is invalid.
</summary> </summary>
<param name="pt">the parameter with which action will be tested.</param> <param name="origin">the point where <see cref="P:CivModel.IReadOnlyActorAction.Owner"/> would be while testing.</param>
<param name="target">the parameter with which action will be tested.</param>
<returns> <returns>
the required AP to act. If the action is invalid, <see cref="F:CivModel.ActionPoint.NonAvailable"/>. the required AP to act. If the action is invalid, <see cref="F:CivModel.ActionPoint.NonAvailable"/>.
</returns> </returns>
...@@ -1067,7 +1135,7 @@ ...@@ -1067,7 +1135,7 @@
<summary> <summary>
Acts with the specified parameter. Acts with the specified parameter.
</summary> </summary>
<param name="pt">The parameter.</param> <param name="target">The parameter.</param>
<exception cref="T:System.ArgumentException">the parameter is invalid.</exception> <exception cref="T:System.ArgumentException">the parameter is invalid.</exception>
<exception cref="T:System.InvalidOperationException">Action cannot be done now.</exception> <exception cref="T:System.InvalidOperationException">Action cannot be done now.</exception>
</member> </member>
...@@ -1085,6 +1153,7 @@ ...@@ -1085,6 +1153,7 @@
<returns> <returns>
<c>true</c> if the action is actable; otherwise, <c>false</c>. <c>true</c> if the action is actable; otherwise, <c>false</c>.
</returns> </returns>
<exception cref="T:System.ArgumentException">actor is already destroyed</exception>
</member> </member>
<member name="T:CivModel.IGuidTaggedObject"> <member name="T:CivModel.IGuidTaggedObject">
<summary> <summary>
...@@ -1140,6 +1209,66 @@ ...@@ -1140,6 +1209,66 @@
<returns>the created <see cref="T:CivModel.IGuidTaggedObject"/> object. If arguments are invalid, <c>null</c>.</returns> <returns>the created <see cref="T:CivModel.IGuidTaggedObject"/> object. If arguments are invalid, <c>null</c>.</returns>
<exception cref="T:System.Collections.Generic.KeyNotFoundException">the value of <paramref name="guid"/> is not registered.</exception> <exception cref="T:System.Collections.Generic.KeyNotFoundException">the value of <paramref name="guid"/> is not registered.</exception>
</member> </member>
<member name="T:CivModel.IMovePath">
<summary>
The interface represents the path of <see cref="P:CivModel.IMovePath.Actor"/> to move along.
</summary>
</member>
<member name="P:CivModel.IMovePath.Actor">
<summary>
The <see cref="P:CivModel.IMovePath.Actor"/> to move along path, while acting <see cref="T:System.Action"/>.
</summary>
</member>
<member name="P:CivModel.IMovePath.StartPoint">
<summary>
The start point of path.
</summary>
</member>
<member name="P:CivModel.IMovePath.EndPoint">
<summary>
The end point of path.
</summary>
</member>
<member name="P:CivModel.IMovePath.Path">
<summary>
The list of points of path. If this path is invalid, this value is an empty collection.
</summary>
</member>
<member name="P:CivModel.IMovePath.FinalAction">
<summary>
The <see cref="T:CivModel.IActorAction"/> of <see cref="P:CivModel.IMovePath.Actor"/> to act at <see cref="P:CivModel.IMovePath.EndPoint"/> of path.
</summary>
</member>
<member name="P:CivModel.IMovePath.IsInvalid">
<summary>
Whether path is invalid.
Path is invalid if <see cref="P:CivModel.IMovePath.Actor"/> is destroyed or no available path exists.
</summary>
</member>
<member name="P:CivModel.IMovePath.IsFirstMoveInvalid">
<summary>
Whether the first walk of path is invalid now.
If this value is <c>true</c>, <see cref="M:CivModel.IMovePath.ActFirstWalk"/> calls <see cref="M:CivModel.IMovePath.RecalculateFirstWalk"/> before walk.
</summary>
</member>
<member name="M:CivModel.IMovePath.RecalculateFirstWalk">
<summary>
Recalculates the first walk of path.
</summary>
</member>
<member name="M:CivModel.IMovePath.ActFirstWalk">
<summary>
Make <see cref="P:CivModel.IMovePath.Actor"/> move from <see cref="P:CivModel.IMovePath.StartPoint"/> to the next point,
then set <see cref="P:CivModel.IMovePath.StartPoint"/> to where <see cref="P:CivModel.IMovePath.Actor"/> is.
If necessary, calls <see cref="M:CivModel.IMovePath.RecalculateFirstWalk"/> before walk.
If the next point is <see cref="P:CivModel.IMovePath.EndPoint"/>, make <see cref="P:CivModel.IMovePath.Actor"/> act <see cref="P:CivModel.IMovePath.FinalAction"/> instead of moving.
</summary>
<returns>Whether <see cref="M:CivModel.IMovePath.RecalculateFirstWalk"/> is called before moving.</returns>
<exception cref="T:System.InvalidOperationException">
the path or the first walk of path is invalid
</exception>
<returns>Whether the walk is done or not. The walk is not done if AP is not enough.</returns>
</member>
<member name="T:CivModel.InteriorBuildingConstants"> <member name="T:CivModel.InteriorBuildingConstants">
<summary> <summary>
Represents a constants storage of <see cref="T:CivModel.InteriorBuilding"/>. Represents a constants storage of <see cref="T:CivModel.InteriorBuilding"/>.
...@@ -1284,6 +1413,12 @@ ...@@ -1284,6 +1413,12 @@
<paramref name="city"/> is <c>null</c>. <paramref name="city"/> is <c>null</c>.
</exception> </exception>
</member> </member>
<member name="M:CivModel.InteriorBuilding.OnAfterProduce(CivModel.Production)">
<summary>
Called when production is finished, that is, <see cref="M:CivModel.Production.Place(CivModel.Terrain.Point)" /> is succeeded.
</summary>
<param name="production">The <see cref="T:CivModel.Production" /> object that produced this object.</param>
</member>
<member name="M:CivModel.InteriorBuilding.Destroy"> <member name="M:CivModel.InteriorBuilding.Destroy">
<summary> <summary>
Destroys this building. <see cref="M:CivModel.InteriorBuilding.OnBeforeDestroy"/> is called before the building is destroyed. Destroys this building. <see cref="M:CivModel.InteriorBuilding.OnBeforeDestroy"/> is called before the building is destroyed.
...@@ -1379,7 +1514,7 @@ ...@@ -1379,7 +1514,7 @@
<paramref name="owner"/> is <c>null</c> <paramref name="owner"/> is <c>null</c>
</exception> </exception>
</member> </member>
<member name="M:CivModel.InteriorBuildingProduction.IsPlacable(CivModel.Terrain.Point)"> <member name="M:CivModel.InteriorBuildingProduction.CoreIsPlacable(CivModel.Terrain.Point)">
<summary> <summary>
Determines whether the production result is placable at the specified point. Determines whether the production result is placable at the specified point.
</summary> </summary>
...@@ -1388,13 +1523,14 @@ ...@@ -1388,13 +1523,14 @@
<c>true</c> if the production is placable; otherwise, <c>false</c>. <c>true</c> if the production is placable; otherwise, <c>false</c>.
</returns> </returns>
</member> </member>
<member name="M:CivModel.InteriorBuildingProduction.Place(CivModel.Terrain.Point)"> <member name="M:CivModel.InteriorBuildingProduction.CorePlace(CivModel.Terrain.Point)">
<summary> <summary>
Places the production result at the specified point. Places the production result at the specified point.
</summary> </summary>
<param name="point">The point to place the production result.</param> <param name="point">The point to place the production result.</param>
<exception cref="T:System.InvalidOperationException">production is not completed yet</exception> <exception cref="T:System.InvalidOperationException">production is not completed yet</exception>
<exception cref="T:System.ArgumentException">point is invalid</exception> <exception cref="T:System.ArgumentException">point is invalid</exception>
<returns>The production result.</returns>
</member> </member>
<member name="T:CivModel.IQuestObserver"> <member name="T:CivModel.IQuestObserver">
<summary> <summary>
...@@ -1428,7 +1564,7 @@ ...@@ -1428,7 +1564,7 @@
<seealso cref="T:CivModel.Game"/> <seealso cref="T:CivModel.Game"/>
<seealso cref="T:CivModel.TileObject"/> <seealso cref="T:CivModel.TileObject"/>
</member> </member>
<member name="M:CivModel.ITileObjectObserver.TileObjectCreated(CivModel.TileObject)"> <member name="M:CivModel.ITileObjectObserver.TileObjectProduced(CivModel.TileObject)">
<summary> <summary>
Called when <see cref="T:CivModel.TileObject"/> is created. Called when <see cref="T:CivModel.TileObject"/> is created.
</summary> </summary>
...@@ -1440,6 +1576,21 @@ ...@@ -1440,6 +1576,21 @@
</summary> </summary>
<param name="obj">The <see cref="T:CivModel.TileObject"/>.</param> <param name="obj">The <see cref="T:CivModel.TileObject"/>.</param>
</member> </member>
<member name="T:CivModel.IProductionObserver">
<summary>
The interface to observe <see cref="T:CivModel.Production"/> related events.
</summary>
<seealso cref="T:CivModel.Game"/>
<seealso cref="T:CivModel.Production"/>
</member>
<member name="M:CivModel.IProductionObserver.OnProductionDeploy(CivModel.Terrain.Point,CivModel.Production,System.Object)">
<summary>
Called when the result of <see cref="T:CivModel.Production"/> is deployed, that is, <see cref="M:CivModel.Production.Place(CivModel.Terrain.Point)"/> is succeeded.
</summary>
<param name="point">The point to place the production result.</param>
<param name="production">The <see cref="T:CivModel.Production"/> object.</param>
<param name="result">The production result object</param>
</member>
<member name="T:CivModel.Observable`1"> <member name="T:CivModel.Observable`1">
<summary> <summary>
Represents an object observable by observer interface. Represents an object observable by observer interface.
...@@ -1623,6 +1774,13 @@ ...@@ -1623,6 +1774,13 @@
</exception> </exception>
<seealso cref="P:CivModel.Quest.Status"/> <seealso cref="P:CivModel.Quest.Status"/>
</member> </member>
<member name="M:CivModel.Quest.OnQuestDeployTime">
<summary>
Called when Quest Deploy Time of the game.
Override this method to implement when to deploy the quest.
This method is called only if <see cref="P:CivModel.Quest.Status"/> is <see cref="F:CivModel.QuestStatus.Disabled"/>.
</summary>
</member>
<member name="M:CivModel.Quest.PreTurn"> <member name="M:CivModel.Quest.PreTurn">
<summary> <summary>
Called before a turn. Called before a turn.
...@@ -1711,12 +1869,13 @@ ...@@ -1711,12 +1869,13 @@
<param name="owner">The <see cref="T:CivModel.Actor"/> who will own the action.</param> <param name="owner">The <see cref="T:CivModel.Actor"/> who will own the action.</param>
<exception cref="T:System.ArgumentNullException"><paramref name="owner"/> is <c>null</c>.</exception> <exception cref="T:System.ArgumentNullException"><paramref name="owner"/> is <c>null</c>.</exception>
</member> </member>
<member name="M:CivModel.MoveActorAction.GetRequiredAP(System.Nullable{CivModel.Terrain.Point})"> <member name="M:CivModel.MoveActorAction.GetRequiredAP(CivModel.Terrain.Point,System.Nullable{CivModel.Terrain.Point})">
<summary> <summary>
Test if the action with given parameter is valid and return required AP to act. Test if the action with given parameter is valid and return required AP to act.
Returns <see cref="F:CivModel.ActionPoint.NonAvailable"/> if the action is invalid. Returns <see cref="F:CivModel.ActionPoint.NonAvailable"/> if the action is invalid.
</summary> </summary>
<param name="pt">the parameter with which action will be tested.</param> <param name="origin">the point where <see cref="P:CivModel.MoveActorAction.Owner"/> would be while testing.</param>
<param name="target">the parameter with which action will be tested.</param>
<returns> <returns>
the required AP to act. If the action is invalid, <see cref="F:CivModel.ActionPoint.NonAvailable"/>. the required AP to act. If the action is invalid, <see cref="F:CivModel.ActionPoint.NonAvailable"/>.
</returns> </returns>
...@@ -1997,6 +2156,11 @@ ...@@ -1997,6 +2156,11 @@
The player who owns this production. The player who owns this production.
</summary> </summary>
</member> </member>
<member name="P:CivModel.Production.Game">
<summary>
The <see cref="T:CivModel.Game"/> object.
</summary>
</member>
<member name="P:CivModel.Production.TotalLaborCost"> <member name="P:CivModel.Production.TotalLaborCost">
<summary> <summary>
The total labor cost to finish this production. The total labor cost to finish this production.
...@@ -2130,6 +2294,10 @@ ...@@ -2130,6 +2294,10 @@
<returns> <returns>
<c>true</c> if the production is placable; otherwise, <c>false</c>. <c>true</c> if the production is placable; otherwise, <c>false</c>.
</returns> </returns>
<remarks>
To implement this method, derived class must override <see cref="M:CivModel.Production.CoreIsPlacable(CivModel.Terrain.Point)"/> method.
</remarks>
<seealso cref="M:CivModel.Production.CoreIsPlacable(CivModel.Terrain.Point)"/>
</member> </member>
<member name="M:CivModel.Production.Place(CivModel.Terrain.Point)"> <member name="M:CivModel.Production.Place(CivModel.Terrain.Point)">
<summary> <summary>
...@@ -2138,6 +2306,33 @@ ...@@ -2138,6 +2306,33 @@
<param name="point">The point to place the production result.</param> <param name="point">The point to place the production result.</param>
<exception cref="T:System.InvalidOperationException">production is not completed yet</exception> <exception cref="T:System.InvalidOperationException">production is not completed yet</exception>
<exception cref="T:System.ArgumentException">point is invalid</exception> <exception cref="T:System.ArgumentException">point is invalid</exception>
<returns>The production result.</returns>
<remarks>
To implement this method, derived class must override <see cref="M:CivModel.Production.CorePlace(CivModel.Terrain.Point)"/> method.
</remarks>
<seealso cref="M:CivModel.Production.CorePlace(CivModel.Terrain.Point)"/>
</member>
<member name="M:CivModel.Production.CoreIsPlacable(CivModel.Terrain.Point)">
<summary>
Determines whether the production result is placable at the specified point.
Override this method to implement <see cref="M:CivModel.Production.IsPlacable(CivModel.Terrain.Point)"/>.
</summary>
<param name="point">The point to test to place the production result.</param>
<returns>
<c>true</c> if the production is placable; otherwise, <c>false</c>.
</returns>
<seealso cref="M:CivModel.Production.IsPlacable(CivModel.Terrain.Point)"/>
</member>
<member name="M:CivModel.Production.CorePlace(CivModel.Terrain.Point)">
<summary>
Places the production result at the specified point.
Override this method to implement <see cref="M:CivModel.Production.Place(CivModel.Terrain.Point)"/>.
</summary>
<param name="point">The point to place the production result.</param>
<returns>The production result.</returns>
<exception cref="T:System.InvalidOperationException">production is not completed yet</exception>
<exception cref="T:System.ArgumentException">point is invalid</exception>
<seealso cref="M:CivModel.Production.Place(CivModel.Terrain.Point)"/>
</member> </member>
<member name="T:CivModel.SafeIterationCollection`1"> <member name="T:CivModel.SafeIterationCollection`1">
<summary> <summary>
...@@ -2631,13 +2826,26 @@ ...@@ -2631,13 +2826,26 @@
<seealso cref="P:CivModel.InteriorBuilding.ProvidedLabor"/> <seealso cref="P:CivModel.InteriorBuilding.ProvidedLabor"/>
<seealso cref="P:CivModel.Player.Labor"/> <seealso cref="P:CivModel.Player.Labor"/>
</member> </member>
<member name="M:CivModel.TileBuilding.#ctor(CivModel.Player,CivModel.ActorConstants,CivModel.Terrain.Point)"> <member name="P:CivModel.TileBuilding.IsDonated">
<summary>
Whether this TileBuilding is given to <see cref="P:CivModel.Actor.Owner"/> by donation or not.
</summary>
<seealso cref="P:CivModel.TileBuilding.Donator"/>
</member>
<member name="P:CivModel.TileBuilding.Donator">
<summary>
The player donated this TileBuilding. If this TileBuilding is not donated, <c>null</c>.
</summary>
<seealso cref="P:CivModel.TileBuilding.IsDonated"/>
</member>
<member name="M:CivModel.TileBuilding.#ctor(CivModel.Player,CivModel.ActorConstants,CivModel.Terrain.Point,CivModel.Player)">
<summary> <summary>
Initializes a new instance of the <see cref="T:CivModel.TileBuilding"/> class. Initializes a new instance of the <see cref="T:CivModel.TileBuilding"/> class.
</summary> </summary>
<param name="owner">The player who owns this TileBuilding.</param> <param name="owner">The player who owns this TileBuilding.</param>
<param name="constants">constants of this actor.</param> <param name="constants">constants of this actor.</param>
<param name="point">The tile where the object will be.</param> <param name="point">The tile where the object will be.</param>
<param name="donator">The player donated this TileBuilding. If this TileBuilding is not donated, <c>null</c>.</param>
<exception cref="T:System.ArgumentNullException"> <exception cref="T:System.ArgumentNullException">
<paramref name="owner"/> is <c>null</c>. <paramref name="owner"/> is <c>null</c>.
or or
...@@ -2862,6 +3070,11 @@ ...@@ -2862,6 +3070,11 @@
</summary> </summary>
<seealso cref="P:CivModel.Actor.SkipFlag"/> <seealso cref="P:CivModel.Actor.SkipFlag"/>
</member> </member>
<member name="P:CivModel.Actor.MovePath">
<summary>
The path of this actor to move along at the end of subturn.
</summary>
</member>
<member name="P:CivModel.Actor.IsCloacking"> <member name="P:CivModel.Actor.IsCloacking">
<summary> <summary>
Whether this actor is cloacking. Whether this actor is cloacking.
...@@ -3016,7 +3229,8 @@ ...@@ -3016,7 +3229,8 @@
<ul> <ul>
<li>if <paramref name="opposite"/> has died, <see cref="F:CivModel.BattleResult.Victory"/>.</li> <li>if <paramref name="opposite"/> has died, <see cref="F:CivModel.BattleResult.Victory"/>.</li>
<li>if this object has died, <see cref="F:CivModel.BattleResult.Defeated"/>.</li> <li>if this object has died, <see cref="F:CivModel.BattleResult.Defeated"/>.</li>
<li>if both have died or survived, <see cref="!:BattleResult.Draw"/>.</li> <li>if both have survived, <see cref="F:CivModel.BattleResult.DrawAlive"/>.</li>
<li>if both have died, <see cref="F:CivModel.BattleResult.DrawDead"/>.</li>
<li>if the battle is cancelled, <see cref="F:CivModel.BattleResult.Cancelled"/>.</li> <li>if the battle is cancelled, <see cref="F:CivModel.BattleResult.Cancelled"/>.</li>
</ul> </ul>
</returns> </returns>
...@@ -3115,16 +3329,13 @@ ...@@ -3115,16 +3329,13 @@
You must check it by compare <see cref="P:CivModel.Actor.Owner"/> with <c>null</c>. You must check it by compare <see cref="P:CivModel.Actor.Owner"/> with <c>null</c>.
</remarks> </remarks>
</member> </member>
<member name="M:CivModel.Actor.GetRequiredAPToMoveNearBy(CivModel.Terrain.Point)"> <member name="M:CivModel.Actor.GetRequiredAPToMoveNearBy(CivModel.Terrain.Point,CivModel.Terrain.Point)">
<summary> <summary>
Gets the required AP to move to point, assuming the point is near the position of this actor. Gets the required AP to move from point to point, assuming two points are nearby
</summary> </summary>
<param name="point">The <see cref="T:CivModel.Terrain.Point"/> struct object</param> <param name="from">The <see cref="T:CivModel.Terrain.Point"/> to move from</param>
<param name="to">The <see cref="T:CivModel.Terrain.Point"/> to move to</param>
<returns>the required AP.</returns> <returns>the required AP.</returns>
<remarks>
This method assumes <paramref name="point"/> is near <see cref="P:CivModel.TileObject.PlacedPoint"/> of this actor.<br/>
Thus, <see cref="P:CivModel.Terrain.Point.Position"/> of <paramref name="point"/> can be ignored.
</remarks>
</member> </member>
<member name="M:CivModel.Actor.Die(CivModel.Player)"> <member name="M:CivModel.Actor.Die(CivModel.Player)">
<summary> <summary>
...@@ -3166,6 +3377,68 @@ ...@@ -3166,6 +3377,68 @@
<param name="playerInTurn">The player which the sub turn is dedicated to.</param> <param name="playerInTurn">The player which the sub turn is dedicated to.</param>
<exception cref="T:System.InvalidOperationException">actor is already destroyed</exception> <exception cref="T:System.InvalidOperationException">actor is already destroyed</exception>
</member> </member>
<member name="T:CivModel.ITileBuildingProductionFactory">
<summary>
The factory interface of <see cref="T:CivModel.TileBuildingProduction"/>.
This interface additionally provides <see cref="M:CivModel.ITileBuildingProductionFactory.CreateDonation(CivModel.Player,CivModel.Terrain.Point,CivModel.Player)"/> methods.
If donation is not wanted, use <see cref="T:CivModel.ITileObjectProductionFactory"/>
</summary>
<remarks>
In normal case, <see cref="M:CivModel.ITileObjectProductionFactory.CreateTileObject(CivModel.Player,CivModel.Terrain.Point)"/> is called to make production.
<br/>
In the case of donation, <see cref="M:CivModel.ITileBuildingProductionFactory.CreateDonation(CivModel.Player,CivModel.Terrain.Point,CivModel.Player)"/> is called instead.
</remarks>
<seealso cref="T:CivModel.ITileObjectProductionFactory" />
</member>
<member name="M:CivModel.ITileBuildingProductionFactory.CreateDonation(CivModel.Player,CivModel.Terrain.Point,CivModel.Player)">
<summary>
Donates the <see cref="T:CivModel.TileBuilding"/> which is the production result.
</summary>
<param name="owner">The <see cref="T:CivModel.Player"/> who owns the donation result.</param>
<param name="point">The tile where the object will be.</param>
<param name="donator">The player donated this TileBuilding.</param>
<returns>the created <see cref="T:CivModel.TileBuilding"/> result.</returns>
</member>
<member name="T:CivModel.TileBuildingProduction">
<summary>
The <see cref="T:CivModel.Production"/> class for <see cref="T:CivModel.TileBuilding"/>.
This class enables donation of <see cref="T:CivModel.TileBuilding"/>.
If donation is not wanted, use <see cref="T:CivModel.TileObjectProduction"/>
</summary>
<seealso cref="T:CivModel.TileObjectProduction"/>
<seealso cref="T:CivModel.Production"/>
</member>
<member name="M:CivModel.TileBuildingProduction.#ctor(CivModel.ITileBuildingProductionFactory,CivModel.Player)">
<summary>
Initializes a new instance of the <see cref="T:CivModel.TileBuildingProduction"/> class.
</summary>
<param name="factory">The factory object of this production kind.</param>
<param name="owner">The <see cref="T:CivModel.Player"/> who will own the production.</param>
<exception cref="T:System.ArgumentException">
<see cref="P:CivModel.IProductionFactory.TotalLaborCost"/> is negative
or
<see cref="P:CivModel.IProductionFactory.TotalGoldCost"/> is negative
</exception>
<exception cref="T:System.ArgumentOutOfRangeException">
<see cref="P:CivModel.IProductionFactory.LaborCapacityPerTurn"/> is not in [0, <see cref="P:CivModel.Production.TotalLaborCost"/>]
or
<see cref="P:CivModel.IProductionFactory.GoldCapacityPerTurn"/> is not in [0, <see cref="P:CivModel.Production.TotalGoldCost"/>]
</exception>
<exception cref="T:System.ArgumentNullException">
<paramref name="factory"/> is <c>null</c>
or
<paramref name="owner"/> is <c>null</c>
</exception>
</member>
<member name="M:CivModel.TileBuildingProduction.CorePlace(CivModel.Terrain.Point)">
<summary>
Places the production result at the specified point.
</summary>
<param name="point">The point to place the production result.</param>
<exception cref="T:System.InvalidOperationException">production is not completed yet</exception>
<exception cref="T:System.ArgumentException">point is invalid</exception>
<returns>The production result.</returns>
</member>
<member name="T:CivModel.TileTag"> <member name="T:CivModel.TileTag">
<summary> <summary>
The value indicating the kind of <see cref="T:CivModel.TileObject"/>. The value indicating the kind of <see cref="T:CivModel.TileObject"/>.
...@@ -3215,12 +3488,39 @@ ...@@ -3215,12 +3488,39 @@
<param name="tileTag">The <see cref="P:CivModel.TileObject.TileTag"/> of the object.</param> <param name="tileTag">The <see cref="P:CivModel.TileObject.TileTag"/> of the object.</param>
<exception cref="T:System.ArgumentNullException"><paramref name="game"/> is <c>null</c>.</exception> <exception cref="T:System.ArgumentNullException"><paramref name="game"/> is <c>null</c>.</exception>
</member> </member>
<member name="M:CivModel.TileObject.OnAfterProduce(CivModel.Production)">
<summary>
Called when production is finished, that is, <see cref="M:CivModel.Production.Place(CivModel.Terrain.Point)" /> is succeeded.
</summary>
<param name="production">The <see cref="T:CivModel.Production" /> object that produced this object.</param>
</member>
<member name="M:CivModel.TileObject.OnChangePlacedPoint(System.Nullable{CivModel.Terrain.Point})"> <member name="M:CivModel.TileObject.OnChangePlacedPoint(System.Nullable{CivModel.Terrain.Point})">
<summary> <summary>
Called after <see cref="P:CivModel.TileObject.PlacedPoint"/> is changed. Called after <see cref="P:CivModel.TileObject.PlacedPoint"/> is changed.
</summary> </summary>
<param name="oldPoint">The old value of <see cref="P:CivModel.TileObject.PlacedPoint"/>.</param> <param name="oldPoint">The old value of <see cref="P:CivModel.TileObject.PlacedPoint"/>.</param>
</member> </member>
<member name="T:CivModel.RemoveTerritoryResult">
<summary>
The result of <see cref="M:CivModel.Player.TryRemoveTerritory(CivModel.Terrain.Point)"/>
</summary>
<seealso cref="M:CivModel.Player.TryRemoveTerritory(CivModel.Terrain.Point)"/>
</member>
<member name="F:CivModel.RemoveTerritoryResult.Success">
<summary>
Indicates the owner of the tile was successfully removed.
</summary>
</member>
<member name="F:CivModel.RemoveTerritoryResult.NotOwner">
<summary>
Indicates the owner of the tile is not this player.
</summary>
</member>
<member name="F:CivModel.RemoveTerritoryResult.CannotRemove">
<summary>
Indicates The owner of the tile cannot be changed.
</summary>
</member>
<member name="T:CivModel.Player"> <member name="T:CivModel.Player">
<summary> <summary>
Represents a player of a game. Represents a player of a game.
...@@ -3456,10 +3756,69 @@ ...@@ -3456,10 +3756,69 @@
The list of tiles which this player owns as territory. The list of tiles which this player owns as territory.
</summary> </summary>
</member> </member>
<member name="P:CivModel.Player.IsEliminated">
<summary>
Whether this player is eliminated.
</summary>
</member>
<member name="P:CivModel.Player.HasEnding">
<summary>
Whether this player has ending, that is, this player is either victoried or defeated or drawed.
</summary>
<seealso cref="P:CivModel.Player.IsVictoried"/>
<seealso cref="P:CivModel.Player.IsDefeated"/>
<seealso cref="P:CivModel.Player.IsDrawed"/>
</member>
<member name="P:CivModel.Player.IsVictoried">
<summary>
Whether this player is victoried.
</summary>
<seealso cref="P:CivModel.Player.VictoryCondition"/>
</member>
<member name="P:CivModel.Player.VictoryCondition">
<summary>
The victory condition this player has achieved. If this player is not victoried yet, <c>null</c>.
</summary>
<seealso cref="P:CivModel.Player.IsVictoried"/>
</member>
<member name="P:CivModel.Player.IsDefeated"> <member name="P:CivModel.Player.IsDefeated">
<summary> <summary>
Whether this player is defeated. Whether this player is defeated.
</summary> </summary>
<seealso cref="P:CivModel.Player.DefeatCondition"/>
</member>
<member name="P:CivModel.Player.DefeatCondition">
<summary>
The defeat condition this player has achieved. If this player is not defeated yet, <c>null</c>.
</summary>
<seealso cref="P:CivModel.Player.IsDefeated"/>
</member>
<member name="P:CivModel.Player.IsDrawed">
<summary>
Whether this player is drawed.
</summary>
<seealso cref="P:CivModel.Player.DrawCondition"/>
</member>
<member name="P:CivModel.Player.DrawCondition">
<summary>
The draw condition this player has achieved. If this player is not drawed yet, <c>null</c>.
</summary>
<seealso cref="P:CivModel.Player.IsDrawed"/>
</member>
<member name="P:CivModel.Player.AvailableVictories">
<summary>
The list of available victories that this player can achieve.
</summary>
</member>
<member name="P:CivModel.Player.AvailableDefeats">
<summary>
The list of available defeats that this player can achieve.
</summary>
</member>
<member name="P:CivModel.Player.AvailableDraws">
<summary>
The list of available defeats that this player can achieve.
</summary>
</member> </member>
<member name="P:CivModel.Player.IsAIControlled"> <member name="P:CivModel.Player.IsAIControlled">
<summary> <summary>
...@@ -3471,6 +3830,11 @@ ...@@ -3471,6 +3830,11 @@
The game which this player participates. The game which this player participates.
</summary> </summary>
</member> </member>
<member name="P:CivModel.Player.PlayerNumber">
<summary>
The player number of this player.
</summary>
</member>
<member name="P:CivModel.Player.Team"> <member name="P:CivModel.Player.Team">
<summary> <summary>
The team of this player. The team of this player.
...@@ -3539,6 +3903,8 @@ ...@@ -3539,6 +3903,8 @@
<c>false</c> if the owner of the tile is not this player and cannot be changed. <c>false</c> if the owner of the tile is not this player and cannot be changed.
</returns> </returns>
<seealso cref="M:CivModel.Player.AddTerritory(CivModel.Terrain.Point)"/> <seealso cref="M:CivModel.Player.AddTerritory(CivModel.Terrain.Point)"/>
<seealso cref="M:CivModel.Player.TryRemoveTerritory(CivModel.Terrain.Point)"/>
<seealso cref="M:CivModel.Player.RemoveTerritory(CivModel.Terrain.Point)"/>
</member> </member>
<member name="M:CivModel.Player.AddTerritory(CivModel.Terrain.Point)"> <member name="M:CivModel.Player.AddTerritory(CivModel.Terrain.Point)">
<summary> <summary>
...@@ -3547,6 +3913,19 @@ ...@@ -3547,6 +3913,19 @@
<param name="pt">The tile to be in the territory.</param> <param name="pt">The tile to be in the territory.</param>
<exception cref="T:System.InvalidOperationException">the owner of the tile is not this player and cannot be changed</exception> <exception cref="T:System.InvalidOperationException">the owner of the tile is not this player and cannot be changed</exception>
<seealso cref="M:CivModel.Player.TryAddTerritory(CivModel.Terrain.Point)"/> <seealso cref="M:CivModel.Player.TryAddTerritory(CivModel.Terrain.Point)"/>
<seealso cref="M:CivModel.Player.TryRemoveTerritory(CivModel.Terrain.Point)"/>
<seealso cref="M:CivModel.Player.RemoveTerritory(CivModel.Terrain.Point)"/>
</member>
<member name="M:CivModel.Player.TryRemoveTerritory(CivModel.Terrain.Point)">
<summary>
Removes the territory of this player if possible.
</summary>
<param name="pt">The tile to be out of the territory.</param>
<returns>The result of an operation. See <see cref="T:CivModel.RemoveTerritoryResult"/> for more information.</returns>
<seealso cref="T:CivModel.RemoveTerritoryResult"/>
<seealso cref="M:CivModel.Player.TryAddTerritory(CivModel.Terrain.Point)"/>
<seealso cref="M:CivModel.Player.AddTerritory(CivModel.Terrain.Point)"/>
<seealso cref="M:CivModel.Player.RemoveTerritory(CivModel.Terrain.Point)"/>
</member> </member>
<member name="M:CivModel.Player.RemoveTerritory(CivModel.Terrain.Point)"> <member name="M:CivModel.Player.RemoveTerritory(CivModel.Terrain.Point)">
<summary> <summary>
...@@ -3555,6 +3934,118 @@ ...@@ -3555,6 +3934,118 @@
<param name="pt">The tile to be out of the territory.</param> <param name="pt">The tile to be out of the territory.</param>
<exception cref="T:System.ArgumentException"><paramref name="pt"/> is not in the territoriy of this player</exception> <exception cref="T:System.ArgumentException"><paramref name="pt"/> is not in the territoriy of this player</exception>
<exception cref="T:System.InvalidOperationException">the tile where a <see cref="T:CivModel.TileBuilding"/> is cannot be removed from the territory</exception> <exception cref="T:System.InvalidOperationException">the tile where a <see cref="T:CivModel.TileBuilding"/> is cannot be removed from the territory</exception>
<seealso cref="M:CivModel.Player.TryAddTerritory(CivModel.Terrain.Point)"/>
<seealso cref="M:CivModel.Player.AddTerritory(CivModel.Terrain.Point)"/>
<seealso cref="M:CivModel.Player.TryRemoveTerritory(CivModel.Terrain.Point)"/>
</member>
<member name="M:CivModel.Player.AddVictoryCondition(CivModel.IVictoryCondition)">
<summary>
Adds an available victory condition to this player.
</summary>
<param name="victory">The victory condition to add.</param>
<exception cref="T:System.InvalidOperationException">the player already has ending</exception>
<exception cref="T:System.ArgumentException">specified <paramref name="victory"/> is already added</exception>
</member>
<member name="M:CivModel.Player.RemoveVictoryCondition(CivModel.IVictoryCondition)">
<summary>
Removes an available victory condition of this player.
</summary>
<param name="victory">The victory condition to remove.</param>
<exception cref="T:System.InvalidOperationException">the player already has ending</exception>
<exception cref="T:System.ArgumentException">specific <paramref name="victory"/> has not added</exception>
</member>
<member name="M:CivModel.Player.AddDefeatCondition(CivModel.IDefeatCondition)">
<summary>
Adds an available defeat condition to this player.
</summary>
<param name="defeat">The defeat condition to add.</param>
<exception cref="T:System.InvalidOperationException">the player already has ending</exception>
<exception cref="T:System.ArgumentException">specified <paramref name="defeat"/> is already added</exception>
</member>
<member name="M:CivModel.Player.RemoveDefeatCondition(CivModel.IDefeatCondition)">
<summary>
Removes an available defeat condition of this player.
</summary>
<param name="defeat">The defeat condition to remove.</param>
<exception cref="T:System.InvalidOperationException">the player already has ending</exception>
<exception cref="T:System.ArgumentException">specific <paramref name="defeat"/> has not added</exception>
</member>
<member name="M:CivModel.Player.AddDrawCondition(CivModel.IDrawCondition)">
<summary>
Adds an available draw condition to this player.
</summary>
<param name="draw">The draw condition to add.</param>
<exception cref="T:System.InvalidOperationException">the player already has ending</exception>
<exception cref="T:System.ArgumentException">specified <paramref name="draw"/> is already added</exception>
</member>
<member name="M:CivModel.Player.RemoveDrawCondition(CivModel.IDrawCondition)">
<summary>
Removes an available draw condition of this player.
</summary>
<param name="draw">The draw condition to remove.</param>
<exception cref="T:System.InvalidOperationException">the player already has ending</exception>
<exception cref="T:System.ArgumentException">specific <paramref name="draw"/> has not added</exception>
</member>
<member name="M:CivModel.Player.Victory(CivModel.IVictoryCondition)">
<summary>
Make this player achieve the specified victory.
</summary>
<param name="victory">The victory.</param>
<exception cref="T:System.InvalidOperationException">the player already has ending</exception>
<exception cref="T:System.ArgumentException">specified <paramref name="victory"/> is not available to the player</exception>
<seealso cref="P:CivModel.Player.IsVictoried"/>
<seealso cref="P:CivModel.Player.VictoryCondition"/>
<seealso cref="M:CivModel.Player.Defeat(CivModel.IDefeatCondition)"/>
<seealso cref="M:CivModel.Player.Draw(CivModel.IDrawCondition)"/>
</member>
<member name="M:CivModel.Player.Defeat(CivModel.IDefeatCondition)">
<summary>
Make this player achieve the specified defeat.
</summary>
<param name="defeat">The defeat.</param>
<exception cref="T:System.InvalidOperationException">the player already has ending</exception>
<exception cref="T:System.ArgumentException">specified <paramref name="defeat"/> is not available to the player</exception>
<seealso cref="P:CivModel.Player.IsDefeated"/>
<seealso cref="P:CivModel.Player.DefeatCondition"/>
<seealso cref="M:CivModel.Player.Victory(CivModel.IVictoryCondition)"/>
<seealso cref="M:CivModel.Player.Draw(CivModel.IDrawCondition)"/>
</member>
<member name="M:CivModel.Player.Draw(CivModel.IDrawCondition)">
<summary>
Make this player achieve the specified draw.
</summary>
<param name="draw">The draw.</param>
<exception cref="T:System.InvalidOperationException">the player already has ending</exception>
<exception cref="T:System.ArgumentException">specified <paramref name="draw"/> is not available to the player</exception>
<seealso cref="P:CivModel.Player.IsDrawed"/>
<seealso cref="P:CivModel.Player.DrawCondition"/>
<seealso cref="M:CivModel.Player.Victory(CivModel.IVictoryCondition)"/>
<seealso cref="M:CivModel.Player.Defeat(CivModel.IDefeatCondition)"/>
</member>
<member name="M:CivModel.Player.EndingCheck">
<summary>
Check whether player achieves the ending condition and process it if necessary.
If <see cref="P:CivModel.Player.HasEnding"/> is <c>true</c>, do nothing.
</summary>
<returns>Whether the ending process was done or not.</returns>
</member>
<member name="M:CivModel.Player.IsAlliedWith(CivModel.Player)">
<summary>
Whether the specified player is not null and is allied with this player.
Allied players includes the player itself. that is, <c>player.IsAlliedWith(player) == true</c>.
</summary>
<param name="player">The player to determine whether is allied or not.</param>
<returns><c>true</c> if the specified player is allied with; otherwise, <c>false</c>.</returns>
<exception cref="T:System.ArgumentNullException"><paramref name="player"/> is <c>null</c></exception>
<seealso cref="M:CivModel.Player.IsAlliedWithOrNull(CivModel.Player)"/>
</member>
<member name="M:CivModel.Player.IsAlliedWithOrNull(CivModel.Player)">
<summary>
Whether the specified player is null or allied with this player.
</summary>
<param name="player">The player to determine whether is allied or not.</param>
<returns><c>true</c> if the specified player is null or allied with this player; otherwise, <c>false</c>.</returns>
<seealso cref="M:CivModel.Player.IsAlliedWith(CivModel.Player)"/>
</member> </member>
<member name="M:CivModel.Player.PreTurn"> <member name="M:CivModel.Player.PreTurn">
<summary> <summary>
...@@ -3653,20 +4144,6 @@ ...@@ -3653,20 +4144,6 @@
<param name="point">The tile where the object will be.</param> <param name="point">The tile where the object will be.</param>
<returns>the created <see cref="T:CivModel.TileObject"/> result.</returns> <returns>the created <see cref="T:CivModel.TileObject"/> result.</returns>
</member> </member>
<member name="T:CivModel.IActorProductionFactory">
<summary>
The factory interface of <see cref="T:CivModel.Production"/> which products <see cref="T:CivModel.Actor"/> objects.
This interface also provides <see cref="P:CivModel.IActorProductionFactory.ActorConstants"/> of production results.
</summary>
<seealso cref="T:CivModel.ActorConstants"/>
<seealso cref="T:CivModel.ITileObjectProductionFactory"/>
</member>
<member name="P:CivModel.IActorProductionFactory.ActorConstants">
<summary>
The constants of production result <see cref="T:CivModel.Actor"/>.
</summary>
<seealso cref="P:CivModel.IActorProductionFactory.ActorConstants"/>
</member>
<member name="T:CivModel.TileObjectProduction"> <member name="T:CivModel.TileObjectProduction">
<summary> <summary>
The <see cref="T:CivModel.Production"/> class for <see cref="T:CivModel.TileObject"/> The <see cref="T:CivModel.Production"/> class for <see cref="T:CivModel.TileObject"/>
...@@ -3695,7 +4172,7 @@ ...@@ -3695,7 +4172,7 @@
<paramref name="owner"/> is <c>null</c> <paramref name="owner"/> is <c>null</c>
</exception> </exception>
</member> </member>
<member name="M:CivModel.TileObjectProduction.IsPlacable(CivModel.Terrain.Point)"> <member name="M:CivModel.TileObjectProduction.CoreIsPlacable(CivModel.Terrain.Point)">
<summary> <summary>
Determines whether the production result is placable at the specified point. Determines whether the production result is placable at the specified point.
</summary> </summary>
...@@ -3704,13 +4181,93 @@ ...@@ -3704,13 +4181,93 @@
<c>true</c> if the production is placable; otherwise, <c>false</c>. <c>true</c> if the production is placable; otherwise, <c>false</c>.
</returns> </returns>
</member> </member>
<member name="M:CivModel.TileObjectProduction.Place(CivModel.Terrain.Point)"> <member name="M:CivModel.TileObjectProduction.CorePlace(CivModel.Terrain.Point)">
<summary> <summary>
Places the production result at the specified point. Places the production result at the specified point.
</summary> </summary>
<param name="point">The point to place the production result.</param> <param name="point">The point to place the production result.</param>
<exception cref="T:System.InvalidOperationException">production is not completed yet</exception> <exception cref="T:System.InvalidOperationException">production is not completed yet</exception>
<exception cref="T:System.ArgumentException">point is invalid</exception> <exception cref="T:System.ArgumentException">point is invalid</exception>
<returns>The production result.</returns>
</member>
<member name="T:CivModel.IVictoryCondition">
<summary>
The interface represents a victory condition that <see cref="T:CivModel.Player"/> can achieve.
</summary>
</member>
<member name="M:CivModel.IVictoryCondition.CheckVictory(CivModel.Player)">
<summary>
Checks whether <see cref="T:CivModel.Player"/> has achieved this victory condition.
</summary>
<param name="player">The player.</param>
<returns>whether <see cref="T:CivModel.Player"/> has achieved this victory condition</returns>
<remarks>
Victory check is done after draw check, before defeat check.
</remarks>
</member>
<member name="M:CivModel.IVictoryCondition.DoVictory(CivModel.Player)">
<summary>
Called when <see cref="T:CivModel.Player"/> achieves this victory.
</summary>
<param name="player">The player.</param>
</member>
<member name="T:CivModel.IDefeatCondition">
<summary>
The interface represents a defeat condition that <see cref="T:CivModel.Player"/> can achieve.
</summary>
</member>
<member name="M:CivModel.IDefeatCondition.CheckDefeat(CivModel.Player)">
<summary>
Checks whether <see cref="T:CivModel.Player"/> has achieved this defeat condition.
</summary>
<param name="player">The player.</param>
<returns>whether <see cref="T:CivModel.Player"/> has achieved this defeat condition</returns>
<remarks>
Defeat check is done after draw check and victory check.
</remarks>
</member>
<member name="M:CivModel.IDefeatCondition.DoDefeat(CivModel.Player)">
<summary>
Called when <see cref="T:CivModel.Player"/> achieves this defeat.
</summary>
<param name="player">The player.</param>
</member>
<member name="T:CivModel.IDrawCondition">
<summary>
The interface represents a draw condition that <see cref="T:CivModel.Player"/> can achieve.
</summary>
</member>
<member name="M:CivModel.IDrawCondition.CheckDraw(CivModel.Player)">
<summary>
Checks whether <see cref="T:CivModel.Player"/> has achieved this draw condition.
</summary>
<param name="player">The player.</param>
<returns>whether <see cref="T:CivModel.Player"/> has achieved this draw condition</returns>
<remarks>
Draw check is done before victory check or defeat check.
If you want to check draw condition when player achieves both victory and defeat simultaneously,
implements <see cref="M:CivModel.IDrawCondition.OnBothVictoriedAndDefeated(CivModel.Player,CivModel.IVictoryCondition,CivModel.IDefeatCondition)"/>.
</remarks>
</member>
<member name="M:CivModel.IDrawCondition.OnBothVictoriedAndDefeated(CivModel.Player,CivModel.IVictoryCondition,CivModel.IDefeatCondition)">
<summary>
Checks whether <see cref="T:CivModel.Player"/> has achieved this draw condition
when <paramref name="player"/> achieves both victory and defeat.
</summary>
<param name="player">The player.</param>
<param name="victory">The victory that player achieves.</param>
<param name="defeat">The defeat that player achieves.</param>
<returns>whether <see cref="T:CivModel.Player"/> has achieved this draw condition</returns>
<remarks>
This method is called when player achieves both victory and defeat simultaneously.
If you want to check draw condition manually, implements <see cref="M:CivModel.IDrawCondition.CheckDraw(CivModel.Player)"/>.
</remarks>
</member>
<member name="M:CivModel.IDrawCondition.DoDraw(CivModel.Player)">
<summary>
Called when <see cref="T:CivModel.Player"/> achieves this draw.
</summary>
<param name="player">The player.</param>
</member> </member>
</members> </members>
</doc> </doc>
fileFormatVersion: 2 fileFormatVersion: 2
guid: cee68df68e8b40244940bf89361f4802 guid: a3d1125522da4414080659d3eb2f52f7
TextScriptImporter: TextScriptImporter:
externalObjects: {} externalObjects: {}
userData: userData:
......
<?xml version="1.0"?>
<doc>
<assembly>
<name>CivPresenter</name>
</assembly>
<members>
<member name="T:CivPresenter.Direction">
<summary>
Represents a direction.
</summary>
</member>
<member name="F:CivPresenter.Direction.Up">
<summary>
Up direction
</summary>
</member>
<member name="F:CivPresenter.Direction.Down">
<summary>
Down direction
</summary>
</member>
<member name="F:CivPresenter.Direction.Left">
<summary>
Left direction
</summary>
</member>
<member name="F:CivPresenter.Direction.Right">
<summary>
Right direction
</summary>
</member>
<member name="T:CivPresenter.IView">
<summary>
The interface represents a View.
</summary>
</member>
<member name="M:CivPresenter.IView.Refocus">
<summary>
Called when view should refocus on <see cref="P:CivPresenter.Presenter.FocusedPoint"/>
</summary>
</member>
<member name="M:CivPresenter.IView.Shutdown">
<summary>
Called when the game should be shutdown.
</summary>
</member>
<member name="M:CivPresenter.IView.Invoke(System.Action)">
<summary>
Invokes the specified action in the UI thread. This method must be thread-safe.
</summary>
<param name="action">The action.</param>
</member>
<member name="T:CivPresenter.NamespaceDoc">
<summary>
The <see cref="N:CivPresenter"/> namespace of CivPresenter.dll module
provides <see cref="T:CivPresenter.Presenter"/> class and other utils for it.
</summary>
</member>
<member name="T:CivPresenter.Presenter">
<summary>
Represents a presenter.
</summary>
<remarks>
The presenter works like a Finite State Machine.
<see cref="P:CivPresenter.Presenter.State"/> is changed by Command~~~ operations.
</remarks>
</member>
<member name="P:CivPresenter.Presenter.View">
<summary>
The <see cref="T:CivPresenter.IView"/> object
</summary>
</member>
<member name="P:CivPresenter.Presenter.Game">
<summary>
The <see cref="P:CivPresenter.Presenter.Game"/> object
</summary>
</member>
<member name="P:CivPresenter.Presenter.SelectedActor">
<summary>
The selected <see cref="T:CivModel.Actor"/>.
</summary>
</member>
<member name="P:CivPresenter.Presenter.FocusedPoint">
<summary>
The focused <see cref="T:CivModel.Terrain.Point"/>.
This point can be changed by [arrow key] command, or View's calling setter.
</summary>
</member>
<member name="P:CivPresenter.Presenter.IsThereTodos">
<summary>
Whether there is something to do in this turn.
If this value is <c>false</c>, user can go to the next turn
</summary>
</member>
<member name="P:CivPresenter.Presenter.RunningAction">
<summary>
The <see cref="T:CivModel.IReadOnlyActorAction"/> object used now.
<c>null</c> if no action is being done.
</summary>
</member>
<member name="P:CivPresenter.Presenter.SelectedInvestment">
<summary>
Index of the selected investment.
If <see cref="P:CivPresenter.Presenter.SelectedProduction"/> is not <c>-1</c>, this value is <c>-1</c>.
This value is valid iff <c><see cref="P:CivPresenter.Presenter.State"/> == <see cref="F:CivPresenter.Presenter.States.ProductUI"/></c>.
See remarks section for information about the value.
</summary>
<remarks>
<list type="bullet">
<item><c>0</c> if <see cref="P:CivModel.Player.TaxRate"/> is selected.</item>
<item><c>1</c> if <see cref="P:CivModel.Player.EconomicInvestmentRatio"/> is selected.</item>
<item><c>2</c> if <see cref="P:CivModel.Player.ResearchInvestmentRatio"/> is selected.</item>
<item><c>3</c> if <see cref="P:CivModel.Player.RepairInvestmentRatio"/> is selected.</item>
<item><c>-1</c> if there is no selected deploy.</item>
</list>
</remarks>
</member>
<member name="P:CivPresenter.Presenter.SelectedDeploy">
<summary>
Index of the selected deploy to <see cref="P:CivModel.Player.Deployment"/> list.
<c>-1</c> if there is no selected deploy.
If <see cref="P:CivPresenter.Presenter.SelectedProduction"/> or <see cref="P:CivPresenter.Presenter.SelectedInvestment"/> is not <c>-1</c>, this value is <c>-1</c>.
This value is valid iff <c><see cref="P:CivPresenter.Presenter.State"/> == <see cref="F:CivPresenter.Presenter.States.ProductUI"/></c>.
</summary>
</member>
<member name="P:CivPresenter.Presenter.SelectedProduction">
<summary>
Index of the selected production to <see cref="P:CivModel.Player.Production"/> list.
<c>-1</c> if there is no selected production.
If <see cref="P:CivPresenter.Presenter.SelectedDeploy"/> or <see cref="P:CivPresenter.Presenter.SelectedInvestment"/> is not <c>-1</c>, this value is <c>-1</c>.
This value is valid iff <c><see cref="P:CivPresenter.Presenter.State"/> == <see cref="F:CivPresenter.Presenter.States.ProductUI"/> || <see cref="P:CivPresenter.Presenter.State"/> == <see cref="F:CivPresenter.Presenter.States.ProductAdd"/></c>.
</summary>
</member>
<member name="P:CivPresenter.Presenter.IsProductManipulating">
<summary>
Whether user is manipulating a production.
This value is valid iff <c><see cref="P:CivPresenter.Presenter.State"/> == <see cref="F:CivPresenter.Presenter.States.ProductUI"/></c>
</summary>
</member>
<member name="P:CivPresenter.Presenter.AvailableProduction">
<summary>
The list of the available production, retrieved by <see cref="P:CivModel.Player.AvailableProduction"/>
This value is valid iff <c><see cref="P:CivPresenter.Presenter.State"/> == <see cref="F:CivPresenter.Presenter.States.ProductAdd"/></c>
</summary>
</member>
<member name="P:CivPresenter.Presenter.DeployProduction">
<summary>
The production to deploy.
This value is valid iff <c><see cref="P:CivPresenter.Presenter.State"/> == <see cref="F:CivPresenter.Presenter.States.Deploy"/></c>
</summary>
</member>
<member name="P:CivPresenter.Presenter.State">
<summary>
The state of <see cref="T:CivPresenter.Presenter"/>.
</summary>
</member>
<member name="P:CivPresenter.Presenter.StateParam">
<summary>
The parameter of this <see cref="P:CivPresenter.Presenter.State"/>.
This value is valid iff <c><see cref="P:CivPresenter.Presenter.State"/> == <see cref="F:CivPresenter.Presenter.States.SpecialAct"/></c>,
and the value is the number of a special action.
</summary>
</member>
<member name="P:CivPresenter.Presenter.AcceptedQuests">
<summary>
The list of <see cref="T:CivModel.Quest"/> of <see cref="P:CivModel.Game.PlayerInTurn"/> whose status is <see cref="F:CivModel.QuestStatus.Accepted"/>.
This value is valid iff <c><see cref="P:CivPresenter.Presenter.State"/> == <see cref="F:CivPresenter.Presenter.States.Quest"/></c>.
</summary>
</member>
<member name="P:CivPresenter.Presenter.DeployedQuests">
<summary>
The list of <see cref="T:CivModel.Quest"/> of <see cref="P:CivModel.Game.PlayerInTurn"/> whose status is <see cref="F:CivModel.QuestStatus.Deployed"/>.
This value is valid iff <c><see cref="P:CivPresenter.Presenter.State"/> == <see cref="F:CivPresenter.Presenter.States.Quest"/></c>.
</summary>
</member>
<member name="P:CivPresenter.Presenter.CompletedQuests">
<summary>
The list of <see cref="T:CivModel.Quest"/> of <see cref="P:CivModel.Game.PlayerInTurn"/> whose status is <see cref="F:CivModel.QuestStatus.Completed"/>.
This value is valid iff <c><see cref="P:CivPresenter.Presenter.State"/> == <see cref="F:CivPresenter.Presenter.States.Quest"/></c>.
</summary>
</member>
<member name="P:CivPresenter.Presenter.DisabledQuests">
<summary>
The list of <see cref="T:CivModel.Quest"/> of <see cref="P:CivModel.Game.PlayerInTurn"/> whose status is <see cref="F:CivModel.QuestStatus.Disabled"/>.
This value is valid iff <c><see cref="P:CivPresenter.Presenter.State"/> == <see cref="F:CivPresenter.Presenter.States.Quest"/></c>.
</summary>
</member>
<member name="P:CivPresenter.Presenter.SelectedQuest">
<summary>
Index of the selected quest to <see cref="P:CivModel.Player.Quests"/> list.
<c>-1</c> if there is no selected quest.
This value is valid iff <c><see cref="P:CivPresenter.Presenter.State"/> == <see cref="F:CivPresenter.Presenter.States.Quest"/></c>.
</summary>
</member>
<member name="P:CivPresenter.Presenter.SelectedCity">
<summary>
The selected city.
This value is valid iff <c><see cref="P:CivPresenter.Presenter.State"/> == <see cref="F:CivPresenter.Presenter.States.CityView"/></c>.
</summary>
</member>
<member name="P:CivPresenter.Presenter.SaveFile">
<summary>
The path of the save file.
</summary>
</member>
<member name="M:CivPresenter.Presenter.#ctor(CivPresenter.IView)">
<summary>
Initializes a new instance of the <see cref="T:CivPresenter.Presenter"/> class, by creating a new game with testing-purpose parameters.
</summary>
<param name="view">The <see cref="T:CivPresenter.IView"/> object.</param>
<exception cref="T:System.ArgumentNullException"><paramref name="view"/> is <c>null</c></exception>
<remarks>
This constructor calls <see cref="M:CivPresenter.Presenter.#ctor(CivPresenter.IView,System.Int32,System.Int32,System.Int32)"/> constructor with preset testing-purpsoe parameters.
</remarks>
<seealso cref="M:CivPresenter.Presenter.#ctor(CivPresenter.IView,System.Int32,System.Int32,System.Int32)"/>
</member>
<member name="M:CivPresenter.Presenter.#ctor(CivPresenter.IView,System.Int32,System.Int32,System.Int32)">
<summary>
Initializes a new instance of the <see cref="T:CivPresenter.Presenter"/> class, by creating a new game.
</summary>
<param name="view">The <see cref="T:CivPresenter.IView"/> object.</param>
<param name="terrainWidth"><see cref="P:CivModel.Terrain.Width"/> of the new game. If this value is <c>-1</c>, uses default value.</param>
<param name="terrainHeight"><see cref="P:CivModel.Terrain.Height"/> of the new game. If this value is <c>-1</c>, uses default value.</param>
<param name="numOfPlayer">The number of players of the new game. If this value is <c>-1</c>, uses default value.</param>
<exception cref="T:System.ArgumentNullException"><paramref name="view"/> is <c>null</c></exception>
</member>
<member name="M:CivPresenter.Presenter.#ctor(CivPresenter.IView,System.String)">
<summary>
Initializes a new instance of the <see cref="T:CivPresenter.Presenter"/> class, by loading a existing save file.
</summary>
<param name="view">The <see cref="T:CivPresenter.IView"/> object.</param>
<param name="saveFile">The path of the save file to load. If <c>null</c>, create a new game.</param>
<exception cref="T:System.ArgumentNullException"><paramref name="view"/> is <c>null</c></exception>
<remarks>
This constructor calls <see cref="M:CivModel.Game.#ctor(System.String,System.Collections.Generic.IEnumerable{CivModel.IGameSchemeFactory})"/> constructor.
See the <strong>exceptions</strong> and <strong>remarks</strong> parts of
the documentation of <see cref="M:CivModel.Game.#ctor(System.String,System.Collections.Generic.IEnumerable{CivModel.IGameSchemeFactory})"/> constructor.
</remarks>
<seealso cref="M:CivModel.Game.#ctor(System.String,System.Collections.Generic.IEnumerable{CivModel.IGameSchemeFactory})"/>
</member>
<member name="M:CivPresenter.Presenter.CommandApply">
<summary>
Gives the command [apply].
</summary>
</member>
<member name="M:CivPresenter.Presenter.CommandCancel">
<summary>
Gives the command [cancel].
</summary>
</member>
<member name="M:CivPresenter.Presenter.CommandArrowKey(CivPresenter.Direction)">
<summary>
Gives the command [arrow key].
</summary>
<param name="direction">The direction.</param>
</member>
<member name="M:CivPresenter.Presenter.CommandNumeric(System.Int32)">
<summary>
Gives the command [numeric].
This method may introduce <see cref="F:CivPresenter.Presenter.States.SpecialAct"/> state
if called when <see cref="F:CivPresenter.Presenter.States.Normal"/> state.
</summary>
<param name="index">The index.</param>
</member>
<member name="M:CivPresenter.Presenter.CommandRemove">
<summary>
Gives the command [remove].
</summary>
</member>
<member name="M:CivPresenter.Presenter.CommandSkip">
<summary>
Gives the command [skip].
</summary>
</member>
<member name="M:CivPresenter.Presenter.CommandSleep">
<summary>
Gives the command [sleep].
</summary>
</member>
<member name="M:CivPresenter.Presenter.CommandRefocus">
<summary>
Gives the command [refocus].
</summary>
</member>
<member name="M:CivPresenter.Presenter.CommandSelect">
<summary>
Gives the command [select].
</summary>
</member>
<member name="M:CivPresenter.Presenter.CommandSave">
<summary>
Gives the command [save].
</summary>
</member>
<member name="M:CivPresenter.Presenter.CommandMove">
<summary>
Gives the command [move].
This method may introduce <see cref="F:CivPresenter.Presenter.States.Move"/> state.
</summary>
</member>
<member name="M:CivPresenter.Presenter.CommandMovingAttack">
<summary>
Gives the command [moving attack].
This method may introduce <see cref="F:CivPresenter.Presenter.States.MovingAttack"/> state.
</summary>
</member>
<member name="M:CivPresenter.Presenter.CommandHoldingAttack">
<summary>
Gives the command [holding attack].
This method may introduce <see cref="F:CivPresenter.Presenter.States.HoldingAttack"/> state.
</summary>
</member>
<member name="M:CivPresenter.Presenter.CommandProductUI">
<summary>
Gives the command [product UI].
This method may introduce <see cref="F:CivPresenter.Presenter.States.ProductUI"/> state.
</summary>
</member>
<member name="M:CivPresenter.Presenter.CommandQuest">
<summary>
Gives the command [quest].
This method may introduce <see cref="F:CivPresenter.Presenter.States.Quest"/> state.
</summary>
</member>
<member name="M:CivPresenter.Presenter.CommandCityView">
<summary>
Gives the command [city view].
This method may introduce <see cref="F:CivPresenter.Presenter.States.CityView"/> state.
</summary>
</member>
<member name="T:CivPresenter.Presenter.States">
<summary>
Indicates the state of <see cref="T:CivPresenter.Presenter"/>.
</summary>
</member>
<member name="F:CivPresenter.Presenter.States.Normal">
<summary>
State [normal]. This is a default state.
</summary>
</member>
<member name="F:CivPresenter.Presenter.States.Move">
<summary>
State [move]. This state indicates user is giving a move action command.
<see cref="M:CivPresenter.Presenter.CommandMove"/> method may introduce this state.
In this state, <see cref="P:CivPresenter.Presenter.RunningAction"/> is set to an action of move.
</summary>
</member>
<member name="F:CivPresenter.Presenter.States.MovingAttack">
<summary>
State [moving attack]. This state indicates user is giving a moving attack action command.
<see cref="M:CivPresenter.Presenter.CommandMovingAttack"/> method may introduce this state.
In this state, <see cref="P:CivPresenter.Presenter.RunningAction"/> is set to an action of moving attack.
</summary>
</member>
<member name="F:CivPresenter.Presenter.States.HoldingAttack">
<summary>
State [holding attack]. This state indicates user is giving a holding attack action command.
<see cref="M:CivPresenter.Presenter.CommandHoldingAttack"/> method may introduce this state.
In this state, <see cref="P:CivPresenter.Presenter.RunningAction"/> is set to an action of holding attack.
</summary>
</member>
<member name="F:CivPresenter.Presenter.States.SpecialAct">
<summary>
State [special act]. This state indicates user is giving a special action command.
<see cref="M:CivPresenter.Presenter.CommandNumeric(System.Int32)"/> method may introduce this state.
In this state, <see cref="P:CivPresenter.Presenter.RunningAction"/> is set to an action of special act,
and <see cref="P:CivPresenter.Presenter.StateParam"/> indicates the index of special act.
</summary>
</member>
<member name="F:CivPresenter.Presenter.States.ProductUI">
<summary>
State [product UI]. This state indicates user is viewing a production UI.
<see cref="M:CivPresenter.Presenter.CommandProductUI"/> method may introduce this state.
In this state, <see cref="P:CivPresenter.Presenter.SelectedDeploy"/> and <see cref="P:CivPresenter.Presenter.SelectedProduction"/> indicate user's selection.
If user is manipulating a selected production, <see cref="P:CivPresenter.Presenter.IsProductManipulating"/> is set.
</summary>
</member>
<member name="F:CivPresenter.Presenter.States.ProductAdd">
<summary>
State [product Add]. This state indicates user is viewing a production addition UI.
This state may be introduced by <see cref="F:CivPresenter.Presenter.States.ProductUI"/> state.
In this state, <see cref="P:CivPresenter.Presenter.SelectedProduction"/> indicates user's selection,
and <see cref="P:CivPresenter.Presenter.AvailableProduction"/> indicates the list of available productions to add.
</summary>
</member>
<member name="F:CivPresenter.Presenter.States.Deploy">
<summary>
State [deploy]. This state indicates user is giving a deployment command.
This state may be introduced by <see cref="F:CivPresenter.Presenter.States.ProductUI"/> state.
In this state, <see cref="P:CivPresenter.Presenter.DeployProduction"/> indicates the production to deploy.
</summary>
</member>
<member name="F:CivPresenter.Presenter.States.Quest">
<summary>
State [quest]. This state indicates user is viewing the list of quests.
<see cref="M:CivPresenter.Presenter.CommandQuest"/> method may introduce this state.
In this state, asdf indicates asdf.
</summary>
</member>
<member name="F:CivPresenter.Presenter.States.Victory">
<summary>
State [victory]. This state indicates user is viewing a <strong>victory</strong> screen.
</summary>
</member>
<member name="F:CivPresenter.Presenter.States.Defeated">
<summary>
State [defeated]. This state indicates user is viewing a <strong>defeated</strong> screen.
</summary>
</member>
<member name="F:CivPresenter.Presenter.States.AIControl">
<summary>
State [AI control]. This state indicates AI player is doing his job now.
</summary>
</member>
<member name="F:CivPresenter.Presenter.States.CityView">
<summary>
State [city view]. This state indicates player is viewint the city.
</summary>
</member>
</members>
</doc>
fileFormatVersion: 2 fileFormatVersion: 2
guid: 550034f48f10fdd4e8e416230ae3be66 guid: aa5b2f0742f68b54e97f632d25449ae7
PluginImporter: PluginImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2
......
...@@ -68,6 +68,13 @@ ...@@ -68,6 +68,13 @@
<member name="P:Microsoft.FSharp.Collections.FSharpMap`2.Count"> <member name="P:Microsoft.FSharp.Collections.FSharpMap`2.Count">
<summary>The number of bindings in the map.</summary> <summary>The number of bindings in the map.</summary>
</member> </member>
<member name="M:Microsoft.FSharp.Collections.FSharpMap`2.TryGetValue(`0,Microsoft.FSharp.Core.byref{`1,Microsoft.FSharp.Core.ByRefKinds.InOut})">
<summary>Lookup an element in the map, assigning to <c>value</c> if the element is in the domain
of the map and returning <c>false</c> if not.</summary>
<param name="key">The input key.</param>
<param name="value">A reference to the output value.</param>
<returns><c>true</c> if the value is present, <c>false</c> if not.</returns>
</member>
<member name="M:Microsoft.FSharp.Collections.FSharpMap`2.TryFind(`0)"> <member name="M:Microsoft.FSharp.Collections.FSharpMap`2.TryFind(`0)">
<summary>Lookup an element in the map, returning a <c>Some</c> value if the element is in the domain <summary>Lookup an element in the map, returning a <c>Some</c> value if the element is in the domain
of the map and <c>None</c> if not.</summary> of the map and <c>None</c> if not.</summary>
...@@ -476,6 +483,15 @@ ...@@ -476,6 +483,15 @@
<exception cref="System.ArgumentNullException">Thrown when the input sequence is null.</exception> <exception cref="System.ArgumentNullException">Thrown when the input sequence is null.</exception>
</member> </member>
<member name="M:Microsoft.FSharp.Collections.SeqModule.Transpose``2(System.Collections.Generic.IEnumerable{``0})">
<summary>Returns the transpose of the given sequence of sequences.</summary>
<remarks>This function returns a sequence that digests the whole initial sequence as soon as
that sequence is iterated. As a result this function should not be used with
large or infinite sequences.</remarks>
<param name="source">The input sequence.</param>
<returns>The transposed sequence.</returns>
<exception cref="System.ArgumentNullException">Thrown when the input sequence is null.</exception>
</member>
<member name="M:Microsoft.FSharp.Collections.SeqModule.TryPick``2(Microsoft.FSharp.Core.FSharpFunc{``0,Microsoft.FSharp.Core.FSharpOption{``1}},System.Collections.Generic.IEnumerable{``0})"> <member name="M:Microsoft.FSharp.Collections.SeqModule.TryPick``2(Microsoft.FSharp.Core.FSharpFunc{``0,Microsoft.FSharp.Core.FSharpOption{``1}},System.Collections.Generic.IEnumerable{``0})">
<summary>Applies the given function to successive elements, returning the first <summary>Applies the given function to successive elements, returning the first
result where the function returns "Some(x)".</summary> result where the function returns "Some(x)".</summary>
...@@ -1597,7 +1613,7 @@ ...@@ -1597,7 +1613,7 @@
null.</exception> null.</exception>
</member> </member>
<member name="M:Microsoft.FSharp.Collections.SeqModule.AllPairs``2(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1})"> <member name="M:Microsoft.FSharp.Collections.SeqModule.AllPairs``2(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1})">
<summary>Returns a new sequence that contains the cartesian product of the two input sequences.</summary> <summary>Returns a new sequence that contains all pairings of elements from the first and second sequences.</summary>
<param name="source1">The first sequence.</param> <param name="source1">The first sequence.</param>
<param name="source2">The second sequence.</param> <param name="source2">The second sequence.</param>
<returns>The result sequence.</returns> <returns>The result sequence.</returns>
...@@ -1707,6 +1723,13 @@ ...@@ -1707,6 +1723,13 @@
<param name="array">The input list.</param> <param name="array">The input list.</param>
<returns>The result list.</returns> <returns>The result list.</returns>
</member> </member>
<member name="M:Microsoft.FSharp.Collections.ListModule.Transpose``1(System.Collections.Generic.IEnumerable{Microsoft.FSharp.Collections.FSharpList{``0}})">
<summary>Returns the transpose of the given sequence of lists.</summary>
<param name="lists">The input sequence of list.</param>
<returns>The transposed list.</returns>
<exception cref="System.ArgumentNullException">Thrown when the input sequence is null.</exception>
<exception cref="System.ArgumentException">Thrown when the input lists differ in length.</exception>
</member>
<member name="M:Microsoft.FSharp.Collections.ListModule.TryHead``1(Microsoft.FSharp.Collections.FSharpList{``0})"> <member name="M:Microsoft.FSharp.Collections.ListModule.TryHead``1(Microsoft.FSharp.Collections.FSharpList{``0})">
<summary>Returns the first element of the list, or <summary>Returns the first element of the list, or
<c>None</c> if the list is empty.</summary> <c>None</c> if the list is empty.</summary>
...@@ -2376,7 +2399,7 @@ ...@@ -2376,7 +2399,7 @@
<returns>The resulting list.</returns> <returns>The resulting list.</returns>
</member> </member>
<member name="M:Microsoft.FSharp.Collections.ListModule.AllPairs``2(Microsoft.FSharp.Collections.FSharpList{``0},Microsoft.FSharp.Collections.FSharpList{``1})"> <member name="M:Microsoft.FSharp.Collections.ListModule.AllPairs``2(Microsoft.FSharp.Collections.FSharpList{``0},Microsoft.FSharp.Collections.FSharpList{``1})">
<summary>Returns a new list that contains the cartesian product of the two input lists.</summary> <summary>Returns a new list that contains all pairings of elements from the first and second lists.</summary>
<param name="list1">The first input list.</param> <param name="list1">The first input list.</param>
<param name="list2">The second input list.</param> <param name="list2">The second input list.</param>
<returns>The resulting list of pairs.</returns> <returns>The resulting list of pairs.</returns>
...@@ -2488,6 +2511,13 @@ ...@@ -2488,6 +2511,13 @@
<returns>The result array.</returns> <returns>The result array.</returns>
<exception cref="System.ArgumentNullException">Thrown when the input array is null.</exception> <exception cref="System.ArgumentNullException">Thrown when the input array is null.</exception>
</member> </member>
<member name="M:Microsoft.FSharp.Collections.ArrayModule.Transpose``1(System.Collections.Generic.IEnumerable{``0[]})">
<summary>Returns the transpose of the given sequence of arrays.</summary>
<param name="arrays">The input sequence of arrays.</param>
<returns>The transposed array.</returns>
<exception cref="System.ArgumentNullException">Thrown when the input sequence is null.</exception>
<exception cref="System.ArgumentException">Thrown when the input arrays differ in length.</exception>
</member>
<member name="M:Microsoft.FSharp.Collections.ArrayModule.ToSeq``1(``0[])"> <member name="M:Microsoft.FSharp.Collections.ArrayModule.ToSeq``1(``0[])">
<summary>Views the given array as a sequence.</summary> <summary>Views the given array as a sequence.</summary>
<param name="array">The input array.</param> <param name="array">The input array.</param>
...@@ -3344,7 +3374,7 @@ ...@@ -3344,7 +3374,7 @@
<exception cref="System.ArgumentNullException">Thrown when either of the input arrays is null.</exception> <exception cref="System.ArgumentNullException">Thrown when either of the input arrays is null.</exception>
</member> </member>
<member name="M:Microsoft.FSharp.Collections.ArrayModule.AllPairs``2(``0[],``1[])"> <member name="M:Microsoft.FSharp.Collections.ArrayModule.AllPairs``2(``0[],``1[])">
<summary>Builds a new array that contains the cartesian product of the two input arrays.</summary> <summary>Returns a new array that contains all pairings of elements from the first and second arrays.</summary>
<param name="array1">The first input array.</param> <param name="array1">The first input array.</param>
<param name="array2">The second input array.</param> <param name="array2">The second input array.</param>
<exception cref="System.ArgumentNullException">Thrown when either of the input arrays is null.</exception> <exception cref="System.ArgumentNullException">Thrown when either of the input arrays is null.</exception>
...@@ -5378,6 +5408,11 @@ ...@@ -5378,6 +5408,11 @@
<member name="T:Microsoft.FSharp.Quotations.PatternsModule"> <member name="T:Microsoft.FSharp.Quotations.PatternsModule">
<summary>Contains a set of primitive F# active patterns to analyze F# expression objects</summary> <summary>Contains a set of primitive F# active patterns to analyze F# expression objects</summary>
</member> </member>
<member name="M:Microsoft.FSharp.NativeInterop.NativePtrModule.ToByRefInlined``1(``0*)">
<summary>Converts a given typed native pointer to a managed pointer.</summary>
<param name="address">The input pointer.</param>
<returns>The managed pointer.</returns>
</member>
<member name="M:Microsoft.FSharp.NativeInterop.NativePtrModule.StackAllocate``1(System.Int32)"> <member name="M:Microsoft.FSharp.NativeInterop.NativePtrModule.StackAllocate``1(System.Int32)">
<summary>Allocates a region of memory on the stack.</summary> <summary>Allocates a region of memory on the stack.</summary>
<param name="count">The number of objects of type T to allocate.</param> <param name="count">The number of objects of type T to allocate.</param>
...@@ -5419,6 +5454,16 @@ ...@@ -5419,6 +5454,16 @@
<param name="address">The input pointer.</param> <param name="address">The input pointer.</param>
<returns>The machine address.</returns> <returns>The machine address.</returns>
</member> </member>
<member name="M:Microsoft.FSharp.NativeInterop.NativePtrModule.OfVoidPtrInlined``1(Microsoft.FSharp.Core.voidptr)">
<summary>Returns a typed native pointer for a untyped native pointer.</summary>
<param name="address">The untyped pointer.</param>
<returns>A typed pointer.</returns>
</member>
<member name="M:Microsoft.FSharp.NativeInterop.NativePtrModule.ToVoidPtrInlined``1(``0*)">
<summary>Returns an untyped native pointer for a given typed pointer.</summary>
<param name="address">The pointer address.</param>
<returns>A typed pointer.</returns>
</member>
<member name="M:Microsoft.FSharp.NativeInterop.NativePtrModule.OfNativeIntInlined``1(System.IntPtr)"> <member name="M:Microsoft.FSharp.NativeInterop.NativePtrModule.OfNativeIntInlined``1(System.IntPtr)">
<summary>Returns a typed native pointer for a given machine address.</summary> <summary>Returns a typed native pointer for a given machine address.</summary>
<param name="address">The pointer address.</param> <param name="address">The pointer address.</param>
...@@ -5507,166 +5552,6 @@ ...@@ -5507,166 +5552,6 @@
<member name="T:Microsoft.FSharp.Control.FSharpDelegateEvent`1"> <member name="T:Microsoft.FSharp.Control.FSharpDelegateEvent`1">
<summary>Event implementations for an arbitrary type of delegate.</summary> <summary>Event implementations for an arbitrary type of delegate.</summary>
</member> </member>
<member name="P:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.DefaultTimeout(System.Int32)">
<summary>Raises a timeout exception if a message not received in this amount of time. By default
no timeout is used.</summary>
</member>
<member name="M:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.remove_Error(Microsoft.FSharp.Control.FSharpHandler{System.Exception})">
<summary>Occurs when the execution of the agent results in an exception.</summary>
</member>
<member name="P:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.Error">
<summary>Occurs when the execution of the agent results in an exception.</summary>
</member>
<member name="P:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.DefaultTimeout">
<summary>Raises a timeout exception if a message not received in this amount of time. By default
no timeout is used.</summary>
</member>
<member name="P:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.CurrentQueueLength">
<summary>Returns the number of unprocessed messages in the message queue of the agent.</summary>
</member>
<member name="M:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.add_Error(Microsoft.FSharp.Control.FSharpHandler{System.Exception})">
<summary>Occurs when the execution of the agent results in an exception.</summary>
</member>
<member name="M:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.TryScan``1(Microsoft.FSharp.Core.FSharpFunc{`0,Microsoft.FSharp.Core.FSharpOption{Microsoft.FSharp.Control.FSharpAsync{``0}}},Microsoft.FSharp.Core.FSharpOption{System.Int32})">
<summary>Scans for a message by looking through messages in arrival order until <c>scanner</c>
returns a Some value. Other messages remain in the queue.</summary>
<remarks>This method is for use within the body of the agent. For each agent, at most
one concurrent reader may be active, so no more than one concurrent call to
Receive, TryReceive, Scan and/or TryScan may be active.</remarks>
<param name="scanner">The function to return None if the message is to be skipped
or Some if the message is to be processed and removed from the queue.</param>
<param name="timeout">An optional timeout in milliseconds. Defaults to -1 which corresponds
to <c>System.Threading.Timeout.Infinite</c>.</param>
<returns>An asynchronous computation that <c>scanner</c> built off the read message.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.TryReceive(Microsoft.FSharp.Core.FSharpOption{System.Int32})">
<summary>Waits for a message. This will consume the first message in arrival order.</summary>
<remarks>This method is for use within the body of the agent.
Returns None if a timeout is given and the timeout is exceeded.
This method is for use within the body of the agent. For each agent, at most
one concurrent reader may be active, so no more than one concurrent call to
Receive, TryReceive, Scan and/or TryScan may be active.</remarks>
<param name="timeout">An optional timeout in milliseconds. Defaults to -1 which
corresponds to <c>System.Threading.Timeout.Infinite</c>.</param>
<returns>An asynchronous computation that returns the received message or
None if the timeout is exceeded.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.TryPostAndReply``1(Microsoft.FSharp.Core.FSharpFunc{Microsoft.FSharp.Control.FSharpAsyncReplyChannel{``0},`0},Microsoft.FSharp.Core.FSharpOption{System.Int32})">
<summary>Like PostAndReply, but returns None if no reply within the timeout period.</summary>
<param name="buildMessage">The function to incorporate the AsyncReplyChannel into
the message to be sent.</param>
<param name="timeout">An optional timeout parameter (in milliseconds) to wait for a reply message.
Defaults to -1 which corresponds to <c>System.Threading.Timeout.Infinite</c>.</param>
<returns>The reply from the agent or None if the timeout expires.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.Start">
<summary>Starts the agent.</summary>
</member>
<member name="M:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.Start(Microsoft.FSharp.Core.FSharpFunc{Microsoft.FSharp.Control.FSharpMailboxProcessor{`0},Microsoft.FSharp.Control.FSharpAsync{Microsoft.FSharp.Core.Unit}},Microsoft.FSharp.Core.FSharpOption{System.Threading.CancellationToken})">
<summary>Creates and starts an agent. The <c>body</c> function is used to generate the asynchronous
computation executed by the agent.</summary>
<param name="body">The function to produce an asynchronous computation that will be executed
as the read loop for the MailboxProcessor when Start is called.</param>
<param name="cancellationToken">An optional cancellation token for the <c>body</c>.
Defaults to <c>Async.DefaultCancellationToken</c>.</param>
<returns>The created MailboxProcessor.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.Scan``1(Microsoft.FSharp.Core.FSharpFunc{`0,Microsoft.FSharp.Core.FSharpOption{Microsoft.FSharp.Control.FSharpAsync{``0}}},Microsoft.FSharp.Core.FSharpOption{System.Int32})">
<summary>Scans for a message by looking through messages in arrival order until <c>scanner</c>
returns a Some value. Other messages remain in the queue.</summary>
<remarks>Returns None if a timeout is given and the timeout is exceeded.
This method is for use within the body of the agent. For each agent, at most
one concurrent reader may be active, so no more than one concurrent call to
Receive, TryReceive, Scan and/or TryScan may be active.</remarks>
<param name="scanner">The function to return None if the message is to be skipped
or Some if the message is to be processed and removed from the queue.</param>
<param name="timeout">An optional timeout in milliseconds. Defaults to -1 which corresponds
to <c>System.Threading.Timeout.Infinite</c>.</param>
<returns>An asynchronous computation that <c>scanner</c> built off the read message.</returns>
<exception cref="System.TimeoutException">Thrown when the timeout is exceeded.</exception>
</member>
<member name="M:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.Receive(Microsoft.FSharp.Core.FSharpOption{System.Int32})">
<summary>Waits for a message. This will consume the first message in arrival order.</summary>
<remarks>This method is for use within the body of the agent.
This method is for use within the body of the agent. For each agent, at most
one concurrent reader may be active, so no more than one concurrent call to
Receive, TryReceive, Scan and/or TryScan may be active.</remarks>
<param name="timeout">An optional timeout in milliseconds. Defaults to -1 which corresponds
to <c>System.Threading.Timeout.Infinite</c>.</param>
<returns>An asynchronous computation that returns the received message.</returns>
<exception cref="System.TimeoutException">Thrown when the timeout is exceeded.</exception>
</member>
<member name="M:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.PostAndTryAsyncReply``1(Microsoft.FSharp.Core.FSharpFunc{Microsoft.FSharp.Control.FSharpAsyncReplyChannel{``0},`0},Microsoft.FSharp.Core.FSharpOption{System.Int32})">
<summary>Like AsyncPostAndReply, but returns None if no reply within the timeout period.</summary>
<param name="buildMessage">The function to incorporate the AsyncReplyChannel into
the message to be sent.</param>
<param name="timeout">An optional timeout parameter (in milliseconds) to wait for a reply message.
Defaults to -1 which corresponds to <c>System.Threading.Timeout.Infinite</c>.</param>
<returns>An asynchronous computation that will return the reply or None if the timeout expires.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.PostAndReply``1(Microsoft.FSharp.Core.FSharpFunc{Microsoft.FSharp.Control.FSharpAsyncReplyChannel{``0},`0},Microsoft.FSharp.Core.FSharpOption{System.Int32})">
<summary>Posts a message to an agent and await a reply on the channel, synchronously.</summary>
<remarks>The message is generated by applying <c>buildMessage</c> to a new reply channel
to be incorporated into the message. The receiving agent must process this
message and invoke the Reply method on this reply channel precisely once.</remarks>
<param name="buildMessage">The function to incorporate the AsyncReplyChannel into
the message to be sent.</param>
<param name="timeout">An optional timeout parameter (in milliseconds) to wait for a reply message.
Defaults to -1 which corresponds to <c>System.Threading.Timeout.Infinite</c>.</param>
<returns>The reply from the agent.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.PostAndAsyncReply``1(Microsoft.FSharp.Core.FSharpFunc{Microsoft.FSharp.Control.FSharpAsyncReplyChannel{``0},`0},Microsoft.FSharp.Core.FSharpOption{System.Int32})">
<summary>Posts a message to an agent and await a reply on the channel, asynchronously.</summary>
<remarks>The message is generated by applying <c>buildMessage</c> to a new reply channel
to be incorporated into the message. The receiving agent must process this
message and invoke the Reply method on this reply channel precisely once.</remarks>
<param name="buildMessage">The function to incorporate the AsyncReplyChannel into
the message to be sent.</param>
<param name="timeout">An optional timeout parameter (in milliseconds) to wait for a reply message.
Defaults to -1 which corresponds to <c>System.Threading.Timeout.Infinite</c>.</param>
<returns>An asynchronous computation that will wait for the reply from the agent.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.Post(`0)">
<summary>Posts a message to the message queue of the MailboxProcessor, asynchronously.</summary>
<param name="message">The message to post.</param>
</member>
<member name="M:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.#ctor(Microsoft.FSharp.Core.FSharpFunc{Microsoft.FSharp.Control.FSharpMailboxProcessor{`0},Microsoft.FSharp.Control.FSharpAsync{Microsoft.FSharp.Core.Unit}},Microsoft.FSharp.Core.FSharpOption{System.Threading.CancellationToken})">
<summary>Creates an agent. The <c>body</c> function is used to generate the asynchronous
computation executed by the agent. This function is not executed until
<c>Start</c> is called.</summary>
<param name="body">The function to produce an asynchronous computation that will be executed
as the read loop for the MailboxProcessor when Start is called.</param>
<param name="cancellationToken">An optional cancellation token for the <c>body</c>.
Defaults to <c>Async.DefaultCancellationToken</c>.</param>
<returns>The created MailboxProcessor.</returns>
</member>
<member name="T:Microsoft.FSharp.Control.FSharpMailboxProcessor`1">
<summary>A message-processing agent which executes an asynchronous computation.</summary>
<remarks>The agent encapsulates a message queue that supports multiple-writers and
a single reader agent. Writers send messages to the agent by using the Post
method and its variations.
The agent may wait for messages using the Receive or TryReceive methods or
scan through all available messages using the Scan or TryScan method.</remarks>
</member>
<member name="M:Microsoft.FSharp.Control.FSharpAsyncReplyChannel`1.Reply(`0)">
<summary>Sends a reply to a PostAndReply message.</summary>
<param name="value">The value to send.</param>
</member>
<member name="T:Microsoft.FSharp.Control.FSharpAsyncReplyChannel`1">
<summary>A handle to a capability to reply to a PostAndReply message.</summary>
</member>
<member name="M:Microsoft.FSharp.Control.FSharpAsyncBuilder.Zero"> <member name="M:Microsoft.FSharp.Control.FSharpAsyncBuilder.Zero">
<summary>Creates an asynchronous computation that just returns <c>()</c>.</summary> <summary>Creates an asynchronous computation that just returns <c>()</c>.</summary>
...@@ -5711,6 +5596,7 @@ ...@@ -5711,6 +5596,7 @@
The existence of this method permits the use of <c>try/with</c> in the The existence of this method permits the use of <c>try/with</c> in the
<c>async { ... }</c> computation expression syntax.</remarks> <c>async { ... }</c> computation expression syntax.</remarks>
<param name="computation">The input computation.</param> <param name="computation">The input computation.</param>
<param name="catchHandler">The function to run when <c>computation</c> throws an exception.</param> <param name="catchHandler">The function to run when <c>computation</c> throws an exception.</param>
<returns>An asynchronous computation that executes <c>computation</c> and calls <c>catchHandler</c> if an <returns>An asynchronous computation that executes <c>computation</c> and calls <c>catchHandler</c> if an
...@@ -5806,6 +5692,40 @@ ...@@ -5806,6 +5692,40 @@
<member name="T:Microsoft.FSharp.Control.FSharpAsyncBuilder"> <member name="T:Microsoft.FSharp.Control.FSharpAsyncBuilder">
<summary>The type of the <c>async</c> operator, used to build workflows for asynchronous computations.</summary> <summary>The type of the <c>async</c> operator, used to build workflows for asynchronous computations.</summary>
</member> </member>
<member name="P:Microsoft.FSharp.Control.AsyncActivation`1.IsCancellationRequested">
<summary>The F# compiler emits calls to this function to implement F# async expressions.</summary>
<returns>A value indicating asynchronous execution.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.AsyncActivation`1.QueueContinuationWithTrampoline(`0)">
<summary>
Used by MailboxProcessor
</summary>
</member>
<member name="M:Microsoft.FSharp.Control.AsyncActivation`1.OnSuccess(`0)">
<summary>The F# compiler emits calls to this function to implement F# async expressions.</summary>
<returns>A value indicating asynchronous execution.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.AsyncActivation`1.OnExceptionRaised">
<summary>The F# compiler emits calls to this function to implement F# async expressions.</summary>
</member>
<member name="M:Microsoft.FSharp.Control.AsyncActivation`1.OnCancellation">
<summary>The F# compiler emits calls to this function to implement F# async expressions.</summary>
<returns>A value indicating asynchronous execution.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.AsyncActivation`1.CallContinuation(`0)">
<summary>
Used by MailboxProcessor
</summary>
</member>
<member name="T:Microsoft.FSharp.Control.AsyncActivation`1">
<summary>The F# compiler emits references to this type to implement F# async expressions.</summary>
</member>
<member name="T:Microsoft.FSharp.Control.AsyncReturn">
<summary>The F# compiler emits references to this type to implement F# async expressions.</summary>
</member>
<member name="P:Microsoft.FSharp.Control.FSharpAsync.DefaultCancellationToken"> <member name="P:Microsoft.FSharp.Control.FSharpAsync.DefaultCancellationToken">
<summary>Gets the default cancellation token for executing asynchronous computations.</summary> <summary>Gets the default cancellation token for executing asynchronous computations.</summary>
<returns>The default CancellationToken.</returns> <returns>The default CancellationToken.</returns>
...@@ -5856,6 +5776,20 @@ ...@@ -5856,6 +5776,20 @@
<param name="cancellationToken">The <c>CancellationToken</c> to associate with the computation. <param name="cancellationToken">The <c>CancellationToken</c> to associate with the computation.
The default is used if this parameter is not provided.</param> The default is used if this parameter is not provided.</param>
</member> </member>
<member name="M:Microsoft.FSharp.Control.FSharpAsync.StartImmediateAsTask``1(Microsoft.FSharp.Control.FSharpAsync{``0},Microsoft.FSharp.Core.FSharpOption{System.Threading.CancellationToken})">
<summary>Runs an asynchronous computation, starting immediately on the current operating system,
but also returns the execution as <c>System.Threading.Tasks.Task</c>
</summary>
<remarks>If no cancellation token is provided then the default cancellation token is used.
You may prefer using this method if you want to achive a similar behviour to async await in C# as
async computation starts on the current thread with an ability to return a result.
</remarks>
<param name="computation">The asynchronous computation to execute.</param>
<param name="cancellationToken">The <c>CancellationToken</c> to associate with the computation.
The default is used if this parameter is not provided.</param>
<returns>A <c>System.Threading.Tasks.Task</c> that will be completed
in the corresponding state once the computation terminates (produces the result, throws exception or gets canceled)</returns>
</member>
<member name="M:Microsoft.FSharp.Control.FSharpAsync.StartImmediate(Microsoft.FSharp.Control.FSharpAsync{Microsoft.FSharp.Core.Unit},Microsoft.FSharp.Core.FSharpOption{System.Threading.CancellationToken})"> <member name="M:Microsoft.FSharp.Control.FSharpAsync.StartImmediate(Microsoft.FSharp.Control.FSharpAsync{Microsoft.FSharp.Core.Unit},Microsoft.FSharp.Core.FSharpOption{System.Threading.CancellationToken})">
<summary>Runs an asynchronous computation, starting immediately on the current operating system <summary>Runs an asynchronous computation, starting immediately on the current operating system
thread.</summary> thread.</summary>
...@@ -5915,6 +5849,20 @@ ...@@ -5915,6 +5849,20 @@
and not infinite.</exception> and not infinite.</exception>
</member> </member>
<member name="M:Microsoft.FSharp.Control.FSharpAsync.RunSynchronously``1(Microsoft.FSharp.Control.FSharpAsync{``0},Microsoft.FSharp.Core.FSharpOption{System.Int32},Microsoft.FSharp.Core.FSharpOption{System.Threading.CancellationToken})"> <member name="M:Microsoft.FSharp.Control.FSharpAsync.RunSynchronously``1(Microsoft.FSharp.Control.FSharpAsync{``0},Microsoft.FSharp.Core.FSharpOption{System.Int32},Microsoft.FSharp.Core.FSharpOption{System.Threading.CancellationToken})">
<summary>Runs the asynchronous computation and await its result.</summary>
<remarks>If an exception occurs in the asynchronous computation then an exception is re-raised by this
function.
If no cancellation token is provided then the default cancellation token is used.
The timeout parameter is given in milliseconds. A value of -1 is equivalent to
System.Threading.Timeout.Infinite.</remarks>
<param name="computation">The computation to run.</param>
<param name="timeout">The amount of time in milliseconds to wait for the result of the
computation before raising a <c>System.TimeoutException</c>. If no value is provided
for timeout then a default of -1 is used to correspond to System.Threading.Timeout.Infinite.
If a cancellable cancellationToken is provided, timeout parameter will be ignored</param>
<param name="cancellationToken">The cancellation token to be associated with the computation. <param name="cancellationToken">The cancellation token to be associated with the computation.
If one is not supplied, the default cancellation token is used.</param> If one is not supplied, the default cancellation token is used.</param>
<returns>The result of the computation.</returns> <returns>The result of the computation.</returns>
...@@ -6177,44 +6125,320 @@ ...@@ -6177,44 +6125,320 @@
computation expressions can check the cancellation condition regularly. Synchronous computation expressions can check the cancellation condition regularly. Synchronous
computations within an asynchronous computation do not automatically check this condition.</remarks> computations within an asynchronous computation do not automatically check this condition.</remarks>
</member> </member>
<member name="M:Microsoft.FSharp.Control.LazyExtensions.Force``1(System.Lazy{``0})"> <member name="P:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.DefaultTimeout(System.Int32)">
<summary>Forces the execution of this value and return its result. Same as Value. Mutual exclusion is used to <summary>Raises a timeout exception if a message not received in this amount of time. By default
prevent other threads also computing the value.</summary> no timeout is used.</summary>
<returns>The value of the Lazy object.</returns>
</member> </member>
<member name="M:Microsoft.FSharp.Control.LazyExtensions.CreateFromValue``1(``0)"> <member name="M:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.remove_Error(Microsoft.FSharp.Control.FSharpHandler{System.Exception})">
<summary>Creates a lazy computation that evaluates to the given value when forced.</summary> <summary>Occurs when the execution of the agent results in an exception.</summary>
<param name="value">The input value.</param>
<returns>The created Lazy object.</returns>
</member> </member>
<member name="M:Microsoft.FSharp.Control.LazyExtensions.Create``1(Microsoft.FSharp.Core.FSharpFunc{Microsoft.FSharp.Core.Unit,``0})"> <member name="P:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.Error">
<summary>Creates a lazy computation that evaluates to the result of the given function when forced.</summary> <summary>Occurs when the execution of the agent results in an exception.</summary>
<param name="creator">The function to provide the value when needed.</param>
<returns>The created Lazy object.</returns>
</member> </member>
<member name="T:Microsoft.FSharp.Control.LazyExtensions"> <member name="P:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.DefaultTimeout">
<summary>Extensions related to Lazy values.</summary> <summary>Raises a timeout exception if a message not received in this amount of time. By default
no timeout is used.</summary>
</member> </member>
<member name="M:Microsoft.FSharp.Control.EventModule.Pairwise``2(Microsoft.FSharp.Control.IEvent{``0,``1})"> <member name="P:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.CurrentQueueLength">
<summary>Returns a new event that triggers on the second and subsequent triggerings of the input event. <summary>Returns the number of unprocessed messages in the message queue of the agent.</summary>
The Nth triggering of the input event passes the arguments from the N-1th and Nth triggering as
a pair. The argument passed to the N-1th triggering is held in hidden internal state until the
Nth triggering occurs.</summary>
<param name="sourceEvent">The input event.</param>
<returns>An event that triggers on pairs of consecutive values passed from the source event.</returns>
</member> </member>
<member name="M:Microsoft.FSharp.Control.EventModule.Add``2(Microsoft.FSharp.Core.FSharpFunc{``0,Microsoft.FSharp.Core.Unit},Microsoft.FSharp.Control.IEvent{``1,``0})"> <member name="M:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.add_Error(Microsoft.FSharp.Control.FSharpHandler{System.Exception})">
<summary>Runs the given function each time the given event is triggered.</summary> <summary>Occurs when the execution of the agent results in an exception.</summary>
<param name="callback">The function to call when the event is triggered.</param>
<param name="sourceEvent">The input event.</param>
</member> </member>
<member name="M:Microsoft.FSharp.Control.EventModule.Scan``3(Microsoft.FSharp.Core.FSharpFunc{``0,Microsoft.FSharp.Core.FSharpFunc{``1,``0}},``0,Microsoft.FSharp.Control.IEvent{``2,``1})"> <member name="M:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.TryScan``1(Microsoft.FSharp.Core.FSharpFunc{`0,Microsoft.FSharp.Core.FSharpOption{Microsoft.FSharp.Control.FSharpAsync{``0}}},Microsoft.FSharp.Core.FSharpOption{System.Int32})">
<summary>Returns a new event consisting of the results of applying the given accumulating function <summary>Scans for a message by looking through messages in arrival order until <c>scanner</c>
to successive values triggered on the input event. An item of internal state returns a Some value. Other messages remain in the queue.</summary>
records the current value of the state parameter. The internal state is not locked during the
execution of the accumulation function, so care should be taken that the <remarks>This method is for use within the body of the agent. For each agent, at most
input IEvent not triggered by multiple threads simultaneously.</summary> one concurrent reader may be active, so no more than one concurrent call to
<param name="collector">The function to update the state with each event value.</param> Receive, TryReceive, Scan and/or TryScan may be active.</remarks>
<param name="scanner">The function to return None if the message is to be skipped
or Some if the message is to be processed and removed from the queue.</param>
<param name="timeout">An optional timeout in milliseconds. Defaults to -1 which corresponds
to <c>System.Threading.Timeout.Infinite</c>.</param>
<returns>An asynchronous computation that <c>scanner</c> built off the read message.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.TryReceive(Microsoft.FSharp.Core.FSharpOption{System.Int32})">
<summary>Waits for a message. This will consume the first message in arrival order.</summary>
<remarks>This method is for use within the body of the agent.
Returns None if a timeout is given and the timeout is exceeded.
This method is for use within the body of the agent. For each agent, at most
one concurrent reader may be active, so no more than one concurrent call to
Receive, TryReceive, Scan and/or TryScan may be active.</remarks>
<param name="timeout">An optional timeout in milliseconds. Defaults to -1 which
corresponds to <c>System.Threading.Timeout.Infinite</c>.</param>
<returns>An asynchronous computation that returns the received message or
None if the timeout is exceeded.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.TryPostAndReply``1(Microsoft.FSharp.Core.FSharpFunc{Microsoft.FSharp.Control.FSharpAsyncReplyChannel{``0},`0},Microsoft.FSharp.Core.FSharpOption{System.Int32})">
<summary>Like PostAndReply, but returns None if no reply within the timeout period.</summary>
<param name="buildMessage">The function to incorporate the AsyncReplyChannel into
the message to be sent.</param>
<param name="timeout">An optional timeout parameter (in milliseconds) to wait for a reply message.
Defaults to -1 which corresponds to <c>System.Threading.Timeout.Infinite</c>.</param>
<returns>The reply from the agent or None if the timeout expires.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.Start">
<summary>Starts the agent.</summary>
</member>
<member name="M:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.Start(Microsoft.FSharp.Core.FSharpFunc{Microsoft.FSharp.Control.FSharpMailboxProcessor{`0},Microsoft.FSharp.Control.FSharpAsync{Microsoft.FSharp.Core.Unit}},Microsoft.FSharp.Core.FSharpOption{System.Threading.CancellationToken})">
<summary>Creates and starts an agent. The <c>body</c> function is used to generate the asynchronous
computation executed by the agent.</summary>
<param name="body">The function to produce an asynchronous computation that will be executed
as the read loop for the MailboxProcessor when Start is called.</param>
<param name="cancellationToken">An optional cancellation token for the <c>body</c>.
Defaults to <c>Async.DefaultCancellationToken</c>.</param>
<returns>The created MailboxProcessor.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.Scan``1(Microsoft.FSharp.Core.FSharpFunc{`0,Microsoft.FSharp.Core.FSharpOption{Microsoft.FSharp.Control.FSharpAsync{``0}}},Microsoft.FSharp.Core.FSharpOption{System.Int32})">
<summary>Scans for a message by looking through messages in arrival order until <c>scanner</c>
returns a Some value. Other messages remain in the queue.</summary>
<remarks>Returns None if a timeout is given and the timeout is exceeded.
This method is for use within the body of the agent. For each agent, at most
one concurrent reader may be active, so no more than one concurrent call to
Receive, TryReceive, Scan and/or TryScan may be active.</remarks>
<param name="scanner">The function to return None if the message is to be skipped
or Some if the message is to be processed and removed from the queue.</param>
<param name="timeout">An optional timeout in milliseconds. Defaults to -1 which corresponds
to <c>System.Threading.Timeout.Infinite</c>.</param>
<returns>An asynchronous computation that <c>scanner</c> built off the read message.</returns>
<exception cref="System.TimeoutException">Thrown when the timeout is exceeded.</exception>
</member>
<member name="M:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.Receive(Microsoft.FSharp.Core.FSharpOption{System.Int32})">
<summary>Waits for a message. This will consume the first message in arrival order.</summary>
<remarks>This method is for use within the body of the agent.
This method is for use within the body of the agent. For each agent, at most
one concurrent reader may be active, so no more than one concurrent call to
Receive, TryReceive, Scan and/or TryScan may be active.</remarks>
<param name="timeout">An optional timeout in milliseconds. Defaults to -1 which corresponds
to <c>System.Threading.Timeout.Infinite</c>.</param>
<returns>An asynchronous computation that returns the received message.</returns>
<exception cref="System.TimeoutException">Thrown when the timeout is exceeded.</exception>
</member>
<member name="M:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.PostAndTryAsyncReply``1(Microsoft.FSharp.Core.FSharpFunc{Microsoft.FSharp.Control.FSharpAsyncReplyChannel{``0},`0},Microsoft.FSharp.Core.FSharpOption{System.Int32})">
<summary>Like AsyncPostAndReply, but returns None if no reply within the timeout period.</summary>
<param name="buildMessage">The function to incorporate the AsyncReplyChannel into
the message to be sent.</param>
<param name="timeout">An optional timeout parameter (in milliseconds) to wait for a reply message.
Defaults to -1 which corresponds to <c>System.Threading.Timeout.Infinite</c>.</param>
<returns>An asynchronous computation that will return the reply or None if the timeout expires.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.PostAndReply``1(Microsoft.FSharp.Core.FSharpFunc{Microsoft.FSharp.Control.FSharpAsyncReplyChannel{``0},`0},Microsoft.FSharp.Core.FSharpOption{System.Int32})">
<summary>Posts a message to an agent and await a reply on the channel, synchronously.</summary>
<remarks>The message is generated by applying <c>buildMessage</c> to a new reply channel
to be incorporated into the message. The receiving agent must process this
message and invoke the Reply method on this reply channel precisely once.</remarks>
<param name="buildMessage">The function to incorporate the AsyncReplyChannel into
the message to be sent.</param>
<param name="timeout">An optional timeout parameter (in milliseconds) to wait for a reply message.
Defaults to -1 which corresponds to <c>System.Threading.Timeout.Infinite</c>.</param>
<returns>The reply from the agent.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.PostAndAsyncReply``1(Microsoft.FSharp.Core.FSharpFunc{Microsoft.FSharp.Control.FSharpAsyncReplyChannel{``0},`0},Microsoft.FSharp.Core.FSharpOption{System.Int32})">
<summary>Posts a message to an agent and await a reply on the channel, asynchronously.</summary>
<remarks>The message is generated by applying <c>buildMessage</c> to a new reply channel
to be incorporated into the message. The receiving agent must process this
message and invoke the Reply method on this reply channel precisely once.</remarks>
<param name="buildMessage">The function to incorporate the AsyncReplyChannel into
the message to be sent.</param>
<param name="timeout">An optional timeout parameter (in milliseconds) to wait for a reply message.
Defaults to -1 which corresponds to <c>System.Threading.Timeout.Infinite</c>.</param>
<returns>An asynchronous computation that will wait for the reply from the agent.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.Post(`0)">
<summary>Posts a message to the message queue of the MailboxProcessor, asynchronously.</summary>
<param name="message">The message to post.</param>
</member>
<member name="M:Microsoft.FSharp.Control.FSharpMailboxProcessor`1.#ctor(Microsoft.FSharp.Core.FSharpFunc{Microsoft.FSharp.Control.FSharpMailboxProcessor{`0},Microsoft.FSharp.Control.FSharpAsync{Microsoft.FSharp.Core.Unit}},Microsoft.FSharp.Core.FSharpOption{System.Threading.CancellationToken})">
<summary>Creates an agent. The <c>body</c> function is used to generate the asynchronous
computation executed by the agent. This function is not executed until
<c>Start</c> is called.</summary>
<param name="body">The function to produce an asynchronous computation that will be executed
as the read loop for the MailboxProcessor when Start is called.</param>
<param name="cancellationToken">An optional cancellation token for the <c>body</c>.
Defaults to <c>Async.DefaultCancellationToken</c>.</param>
<returns>The created MailboxProcessor.</returns>
</member>
<member name="T:Microsoft.FSharp.Control.FSharpMailboxProcessor`1">
<summary>A message-processing agent which executes an asynchronous computation.</summary>
<remarks>The agent encapsulates a message queue that supports multiple-writers and
a single reader agent. Writers send messages to the agent by using the Post
method and its variations.
The agent may wait for messages using the Receive or TryReceive methods or
scan through all available messages using the Scan or TryScan method.</remarks>
</member>
<member name="M:Microsoft.FSharp.Control.FSharpAsyncReplyChannel`1.Reply(`0)">
<summary>Sends a reply to a PostAndReply message.</summary>
<param name="value">The value to send.</param>
</member>
<member name="T:Microsoft.FSharp.Control.FSharpAsyncReplyChannel`1">
<summary>A handle to a capability to reply to a PostAndReply message.</summary>
</member>
<member name="M:Microsoft.FSharp.Control.LazyExtensions.Force``1(System.Lazy{``0})">
<summary>Forces the execution of this value and return its result. Same as Value. Mutual exclusion is used to
prevent other threads also computing the value.</summary>
<returns>The value of the Lazy object.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.LazyExtensions.CreateFromValue``1(``0)">
<summary>Creates a lazy computation that evaluates to the given value when forced.</summary>
<param name="value">The input value.</param>
<returns>The created Lazy object.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.LazyExtensions.Create``1(Microsoft.FSharp.Core.FSharpFunc{Microsoft.FSharp.Core.Unit,``0})">
<summary>Creates a lazy computation that evaluates to the result of the given function when forced.</summary>
<param name="creator">The function to provide the value when needed.</param>
<returns>The created Lazy object.</returns>
</member>
<member name="T:Microsoft.FSharp.Control.LazyExtensions">
<summary>Extensions related to Lazy values.</summary>
</member>
<member name="M:Microsoft.FSharp.Control.WebExtensions.AsyncDownloadFile(System.Net.WebClient,System.Uri,System.String)">
<summary>Returns an asynchronous computation that, when run, will wait for the download of the given URI to specified file.</summary>
<param name="address">The URI to retrieve.</param>
<param name="fileName">The filename to save download to.</param>
<returns>An asynchronous computation that will wait for the download of the URI to specified file.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.WebExtensions.AsyncDownloadData(System.Net.WebClient,System.Uri)">
<summary>Returns an asynchronous computation that, when run, will wait for the download of the given URI.</summary>
<param name="address">The URI to retrieve.</param>
<returns>An asynchronous computation that will wait for the download of the URI.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.WebExtensions.AsyncDownloadString(System.Net.WebClient,System.Uri)">
<summary>Returns an asynchronous computation that, when run, will wait for the download of the given URI.</summary>
<param name="address">The URI to retrieve.</param>
<returns>An asynchronous computation that will wait for the download of the URI.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.WebExtensions.AsyncGetResponse(System.Net.WebRequest)">
<summary>Returns an asynchronous computation that, when run, will wait for a response to the given WebRequest.</summary>
<returns>An asynchronous computation that waits for response to the <c>WebRequest</c>.</returns>
</member>
<member name="T:Microsoft.FSharp.Control.WebExtensions">
<summary>A module of extension members providing asynchronous operations for some basic Web operations.</summary>
</member>
<member name="M:Microsoft.FSharp.Control.CommonExtensions.SubscribeToObservable``1(System.IObservable{``0},Microsoft.FSharp.Core.FSharpFunc{``0,Microsoft.FSharp.Core.Unit})">
<summary>Connects a listener function to the observable. The listener will
be invoked for each observation. The listener can be removed by
calling Dispose on the returned IDisposable object.</summary>
<param name="callback">The function to be called for each observation.</param>
<returns>An object that will remove the listener if disposed.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.CommonExtensions.AddToObservable``1(System.IObservable{``0},Microsoft.FSharp.Core.FSharpFunc{``0,Microsoft.FSharp.Core.Unit})">
<summary>Permanently connects a listener function to the observable. The listener will
be invoked for each observation.</summary>
<param name="callback">The function to be called for each observation.</param>
</member>
<member name="M:Microsoft.FSharp.Control.CommonExtensions.AsyncWrite(System.IO.Stream,System.Byte[],Microsoft.FSharp.Core.FSharpOption{System.Int32},Microsoft.FSharp.Core.FSharpOption{System.Int32})">
<summary>Returns an asynchronous computation that will write the given bytes to the stream.</summary>
<param name="buffer">The buffer to write from.</param>
<param name="offset">An optional offset as a number of bytes in the stream.</param>
<param name="count">An optional number of bytes to write to the stream.</param>
<returns>An asynchronous computation that will write the given bytes to the stream.</returns>
<exception cref="System.ArgumentException">Thrown when the sum of offset and count is longer than
the buffer length.</exception>
<exception cref="System.ArgumentOutOfRangeException">Thrown when offset or count is negative.</exception>
</member>
<member name="M:Microsoft.FSharp.Control.CommonExtensions.AsyncReadBytes(System.IO.Stream,System.Int32)">
<summary>Returns an asynchronous computation that will read the given number of bytes from the stream.</summary>
<param name="count">The number of bytes to read.</param>
<returns>An asynchronous computation that returns the read byte[] when run.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.CommonExtensions.AsyncRead(System.IO.Stream,System.Byte[],Microsoft.FSharp.Core.FSharpOption{System.Int32},Microsoft.FSharp.Core.FSharpOption{System.Int32})">
<summary>Returns an asynchronous computation that will read from the stream into the given buffer.</summary>
<param name="buffer">The buffer to read into.</param>
<param name="offset">An optional offset as a number of bytes in the stream.</param>
<param name="count">An optional number of bytes to read from the stream.</param>
<returns>An asynchronous computation that will read from the stream into the given buffer.</returns>
<exception cref="System.ArgumentException">Thrown when the sum of offset and count is longer than
the buffer length.</exception>
<exception cref="System.ArgumentOutOfRangeException">Thrown when offset or count is negative.</exception>
</member>
<member name="T:Microsoft.FSharp.Control.CommonExtensions">
<summary>A module of extension members providing asynchronous operations for some basic CLI types related to concurrency and I/O.</summary>
</member>
<member name="M:Microsoft.FSharp.Control.AsyncPrimitives.TryWith``1(Microsoft.FSharp.Control.AsyncActivation{``0},Microsoft.FSharp.Control.FSharpAsync{``0},Microsoft.FSharp.Core.FSharpFunc{System.Exception,Microsoft.FSharp.Core.FSharpOption{Microsoft.FSharp.Control.FSharpAsync{``0}}})">
<summary>The F# compiler emits calls to this function to implement the <c>try/with</c> construct for F# async expressions.</summary>
<param name="ctxt">The async activation.</param>
<param name="computation">The computation to protect.</param>
<param name="catchFunction">The exception filter.</param>
<returns>A value indicating asynchronous execution.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.AsyncPrimitives.TryFinally``1(Microsoft.FSharp.Control.AsyncActivation{``0},Microsoft.FSharp.Control.FSharpAsync{``0},Microsoft.FSharp.Core.FSharpFunc{Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit})">
<summary>The F# compiler emits calls to this function to implement the <c>try/finally</c> construct for F# async expressions.</summary>
<param name="ctxt">The async activation.</param>
<param name="computation">The computation to protect.</param>
<param name="finallyFunction">The finally code.</param>
<returns>A value indicating asynchronous execution.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.AsyncPrimitives.Bind``2(Microsoft.FSharp.Control.AsyncActivation{``0},Microsoft.FSharp.Control.FSharpAsync{``1},Microsoft.FSharp.Core.FSharpFunc{``1,Microsoft.FSharp.Control.FSharpAsync{``0}})">
<summary>The F# compiler emits calls to this function to implement the <c>let!</c> construct for F# async expressions.</summary>
<param name="ctxt">The async activation.</param>
<param name="part2">A function returning the second part of the computation.</param>
<returns>An async activation suitable for running part1 of the asynchronous execution.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.AsyncPrimitives.CallThenInvoke``2(Microsoft.FSharp.Control.AsyncActivation{``0},``1,Microsoft.FSharp.Core.FSharpFunc{``1,Microsoft.FSharp.Control.FSharpAsync{``0}})">
<summary>The F# compiler emits calls to this function to implement constructs for F# async expressions.</summary>
<param name="ctxt">The async activation.</param>
<param name="result">The result of the first part of the computation.</param>
<param name="part2">A function returning the second part of the computation.</param>
<returns>A value indicating asynchronous execution.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.AsyncPrimitives.Invoke``1(Microsoft.FSharp.Control.FSharpAsync{``0},Microsoft.FSharp.Control.AsyncActivation{``0})">
<summary>The F# compiler emits calls to this function to implement constructs for F# async expressions.</summary>
<param name="computation">The async computation.</param>
<param name="ctxt">The async activation.</param>
<returns>A value indicating asynchronous execution.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.AsyncPrimitives.MakeAsync``1(Microsoft.FSharp.Core.FSharpFunc{Microsoft.FSharp.Control.AsyncActivation{``0},Microsoft.FSharp.Control.AsyncReturn})">
<summary>The F# compiler emits calls to this function to implement F# async expressions.</summary>
<param name="body">The body of the async computation.</param>
<returns>The async computation.</returns>
</member>
<member name="T:Microsoft.FSharp.Control.AsyncPrimitives">
<summary>Entry points for generated code</summary>
</member>
<member name="M:Microsoft.FSharp.Control.EventModule.Pairwise``2(Microsoft.FSharp.Control.IEvent{``0,``1})">
<summary>Returns a new event that triggers on the second and subsequent triggerings of the input event.
The Nth triggering of the input event passes the arguments from the N-1th and Nth triggering as
a pair. The argument passed to the N-1th triggering is held in hidden internal state until the
Nth triggering occurs.</summary>
<param name="sourceEvent">The input event.</param>
<returns>An event that triggers on pairs of consecutive values passed from the source event.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.EventModule.Add``2(Microsoft.FSharp.Core.FSharpFunc{``0,Microsoft.FSharp.Core.Unit},Microsoft.FSharp.Control.IEvent{``1,``0})">
<summary>Runs the given function each time the given event is triggered.</summary>
<param name="callback">The function to call when the event is triggered.</param>
<param name="sourceEvent">The input event.</param>
</member>
<member name="M:Microsoft.FSharp.Control.EventModule.Scan``3(Microsoft.FSharp.Core.FSharpFunc{``0,Microsoft.FSharp.Core.FSharpFunc{``1,``0}},``0,Microsoft.FSharp.Control.IEvent{``2,``1})">
<summary>Returns a new event consisting of the results of applying the given accumulating function
to successive values triggered on the input event. An item of internal state
records the current value of the state parameter. The internal state is not locked during the
execution of the accumulation function, so care should be taken that the
input IEvent not triggered by multiple threads simultaneously.</summary>
<param name="collector">The function to update the state with each event value.</param>
<param name="state">The initial state.</param> <param name="state">The initial state.</param>
<param name="sourceEvent">The input event.</param> <param name="sourceEvent">The input event.</param>
<returns>An event that fires on the updated state values.</returns> <returns>An event that fires on the updated state values.</returns>
...@@ -6376,69 +6600,6 @@ ...@@ -6376,69 +6600,6 @@
<member name="T:Microsoft.FSharp.Control.ObservableModule"> <member name="T:Microsoft.FSharp.Control.ObservableModule">
<summary>Basic operations on first class event and other observable objects.</summary> <summary>Basic operations on first class event and other observable objects.</summary>
</member> </member>
<member name="M:Microsoft.FSharp.Control.WebExtensions.AsyncDownloadFile(System.Net.WebClient,System.Uri,System.String)">
<summary>Returns an asynchronous computation that, when run, will wait for the download of the given URI to specified file.</summary>
<param name="address">The URI to retrieve.</param>
<param name="fileName">The filename to save download to.</param>
<returns>An asynchronous computation that will wait for the download of the URI to specified file.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.WebExtensions.AsyncDownloadData(System.Net.WebClient,System.Uri)">
<summary>Returns an asynchronous computation that, when run, will wait for the download of the given URI.</summary>
<param name="address">The URI to retrieve.</param>
<returns>An asynchronous computation that will wait for the download of the URI.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.WebExtensions.AsyncDownloadString(System.Net.WebClient,System.Uri)">
<summary>Returns an asynchronous computation that, when run, will wait for the download of the given URI.</summary>
<param name="address">The URI to retrieve.</param>
<returns>An asynchronous computation that will wait for the download of the URI.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.WebExtensions.AsyncGetResponse(System.Net.WebRequest)">
<summary>Returns an asynchronous computation that, when run, will wait for a response to the given WebRequest.</summary>
<returns>An asynchronous computation that waits for response to the <c>WebRequest</c>.</returns>
</member>
<member name="T:Microsoft.FSharp.Control.WebExtensions">
<summary>A module of extension members providing asynchronous operations for some basic Web operations.</summary>
</member>
<member name="M:Microsoft.FSharp.Control.CommonExtensions.SubscribeToObservable``1(System.IObservable{``0},Microsoft.FSharp.Core.FSharpFunc{``0,Microsoft.FSharp.Core.Unit})">
<summary>Connects a listener function to the observable. The listener will
be invoked for each observation. The listener can be removed by
calling Dispose on the returned IDisposable object.</summary>
<param name="callback">The function to be called for each observation.</param>
<returns>An object that will remove the listener if disposed.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.CommonExtensions.AddToObservable``1(System.IObservable{``0},Microsoft.FSharp.Core.FSharpFunc{``0,Microsoft.FSharp.Core.Unit})">
<summary>Permanently connects a listener function to the observable. The listener will
be invoked for each observation.</summary>
<param name="callback">The function to be called for each observation.</param>
</member>
<member name="M:Microsoft.FSharp.Control.CommonExtensions.AsyncWrite(System.IO.Stream,System.Byte[],Microsoft.FSharp.Core.FSharpOption{System.Int32},Microsoft.FSharp.Core.FSharpOption{System.Int32})">
<summary>Returns an asynchronous computation that will write the given bytes to the stream.</summary>
<param name="buffer">The buffer to write from.</param>
<param name="offset">An optional offset as a number of bytes in the stream.</param>
<param name="count">An optional number of bytes to write to the stream.</param>
<returns>An asynchronous computation that will write the given bytes to the stream.</returns>
<exception cref="System.ArgumentException">Thrown when the sum of offset and count is longer than
the buffer length.</exception>
<exception cref="System.ArgumentOutOfRangeException">Thrown when offset or count is negative.</exception>
</member>
<member name="M:Microsoft.FSharp.Control.CommonExtensions.AsyncReadBytes(System.IO.Stream,System.Int32)">
<summary>Returns an asynchronous computation that will read the given number of bytes from the stream.</summary>
<param name="count">The number of bytes to read.</param>
<returns>An asynchronous computation that returns the read byte[] when run.</returns>
</member>
<member name="M:Microsoft.FSharp.Control.CommonExtensions.AsyncRead(System.IO.Stream,System.Byte[],Microsoft.FSharp.Core.FSharpOption{System.Int32},Microsoft.FSharp.Core.FSharpOption{System.Int32})">
<summary>Returns an asynchronous computation that will read from the stream into the given buffer.</summary>
<param name="buffer">The buffer to read into.</param>
<param name="offset">An optional offset as a number of bytes in the stream.</param>
<param name="count">An optional number of bytes to read from the stream.</param>
<returns>An asynchronous computation that will read from the stream into the given buffer.</returns>
<exception cref="System.ArgumentException">Thrown when the sum of offset and count is longer than
the buffer length.</exception>
<exception cref="System.ArgumentOutOfRangeException">Thrown when offset or count is negative.</exception>
</member>
<member name="T:Microsoft.FSharp.Control.CommonExtensions">
<summary>A module of extension members providing asynchronous operations for some basic CLI types related to concurrency and I/O.</summary>
</member>
<member name="M:Microsoft.FSharp.Linq.QueryBuilder.Zero``2"> <member name="M:Microsoft.FSharp.Linq.QueryBuilder.Zero``2">
<summary> <summary>
A method used to support the F# query syntax. Returns an empty sequence that has the specified type argument. A method used to support the F# query syntax. Returns an empty sequence that has the specified type argument.
...@@ -7414,6 +7575,15 @@ ...@@ -7414,6 +7575,15 @@
<member name="T:Microsoft.FSharp.Core.ilsigptr`1"> <member name="T:Microsoft.FSharp.Core.ilsigptr`1">
<summary>This type is for internal use by the F# code generator.</summary> <summary>This type is for internal use by the F# code generator.</summary>
</member> </member>
<member name="T:Microsoft.FSharp.Core.voidptr">
<summary>Represents an untyped unmanaged pointer in F# code.</summary>
<remarks>This type should only be used when writing F# code that interoperates
with native code. Use of this type in F# code may result in
unverifiable code being generated. Conversions to and from the
<c>nativeint</c> type may be required. Values of this type can be generated
by the functions in the <c>NativeInterop.NativePtr</c> module.</remarks>
</member>
<member name="T:Microsoft.FSharp.Core.nativeptr`1"> <member name="T:Microsoft.FSharp.Core.nativeptr`1">
<summary>Represents an unmanaged pointer in F# code.</summary> <summary>Represents an unmanaged pointer in F# code.</summary>
...@@ -7423,9 +7593,6 @@ ...@@ -7423,9 +7593,6 @@
<c>nativeint</c> type may be required. Values of this type can be generated <c>nativeint</c> type may be required. Values of this type can be generated
by the functions in the <c>NativeInterop.NativePtr</c> module.</remarks> by the functions in the <c>NativeInterop.NativePtr</c> module.</remarks>
</member> </member>
<member name="T:Microsoft.FSharp.Core.byref`1">
<summary>Represents a managed pointer in F# code.</summary>
</member>
<member name="T:Microsoft.FSharp.Core.array`1"> <member name="T:Microsoft.FSharp.Core.array`1">
<summary>Single dimensional, zero-based arrays, written <c>int[]</c>, <c>string[]</c> etc.</summary> <summary>Single dimensional, zero-based arrays, written <c>int[]</c>, <c>string[]</c> etc.</summary>
...@@ -7658,6 +7825,31 @@ ...@@ -7658,6 +7825,31 @@
<member name="T:Microsoft.FSharp.Core.FSharpResult`2"> <member name="T:Microsoft.FSharp.Core.FSharpResult`2">
<summary>Helper type for error handling without exceptions.</summary> <summary>Helper type for error handling without exceptions.</summary>
</member> </member>
<member name="T:Microsoft.FSharp.Core.voption`1">
<summary>The type of optional values, represented as structs.</summary>
<remarks>Use the constructors <c>ValueSome</c> and <c>ValueNone</c> to create values of this type.
Use the values in the <c>ValueOption</c> module to manipulate values of this type,
or pattern match against the values directly.</remarks>
</member>
<member name="T:Microsoft.FSharp.Core.FSharpValueOption`1.ValueSome">
<summary>The representation of "Value of type 'T"</summary>
<param name="Value">The input value.</param>
<returns>An option representing the value.</returns>
</member>
<member name="T:Microsoft.FSharp.Core.FSharpValueOption`1.ValueNone">
<summary>The representation of "No value"</summary>
</member>
<member name="P:Microsoft.FSharp.Core.FSharpValueOption`1.Value">
<summary>Get the value of a 'ValueSome' option. An InvalidOperationException is raised if the option is 'ValueNone'.</summary>
</member>
<member name="T:Microsoft.FSharp.Core.FSharpValueOption`1">
<summary>The type of optional values, represented as structs.</summary>
<remarks>Use the constructors <c>ValueSome</c> and <c>ValueNone</c> to create values of this type.
Use the values in the <c>ValueOption</c> module to manipulate values of this type,
or pattern match against the values directly.</remarks>
</member>
<member name="T:Microsoft.FSharp.Core.option`1"> <member name="T:Microsoft.FSharp.Core.option`1">
<summary>The type of optional values. When used from other CLI languages the <summary>The type of optional values. When used from other CLI languages the
empty option is the <c>null</c> value. </summary> empty option is the <c>null</c> value. </summary>
...@@ -7733,12 +7925,12 @@ ...@@ -7733,12 +7925,12 @@
</member> </member>
<member name="M:Microsoft.FSharp.Core.FuncConvert.ToFSharpFunc``2(System.Converter{``0,``1})"> <member name="M:Microsoft.FSharp.Core.FuncConvert.ToFSharpFunc``2(System.Converter{``0,``1})">
<summary>Convert the given Converter delegate object to an F# function value</summary> <summary>Convert the given Converter delegate object to an F# function value</summary>
<param name="converter">The input Converter.</param> <param name="converter">The input Converter delegate.</param>
<returns>The F# function.</returns> <returns>The F# function.</returns>
</member> </member>
<member name="M:Microsoft.FSharp.Core.FuncConvert.ToFSharpFunc``1(System.Action{``0})"> <member name="M:Microsoft.FSharp.Core.FuncConvert.ToFSharpFunc``1(System.Action{``0})">
<summary>Convert the given Action delegate object to an F# function value</summary> <summary>Convert the given Action delegate object to an F# function value</summary>
<param name="action">The input action.</param> <param name="action">The input Action delegate.</param>
<returns>The F# function.</returns> <returns>The F# function.</returns>
</member> </member>
<member name="M:Microsoft.FSharp.Core.FuncConvert.FuncFromTupled``6(Microsoft.FSharp.Core.FSharpFunc{System.Tuple{``0,``1,``2,``3,``4},``5})"> <member name="M:Microsoft.FSharp.Core.FuncConvert.FuncFromTupled``6(Microsoft.FSharp.Core.FSharpFunc{System.Tuple{``0,``1,``2,``3,``4},``5})">
...@@ -7761,6 +7953,66 @@ ...@@ -7761,6 +7953,66 @@
<param name="func">The input tupled function.</param> <param name="func">The input tupled function.</param>
<returns>The output curried function.</returns> <returns>The output curried function.</returns>
</member> </member>
<member name="M:Microsoft.FSharp.Core.FuncConvert.FromFunc``6(System.Func{``0,``1,``2,``3,``4,``5})">
<summary>Convert the given Func delegate object to an F# function value</summary>
<param name="func">The input Func delegate.</param>
<returns>The F# function.</returns>
</member>
<member name="M:Microsoft.FSharp.Core.FuncConvert.FromFunc``5(System.Func{``0,``1,``2,``3,``4})">
<summary>Convert the given Func delegate object to an F# function value</summary>
<param name="func">The input Func delegate.</param>
<returns>The F# function.</returns>
</member>
<member name="M:Microsoft.FSharp.Core.FuncConvert.FromFunc``4(System.Func{``0,``1,``2,``3})">
<summary>Convert the given Func delegate object to an F# function value</summary>
<param name="func">The input Func delegate.</param>
<returns>The F# function.</returns>
</member>
<member name="M:Microsoft.FSharp.Core.FuncConvert.FromFunc``3(System.Func{``0,``1,``2})">
<summary>Convert the given Func delegate object to an F# function value</summary>
<param name="func">The input Func delegate.</param>
<returns>The F#funcfunction.</returns>
</member>
<member name="M:Microsoft.FSharp.Core.FuncConvert.FromFunc``2(System.Func{``0,``1})">
<summary>Convert the given Func delegate object to an F# function value</summary>
<param name="func">The input Func delegate.</param>
<returns>The F# function.</returns>
</member>
<member name="M:Microsoft.FSharp.Core.FuncConvert.FromFunc``1(System.Func{``0})">
<summary>Convert the given Func delegate object to an F# function value</summary>
<param name="func">The input Func delegate.</param>
<returns>The F# function.</returns>
</member>
<member name="M:Microsoft.FSharp.Core.FuncConvert.FromAction``5(System.Action{``0,``1,``2,``3,``4})">
<summary>Convert the given Action delegate object to an F# function value</summary>
<param name="func">The input Action delegate.</param>
<returns>The F# function.</returns>
</member>
<member name="M:Microsoft.FSharp.Core.FuncConvert.FromAction``4(System.Action{``0,``1,``2,``3})">
<summary>Convert the given Action delegate object to an F# function value</summary>
<param name="func">The input Action delegate.</param>
<returns>The F# function.</returns>
</member>
<member name="M:Microsoft.FSharp.Core.FuncConvert.FromAction``3(System.Action{``0,``1,``2})">
<summary>Convert the given Action delegate object to an F# function value</summary>
<param name="func">The input Action delegate.</param>
<returns>The F# function.</returns>
</member>
<member name="M:Microsoft.FSharp.Core.FuncConvert.FromAction``2(System.Action{``0,``1})">
<summary>Convert the given Action delegate object to an F# function value</summary>
<param name="func">The input Action delegate.</param>
<returns>The F#funcfunction.</returns>
</member>
<member name="M:Microsoft.FSharp.Core.FuncConvert.FromAction``1(System.Action{``0})">
<summary>Convert the given Action delegate object to an F# function value</summary>
<param name="func">The input Action delegate.</param>
<returns>The F# function.</returns>
</member>
<member name="M:Microsoft.FSharp.Core.FuncConvert.FromAction(System.Action)">
<summary>Convert the given Action delegate object to an F# function value</summary>
<param name="func">The input Action delegate.</param>
<returns>The F# function.</returns>
</member>
<member name="T:Microsoft.FSharp.Core.FuncConvert"> <member name="T:Microsoft.FSharp.Core.FuncConvert">
<summary>Helper functions for converting F# first class function values to and from CLI representations <summary>Helper functions for converting F# first class function values to and from CLI representations
of functions using delegates.</summary> of functions using delegates.</summary>
...@@ -7947,6 +8199,18 @@ ...@@ -7947,6 +8199,18 @@
<member name="T:Microsoft.FSharp.Core.FSharpChoice`2"> <member name="T:Microsoft.FSharp.Core.FSharpChoice`2">
<summary>Helper types for active patterns with 2 choices.</summary> <summary>Helper types for active patterns with 2 choices.</summary>
</member> </member>
<member name="T:Microsoft.FSharp.Core.outref`1">
<summary>Represents a out-argument managed pointer in F# code. This type should only be used with F# 4.5+.</summary>
</member>
<member name="T:Microsoft.FSharp.Core.inref`1">
<summary>Represents a in-argument or readonly managed pointer in F# code. This type should only be used with F# 4.5+.</summary>
</member>
<member name="T:Microsoft.FSharp.Core.byref`1">
<summary>Represents a managed pointer in F# code. For F# 4.5+ this is considered equivalent to <c>byref&lt;'T, ByRefKinds.InOut&gt;</c></summary>
</member>
<member name="T:Microsoft.FSharp.Core.byref`2">
<summary>Represents a managed pointer in F# code.</summary>
</member>
<member name="T:Microsoft.FSharp.Core.int64`1"> <member name="T:Microsoft.FSharp.Core.int64`1">
<summary>The type of 64-bit signed integer numbers, annotated with a unit of measure. The unit <summary>The type of 64-bit signed integer numbers, annotated with a unit of measure. The unit
of measure is erased in compiled code and when values of this type of measure is erased in compiled code and when values of this type
...@@ -9586,6 +9850,12 @@ ...@@ -9586,6 +9850,12 @@
<member name="M:Microsoft.FSharp.Core.Operators.op_Concatenate(System.String,System.String)"> <member name="M:Microsoft.FSharp.Core.Operators.op_Concatenate(System.String,System.String)">
<summary>Concatenate two strings. The operator '+' may also be used.</summary> <summary>Concatenate two strings. The operator '+' may also be used.</summary>
</member> </member>
<member name="M:Microsoft.FSharp.Core.Operators.DefaultValueArg``1(Microsoft.FSharp.Core.FSharpValueOption{``0},``0)">
<summary>Used to specify a default value for an optional argument in the implementation of a function</summary>
<param name="arg">A value option representing the argument.</param>
<param name="defaultValue">The default value of the argument.</param>
<returns>The argument value. If it is None, the defaultValue is returned.</returns>
</member>
<member name="M:Microsoft.FSharp.Core.Operators.DefaultArg``1(Microsoft.FSharp.Core.FSharpOption{``0},``0)"> <member name="M:Microsoft.FSharp.Core.Operators.DefaultArg``1(Microsoft.FSharp.Core.FSharpOption{``0},``0)">
<summary>Used to specify a default value for an optional argument in the implementation of a function</summary> <summary>Used to specify a default value for an optional argument in the implementation of a function</summary>
<param name="arg">An option representing the argument.</param> <param name="arg">An option representing the argument.</param>
...@@ -10760,6 +11030,26 @@ ...@@ -10760,6 +11030,26 @@
<member name="T:Microsoft.FSharp.Core.LanguagePrimitives"> <member name="T:Microsoft.FSharp.Core.LanguagePrimitives">
<summary>Language primitives associated with the F# language</summary> <summary>Language primitives associated with the F# language</summary>
</member> </member>
<member name="T:Microsoft.FSharp.Core.ByRefKinds.InOut">
<summary>
Represents a byref that can be both read and written
</summary>
</member>
<member name="T:Microsoft.FSharp.Core.ByRefKinds.In">
<summary>
Represents a byref that can be read
</summary>
</member>
<member name="T:Microsoft.FSharp.Core.ByRefKinds.Out">
<summary>
Represents a byref that can be written
</summary>
</member>
<member name="T:Microsoft.FSharp.Core.ByRefKinds">
<summary>
Represents the types of byrefs in F# 4.5+
</summary>
</member>
<member name="M:Microsoft.FSharp.Core.OptionModule.ToObj``1(Microsoft.FSharp.Core.FSharpOption{``0})"> <member name="M:Microsoft.FSharp.Core.OptionModule.ToObj``1(Microsoft.FSharp.Core.FSharpOption{``0})">
<summary>Convert an option to a potentially null value.</summary> <summary>Convert an option to a potentially null value.</summary>
<param name="value">The input value.</param> <param name="value">The input value.</param>
...@@ -11280,7 +11570,7 @@ ...@@ -11280,7 +11570,7 @@
<returns>A new enumerator for the sequence.</returns> <returns>A new enumerator for the sequence.</returns>
</member> </member>
<member name="M:Microsoft.FSharp.Core.CompilerServices.GeneratedSequenceBase`1.GenerateNext(System.Collections.Generic.IEnumerable{`0}@)"> <member name="M:Microsoft.FSharp.Core.CompilerServices.GeneratedSequenceBase`1.GenerateNext(Microsoft.FSharp.Core.byref{System.Collections.Generic.IEnumerable{`0},Microsoft.FSharp.Core.ByRefKinds.InOut})">
<summary>The F# compiler emits implementations of this type for compiled sequence expressions.</summary> <summary>The F# compiler emits implementations of this type for compiled sequence expressions.</summary>
<param name="result">A reference to the sequence.</param> <param name="result">A reference to the sequence.</param>
...@@ -11599,6 +11889,9 @@ ...@@ -11599,6 +11889,9 @@
<member name="M:Microsoft.FSharp.Core.ExtraTopLevelOperators.CreateArray2D``2(System.Collections.Generic.IEnumerable{``0})"> <member name="M:Microsoft.FSharp.Core.ExtraTopLevelOperators.CreateArray2D``2(System.Collections.Generic.IEnumerable{``0})">
<summary>Builds a 2D array from a sequence of sequences of elements.</summary> <summary>Builds a 2D array from a sequence of sequences of elements.</summary>
</member> </member>
<member name="M:Microsoft.FSharp.Core.ExtraTopLevelOperators.CreateReadOnlyDictionary``2(System.Collections.Generic.IEnumerable{System.Tuple{``0,``1}})">
<summary>Builds a read-only lookup table from a sequence of key/value pairs. The key objects are indexed using generic hashing and equality.</summary>
</member>
<member name="M:Microsoft.FSharp.Core.ExtraTopLevelOperators.CreateDictionary``2(System.Collections.Generic.IEnumerable{System.Tuple{``0,``1}})"> <member name="M:Microsoft.FSharp.Core.ExtraTopLevelOperators.CreateDictionary``2(System.Collections.Generic.IEnumerable{System.Tuple{``0,``1}})">
<summary>Builds a read-only lookup table from a sequence of key/value pairs. The key objects are indexed using generic hashing and equality.</summary> <summary>Builds a read-only lookup table from a sequence of key/value pairs. The key objects are indexed using generic hashing and equality.</summary>
</member> </member>
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: 5aff9fdc2f79f4f499d6d34534f19735 guid: 82c66645763a48b44aceaa68a087b7bd
TextScriptImporter: TextScriptImporter:
externalObjects: {} externalObjects: {}
userData: userData:
......
fileFormatVersion: 2
guid: a4d30f68a2571a44ba533017df741bf3
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
isPreloaded: 0
isOverridable: 0
platformData:
- first:
Any:
second:
enabled: 1
settings: {}
- first:
Editor: Editor
second:
enabled: 0
settings:
DefaultValueInitialized: true
- first:
Windows Store Apps: WindowsStoreApps
second:
enabled: 0
settings:
CPU: AnyCPU
userData:
assetBundleName:
assetBundleVariant:
This source diff could not be displayed because it is too large. You can view the blob instead.
fileFormatVersion: 2
guid: 9c42c1da85a509a4b86f294a02b2941a
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2 fileFormatVersion: 2
guid: 283995a9b94132645b2a63f103f72dc6 guid: 5abb882acc7c5f14388a30cfcccc2286
PluginImporter: PluginImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: ea2d789229b15464a86c9c61218d35f2 guid: be04747ead32e6e468325ecce76a7c94
TextScriptImporter: TextScriptImporter:
externalObjects: {} externalObjects: {}
userData: userData:
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: aa5351b7b5779204f85e1b36d86c8c55 guid: 485eb85ffc04a6249a8fcbb03eccb550
folderAsset: yes
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}
userData: userData:
......
fileFormatVersion: 2
guid: bb3abda073fe76f4b9423eb3e7c35f38
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
isPreloaded: 0
isOverridable: 0
platformData:
- first:
Any:
second:
enabled: 1
settings: {}
- first:
Editor: Editor
second:
enabled: 0
settings:
DefaultValueInitialized: true
- first:
Windows Store Apps: WindowsStoreApps
second:
enabled: 0
settings:
CPU: AnyCPU
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 64e395b506f7ace4ab1a42c597751399
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 2be41ab2aa781964997fa6b34cff7257
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
isPreloaded: 0
isOverridable: 0
platformData:
- first:
Any:
second:
enabled: 1
settings: {}
- first:
Editor: Editor
second:
enabled: 0
settings:
DefaultValueInitialized: true
- first:
Windows Store Apps: WindowsStoreApps
second:
enabled: 0
settings:
CPU: AnyCPU
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: f7a34802b95d7ad49a1d91ee33a80537
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 9c01352656f955f448d833f2ae3d6813
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
isPreloaded: 0
isOverridable: 0
platformData:
- first:
Any:
second:
enabled: 1
settings: {}
- first:
Editor: Editor
second:
enabled: 0
settings:
DefaultValueInitialized: true
- first:
Windows Store Apps: WindowsStoreApps
second:
enabled: 0
settings:
CPU: AnyCPU
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 31be99f93e22dbc4aadb4f86935260b6
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 1b6f5526382adbd4aac6312073e6f2f4
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
isPreloaded: 0
isOverridable: 0
platformData:
- first:
Any:
second:
enabled: 1
settings: {}
- first:
Editor: Editor
second:
enabled: 0
settings:
DefaultValueInitialized: true
- first:
Windows Store Apps: WindowsStoreApps
second:
enabled: 0
settings:
CPU: AnyCPU
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 12570bc0444fd824c860507983f5f9b7
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 1b057fcda9bce1d43a1158cd59da0d0c
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
isPreloaded: 0
isOverridable: 0
platformData:
- first:
Any:
second:
enabled: 1
settings: {}
- first:
Editor: Editor
second:
enabled: 0
settings:
DefaultValueInitialized: true
- first:
Windows Store Apps: WindowsStoreApps
second:
enabled: 0
settings:
CPU: AnyCPU
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 9e83caaada6ecf446945e4533198d914
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 5fb819a5deb17b944a66985ad12aee95
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
isPreloaded: 0
isOverridable: 0
platformData:
- first:
Any:
second:
enabled: 1
settings: {}
- first:
Editor: Editor
second:
enabled: 0
settings:
DefaultValueInitialized: true
- first:
Windows Store Apps: WindowsStoreApps
second:
enabled: 0
settings:
CPU: AnyCPU
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 8079bf4c63a47bc4894fe5d81dd99825
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 3d8d192fdb6dc0e4c8dd40d5528ada74
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
isPreloaded: 0
isOverridable: 0
platformData:
- first:
Any:
second:
enabled: 1
settings: {}
- first:
Editor: Editor
second:
enabled: 0
settings:
DefaultValueInitialized: true
- first:
Windows Store Apps: WindowsStoreApps
second:
enabled: 0
settings:
CPU: AnyCPU
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2 fileFormatVersion: 2
guid: 011ab57b54466af4ba4d1df69c840a8c guid: 564bcf3984704b145a7ce350a12e28c7
folderAsset: yes folderAsset: yes
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: 2199ef6d765ffc445a53c0bd816b01c4 guid: 4d9e71286606a5948a5a5640016c0bdf
PluginImporter: PluginImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2
......
fileFormatVersion: 2
guid: 147d5f043fc3d0545bd69f7a0c0bca01
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: e652987ac0c9bef4ca5b689bbd8b0b6c
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
isPreloaded: 0
isOverridable: 0
platformData:
- first:
Any:
second:
enabled: 1
settings: {}
- first:
Editor: Editor
second:
enabled: 0
settings:
DefaultValueInitialized: true
- first:
Windows Store Apps: WindowsStoreApps
second:
enabled: 0
settings:
CPU: AnyCPU
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: a11d98873989e1449bc9736dafc67e9f
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 9f9ec11eaf15b5648af7fd3cb3a2e1fd
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
isPreloaded: 0
isOverridable: 0
platformData:
- first:
Any:
second:
enabled: 1
settings: {}
- first:
Editor: Editor
second:
enabled: 0
settings:
DefaultValueInitialized: true
- first:
Windows Store Apps: WindowsStoreApps
second:
enabled: 0
settings:
CPU: AnyCPU
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: f3a3001a574627341b394b72153a4ca1
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: cab4de380d307e243bed4e1d08d9407a
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
isPreloaded: 0
isOverridable: 0
platformData:
- first:
Any:
second:
enabled: 1
settings: {}
- first:
Editor: Editor
second:
enabled: 0
settings:
DefaultValueInitialized: true
- first:
Windows Store Apps: WindowsStoreApps
second:
enabled: 0
settings:
CPU: AnyCPU
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: ff5c392d17e12f249808e7c3736ecdb5
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 3b5ed03068eb4b546b05295bb7a5435b
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
isPreloaded: 0
isOverridable: 0
platformData:
- first:
Any:
second:
enabled: 1
settings: {}
- first:
Editor: Editor
second:
enabled: 0
settings:
DefaultValueInitialized: true
- first:
Windows Store Apps: WindowsStoreApps
second:
enabled: 0
settings:
CPU: AnyCPU
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 16acc33ac5d02eb4d9392edf6b5c6983
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 883a900e86ca97049bc8502aa27fbd82
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
isPreloaded: 0
isOverridable: 0
platformData:
- first:
Any:
second:
enabled: 1
settings: {}
- first:
Editor: Editor
second:
enabled: 0
settings:
DefaultValueInitialized: true
- first:
Windows Store Apps: WindowsStoreApps
second:
enabled: 0
settings:
CPU: AnyCPU
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: fb7bd0a2aaef9b745b209a76c22bd73f
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 783dcfde092fa274ba1bd3ed64947421
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
isPreloaded: 0
isOverridable: 0
platformData:
- first:
Any:
second:
enabled: 1
settings: {}
- first:
Editor: Editor
second:
enabled: 0
settings:
DefaultValueInitialized: true
- first:
Windows Store Apps: WindowsStoreApps
second:
enabled: 0
settings:
CPU: AnyCPU
userData:
assetBundleName:
assetBundleVariant:
...@@ -11,7 +11,7 @@ public class GameStarter : MonoBehaviour ...@@ -11,7 +11,7 @@ public class GameStarter : MonoBehaviour
// Use this for initialization // Use this for initialization
void Start() void Start()
{ {
GameInfo.SetPlayer(CivModel.Hwan.HwanPlayerConstant.HwanPlayer); GameInfo.SetPlayer(CivModel.Hwan.HwanPlayerNumber.Number);
} }
// Update is called once per frame // Update is called once per frame
...@@ -22,12 +22,12 @@ public class GameStarter : MonoBehaviour ...@@ -22,12 +22,12 @@ public class GameStarter : MonoBehaviour
public void StartHwan() public void StartHwan()
{ {
GameInfo.SetPlayer(CivModel.Hwan.HwanPlayerConstant.HwanPlayer); GameInfo.SetPlayer(CivModel.Hwan.HwanPlayerNumber.Number);
txt.text = "환국으로 게임 시작"; txt.text = "환국으로 게임 시작";
} }
public void StartSuomen() public void StartSuomen()
{ {
GameInfo.SetPlayer(CivModel.Finno.FinnoPlayerConstant.FinnoPlayer); GameInfo.SetPlayer(CivModel.Finno.FinnoPlayerNumber.Number);
txt.text = "수오미로 게임 시작"; txt.text = "수오미로 게임 시작";
} }
public void StartGame() public void StartGame()
......
...@@ -2,6 +2,9 @@ ...@@ -2,6 +2,9 @@
using System.Collections.Generic; using System.Collections.Generic;
using UnityEngine; using UnityEngine;
using static CivModel.Finno.FinnoPlayerNumber;
using static CivModel.Hwan.HwanPlayerNumber;
public class ProductionFactoryTraits : MonoBehaviour { public class ProductionFactoryTraits : MonoBehaviour {
// Use this for initialization // Use this for initialization
...@@ -522,9 +525,9 @@ public class ProductionFactoryTraits : MonoBehaviour { ...@@ -522,9 +525,9 @@ public class ProductionFactoryTraits : MonoBehaviour {
break; break;
case "JediKnight": case "JediKnight":
{ {
if (unit.Owner == GameManager.Instance.Game.Players[CivModel.Hwan.HwanPlayerConstant.HwanPlayer]) if (unit.Owner == GameManager.Instance.Game.GetPlayerHwan())
result = "hwan_jedi"; result = "hwan_jedi";
else if (unit.Owner == GameManager.Instance.Game.Players[CivModel.Finno.FinnoPlayerConstant.FinnoPlayer]) else if (unit.Owner == GameManager.Instance.Game.GetPlayerFinno())
result = "finno_jedi"; result = "finno_jedi";
else result = name; else result = name;
} }
...@@ -537,9 +540,9 @@ public class ProductionFactoryTraits : MonoBehaviour { ...@@ -537,9 +540,9 @@ public class ProductionFactoryTraits : MonoBehaviour {
break; break;
case "DecentralizedMilitary": case "DecentralizedMilitary":
{ {
if (unit.Owner == GameManager.Instance.Game.Players[CivModel.Hwan.HwanPlayerConstant.HwanPlayer]) if (unit.Owner == GameManager.Instance.Game.GetPlayerHwan())
result = "hwan_decentralized_soldier"; result = "hwan_decentralized_soldier";
else if (unit.Owner == GameManager.Instance.Game.Players[CivModel.Finno.FinnoPlayerConstant.FinnoPlayer]) else if (unit.Owner == GameManager.Instance.Game.GetPlayerFinno())
result = "finno_decentralized_soldier"; result = "finno_decentralized_soldier";
else result = name; else result = name;
} }
...@@ -552,9 +555,9 @@ public class ProductionFactoryTraits : MonoBehaviour { ...@@ -552,9 +555,9 @@ public class ProductionFactoryTraits : MonoBehaviour {
break; break;
case "ProtoNinja": case "ProtoNinja":
{ {
if (unit.Owner == GameManager.Instance.Game.Players[CivModel.Hwan.HwanPlayerConstant.HwanPlayer]) if (unit.Owner == GameManager.Instance.Game.GetPlayerHwan())
result = "hwan_ninja"; result = "hwan_ninja";
else if (unit.Owner == GameManager.Instance.Game.Players[CivModel.Finno.FinnoPlayerConstant.FinnoPlayer]) else if (unit.Owner == GameManager.Instance.Game.GetPlayerFinno())
result = "finno_ninja"; result = "finno_ninja";
else result = name; else result = name;
} }
...@@ -564,9 +567,9 @@ public class ProductionFactoryTraits : MonoBehaviour { ...@@ -564,9 +567,9 @@ public class ProductionFactoryTraits : MonoBehaviour {
break; break;
case "Spy": case "Spy":
{ {
if (unit.Owner == GameManager.Instance.Game.Players[CivModel.Hwan.HwanPlayerConstant.HwanPlayer]) if (unit.Owner == GameManager.Instance.Game.GetPlayerHwan())
result = "hwan_spy"; result = "hwan_spy";
else if (unit.Owner == GameManager.Instance.Game.Players[CivModel.Finno.FinnoPlayerConstant.FinnoPlayer]) else if (unit.Owner == GameManager.Instance.Game.GetPlayerFinno())
result = "finno_spy"; result = "finno_spy";
else result = name; else result = name;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment