Commit 3d192b8c authored by redsuncore's avatar redsuncore

MapUI some Values connecting, SelectionQueue devided, applied new model. (WIP)

모델 업데이트
맵 UI 에 현재 플레이어의 인구 기술력 제외 연결
공격 기능 업데이트. (제다이 기사 확인하지 못해서 아직 디버그 못함)
선택 큐 분리됨. 모델에서 얻어오는 기능을 다시 한 번 찾아봐야 함(WIP)
parent 65da7f1f
fileFormatVersion: 2 fileFormatVersion: 2
guid: 14316eefeff7b8c4882dee9cb31df5f1 guid: 14316eefeff7b8c4882dee9cb31df5f1
timeCreated: 1518214576 timeCreated: 1519390593
licenseType: Free licenseType: Free
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: 51a4ccfc53e3bd3489fedcd4adb9e458 guid: 51a4ccfc53e3bd3489fedcd4adb9e458
timeCreated: 1518214576 timeCreated: 1519390593
licenseType: Free licenseType: Free
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}
......
...@@ -49,608 +49,60 @@ ...@@ -49,608 +49,60 @@
<exception cref="T:System.ArgumentException">parameter is invalid</exception> <exception cref="T:System.ArgumentException">parameter is invalid</exception>
<exception cref="T:System.InvalidOperationException">Actor is not placed yet</exception> <exception cref="T:System.InvalidOperationException">Actor is not placed yet</exception>
</member> </member>
<member name="T:CivModel.Common.CityCenterProductionFactory"> <member name="T:CivModel.IReadOnlyActorAction">
<summary>
The factory interface for <see cref="T:CivModel.Common.CityCenter"/>.
</summary>
<seealso cref="T:CivModel.ITileObjectProductionFactory" />
</member>
<member name="P:CivModel.Common.CityCenterProductionFactory.Instance">
<summary>
The singleton instance.of <see cref="T:CivModel.Common.CityCenterProductionFactory"/>
</summary>
</member>
<member name="M:CivModel.Common.CityCenterProductionFactory.Create(CivModel.Player)">
<summary>
Creates the <see cref="T:CivModel.Production" /> object
</summary>
<param name="owner">The player who owns the <see cref="T:CivModel.Production" /> object.</param>
<returns>
the created <see cref="T:CivModel.Production" /> object
</returns>
</member>
<member name="M:CivModel.Common.CityCenterProductionFactory.IsPlacable(CivModel.TileObjectProduction,CivModel.Terrain.Point)">
<summary>
Determines whether the production result is placable at the specified point.
</summary>
<param name="production">The production.</param>
<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>
</member>
<member name="M:CivModel.Common.CityCenterProductionFactory.CreateTileObject(CivModel.Player,CivModel.Terrain.Point)">
<summary>
Creates the <see cref="T:CivModel.TileObject" /> which is the production result.
</summary>
<param name="owner">The <see cref="T:CivModel.Player" /> who owns the result.</param>
<param name="point">The tile where the object will be.</param>
<returns>
the created <see cref="T:CivModel.TileObject" /> result.
</returns>
</member>
<member name="T:CivModel.Common.FactoryBuilding">
<summary>
Represents [factory] interior building.
</summary>
<seealso cref="T:CivModel.InteriorBuilding"/>
</member>
<member name="P:CivModel.Common.FactoryBuilding.ClassGuid">
<summary>
The unique identifier of this class.
</summary>
</member>
<member name="P:CivModel.Common.FactoryBuilding.Guid">
<summary>
The unique identifier of this class.
</summary>
</member>
<member name="M:CivModel.Common.FactoryBuilding.#ctor(CivModel.Common.CityCenter)">
<summary>
Initializes a new instance of the <see cref="T:CivModel.Common.FactoryBuilding"/> class.
</summary>
<param name="city">The <see cref="T:CivModel.Common.CityCenter" /> who will own the building.</param>
</member>
<member name="T:CivModel.Common.FactoryBuildingProductionFactory">
<summary>
The factory interface for <see cref="T:CivModel.Common.FactoryBuilding"/>.
</summary>
<seealso cref="T:CivModel.IInteriorBuildingProductionFactory" />
</member>
<member name="P:CivModel.Common.FactoryBuildingProductionFactory.Instance">
<summary>
The singleton instance.of <see cref="T:CivModel.Common.FactoryBuildingProductionFactory"/>
</summary>
</member>
<member name="M:CivModel.Common.FactoryBuildingProductionFactory.Create(CivModel.Player)">
<summary>
Creates the <see cref="T:CivModel.Production" /> object
</summary>
<param name="owner">The player who owns the <see cref="T:CivModel.Production" /> object.</param>
<returns>
the created <see cref="T:CivModel.Production" /> object
</returns>
</member>
<member name="M:CivModel.Common.FactoryBuildingProductionFactory.IsPlacable(CivModel.InteriorBuildingProduction,CivModel.Common.CityCenter)">
<summary>
Determines whether the production result is placable in the specified city.
</summary>
<param name="production">The production.</param>
<param name="city">The city to test to place the production result.</param>
<returns>
<c>true</c> if the production is placable; otherwise, <c>false</c>.
</returns>
</member>
<member name="M:CivModel.Common.FactoryBuildingProductionFactory.CreateInteriorBuilding(CivModel.Common.CityCenter)">
<summary>
Creates the <see cref="T:CivModel.InteriorBuilding"/> which is the production result.
</summary>
<param name="city">The <see cref="T:CivModel.Common.CityCenter"/> who will own the building.</param>
<returns>the created <see cref="T:CivModel.InteriorBuilding"/> result.</returns>
</member>
<member name="T:CivModel.Common.NamespaceDoc">
<summary>
The <see cref="N:CivModel.Common"/> namespace of CivModel.dll module
provides core, basic common actors such as <see cref="T:CivModel.Common.CityCenter"/>.
</summary>
<remarks>
Most of common actors are provided by CivModel.Common.dll module.
The purpose of CivModel.dll module is to provide core features of CivModel.
</remarks>
<seealso cref="N:CivModel"/>
</member>
<member name="T:CivModel.Common.CityCenter">
<summary>
Represents a city as <see cref="T:CivModel.TileBuilding"/>.
</summary>
<seealso cref="T:CivModel.TileBuilding" />
</member>
<member name="P:CivModel.Common.CityCenter.ClassGuid">
<summary>
The unique identifier of this class.
</summary>
</member>
<member name="P:CivModel.Common.CityCenter.Guid">
<summary>
The unique identifier of this class.
</summary>
</member>
<member name="P:CivModel.Common.CityCenter.Name">
<summary>
The name of this city.
</summary>
<remarks>
<see cref="P:CivModel.Common.CityCenter.Name"/> cannot have newline characters and cannot be empty string.
See the list of newline characters at <see href="https://en.wikipedia.org/wiki/Newline#Unicode"/>.
</remarks>
<exception cref="T:System.ArgumentException">the name is invalid or already used.</exception>
<seealso cref="M:CivModel.Common.CityCenter.SetCityName(System.String)"/>
<seealso cref="M:CivModel.Common.CityCenter.TrySetCityName(System.String)"/>
</member>
<member name="P:CivModel.Common.CityCenter.MaxHP">
<summary>
The maximum HP. <c>0</c> if this actor is not a combattant.
</summary>
</member>
<member name="P:CivModel.Common.CityCenter.MaxHealPerTurn">
<summary>
The maximum heal per turn.
</summary>
<seealso cref="P:CivModel.Actor.RemainHP" />
</member>
<member name="P:CivModel.Common.CityCenter.AttackPower">
<summary>
The attack power.
</summary>
</member>
<member name="P:CivModel.Common.CityCenter.DefencePower">
<summary>
The defence power.
</summary>
</member>
<member name="P:CivModel.Common.CityCenter.HoldingAttackAct">
<summary>
The action performing movement. <c>null</c> if this actor cannot do.
</summary>
</member>
<member name="P:CivModel.Common.CityCenter.AvailableProduction">
<summary>
The list of available production from this city.
</summary>
<seealso cref="M:CivModel.Player.GetAvailableProduction"/>
</member>
<member name="P:CivModel.Common.CityCenter.Population">
<summary>
The population of this city.
</summary>
<exception cref="T:System.ArgumentOutOfRangeException">Population must be bigger or equal than 1</exception>
<seealso cref="P:CivModel.Player.Population"/>
<seealso cref="P:CivModel.Common.CityCenter.PopulationIncome"/>
</member>
<member name="P:CivModel.Common.CityCenter.PopulationIncome">
<summary>
The population income of this city.
</summary>
<seealso cref="P:CivModel.IGameScheme.PopulationCoefficient"/>
<seealso cref="P:CivModel.IGameScheme.PopulationHappinessConstant"/>
</member>
<member name="P:CivModel.Common.CityCenter.Labor">
<summary>
The labor per turn which this city offers.
</summary>
<seealso cref="P:CivModel.Player.Labor"/>
<seealso cref="P:CivModel.IGameScheme.LaborCoefficient"/>
<seealso cref="P:CivModel.IGameScheme.LaborHappinessConstant"/>
</member>
<member name="P:CivModel.Common.CityCenter.InteriorBuildings">
<summary>
The list of <see cref="T:CivModel.InteriorBuilding"/> this city owns.
</summary>
</member>
<member name="M:CivModel.Common.CityCenter.#ctor(CivModel.Player,CivModel.Terrain.Point)">
<summary>
Initializes a new instance of the <see cref="T:CivModel.Common.CityCenter"/> class.
</summary>
<param name="owner">The player who owns this city.</param>
<param name="point">The tile where the object will be.</param>
<exception cref="T:System.ArgumentNullException"><paramref name="owner"/> is <c>null</c>.</exception>
</member>
<member name="M:CivModel.Common.CityCenter.TrySetCityName(System.String)">
<summary>
Sets <see cref="P:CivModel.Common.CityCenter.Name"/> of the city. A return value indicates whether the setting is succeeded.
</summary>
<param name="value">The value.</param>
<returns><c>true</c> if succeded. otherwise, <c>false</c>.</returns>
<seealso cref="P:CivModel.Common.CityCenter.Name"/>
<seealso cref="M:CivModel.Common.CityCenter.SetCityName(System.String)"/>
</member>
<member name="M:CivModel.Common.CityCenter.SetCityName(System.String)">
<summary>
Sets <see cref="P:CivModel.Common.CityCenter.Name"/> of the city. The behavior of this method is equal to the setter of <see cref="P:CivModel.Common.CityCenter.Name"/>.
</summary>
<param name="value">The value to set.</param>
<exception cref="T:System.ArgumentException">the name is invalid or already used.</exception>
<seealso cref="P:CivModel.Common.CityCenter.Name"/>
<seealso cref="M:CivModel.Common.CityCenter.TrySetCityName(System.String)"/>
</member>
<member name="M:CivModel.Common.CityCenter.AddBuilding(CivModel.InteriorBuilding)">
<summary>
This method is used by <see cref="P:CivModel.InteriorBuilding.City"/>
</summary>
</member>
<member name="M:CivModel.Common.CityCenter.RemoveBuilding(CivModel.InteriorBuilding)">
<summary>
This method is used by <see cref="P:CivModel.InteriorBuilding.City"/>
</summary>
</member>
<member name="M:CivModel.Common.CityCenter.OnBeforeChangeOwner(CivModel.Player)">
<summary>
Called before [change owner], by <see cref="M:CivModel.Actor.ChangeOwner(CivModel.Player)" />.
</summary>
<param name="newOwner">The new owner.</param>
</member>
<member name="M:CivModel.Common.CityCenter.OnBeforeDestroy">
<summary>
Called before [destroy], by <see cref="M:CivModel.Actor.Destroy" />
</summary>
</member>
<member name="M:CivModel.Common.CityCenter.OnDie(CivModel.Player)">
<summary>
Called when [die] by <see cref="M:CivModel.Actor.Die(CivModel.Player)" />.
The default implementation calls <see cref="M:CivModel.Actor.Destroy" />.
</summary>
<param name="opposite">The opposite who caused the dying of this actor. If not exists, <c>null</c>.</param>
</member>
<member name="M:CivModel.Common.CityCenter.PostTurn">
<summary>
Called after a turn.
</summary>
</member>
<member name="T:CivModel.IGameSchemeFactory">
<summary>
The factory interface of <see cref="T:CivModel.IGameScheme"/>
</summary>
</member>
<member name="P:CivModel.IGameSchemeFactory.Guid">
<summary>
The unique identifier of this factory.
</summary>
</member>
<member name="M:CivModel.IGameSchemeFactory.Create">
<summary>
Creates the <see cref="T:CivModel.IGameScheme"/> object
</summary>
<returns></returns>
</member>
<member name="T:CivModel.IGameScheme">
<summary>
The interface represents a scheme of a <see cref="T:CivModel.Game"/>.
</summary>
</member>
<member name="P:CivModel.IGameScheme.Factory">
<summary>
The factory object of this instance.
</summary>
</member>
<member name="P:CivModel.IGameScheme.OnlyDefaultPlayers">
<summary>
Whether the number of players must be equal to default value or not.
</summary>
<seealso cref="P:CivModel.IGameScheme.DefaultNumberOfPlayers"/>
</member>
<member name="P:CivModel.IGameScheme.DefaultNumberOfPlayers">
<summary>
The default number of players. It must be positive.
</summary>
</member>
<member name="P:CivModel.IGameScheme.OnlyDefaultTerrain">
<summary>
Whether <see cref="T:CivModel.Terrain"/> size must be equal to default value or not. It must be positive.
</summary>
<seealso cref="P:CivModel.IGameScheme.DefaultTerrainWidth"/>
<seealso cref="P:CivModel.IGameScheme.DefaultTerrainHeight"/>
</member>
<member name="P:CivModel.IGameScheme.DefaultTerrainWidth">
<summary>
The default width of the <see cref="T:CivModel.Terrain"/>. It must be positive.
</summary>
</member>
<member name="P:CivModel.IGameScheme.DefaultTerrainHeight">
<summary>
The default height of the <see cref="T:CivModel.Terrain"/>. It must be positive.
</summary>
</member>
<member name="P:CivModel.IGameScheme.GoldCoefficient">
<summary>
Coefficient for <see cref="P:CivModel.Player.GoldIncome"/>.
</summary>
</member>
<member name="P:CivModel.IGameScheme.PopulationCoefficient">
<summary>
Coefficient for <see cref="P:CivModel.Common.CityCenter.Population"/>.
</summary>
</member>
<member name="P:CivModel.IGameScheme.PopulationHappinessConstant">
<summary>
Constant amount of <see cref="P:CivModel.Player.Happiness"/> for <see cref="P:CivModel.Player.Population"/>.
</summary>
</member>
<member name="P:CivModel.IGameScheme.HappinessCoefficient">
<summary>
Coefficient for <see cref="P:CivModel.Player.HappinessIncome"/>.
</summary>
</member>
<member name="P:CivModel.IGameScheme.LaborCoefficient">
<summary>
Coefficient for <see cref="P:CivModel.Player.Labor"/>.
</summary>
</member>
<member name="P:CivModel.IGameScheme.LaborHappinessConstant">
<summary>
Constant amount of <see cref="P:CivModel.Player.Happiness"/> for <see cref="P:CivModel.Player.Labor"/>.
</summary>
</member>
<member name="P:CivModel.IGameScheme.EconomicRequireCoefficient">
<summary>
Coefficient for <see cref="P:CivModel.Player.BasicEconomicRequire"/>.
</summary>
</member>
<member name="P:CivModel.IGameScheme.EconomicRequireTaxRateConstant">
<summary>
Constant amount of <see cref="P:CivModel.Player.TaxRate"/> for <see cref="P:CivModel.Player.BasicEconomicRequire"/>.
</summary>
</member>
<member name="P:CivModel.IGameScheme.ResearchRequireCoefficient">
<summary>
Coefficient for <see cref="P:CivModel.Player.BasicResearchRequire"/>.
</summary>
</member>
<member name="M:CivModel.IGameScheme.RegisterGuid(CivModel.Game)">
<summary>
Registers <see cref="T:CivModel.IGuidTaggedObject"/> for this scheme.
This method is called before <see cref="M:CivModel.IGameScheme.InitializeGame(CivModel.Game,System.Boolean)"/>.
</summary>
<param name="game">The <see cref="T:CivModel.Game"/> object.</param>
</member>
<member name="M:CivModel.IGameScheme.InitializeGame(CivModel.Game,System.Boolean)">
<summary>
Initializes the game
</summary>
<param name="game">The game to initialize.</param>
<param name="isNewGame"><c>true</c> if initializing a new game. <c>false</c> if initializing a game loaded from a save file.</param>
<exception cref="T:System.ArgumentNullException"><paramref name="game"/> is <c>null</c>.</exception>
</member>
<member name="M:CivModel.IGameScheme.InitializeNewCity(CivModel.Common.CityCenter)">
<summary>
Initializes a newly created city
</summary>
<param name="city">The city to initialize.</param>
<exception cref="T:System.ArgumentNullException"><paramref name="city"/> is <c>null</c>.</exception>
</member>
<member name="T:CivModel.IReadOnlyActorAction">
<summary>
The read-only version of <see cref="T:CivModel.IActorAction"/>.
</summary>
</member>
<member name="P:CivModel.IReadOnlyActorAction.Owner">
<summary>
The <see cref="T:CivModel.Actor"/> object which has this action.
</summary>
</member>
<member name="P:CivModel.IReadOnlyActorAction.IsParametered">
<summary>
Whether the action has a target parameter or not.
</summary>
</member>
<member name="M:CivModel.IReadOnlyActorAction.GetRequiredAP(System.Nullable{CivModel.Terrain.Point})">
<summary>
Test if the action with given parameter is valid and return required AP to act.
Returns <c>-1</c> if the action is invalid.
</summary>
<param name="pt">the parameter with which action will be tested.</param>
<returns>
the required AP to act. If the action is invalid, <c>-1</c>.
</returns>
</member>
<member name="T:CivModel.IActorAction">
<summary>
Represents an action which <see cref="T:CivModel.Actor"/> can do.
</summary>
<seealso cref="T:CivModel.IReadOnlyActorAction" />
</member>
<member name="M:CivModel.IActorAction.Act(System.Nullable{CivModel.Terrain.Point})">
<summary>
Acts with the specified parameter.
</summary>
<param name="pt">The parameter.</param>
<exception cref="T:System.ArgumentException">the parameter is invalid.</exception>
<exception cref="T:System.InvalidOperationException"><see cref="P:CivModel.IReadOnlyActorAction.Owner"/> of this action is not placed yet.</exception>
</member>
<member name="T:CivModel.ActorAction">
<summary>
Provides a set of static methods for <see cref="T:CivModel.IReadOnlyActorAction"/>.
</summary>
</member>
<member name="M:CivModel.ActorAction.IsActable(CivModel.IReadOnlyActorAction,System.Nullable{CivModel.Terrain.Point})">
<summary>
Test whether the action is actable with specified parameter.
</summary>
<param name="action">the action.</param>
<param name="pt">the parameter with which action will be tested.</param>
<returns>
<c>true</c> if the action is actable; otherwise, <c>false</c>.
</returns>
</member>
<member name="T:CivModel.IGuidTaggedObject">
<summary>
The interface represents an object which can be created and class-level distinguished from <see cref="T:System.Guid"/>.
</summary>
<remarks>
To enable object creation from Guid, <see cref="M:CivModel.GuidTaggedObjectManager.RegisterGuid(System.Guid,System.Func{CivModel.Player,CivModel.Terrain.Point,CivModel.IGuidTaggedObject})"/> must be called.
</remarks>
<seealso cref="T:CivModel.GuidTaggedObjectManager"/>
</member>
<member name="P:CivModel.IGuidTaggedObject.Guid">
<summary>
The unique identifier of this class.
</summary>
</member>
<member name="T:CivModel.GuidTaggedObjectManager">
<summary>
Provides object creation of <see cref="T:CivModel.IGuidTaggedObject"/> from Guid
</summary>
<seealso cref="T:CivModel.IGuidTaggedObject"/>
</member>
<member name="M:CivModel.GuidTaggedObjectManager.RegisterGuid(System.Guid,System.Func{CivModel.Player,CivModel.Terrain.Point,CivModel.IGuidTaggedObject})">
<summary>
Registers a Guid with <see cref="T:CivModel.IGuidTaggedObject"/> supplier.
</summary>
<remarks>
<paramref name="supplier"/> creates an object from arguments. If arguments are invalid, supplier can return <c>null</c>.
</remarks>
<param name="guid">The Guid.</param>
<param name="supplier">The supplier.</param>
<exception cref="T:System.ArgumentNullException"><paramref name="supplier"/> is <c>null</c>.</exception>
<exception cref="T:System.ArgumentException">The same Guid is already registered.</exception>
</member>
<member name="M:CivModel.GuidTaggedObjectManager.Create(System.Guid,CivModel.Player,CivModel.Terrain.Point)">
<summary>
Creates the <see cref="T:CivModel.IGuidTaggedObject"/> from a specified Guid. If arguments are invalid, returns <c>null</c>.
</summary>
<param name="guid">The Guid.</param>
<param name="owner">The <see cref="T:CivModel.Player"/> who will own the object.</param>
<param name="point">The tile where the object will be.</param>
<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>
</member>
<member name="T:CivModel.InteriorBuilding">
<summary>
Represents a building which must be built in <see cref="T:CivModel.Common.CityCenter"/>.
</summary>
<seealso cref="T:CivModel.TileBuilding"/>
</member>
<member name="P:CivModel.InteriorBuilding.Guid">
<summary>
The unique identifier of this class.
</summary>
</member>
<member name="P:CivModel.InteriorBuilding.Owner">
<summary>
The <see cref="T:CivModel.Player"/> who owns this building.
</summary>
</member>
<member name="P:CivModel.InteriorBuilding.City">
<summary>
The <see cref="T:CivModel.Common.CityCenter"/> where this building is.
</summary>
</member>
<member name="M:CivModel.InteriorBuilding.#ctor(CivModel.Common.CityCenter)">
<summary>
Initializes a new instance of the <see cref="T:CivModel.InteriorBuilding"/> class.
</summary>
<param name="city">The <see cref="T:CivModel.Common.CityCenter"/> who will own the building.</param>
<exception cref="T:System.ArgumentNullException"><paramref name="city"/> is <c>null</c>.</exception>
</member>
<member name="M:CivModel.InteriorBuilding.Destroy">
<summary>
Destroys this building. <see cref="M:CivModel.InteriorBuilding.OnBeforeDestroy"/> is called before the building is destroyed.
</summary>
<remarks>
<strong>postcondition</strong>:
<c><see cref="P:CivModel.TileObject.PlacedPoint"/> == null &amp;&amp; <see cref="P:CivModel.InteriorBuilding.Owner"/> == null</c>
</remarks>
</member>
<member name="M:CivModel.InteriorBuilding.OnBeforeDestroy">
<summary>
Called before [destroy], by <see cref="M:CivModel.InteriorBuilding.Destroy"/>
</summary>
</member>
<member name="M:CivModel.InteriorBuilding.PostPlayerSubTurn(CivModel.Player)">
<summary>
Called after a sub turn.
</summary>
<param name="playerInTurn">The player which the sub turn is dedicated to.</param>
</member>
<member name="M:CivModel.InteriorBuilding.PostTurn">
<summary>
Called after a turn.
</summary>
</member>
<member name="M:CivModel.InteriorBuilding.PrePlayerSubTurn(CivModel.Player)">
<summary> <summary>
Called before a sub turn. The read-only version of <see cref="T:CivModel.IActorAction"/>.
</summary> </summary>
<param name="playerInTurn">The player which the sub turn is dedicated to.</param>
</member> </member>
<member name="M:CivModel.InteriorBuilding.PreTurn"> <member name="P:CivModel.IReadOnlyActorAction.Owner">
<summary> <summary>
Called before a turn. The <see cref="T:CivModel.Actor"/> object which has this action.
</summary> </summary>
</member> </member>
<member name="T:CivModel.IInteriorBuildingProductionFactory"> <member name="P:CivModel.IReadOnlyActorAction.IsParametered">
<summary> <summary>
The factory interface of <see cref="T:CivModel.InteriorBuildingProduction"/>. Whether the action has a target parameter or not.
This interface additionally provides <see cref="M:CivModel.IInteriorBuildingProductionFactory.IsPlacable(CivModel.InteriorBuildingProduction,CivModel.Common.CityCenter)"/>
and <see cref="M:CivModel.IInteriorBuildingProductionFactory.CreateInteriorBuilding(CivModel.Common.CityCenter)"/> methods.
</summary> </summary>
<seealso cref="T:CivModel.IProductionFactory" />
</member> </member>
<member name="M:CivModel.IInteriorBuildingProductionFactory.IsPlacable(CivModel.InteriorBuildingProduction,CivModel.Common.CityCenter)"> <member name="M:CivModel.IReadOnlyActorAction.GetRequiredAP(System.Nullable{CivModel.Terrain.Point})">
<summary> <summary>
Determines whether the production result is placable in the specified city. Test if the action with given parameter is valid and return required AP to act.
Returns <c>-1</c> if the action is invalid.
</summary> </summary>
<param name="production">The production.</param> <param name="pt">the parameter with which action will be tested.</param>
<param name="city">The city to test to place the production result.</param>
<returns> <returns>
<c>true</c> if the production is placable; otherwise, <c>false</c>. the required AP to act. If the action is invalid, <c>-1</c>.
</returns> </returns>
</member> </member>
<member name="M:CivModel.IInteriorBuildingProductionFactory.CreateInteriorBuilding(CivModel.Common.CityCenter)"> <member name="T:CivModel.IActorAction">
<summary> <summary>
Creates the <see cref="T:CivModel.InteriorBuilding"/> which is the production result. Represents an action which <see cref="T:CivModel.Actor"/> can do.
</summary> </summary>
<param name="city">The <see cref="T:CivModel.Common.CityCenter"/> who will own the building.</param> <seealso cref="T:CivModel.IReadOnlyActorAction" />
<returns>the created <see cref="T:CivModel.InteriorBuilding"/> result.</returns>
</member> </member>
<member name="T:CivModel.InteriorBuildingProduction"> <member name="M:CivModel.IActorAction.Act(System.Nullable{CivModel.Terrain.Point})">
<summary> <summary>
The <see cref="T:CivModel.Production"/> class for <see cref="T:CivModel.InteriorBuilding"/> Acts with the specified parameter.
</summary> </summary>
<seealso cref="T:CivModel.Production" /> <param name="pt">The parameter.</param>
<exception cref="T:System.ArgumentException">the parameter is invalid.</exception>
<exception cref="T:System.InvalidOperationException"><see cref="P:CivModel.IReadOnlyActorAction.Owner"/> of this action is not placed yet.</exception>
</member> </member>
<member name="M:CivModel.InteriorBuildingProduction.#ctor(CivModel.IInteriorBuildingProductionFactory,CivModel.Player,System.Double,System.Double)"> <member name="T:CivModel.ActorAction">
<summary> <summary>
Initializes a new instance of the <see cref="T:CivModel.InteriorBuildingProduction"/> class. Provides a set of static methods for <see cref="T:CivModel.IReadOnlyActorAction"/>.
</summary> </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>
<param name="totalCost"><see cref="P:CivModel.Production.TotalCost"/> of the production</param>
<param name="capacityPerTurn"><see cref="P:CivModel.Production.CapacityPerTurn"/> of the production.</param>
<exception cref="T:System.ArgumentException">totalCost is not positive</exception>
<exception cref="T:System.ArgumentOutOfRangeException"><paramref name="capacityPerTurn"/> is not in [0, <see cref="P:CivModel.Production.TotalCost"/>]</exception>
<exception cref="T:System.ArgumentNullException">
<paramref name="factory"/> is <c>null</c>
or
<paramref name="owner"/> is <c>null</c>
</exception>
</member> </member>
<member name="M:CivModel.InteriorBuildingProduction.IsPlacable(CivModel.Terrain.Point)"> <member name="M:CivModel.ActorAction.IsActable(CivModel.IReadOnlyActorAction,System.Nullable{CivModel.Terrain.Point})">
<summary> <summary>
Determines whether the production result is placable at the specified point. Test whether the action is actable with specified parameter.
</summary> </summary>
<param name="point">The point to test to place the production result.</param> <param name="action">the action.</param>
<param name="pt">the parameter with which action will be tested.</param>
<returns> <returns>
<c>true</c> if the production is placable; otherwise, <c>false</c>. <c>true</c> if the action is actable; otherwise, <c>false</c>.
</returns> </returns>
</member> </member>
<member name="M:CivModel.InteriorBuildingProduction.Place(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>
</member>
<member name="T:CivModel.ITurnObserver"> <member name="T:CivModel.ITurnObserver">
<summary> <summary>
The interface to observe pre/post turn event. The interface to observe pre/post turn event.
...@@ -720,12 +172,6 @@ ...@@ -720,12 +172,6 @@
<exception cref="T:System.ArgumentException">parameter is invalid</exception> <exception cref="T:System.ArgumentException">parameter is invalid</exception>
<exception cref="T:System.InvalidOperationException">Owner of this action is not placed yet</exception> <exception cref="T:System.InvalidOperationException">Owner of this action is not placed yet</exception>
</member> </member>
<member name="T:CivModel.NamespaceDoc">
<summary>
The <see cref="N:CivModel"/> namespace of CivModel.dll module
provides a core classes and interfaces of CivModel.
</summary>
</member>
<member name="T:CivModel.Position"> <member name="T:CivModel.Position">
<summary> <summary>
Represents the coordinate for <see cref="T:CivModel.Terrain"/>. Represents the coordinate for <see cref="T:CivModel.Terrain"/>.
...@@ -827,7 +273,7 @@ ...@@ -827,7 +273,7 @@
<summary> <summary>
Get norm of this position. It is equal to <c>(|A| + |B| + |C|) / 2</c> Get norm of this position. It is equal to <c>(|A| + |B| + |C|) / 2</c>
</summary> </summary>
<returns>The norm of this position.</returns> <returns></returns>
</member> </member>
<member name="M:CivModel.Position.Distance(CivModel.Position,CivModel.Position)"> <member name="M:CivModel.Position.Distance(CivModel.Position,CivModel.Position)">
<summary> <summary>
...@@ -836,7 +282,7 @@ ...@@ -836,7 +282,7 @@
</summary> </summary>
<param name="lhs">left hand side parameter</param> <param name="lhs">left hand side parameter</param>
<param name="rhs">right hand side parameter</param> <param name="rhs">right hand side parameter</param>
<returns>The distance between two <see cref="T:CivModel.Position"/>.</returns> <returns></returns>
</member> </member>
<member name="M:CivModel.Position.ToString"> <member name="M:CivModel.Position.ToString">
<summary> <summary>
...@@ -1011,17 +457,6 @@ ...@@ -1011,17 +457,6 @@
<see cref="T:CivModel.TerrainType"/> of the tile. <see cref="T:CivModel.TerrainType"/> of the tile.
</summary> </summary>
</member> </member>
<member name="P:CivModel.Terrain.Point.TileOwner">
<summary>
<see cref="T:CivModel.Player"/> which owns this tile. If no one owns this tile, <c>null</c>.
</summary>
<remarks>
The setter of this property is wrapper of <see cref="M:CivModel.Player.AddTerritory(CivModel.Terrain.Point)"/> and <see cref="M:CivModel.Player.RemoveTerritory(CivModel.Terrain.Point)"/>.
See these methods for more details and throwable exceptions.
</remarks>
<seealso cref="M:CivModel.Player.AddTerritory(CivModel.Terrain.Point)"/>
<seealso cref="M:CivModel.Player.RemoveTerritory(CivModel.Terrain.Point)"/>
</member>
<member name="P:CivModel.Terrain.Point.Unit"> <member name="P:CivModel.Terrain.Point.Unit">
<summary> <summary>
The <see cref="P:CivModel.Terrain.Point.Unit"/> placed at the tile. The <see cref="P:CivModel.Terrain.Point.Unit"/> placed at the tile.
...@@ -1032,6 +467,21 @@ ...@@ -1032,6 +467,21 @@
The <see cref="P:CivModel.Terrain.Point.TileBuilding"/> placed at the tile. The <see cref="P:CivModel.Terrain.Point.TileBuilding"/> placed at the tile.
</summary> </summary>
</member> </member>
<member name="M:CivModel.Terrain.Point.GetTileObject(CivModel.TileTag)">
<summary>
this function is used internally by <see cref="P:CivModel.Terrain.Point.Terrain"/> class and getters of <see cref="T:CivModel.Terrain.Point"/>.
</summary>
</member>
<member name="M:CivModel.Terrain.Point.SetTileObject(CivModel.TileObject)">
<summary>
this function is used internally by <see cref="P:CivModel.Terrain.Point.Terrain"/> class.
</summary>
</member>
<member name="M:CivModel.Terrain.Point.UnsetTileObject(CivModel.TileTag)">
<summary>
this function is used internally by <see cref="P:CivModel.Terrain.Point.Terrain"/> class.
</summary>
</member>
<member name="M:CivModel.Terrain.Point.#ctor(CivModel.Terrain,CivModel.Position)"> <member name="M:CivModel.Terrain.Point.#ctor(CivModel.Terrain,CivModel.Position)">
<summary> <summary>
Initializes a new instance of the <see cref="T:CivModel.Terrain.Point"/> struct. Initializes a new instance of the <see cref="T:CivModel.Terrain.Point"/> struct.
...@@ -1168,96 +618,183 @@ ...@@ -1168,96 +618,183 @@
<c>true</c> if the specified position is valid; otherwise, <c>false</c>. <c>true</c> if the specified position is valid; otherwise, <c>false</c>.
</returns> </returns>
</member> </member>
<member name="T:CivModel.TerrainType"> <member name="T:CivModel.TileBuilding">
<summary> <summary>
The type of a tile of <see cref="T:CivModel.Terrain"/>. Represents a building which is an actor.
</summary> </summary>
<seealso cref="T:CivModel.Actor" />
</member> </member>
<member name="F:CivModel.TerrainType.Plain"> <member name="P:CivModel.TileBuilding.MaxAP">
<summary> <summary>
[plain] Terrain Type. The maximum AP. <c>0</c> by default.
</summary> </summary>
</member> </member>
<member name="F:CivModel.TerrainType.Ocean"> <member name="P:CivModel.TileBuilding.MoveAct">
<summary> <summary>
[Ocean] Terrain Type. The action performing movement. <c>null</c> by default.
</summary> </summary>
</member> </member>
<member name="F:CivModel.TerrainType.Mount"> <member name="M:CivModel.TileBuilding.#ctor(CivModel.Player)">
<summary> <summary>
[Mount] Terrain Type. Initializes a new instance of the <see cref="T:CivModel.TileBuilding"/> class.
</summary> </summary>
<param name="owner">The player who owns this TileBuilding.</param>
<exception cref="T:System.ArgumentNullException"><paramref name="owner"/> is <c>null</c>.</exception>
</member> </member>
<member name="F:CivModel.TerrainType.Forest"> <member name="T:CivModel.Common.CityCenter">
<summary> <summary>
[Forest] Terrain Type. Represents a city as <see cref="T:CivModel.TileBuilding"/>.
</summary> </summary>
<seealso cref="T:CivModel.TileBuilding" />
</member> </member>
<member name="F:CivModel.TerrainType.Swamp"> <member name="P:CivModel.Common.CityCenter.MaxHP">
<summary> <summary>
[Swamp] Terrain Type. The maximum HP. <c>0</c> if this actor is not a combattant.
</summary> </summary>
</member> </member>
<member name="F:CivModel.TerrainType.Tundra"> <member name="P:CivModel.Common.CityCenter.MaxHealPerTurn">
<summary> <summary>
[Tundra] Terrain Type. The maximum heal per turn.
</summary> </summary>
<seealso cref="P:CivModel.Actor.RemainHP" />
</member> </member>
<member name="F:CivModel.TerrainType.Ice"> <member name="P:CivModel.Common.CityCenter.AttackPower">
<summary> <summary>
[Ice] Terrain Type. The attack power.
</summary> </summary>
</member> </member>
<member name="F:CivModel.TerrainType.Hill"> <member name="P:CivModel.Common.CityCenter.DefencePower">
<summary> <summary>
[Hill] Terrain Type. The defence power.
</summary> </summary>
</member> </member>
<member name="T:CivModel.TileBuilding"> <member name="P:CivModel.Common.CityCenter.HoldingAttackAct">
<summary> <summary>
Represents a building which is an actor. The action performing movement. <c>null</c> if this actor cannot do.
</summary> </summary>
<seealso cref="T:CivModel.Actor" />
<seealso cref="T:CivModel.InteriorBuilding"/>
</member> </member>
<member name="P:CivModel.TileBuilding.MaxAP"> <member name="P:CivModel.Common.CityCenter.AvailableProduction">
<summary> <summary>
The maximum AP. <c>0</c> by default. The list of available production from this city.
</summary> </summary>
<seealso cref="M:CivModel.Player.GetAvailableProduction"/>
</member> </member>
<member name="P:CivModel.TileBuilding.MoveAct"> <member name="M:CivModel.Common.CityCenter.#ctor(CivModel.Player)">
<summary> <summary>
The action performing movement. <c>null</c> by default. Initializes a new instance of the <see cref="T:CivModel.Common.CityCenter"/> class.
</summary> </summary>
<param name="owner">The player who owns this city.</param>
<exception cref="T:System.ArgumentNullException"><paramref name="owner"/> is <c>null</c>.</exception>
</member> </member>
<member name="M:CivModel.TileBuilding.#ctor(CivModel.Player,CivModel.Terrain.Point)"> <member name="M:CivModel.Common.CityCenter.OnBeforeChangeOwner(CivModel.Player)">
<summary> <summary>
Initializes a new instance of the <see cref="T:CivModel.TileBuilding"/> class. Called before [change owner], by <see cref="M:CivModel.Actor.ChangeOwner(CivModel.Player)" />.
</summary> </summary>
<param name="owner">The player who owns this TileBuilding.</param> <param name="newOwner">The new owner.</param>
<param name="point">The tile where the object will be.</param> </member>
<member name="M:CivModel.Common.CityCenter.OnBeforeDestroy">
<summary>
Called before [destroy], by <see cref="M:CivModel.Actor.Destroy" />
</summary>
</member>
<member name="M:CivModel.Common.CityCenter.OnDie(CivModel.Player)">
<summary>
Called when [die] by <see cref="M:CivModel.Actor.Die(CivModel.Player)" />.
The default implementation calls <see cref="M:CivModel.Actor.Destroy" />.
</summary>
<param name="opposite">The opposite who caused the dying of this actor. If not exists, <c>null</c>.</param>
</member>
<member name="T:CivModel.Common.Pioneer">
<summary>
A pionner unit who can make city.
</summary>
<seealso cref="T:CivModel.Unit" />
</member>
<member name="P:CivModel.Common.Pioneer.MaxAP">
<summary>
The maximum AP.
</summary>
</member>
<member name="P:CivModel.Common.Pioneer.SpecialActs">
<summary>
The list of special actions.
<see cref="T:CivModel.Common.Pioneer"/> have one special action "pionnering".
</summary>
</member>
<member name="M:CivModel.Common.Pioneer.#ctor(CivModel.Player)">
<summary>
Initializes a new instance of the <see cref="T:CivModel.Common.Pioneer"/> class.
</summary>
<param name="owner">The <see cref="T:CivModel.Player"/> who owns this unit.</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.TileBuilding.OnChangePlacedPoint(System.Nullable{CivModel.Terrain.Point})"> <member name="T:CivModel.Common.PioneerProductionFactory">
<summary>
The factory interface for <see cref="T:CivModel.Common.Pioneer"/>.
</summary>
<seealso cref="T:CivModel.ITileObjectProductionFactory" />
</member>
<member name="P:CivModel.Common.PioneerProductionFactory.Instance">
<summary>
The singleton instance.of <see cref="T:CivModel.Common.PioneerProductionFactory"/>
</summary>
</member>
<member name="M:CivModel.Common.PioneerProductionFactory.Create(CivModel.Player)">
<summary>
Creates the <see cref="T:CivModel.Production" /> object
</summary>
<param name="owner">The player who owns the <see cref="T:CivModel.Production" /> object.</param>
<returns>
the created <see cref="T:CivModel.Production" /> object
</returns>
</member>
<member name="M:CivModel.Common.PioneerProductionFactory.IsPlacable(CivModel.TileObjectProduction,CivModel.Terrain.Point)">
<summary>
Determines whether the production result is placable at the specified point.
</summary>
<param name="production">The production.</param>
<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>
</member>
<member name="M:CivModel.Common.PioneerProductionFactory.CreateTileObject(CivModel.Player)">
<summary> <summary>
Called after <see cref="P:CivModel.TileObject.PlacedPoint" /> is changed. Creates the <see cref="T:CivModel.TileObject" /> which is the production result.
</summary> </summary>
<param name="oldPoint">The old value of <see cref="P:CivModel.TileObject.PlacedPoint" />.</param> <param name="owner">The <see cref="T:CivModel.Player" /> who owns the result.</param>
<returns>
the created <see cref="T:CivModel.TileObject" /> result.
</returns>
</member> </member>
<member name="T:CivModel.Game"> <member name="T:CivModel.Game">
<summary> <summary>
Represents one civ game. Represents one civ game.
</summary> </summary>
</member> </member>
<member name="F:CivModel.Game.Scheme"> <member name="P:CivModel.Game.GoldCoefficient">
<summary>
Coefficient for <see cref="P:CivModel.Player.GoldIncome"/>.
</summary>
</member>
<member name="P:CivModel.Game.PopulationCoefficient">
<summary>
Coefficient for PopulationIncome.
</summary>
</member>
<member name="P:CivModel.Game.HappinessCoefficient">
<summary>
Coefficient for <see cref="P:CivModel.Player.HappinessIncome"/>.
</summary>
</member>
<member name="P:CivModel.Game.LaborCoefficient">
<summary> <summary>
The scheme of this game. Coefficient for <see cref="P:CivModel.Player.Labor"/>.
</summary> </summary>
</member> </member>
<member name="P:CivModel.Game.GuidManager"> <member name="P:CivModel.Game.LaborHappinessConstant">
<summary> <summary>
The manager object of <see cref="T:CivModel.IGuidTaggedObject"/>. Coefficient for <see cref="P:CivModel.Player.Labor"/>, which works with <see cref="P:CivModel.Player.Happiness"/>.
This property is used by model extension modules.
</summary> </summary>
</member> </member>
<member name="P:CivModel.Game.Terrain"> <member name="P:CivModel.Game.Terrain">
...@@ -1298,60 +835,25 @@ ...@@ -1298,60 +835,25 @@
The player who plays in this turn. The player who plays in this turn.
</summary> </summary>
</member> </member>
<member name="F:CivModel.Game._guidSaveFormat"> <member name="M:CivModel.Game.#ctor(System.Int32,System.Int32,System.Int32)">
<summary>
See remark section of <see cref="M:System.Guid.ParseExact(System.String,System.String)"/>.
</summary>
</member>
<member name="M:CivModel.Game.#ctor(System.Int32,System.Int32,System.Int32,CivModel.IGameSchemeFactory)">
<summary> <summary>
Initializes a new instance of the <see cref="T:CivModel.Game"/> class, by creating a new game. Initializes a new instance of the <see cref="T:CivModel.Game"/> class.
</summary> </summary>
<param name="width">The width of the <see cref="P:CivModel.Game.Terrain"/> of this game. It must be positive. if the value is <c>-1</c>, uses <see cref="P:CivModel.IGameScheme.DefaultTerrainWidth"/> of the scheme.</param> <param name="width">The width of the <see cref="P:CivModel.Game.Terrain"/> of this game. It must be positive.</param>
<param name="height">The height of the <see cref="P:CivModel.Game.Terrain"/> of this game. It must be positive. if the value is <c>-1</c>, uses <see cref="P:CivModel.IGameScheme.DefaultTerrainHeight"/> of the scheme.</param> <param name="height">The height of the <see cref="P:CivModel.Game.Terrain"/> of this game. It must be positive.</param>
<param name="numOfPlayer">The number of players. It must be positive. if the value is <c>-1</c>, uses <see cref="P:CivModel.IGameScheme.DefaultNumberOfPlayers"/> of the scheme.</param> <param name="numOfPlayer">The number of player. It must be positive.</param>
<param name="schemeFactory">The factory for <see cref="T:CivModel.IGameScheme"/> of the game.</param>
<exception cref="T:System.ArgumentNullException"><paramref name="schemeFactory"/> is <c>null</c>.</exception>
<exception cref="T:System.ArgumentException"> <exception cref="T:System.ArgumentException">
<paramref name="width"/> is not positive <paramref name="width"/> is not positive
or or
<paramref name="height"/> is not positive <paramref name="height"/> is not positive
or or
<paramref name="numOfPlayer"/> is not positive <paramref name="numOfPlayer"/> is not positive
or
parameter is not equal to default value of scheme, while scheme forces to be.
</exception>
</member>
<member name="M:CivModel.Game.#ctor(System.String,System.Collections.Generic.IEnumerable{CivModel.IGameSchemeFactory})">
<summary>
Initializes a new instance of the <see cref="T:CivModel.Game"/> class, by loading a existing save file.
</summary>
<param name="saveFile">The path of the save file.</param>
<param name="schemeFactories">the candidates of factories for <see cref="T:CivModel.IGameScheme"/> of the game.</param>
<exception cref="T:System.ArgumentNullException"><paramref name="schemeFactories"/> is <c>null</c>.</exception>
<exception cref="T:System.IO.InvalidDataException">
save file is invalid
or
there is no <see cref="T:CivModel.IGameSchemeFactory"/> for this save file.
</exception> </exception>
<remarks>
This constructor uses <see cref="M:System.IO.File.OpenText(System.String)"/>.
See the list of the exceptions <see cref="M:System.IO.File.OpenText(System.String)"/> may throw.
</remarks>
</member>
<member name="M:CivModel.Game.Save(System.String)">
<summary>
Saves current status of the game to the specified save file.
</summary>
<param name="saveFile">The path of the save file.</param>
</member> </member>
<member name="M:CivModel.Game.StartTurn"> <member name="M:CivModel.Game.StartTurn">
<summary> <summary>
Starts the turn. If the game is loaded from a save file and not resumed, Resume the game. Starts the turn.
</summary> </summary>
<remarks>
This method also resumes the game loaded from a save file. In this case, Turn/Subturn does not change.
</remarks>
<exception cref="T:System.InvalidOperationException">this game is inside turn yet</exception> <exception cref="T:System.InvalidOperationException">this game is inside turn yet</exception>
</member> </member>
<member name="M:CivModel.Game.EndTurn"> <member name="M:CivModel.Game.EndTurn">
...@@ -1362,7 +864,7 @@ ...@@ -1362,7 +864,7 @@
</member> </member>
<member name="T:CivModel.BattleResult"> <member name="T:CivModel.BattleResult">
<summary> <summary>
The result of a battle. This is used by <see cref="M:CivModel.Actor.AttackTo(CivModel.Actor)"/> and <see cref="M:CivModel.Actor.RangedAttackTo(CivModel.Actor)"/>. The result of a battle. This is used by <see cref="M:CivModel.Actor.AttackTo(CivModel.Actor)"/>.
</summary> </summary>
</member> </member>
<member name="F:CivModel.BattleResult.Draw"> <member name="F:CivModel.BattleResult.Draw">
...@@ -1399,10 +901,8 @@ ...@@ -1399,10 +901,8 @@
</member> </member>
<member name="P:CivModel.Actor.RemainAP"> <member name="P:CivModel.Actor.RemainAP">
<summary> <summary>
The remaining AP. It must be in [0, <see cref="P:CivModel.Actor.MaxAP"/>]. The remaining AP. It is reset to <see cref="P:CivModel.Actor.MaxAP"/> when <see cref="M:CivModel.Actor.PreTurn"/> is called.
It is reset to <see cref="P:CivModel.Actor.MaxAP"/> when <see cref="M:CivModel.Actor.PreTurn"/> is called.
</summary> </summary>
<exception cref="T:System.ArgumentOutOfRangeException"><see cref="P:CivModel.Actor.RemainAP"/> is not in [0, <see cref="P:CivModel.Actor.MaxAP"/>]</exception>
</member> </member>
<member name="P:CivModel.Actor.SkipFlag"> <member name="P:CivModel.Actor.SkipFlag">
<summary> <summary>
...@@ -1459,12 +959,11 @@ ...@@ -1459,12 +959,11 @@
</summary> </summary>
<exception cref="T:System.ArgumentOutOfRangeException"><see cref="P:CivModel.Actor.RemainHP"/> is not in [0, <see cref="P:CivModel.Actor.MaxHP"/>]</exception> <exception cref="T:System.ArgumentOutOfRangeException"><see cref="P:CivModel.Actor.RemainHP"/> is not in [0, <see cref="P:CivModel.Actor.MaxHP"/>]</exception>
</member> </member>
<member name="M:CivModel.Actor.#ctor(CivModel.Player,CivModel.Terrain.Point,CivModel.TileTag)"> <member name="M:CivModel.Actor.#ctor(CivModel.Player,CivModel.TileTag)">
<summary> <summary>
Initializes a new instance of the <see cref="T:CivModel.Actor"/> class. Initializes a new instance of the <see cref="T:CivModel.Actor"/> class.
</summary> </summary>
<param name="owner">The player who owns this actor.</param> <param name="owner">The player who owns this actor.</param>
<param name="point">The tile where the object will be.</param>
<param name="tag">The <seealso cref="T:CivModel.TileTag"/> of this actor.</param> <param name="tag">The <seealso cref="T:CivModel.TileTag"/> of this actor.</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>
...@@ -1522,15 +1021,9 @@ ...@@ -1522,15 +1021,9 @@
</summary> </summary>
<seealso cref="M:CivModel.Actor.ConsumeAP(System.Int32)"/> <seealso cref="M:CivModel.Actor.ConsumeAP(System.Int32)"/>
</member> </member>
<member name="M:CivModel.Actor.Heal(System.Double)">
<summary>
Heals HP of this actor with the specified amount.
</summary>
<param name="amount">The amount to heal.</param>
</member>
<member name="M:CivModel.Actor.AttackTo(CivModel.Actor)"> <member name="M:CivModel.Actor.AttackTo(CivModel.Actor)">
<summary> <summary>
Melee-Attack to another <see cref="T:CivModel.Actor"/>. Attacks to another <see cref="T:CivModel.Actor"/>.
</summary> </summary>
<param name="opposite">The opposite.</param> <param name="opposite">The opposite.</param>
<returns> <returns>
...@@ -1539,19 +1032,6 @@ ...@@ -1539,19 +1032,6 @@
if this object has died, <see cref="F:CivModel.BattleResult.Defeated"/>. if this object has died, <see cref="F:CivModel.BattleResult.Defeated"/>.
if both have died or survived, <see cref="F:CivModel.BattleResult.Draw"/>. if both have died or survived, <see cref="F:CivModel.BattleResult.Draw"/>.
</returns> </returns>
<seealso cref="M:CivModel.Actor.RangedAttackTo(CivModel.Actor)"/>
</member>
<member name="M:CivModel.Actor.RangedAttackTo(CivModel.Actor)">
<summary>
Ranged-Attack to another <see cref="T:CivModel.Actor"/>.
</summary>
<param name="opposite">The opposite.</param>
<returns>
<see cref="T:CivModel.BattleResult"/> indicating the result of this battle.
if <paramref name="opposite"/> has died, <see cref="F:CivModel.BattleResult.Victory"/>.
otherwise, <see cref="F:CivModel.BattleResult.Draw"/>.
</returns>
<seealso cref="M:CivModel.Actor.AttackTo(CivModel.Actor)"/>
</member> </member>
<member name="M:CivModel.Actor.GetRequiredAPToMove(CivModel.Terrain.Point)"> <member name="M:CivModel.Actor.GetRequiredAPToMove(CivModel.Terrain.Point)">
<summary> <summary>
...@@ -1615,11 +1095,6 @@ ...@@ -1615,11 +1095,6 @@
Represents an object which can be placed on <see cref="T:CivModel.Terrain.Point"/>. Represents an object which can be placed on <see cref="T:CivModel.Terrain.Point"/>.
</summary> </summary>
</member> </member>
<member name="P:CivModel.TileObject.Guid">
<summary>
The unique identifier of this class.
</summary>
</member>
<member name="P:CivModel.TileObject.TileTag"> <member name="P:CivModel.TileObject.TileTag">
<summary> <summary>
The value indicating the kind of this object. The value indicating the kind of this object.
...@@ -1630,18 +1105,11 @@ ...@@ -1630,18 +1105,11 @@
The placed point of this object. <c>null</c> if not placed. The placed point of this object. <c>null</c> if not placed.
</summary> </summary>
</member> </member>
<member name="M:CivModel.TileObject.#ctor(CivModel.Terrain.Point,CivModel.TileTag)"> <member name="M:CivModel.TileObject.#ctor(CivModel.TileTag)">
<summary> <summary>
Initializes a new instance of the <see cref="T:CivModel.TileObject"/> class. Initializes a new instance of the <see cref="T:CivModel.TileObject"/> class.
</summary> </summary>
<param name="point">The tile where the object will be.</param> <param name="tileTag">The <see cref="P:CivModel.TileObject.TileTag"/> of a object.</param>
<param name="tileTag">The <see cref="P:CivModel.TileObject.TileTag"/> of the object.</param>
</member>
<member name="M:CivModel.TileObject.OnChangePlacedPoint(System.Nullable{CivModel.Terrain.Point})">
<summary>
Called after <see cref="P:CivModel.TileObject.PlacedPoint"/> is changed.
</summary>
<param name="oldPoint">The old value of <see cref="P:CivModel.TileObject.PlacedPoint"/>.</param>
</member> </member>
<member name="T:CivModel.Player"> <member name="T:CivModel.Player">
<summary> <summary>
...@@ -1651,77 +1119,39 @@ ...@@ -1651,77 +1119,39 @@
</member> </member>
<member name="P:CivModel.Player.Gold"> <member name="P:CivModel.Player.Gold">
<summary> <summary>
The gold of this player. This value is not negative. The gold of this player.
</summary> </summary>
<seealso cref="P:CivModel.Player.GoldIncome"/>
</member> </member>
<member name="P:CivModel.Player.GoldIncome"> <member name="P:CivModel.Player.GoldIncome">
<summary> <summary>
The gold income of this player. This is not negative, and can be different from <see cref="P:CivModel.Player.GoldNetIncome"/> The gold income of this player.
</summary> </summary>
<seealso cref="P:CivModel.Player.GoldNetIncome"/>
<seealso cref="P:CivModel.Player.TaxRate"/> <seealso cref="P:CivModel.Player.TaxRate"/>
<seealso cref="P:CivModel.IGameScheme.GoldCoefficient"/> <seealso cref="P:CivModel.Game.GoldCoefficient"/>
</member>
<member name="P:CivModel.Player.GoldNetIncome">
<summary>
The net income of gold.
</summary>
<seealso cref="P:CivModel.Player.GoldIncome"/>
</member> </member>
<member name="P:CivModel.Player.Happiness"> <member name="P:CivModel.Player.Happiness">
<summary> <summary>
The happiness of this player. This value is in [-100, 100]. The happiness of this player. This value cannot exceed <c>100</c>.
</summary> </summary>
<seealso cref="P:CivModel.Player.HappinessIncome"/>
</member> </member>
<member name="P:CivModel.Player.HappinessIncome"> <member name="P:CivModel.Player.HappinessIncome">
<summary> <summary>
The happiness income of this player. The happiness income of this player.
</summary> </summary>
<seealso cref="P:CivModel.IGameScheme.HappinessCoefficient"/> <seealso cref="P:CivModel.Game.HappinessCoefficient"/>
</member> </member>
<member name="P:CivModel.Player.Labor"> <member name="P:CivModel.Player.Labor">
<summary> <summary>
The labor per turn of this player. It is equal to sum of all <see cref="P:CivModel.Common.CityCenter.Labor"/> of cities of this player. The labor per turn of this player.
</summary>
<seealso cref="P:CivModel.Common.CityCenter.Labor"/>
</member>
<member name="P:CivModel.Player.Population">
<summary>
The whole population which this player has. It is equal to sum of all <see cref="P:CivModel.Common.CityCenter.Population"/> of cities of this player.
</summary> </summary>
<seealso cref="P:CivModel.Common.CityCenter.Population"/> <seealso cref="P:CivModel.Game.LaborCoefficient"/>
<seealso cref="P:CivModel.Game.LaborHappinessConstant"/>
</member> </member>
<member name="P:CivModel.Player.TaxRate"> <member name="P:CivModel.Player.TaxRate">
<summary> <summary>
The tax rate of this player. It affects <see cref="P:CivModel.Player.GoldIncome"/> and <see cref="P:CivModel.Player.BasicEconomicRequire"/>. The tax rate of this player. It affects <see cref="P:CivModel.Player.GoldIncome"/>.
</summary>
<exception cref="T:System.ArgumentOutOfRangeException"><see cref="P:CivModel.Player.TaxRate"/> is not in [0, 1]</exception>
</member>
<member name="P:CivModel.Player.BasicEconomicRequire">
<summary>
The basic economic gold requirement.
</summary>
<seealso cref="P:CivModel.Player.EconomicInvestment"/>
</member>
<member name="P:CivModel.Player.EconomicInvestment">
<summary>
The amount of gold for economic investment.
</summary>
<seealso cref="P:CivModel.Player.BasicEconomicRequire"/>
</member>
<member name="P:CivModel.Player.BasicResearchRequire">
<summary>
The basic research gold requirement.
</summary>
<seealso cref="P:CivModel.Player.ResearchInvestment"/>
</member>
<member name="P:CivModel.Player.ResearchInvestment">
<summary>
The amount of gold for research investment.
</summary> </summary>
<seealso cref="P:CivModel.Player.BasicResearchRequire"/> <exception cref="T:System.ArgumentException"><see cref="P:CivModel.Player.TaxRate"/> is not in [0, 1]</exception>
</member> </member>
<member name="P:CivModel.Player.Units"> <member name="P:CivModel.Player.Units">
<summary> <summary>
...@@ -1762,11 +1192,6 @@ ...@@ -1762,11 +1192,6 @@
You must call that function before use this property. You must call that function before use this property.
</remarks> </remarks>
</member> </member>
<member name="P:CivModel.Player.Territory">
<summary>
The list of tiles which this player owns as territory.
</summary>
</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.
...@@ -1818,21 +1243,6 @@ ...@@ -1818,21 +1243,6 @@
</remarks> </remarks>
<returns>the list of available productions</returns> <returns>the list of available productions</returns>
</member> </member>
<member name="M:CivModel.Player.AddTerritory(CivModel.Terrain.Point)">
<summary>
Adds the territory of this player.
</summary>
<param name="pt">The tile to be in the territory.</param>
<exception cref="T:System.InvalidOperationException">a <see cref="T:CivModel.TileBuilding"/> of another player is at <paramref name="pt"/></exception>
</member>
<member name="M:CivModel.Player.RemoveTerritory(CivModel.Terrain.Point)">
<summary>
Removes the territory of this player.
</summary>
<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.InvalidOperationException">the tile where a <see cref="T:CivModel.TileBuilding"/> is cannot be removed from the territory</exception>
</member>
<member name="M:CivModel.Player.PreTurn"> <member name="M:CivModel.Player.PreTurn">
<summary> <summary>
Called before a turn. Called before a turn.
...@@ -1861,6 +1271,11 @@ ...@@ -1861,6 +1271,11 @@
and <see cref="P:CivModel.Player.EstimatedUsedLabor"/> property of this player. and <see cref="P:CivModel.Player.EstimatedUsedLabor"/> property of this player.
</summary> </summary>
</member> </member>
<member name="T:CivModel.TerrainType">
<summary>
The type of a tile of <see cref="T:CivModel.Terrain"/>.
</summary>
</member>
<member name="T:CivModel.Unit"> <member name="T:CivModel.Unit">
<summary> <summary>
Represents an unit. Represents an unit.
...@@ -1872,12 +1287,11 @@ ...@@ -1872,12 +1287,11 @@
The action performing movement. A <see cref="T:CivModel.MoveActorAction"/> object by default. The action performing movement. A <see cref="T:CivModel.MoveActorAction"/> object by default.
</summary> </summary>
</member> </member>
<member name="M:CivModel.Unit.#ctor(CivModel.Player,CivModel.Terrain.Point)"> <member name="M:CivModel.Unit.#ctor(CivModel.Player)">
<summary> <summary>
Initializes a new instance of the <see cref="T:CivModel.Unit"/> class. Initializes a new instance of the <see cref="T:CivModel.Unit"/> class.
</summary> </summary>
<param name="owner">The <see cref="T:CivModel.Player"/> who owns this unit.</param> <param name="owner">The <see cref="T:CivModel.Player"/> who owns this unit.</param>
<param name="point">The tile where the object will be.</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.Unit.OnBeforeChangeOwner(CivModel.Player)"> <member name="M:CivModel.Unit.OnBeforeChangeOwner(CivModel.Player)">
...@@ -1895,7 +1309,7 @@ ...@@ -1895,7 +1309,7 @@
<summary> <summary>
The factory interface of <see cref="T:CivModel.TileObjectProduction"/>. The factory interface of <see cref="T:CivModel.TileObjectProduction"/>.
This interface additionally provides <see cref="M:CivModel.ITileObjectProductionFactory.IsPlacable(CivModel.TileObjectProduction,CivModel.Terrain.Point)"/> This interface additionally provides <see cref="M:CivModel.ITileObjectProductionFactory.IsPlacable(CivModel.TileObjectProduction,CivModel.Terrain.Point)"/>
and <see cref="M:CivModel.ITileObjectProductionFactory.CreateTileObject(CivModel.Player,CivModel.Terrain.Point)"/> methods. and <see cref="M:CivModel.ITileObjectProductionFactory.CreateTileObject(CivModel.Player)"/> methods.
</summary> </summary>
<seealso cref="T:CivModel.IProductionFactory" /> <seealso cref="T:CivModel.IProductionFactory" />
</member> </member>
...@@ -1909,12 +1323,11 @@ ...@@ -1909,12 +1323,11 @@
<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.ITileObjectProductionFactory.CreateTileObject(CivModel.Player,CivModel.Terrain.Point)"> <member name="M:CivModel.ITileObjectProductionFactory.CreateTileObject(CivModel.Player)">
<summary> <summary>
Creates the <see cref="T:CivModel.TileObject"/> which is the production result. Creates the <see cref="T:CivModel.TileObject"/> which is the production result.
</summary> </summary>
<param name="owner">The <see cref="T:CivModel.Player"/> who owns the result.</param> <param name="owner">The <see cref="T:CivModel.Player"/> who owns the result.</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.TileObjectProduction"> <member name="T:CivModel.TileObjectProduction">
......
...@@ -20,7 +20,7 @@ GameObject: ...@@ -20,7 +20,7 @@ GameObject:
m_Component: m_Component:
- component: {fileID: 4436999106154904} - component: {fileID: 4436999106154904}
m_Layer: 0 m_Layer: 0
m_Name: Unit m_Name: Building
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
...@@ -204,6 +204,21 @@ GameObject: ...@@ -204,6 +204,21 @@ GameObject:
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
m_IsActive: 0 m_IsActive: 0
--- !u!1 &1906341680304698
GameObject:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 100100000}
serializedVersion: 5
m_Component:
- component: {fileID: 4310160372248550}
m_Layer: 0
m_Name: Unit
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!1 &1938409798695032 --- !u!1 &1938409798695032
GameObject: GameObject:
m_ObjectHideFlags: 1 m_ObjectHideFlags: 1
...@@ -250,7 +265,7 @@ Transform: ...@@ -250,7 +265,7 @@ Transform:
m_LocalPosition: {x: 0, y: 0.4, z: 0} m_LocalPosition: {x: 0, y: 0.4, z: 0}
m_LocalScale: {x: 0.5, y: 0.8, z: 0.5} m_LocalScale: {x: 0.5, y: 0.8, z: 0.5}
m_Children: [] m_Children: []
m_Father: {fileID: 4436999106154904} m_Father: {fileID: 4310160372248550}
m_RootOrder: 1 m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!4 &4157427397233106 --- !u!4 &4157427397233106
...@@ -276,7 +291,7 @@ Transform: ...@@ -276,7 +291,7 @@ Transform:
m_LocalPosition: {x: 0, y: 0.4, z: 0} m_LocalPosition: {x: 0, y: 0.4, z: 0}
m_LocalScale: {x: 0.5, y: 0.8, z: 0.5} m_LocalScale: {x: 0.5, y: 0.8, z: 0.5}
m_Children: [] m_Children: []
m_Father: {fileID: 4436999106154904} m_Father: {fileID: 4310160372248550}
m_RootOrder: 0 m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!4 &4297799600058746 --- !u!4 &4297799600058746
...@@ -300,6 +315,21 @@ Transform: ...@@ -300,6 +315,21 @@ Transform:
m_Father: {fileID: 4624084589808502} m_Father: {fileID: 4624084589808502}
m_RootOrder: 0 m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!4 &4310160372248550
Transform:
m_ObjectHideFlags: 1
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 100100000}
m_GameObject: {fileID: 1906341680304698}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children:
- {fileID: 4245987888127746}
- {fileID: 4094104317531802}
m_Father: {fileID: 4624084589808502}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!4 &4312907416615170 --- !u!4 &4312907416615170
Transform: Transform:
m_ObjectHideFlags: 1 m_ObjectHideFlags: 1
...@@ -319,14 +349,12 @@ Transform: ...@@ -319,14 +349,12 @@ Transform:
m_PrefabParentObject: {fileID: 0} m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 100100000} m_PrefabInternal: {fileID: 100100000}
m_GameObject: {fileID: 1000109618337908} m_GameObject: {fileID: 1000109618337908}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: m_Children: []
- {fileID: 4245987888127746}
- {fileID: 4094104317531802}
m_Father: {fileID: 4624084589808502} m_Father: {fileID: 4624084589808502}
m_RootOrder: 1 m_RootOrder: 2
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!4 &4567653727305688 --- !u!4 &4567653727305688
Transform: Transform:
...@@ -348,10 +376,11 @@ Transform: ...@@ -348,10 +376,11 @@ Transform:
m_PrefabInternal: {fileID: 100100000} m_PrefabInternal: {fileID: 100100000}
m_GameObject: {fileID: 1823159130722898} m_GameObject: {fileID: 1823159130722898}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 19.01729, y: 122.487495, z: -380.40945}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: m_Children:
- {fileID: 4297799600058746} - {fileID: 4297799600058746}
- {fileID: 4310160372248550}
- {fileID: 4436999106154904} - {fileID: 4436999106154904}
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_RootOrder: 0 m_RootOrder: 0
......
fileFormatVersion: 2
guid: ae6f6d3cef6797e41a4a0577aeca03c7
folderAsset: yes
timeCreated: 1519407690
licenseType: Free
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_Name: city_buildings_texture
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords:
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2800000, guid: 9a1f22ecdcf493c44b3fd5a542f95e4a, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
fileFormatVersion: 2
guid: 15b7a205fe87c4149a45db5b7613f512
timeCreated: 1519407690
licenseType: Free
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:
...@@ -11853,6 +11853,17 @@ MonoBehaviour: ...@@ -11853,6 +11853,17 @@ MonoBehaviour:
MapUI: {fileID: 531803464} MapUI: {fileID: 531803464}
ManagementUI: {fileID: 687281509} ManagementUI: {fileID: 687281509}
QuestUI: {fileID: 1243551243} QuestUI: {fileID: 1243551243}
Gold: {fileID: 520572089}
Population: {fileID: 1776750191}
Happiness: {fileID: 79311831}
Technology: {fileID: 1494908599}
Labor: {fileID: 798699953}
UnitInfo: {fileID: 1452676922}
UnitName: {fileID: 83997300}
UnitAttack: {fileID: 964404866}
UnitDefence: {fileID: 1481027123}
UnitEffect: {fileID: 896622680}
ActionPoint: {fileID: 1830873737}
SpecialSpec: {fileID: 269591156} SpecialSpec: {fileID: 269591156}
SkillSet: {fileID: 1558743809} SkillSet: {fileID: 1558743809}
UnitSelTab: {fileID: 309872625} UnitSelTab: {fileID: 309872625}
...@@ -11893,7 +11904,13 @@ MonoBehaviour: ...@@ -11893,7 +11904,13 @@ MonoBehaviour:
type: 2} type: 2}
proQueue: {fileID: 1681201286} proQueue: {fileID: 1681201286}
depQueue: {fileID: 1623971497} depQueue: {fileID: 1623971497}
productableQueue: {fileID: 1447270533} EpicQueue: {fileID: 1447270533}
HighQueue: {fileID: 1911486372}
IntermediateQueue: {fileID: 410991340}
LowQueue: {fileID: 822141376}
CityQueue: {fileID: 1340925456}
CityBuildingQueue: {fileID: 1289093026}
NormalBuildingQueue: {fileID: 436280704}
--- !u!1001 &1060029827 --- !u!1001 &1060029827
Prefab: Prefab:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
...@@ -20347,7 +20364,7 @@ GameObject: ...@@ -20347,7 +20364,7 @@ GameObject:
- component: {fileID: 1830873738} - component: {fileID: 1830873738}
- component: {fileID: 1830873737} - component: {fileID: 1830873737}
m_Layer: 5 m_Layer: 5
m_Name: Text m_Name: ActionPoint
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
...@@ -20369,7 +20386,7 @@ RectTransform: ...@@ -20369,7 +20386,7 @@ RectTransform:
m_AnchorMin: {x: 0, y: 0} m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: -0.000061035156, y: 0} m_AnchoredPosition: {x: -0.000061035156, y: 0}
m_SizeDelta: {x: 40, y: 40} m_SizeDelta: {x: 70, y: 40}
m_Pivot: {x: 0, y: 0} m_Pivot: {x: 0, y: 0}
--- !u!114 &1830873737 --- !u!114 &1830873737
MonoBehaviour: MonoBehaviour:
......
...@@ -57,7 +57,7 @@ public class GameManager : MonoBehaviour { ...@@ -57,7 +57,7 @@ public class GameManager : MonoBehaviour {
} }
// Use this when scene changing exists // Use this when scene changing exists
// DontDestroyOnLoad(gameObject); // DontDestroyOnLoad(gameObject);
_game = new CivModel.Game(GameInfo.mapWidth, GameInfo.mapHeight, GameInfo.numOfPlayer, new CivModel.Common.GameSchemeFactory()); _game = new CivModel.Game(GameInfo.mapWidth, GameInfo.mapHeight, GameInfo.numOfPlayer);
_game.StartTurn(); _game.StartTurn();
} }
...@@ -105,6 +105,20 @@ public class GameManager : MonoBehaviour { ...@@ -105,6 +105,20 @@ public class GameManager : MonoBehaviour {
else else
PseudoFSM.I.NormalStateEnter(); PseudoFSM.I.NormalStateEnter();
} }
if (PseudoFSM.I.AttackState)
{
if (tile.isFlickering)
{
if (tile.point.TileBuilding != null)
SelectedActor.AttackTo(tile.point.TileBuilding);
else if (tile.point.Unit != null)
SelectedActor.AttackTo(tile.point.Unit);
else
Debug.Log("잘못된 공격 대상");
}
else
PseudoFSM.I.NormalStateEnter();
}
Unit unit = tile.point.Unit; Unit unit = tile.point.Unit;
if (unit != null) if (unit != null)
{ {
...@@ -156,6 +170,10 @@ public class GameManager : MonoBehaviour { ...@@ -156,6 +170,10 @@ public class GameManager : MonoBehaviour {
} }
} }
public void BuildBuilding(CivModel.Terrain.Point pos, TileBuilding building)
{
}
// Read game terrain and update hex tile resource // Read game terrain and update hex tile resource
void Render(CivModel.Terrain terrain) void Render(CivModel.Terrain terrain)
{ {
...@@ -313,4 +331,23 @@ public static class ProductionFactoryTraits ...@@ -313,4 +331,23 @@ public static class ProductionFactoryTraits
} }
return result; return result;
} }
public static string GetName(CivModel.Unit unit)
{
char[] sep = { '.' };
string name = unit.ToString().Split(sep)[2];
string result;
switch (name)
{
case "Pioneer":
result = "개척자";
break;
case "JediKnight":
result = "제다이 기사";
break;
default:
result = "unknown : " + name;
break;
}
return result;
}
} }
\ No newline at end of file
...@@ -21,7 +21,8 @@ public class ManagementUIController : MonoBehaviour { ...@@ -21,7 +21,8 @@ public class ManagementUIController : MonoBehaviour {
private List<GameObject> PQlist; private List<GameObject> PQlist;
private List<GameObject> DQlist; private List<GameObject> DQlist;
private List<GameObject> SQlist; private List<GameObject> EpicQlist, HighQlist, IntermediateQlist, LowQlist; // Unit production
private List<GameObject> CityQlist, CityBuildingQlist, NormalBuildingQlist;
public GameObject proPrefab; public GameObject proPrefab;
public GameObject depPrefab; public GameObject depPrefab;
...@@ -29,9 +30,11 @@ public class ManagementUIController : MonoBehaviour { ...@@ -29,9 +30,11 @@ public class ManagementUIController : MonoBehaviour {
public GameObject proQueue; public GameObject proQueue;
public GameObject depQueue; public GameObject depQueue;
public GameObject productableQueue; public GameObject EpicQueue, HighQueue, IntermediateQueue, LowQueue; // Unit production
public GameObject CityQueue, CityBuildingQueue, NormalBuildingQueue; // Building production
public void ManageFunction() // Management tab on/off button -> ManageMentUIActive
private List<GameObject> MakeSelectionQ(List<GameObject> SQlist, GameObject productableQueue)
{ {
List<GameObject> tempList = new List<GameObject>(); List<GameObject> tempList = new List<GameObject>();
Debug.Log("SelectList startMaking"); Debug.Log("SelectList startMaking");
...@@ -41,6 +44,7 @@ public class ManagementUIController : MonoBehaviour { ...@@ -41,6 +44,7 @@ public class ManagementUIController : MonoBehaviour {
} }
SQlist.Clear(); SQlist.Clear();
facList = game.PlayerInTurn.GetAvailableProduction(); facList = game.PlayerInTurn.GetAvailableProduction();
//facList의 변경으로 Epic-High-intermediate-Low 변경 가능. 하지만 지금은 설정되지 않았음(Epic에 생성)
Debug.Log(facList + " " + facList.Count); Debug.Log(facList + " " + facList.Count);
Debug.Log("facList : " + facList.Count); Debug.Log("facList : " + facList.Count);
Debug.Log("SelectList Updated"); Debug.Log("SelectList Updated");
...@@ -62,13 +66,17 @@ public class ManagementUIController : MonoBehaviour { ...@@ -62,13 +66,17 @@ public class ManagementUIController : MonoBehaviour {
SPrefab.GetComponent<SelPrefab>().MakeItem(); SPrefab.GetComponent<SelPrefab>().MakeItem();
tempList.Add(SPrefab); tempList.Add(SPrefab);
} }
SQlist = tempList; return tempList;
}
public void ManageFunction() // Management tab on/off button -> ManageMentUIActive
{
EpicQlist = MakeSelectionQ(EpicQlist, EpicQueue);
MakeProductionQ(); MakeProductionQ();
MakeDeploymentQ(); MakeDeploymentQ();
foreach (GameObject sq in SQlist) foreach (GameObject sq in EpicQlist)
{ {
sq.GetComponent<SelPrefab>().SetButton(SQlist.IndexOf(sq)); sq.GetComponent<SelPrefab>().SetButton(EpicQlist.IndexOf(sq));
Debug.Log(SQlist.IndexOf(sq)); Debug.Log(EpicQlist.IndexOf(sq));
} }
foreach (GameObject dq in DQlist) foreach (GameObject dq in DQlist)
{ {
...@@ -94,7 +102,15 @@ public class ManagementUIController : MonoBehaviour { ...@@ -94,7 +102,15 @@ public class ManagementUIController : MonoBehaviour {
{ {
gameManager = GameManager.I; gameManager = GameManager.I;
game = gameManager.Game; game = gameManager.Game;
SQlist = new List<GameObject>();
EpicQlist = new List<GameObject>();
HighQlist = new List<GameObject>();
IntermediateQlist = new List<GameObject>();
LowQlist = new List<GameObject>();
CityQlist = new List<GameObject>();
CityBuildingQlist = new List<GameObject>();
NormalBuildingQlist = new List<GameObject>();
PQlist = new List<GameObject>(); PQlist = new List<GameObject>();
DQlist = new List<GameObject>(); DQlist = new List<GameObject>();
} }
......
...@@ -176,8 +176,7 @@ public class PseudoFSM : MonoBehaviour { ...@@ -176,8 +176,7 @@ public class PseudoFSM : MonoBehaviour {
int index = _currentSkill; int index = _currentSkill;
_inSkillState = false; _inSkillState = false;
_currentSkill = -1; _currentSkill = -1;
if (GameManager.I.SelectedActor == null || !GameManager.I.SelectedActor.SpecialActs[index].IsParametered)
if (!GameManager.I.SelectedActor.SpecialActs[index].IsParametered)
{ {
return; return;
} }
......
...@@ -10,6 +10,19 @@ public class UIManager : MonoBehaviour { ...@@ -10,6 +10,19 @@ public class UIManager : MonoBehaviour {
public GameObject ManagementUI; public GameObject ManagementUI;
public GameObject QuestUI; public GameObject QuestUI;
public Text Gold;
public Text Population;
public Text Happiness;
public Text Technology;
public Text Labor;
public GameObject UnitInfo;
public Text UnitName;
public Text UnitAttack;
public Text UnitDefence;
public Text UnitEffect;
public Text ActionPoint;
public GameObject SpecialSpec; public GameObject SpecialSpec;
/* /*
public GameObject SkillSpec1; public GameObject SkillSpec1;
...@@ -55,10 +68,37 @@ public class UIManager : MonoBehaviour { ...@@ -55,10 +68,37 @@ public class UIManager : MonoBehaviour {
if (GameManager.I.isThereTodos) if (GameManager.I.isThereTodos)
{ {
MapUI.transform.Find("EndTurn").GetComponentInChildren<Text>().text = "유닛이 명령을 기다리고 있습니다"; MapUI.transform.Find("EndTurn").GetComponentInChildren<Text>().text = "유닛이 명령을 기다리고 있습니다";
MapUI.transform.Find("EndTurn").GetComponentInChildren<Text>().fontSize = Screen.height / 40;
} }
else else
{ {
MapUI.transform.Find("EndTurn").GetComponentInChildren<Text>().text = "다음 턴"; MapUI.transform.Find("EndTurn").GetComponentInChildren<Text>().text = "다음 턴";
MapUI.transform.Find("EndTurn").GetComponentInChildren<Text>().fontSize = Screen.height / 25;
}
Gold.text = "금 : " + GameManager.I.Game.PlayerInTurn.Gold + "(+" + GameManager.I.Game.PlayerInTurn.GoldIncome + ")";
Population.text = "인구 : "; // Model 업데이트 이후 어디서 찾아야 하는지 찾을 필요성 있음.
Happiness.text = "행복 : " + GameManager.I.Game.PlayerInTurn.Happiness;
Technology.text = "기술력 : "; // Model 업데이트 이후 어디서 찾아야 하는지 찾을 필요성 있음.
Labor.text = "노동력 : " + GameManager.I.Game.PlayerInTurn.Labor;
if(GameManager.I.SelectedActor != null)
{
UnitInfo.SetActive(true);
UnitName.text = ProductionFactoryTraits.GetName(GameManager.I.SelectedActor);
UnitAttack.text = GameManager.I.SelectedActor.AttackPower.ToString();
UnitDefence.text = GameManager.I.SelectedActor.DefencePower.ToString();
UnitEffect.text = "";
ActionPoint.text = GameManager.I.SelectedActor.RemainAP + "/" + GameManager.I.SelectedActor.MaxAP;
}
else
{
UnitInfo.SetActive(false);
UnitName.text = "";
UnitAttack.text = "";
UnitDefence.text = "";
UnitEffect.text = "";
ActionPoint.text = "";
} }
} }
......
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