Commit fcb1b506 authored by redsuncore's avatar redsuncore

firstbinding model implemented

승리 (WIP)
배치 취소 버튼 구현
모델 변경
parent af814afb
fileFormatVersion: 2
guid: 7af0b65990ee87442b36043d2f0d3ce0
timeCreated: 1519466970
licenseType: Free
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 3dc160019b2765e4a9cb650fe35f9871
timeCreated: 1519466957
licenseType: Free
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 diff is collapsed.
fileFormatVersion: 2
guid: e4aedecbc18246c41b99e37b20c5907e
timeCreated: 1519466963
licenseType: Free
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
<!-- Mono library mapping mechanism -->
<configuration>
<dllmap dll="ntdll.dll">
<dllentry os="osx" dll="libc.dylib"/>
<dllentry os="linux,solaris,freebsd" dll="libc.so.6"/>
</dllmap>
</configuration>
fileFormatVersion: 2
guid: 6760212b949a49a4fb3870b8f18521fb
timeCreated: 1519466955
licenseType: Free
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 65de71d7b02e55b4f890e1d644d6cf54
timeCreated: 1519466970
licenseType: Free
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 78252bc494b0fee4ab627795a41ab372
timeCreated: 1519466959
licenseType: Free
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 diff is collapsed.
fileFormatVersion: 2
guid: 87a5969a38268d8489dc2f819e746f62
timeCreated: 1519466963
licenseType: Free
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: f1b296f057caa10468fc5368514bab19
timeCreated: 1519466970
licenseType: Free
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 07efa08d04626824fb7a05a98bab7bcf
timeCreated: 1519466956
licenseType: Free
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:
<?xml version="1.0" encoding="utf-8"?>
<doc>
<assembly><name>CivModel.AI</name></assembly>
<members>
</members>
</doc>
fileFormatVersion: 2
guid: a4c22f93d47aff34ab0465ad060e1349
timeCreated: 1519466963
licenseType: Free
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 14316eefeff7b8c4882dee9cb31df5f1
timeCreated: 1519466970
timeCreated: 1519646880
licenseType: Free
DefaultImporter:
externalObjects: {}
......
fileFormatVersion: 2
guid: f827a99d5e4488648bcb0d0b5b6a4ed2
timeCreated: 1518214574
timeCreated: 1519646873
licenseType: Free
PluginImporter:
externalObjects: {}
......
fileFormatVersion: 2
guid: 51a4ccfc53e3bd3489fedcd4adb9e458
timeCreated: 1519466970
timeCreated: 1519646880
licenseType: Free
DefaultImporter:
externalObjects: {}
......
fileFormatVersion: 2
guid: 8deb64f2df3d02a45a45ef02887bb4cc
timeCreated: 1518214574
timeCreated: 1519646872
licenseType: Free
PluginImporter:
externalObjects: {}
......
This diff is collapsed.
fileFormatVersion: 2
guid: 2413c1b1e7b93b84a957f43c0249b262
timeCreated: 1518214574
timeCreated: 1519646875
licenseType: Free
TextScriptImporter:
externalObjects: {}
......
fileFormatVersion: 2
guid: f6fc0c038e7ce6640910e93606bc6076
timeCreated: 1519466970
timeCreated: 1519646880
licenseType: Free
DefaultImporter:
externalObjects: {}
......
fileFormatVersion: 2
guid: 816d76721656ca94f9a87f05b54850d8
timeCreated: 1518214573
timeCreated: 1519646871
licenseType: Free
PluginImporter:
externalObjects: {}
......
......@@ -44,12 +44,6 @@
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
......@@ -395,10 +389,5 @@
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>
</members>
</doc>
fileFormatVersion: 2
guid: c10ada295d908db498d79b64d9cff2c3
timeCreated: 1518214574
timeCreated: 1519646875
licenseType: Free
TextScriptImporter:
externalObjects: {}
......
fileFormatVersion: 2
guid: d96bb471b14ad0446853566b2e6ca689
timeCreated: 1519466961
licenseType: Free
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 diff is collapsed.
fileFormatVersion: 2
guid: ee2e55b47f8f7e74a8a9825df3bdf23b
timeCreated: 1519466963
licenseType: Free
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 73a1545fcdff723498d02b6b7849993c
timeCreated: 1519466958
licenseType: Free
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 diff is collapsed.
fileFormatVersion: 2
guid: 012961f95c5d336479d73aba9905aef3
timeCreated: 1519466963
licenseType: Free
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 58435f9b226203141837f863a18e6f00
folderAsset: yes
timeCreated: 1519466955
licenseType: Free
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 278793e472b8b3f4296728510825a1e6
timeCreated: 1519466957
licenseType: Free
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:
......@@ -42,6 +42,8 @@ public class GameManager : MonoBehaviour {
private CivModel.Unit[] _standbyUnits;
private int _standbyUnitIndex = -1;
private bool[] _victoryNotified = null;
// Use this for initialization
void Awake()
{
......@@ -57,7 +59,7 @@ public class GameManager : MonoBehaviour {
}
// Use this when scene changing exists
// DontDestroyOnLoad(gameObject);
_game = new CivModel.Game(GameInfo.mapWidth, GameInfo.mapHeight, GameInfo.numOfPlayer, new GameSchemeFactory(), new IGameSchemeFactory[] { new CivModel.AI.GameSchemeFactory()});
_game = new CivModel.Game(GameInfo.mapWidth, GameInfo.mapHeight, GameInfo.numOfPlayer, new GameSchemeFactory()/*, new IGameSchemeFactory[] { new CivModel.AI.GameSchemeFactory()}*/);
_game.StartTurn();
}
......@@ -313,6 +315,21 @@ public class GameManager : MonoBehaviour {
Game.PlayerInTurn.Deployment.Remove(dep);
PseudoFSM.I.NormalStateEnter();
}
//승리 확인 함수(From Presenter)
private bool CheckVictory()
{
if (_victoryNotified != null)
return false;
var survivors = Game.Players.Where(player => !player.IsDefeated);
if (survivors.Count() <= 1)
{
_victoryNotified = new bool[Game.Players.Count];
PseudoFSM.I.NormalStateEnter();
return true;
}
return false;
}
}
public static class ProductionFactoryTraits
......@@ -379,4 +396,5 @@ public static class ProductionFactoryTraits
}
return result;
}
}
\ No newline at end of file
......@@ -47,11 +47,12 @@ public class ManagementUIController : MonoBehaviour {
DeleteAllSQ();
foreach (IProductionFactory fac in facList)
{
if(fac.ProductionResultType != null)
/*if(fac.ProductionResultType != null)
{
fac.ProductionResultType.GetInterface("battleclasslevel");
PartSelectionQ(EpicQlist, EpicQueue, fac);
}
}*/
PartSelectionQ(EpicQlist, EpicQueue, fac);
}
//내용물 없을 때 빈칸 채우기
foreach(var qlist in ASQlist)
......@@ -105,10 +106,10 @@ public class ManagementUIController : MonoBehaviour {
//각 Factory의 분야를 읽어서 해당하는 Queue에 집어넣는 역할
private GameObject PartSelectionQ(List<GameObject> SQlist, GameObject productableQueue, IProductionFactory fac)
{
if (fac.ProductionResultType == null)
/*if (fac.ProductionResultType == null)
{
return null;
}
}*/
var SPrefab = Instantiate(productablePrefab, new Vector3(0f, 0f, 0f), Quaternion.identity);
SPrefab.transform.SetParent(productableQueue.transform);
SPrefab.transform.localScale = new Vector3(1f, 1f, 1f);
......
......@@ -65,18 +65,23 @@ public class UIManager : MonoBehaviour {
}
void Update()
{
if (GameManager.I.isThereTodos)
if (GameManager.I.isThereTodos && !PseudoFSM.I.DepState)
{
MapUI.transform.Find("EndTurn").GetComponentInChildren<Text>().text = "유닛이 명령을 기다리고 있습니다";
MapUI.transform.Find("EndTurn").GetComponentInChildren<Text>().fontSize = Screen.height / 40;
}
else if (PseudoFSM.I.DepState)
{
MapUI.transform.Find("EndTurn").GetComponentInChildren<Text>().text = "배치 취소";
MapUI.transform.Find("EndTurn").GetComponentInChildren<Text>().fontSize = Screen.height / 25;
}
else
{
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 + ")";
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 업데이트 이후 어디서 찾아야 하는지 찾을 필요성 있음.
......@@ -209,10 +214,14 @@ public class UIManager : MonoBehaviour {
public void EndTurnActive()
{
SkillSet.SetActive(false);
if (GameManager.I.isThereTodos)
if (GameManager.I.isThereTodos && !PseudoFSM.I.DepState)
{
GameManager.I.SelectNextUnit();
}
else if(PseudoFSM.I.DepState)
{
PseudoFSM.I.NormalStateEnter();
}
else
{
GameManager.I.ProceedTurn();
......
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