From d6e0d4a0391a89f0fed13ba00286435367aeb27a Mon Sep 17 00:00:00 2001 From: laurids Date: Tue, 13 Oct 2020 22:24:35 +0200 Subject: [PATCH] Flank UI WIP --- .../Prefabs/BattleFormationUI.prefab | 6 +- .../GWConquest/Prefabs/BattleUnitIcon.prefab | 4 +- Assets/GWConquest/Prefabs/FlankUI.prefab | 4 +- Assets/GWConquest/Scenes/GalaxyMap.unity | 38 ++++---- Assets/GWConquest/Scripts/Battle.cs | 60 ++++++++++-- Assets/GWConquest/Scripts/ServerCallbacks.cs | 6 ++ .../GWConquest/Scripts/UI/BattleArmyPanel.cs | 21 ++++- Assets/GWConquest/Scripts/UI/BattleFlankUI.cs | 14 +++ .../Scripts/UI/BattleFormationUI.cs | 9 +- Assets/GWConquest/Scripts/UI/BattleUI.cs | 32 ++++++- .../GWConquest/Scripts/UI/BattleUnitIcon.cs | 44 ++++++++- Assets/GWConquest/Scripts/UI/DistrictIcon.cs | 4 +- .../GWConquest/Scripts/UI/DragDropElement.cs | 2 +- Assets/GWConquest/Scripts/Unit.cs | 12 +++ .../Explosion 04/BattleUnitIcon.controller | 14 +-- .../PhotonBolt/assemblies/bolt.user.dll | Bin 46592 -> 53760 bytes .../PhotonBolt/assemblies/bolt.user.dll.mdb | Bin 19100 -> 23168 bytes Assets/Photon/PhotonBolt/project.json | 87 ++++++++++++++++++ ProjectSettings/PackageManagerSettings.asset | 38 ++++++++ ProjectSettings/ProjectVersion.txt | 4 +- 20 files changed, 345 insertions(+), 54 deletions(-) create mode 100644 ProjectSettings/PackageManagerSettings.asset diff --git a/Assets/GWConquest/Prefabs/BattleFormationUI.prefab b/Assets/GWConquest/Prefabs/BattleFormationUI.prefab index 5d8955c..0c6b5a8 100644 --- a/Assets/GWConquest/Prefabs/BattleFormationUI.prefab +++ b/Assets/GWConquest/Prefabs/BattleFormationUI.prefab @@ -130,7 +130,7 @@ RectTransform: m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 89, y: -11} - m_SizeDelta: {x: -692.99646, y: 59.742905} + m_SizeDelta: {x: -96, y: 59.742905} m_Pivot: {x: 0, y: 1} --- !u!222 &1816981237351840948 CanvasRenderer: @@ -243,7 +243,7 @@ PrefabInstance: - target: {fileID: 1687732570946376589, guid: 70bba337c1bb2d64e83a214cd4a781ea, type: 3} propertyPath: m_AnchoredPosition.x - value: 39.5 + value: 7 objectReference: {fileID: 0} - target: {fileID: 1687732570946376589, guid: 70bba337c1bb2d64e83a214cd4a781ea, type: 3} @@ -283,7 +283,7 @@ PrefabInstance: - target: {fileID: 1687732570946376589, guid: 70bba337c1bb2d64e83a214cd4a781ea, type: 3} propertyPath: m_Pivot.x - value: 0.5 + value: 0 objectReference: {fileID: 0} - target: {fileID: 1687732570946376589, guid: 70bba337c1bb2d64e83a214cd4a781ea, type: 3} diff --git a/Assets/GWConquest/Prefabs/BattleUnitIcon.prefab b/Assets/GWConquest/Prefabs/BattleUnitIcon.prefab index 9c9fbed..3bb4e0f 100644 --- a/Assets/GWConquest/Prefabs/BattleUnitIcon.prefab +++ b/Assets/GWConquest/Prefabs/BattleUnitIcon.prefab @@ -432,7 +432,7 @@ MonoBehaviour: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1687732571317619585} - m_Enabled: 1 + m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: @@ -444,7 +444,7 @@ MonoBehaviour: m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_Sprite: {fileID: 21300000, guid: 89dcc12d2e6cfac4cb7e843686f1dc3b, type: 3} + m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 diff --git a/Assets/GWConquest/Prefabs/FlankUI.prefab b/Assets/GWConquest/Prefabs/FlankUI.prefab index 1420944..7e46a27 100644 --- a/Assets/GWConquest/Prefabs/FlankUI.prefab +++ b/Assets/GWConquest/Prefabs/FlankUI.prefab @@ -31,8 +31,8 @@ RectTransform: m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchorMin: {x: 0.5, y: 1} + m_AnchorMax: {x: 0.5, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} diff --git a/Assets/GWConquest/Scenes/GalaxyMap.unity b/Assets/GWConquest/Scenes/GalaxyMap.unity index 50c727e..7dafd30 100644 --- a/Assets/GWConquest/Scenes/GalaxyMap.unity +++ b/Assets/GWConquest/Scenes/GalaxyMap.unity @@ -6670,7 +6670,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!224 &99124966 RectTransform: m_ObjectHideFlags: 0 @@ -37303,7 +37303,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!224 &704414502 RectTransform: m_ObjectHideFlags: 0 @@ -41242,7 +41242,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!224 &765894939 RectTransform: m_ObjectHideFlags: 0 @@ -45898,7 +45898,7 @@ PrefabInstance: - target: {fileID: 7870129596896663125, guid: 8b0edf9c7ac699a4da4b06f9b352ff47, type: 3} propertyPath: m_AnchoredPosition.y - value: -60 + value: -169.99994 objectReference: {fileID: 0} - target: {fileID: 7870129596896663125, guid: 8b0edf9c7ac699a4da4b06f9b352ff47, type: 3} @@ -45938,7 +45938,7 @@ PrefabInstance: - target: {fileID: 7870129596896663125, guid: 8b0edf9c7ac699a4da4b06f9b352ff47, type: 3} propertyPath: m_Pivot.y - value: 0.5 + value: 1 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 8b0edf9c7ac699a4da4b06f9b352ff47, type: 3} @@ -45963,7 +45963,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!224 &858778290 RectTransform: m_ObjectHideFlags: 0 @@ -53570,12 +53570,12 @@ PrefabInstance: - target: {fileID: 77748483005084366, guid: f69b4b94559d7a14d99e0d870647c1f9, type: 3} propertyPath: m_AnchorMax.x - value: 0 + value: 1 objectReference: {fileID: 0} - target: {fileID: 77748483005084366, guid: f69b4b94559d7a14d99e0d870647c1f9, type: 3} propertyPath: m_AnchorMax.y - value: 0 + value: 1 objectReference: {fileID: 0} - target: {fileID: 77748483005084366, guid: f69b4b94559d7a14d99e0d870647c1f9, type: 3} @@ -53755,7 +53755,7 @@ PrefabInstance: - target: {fileID: 77748483683952273, guid: f69b4b94559d7a14d99e0d870647c1f9, type: 3} propertyPath: m_AnchoredPosition.y - value: 0.000030517578 + value: 0.000061035156 objectReference: {fileID: 0} - target: {fileID: 77748483683952273, guid: f69b4b94559d7a14d99e0d870647c1f9, type: 3} @@ -63487,7 +63487,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!224 &1184608294 RectTransform: m_ObjectHideFlags: 0 @@ -63511,9 +63511,9 @@ RectTransform: m_Father: {fileID: 853420528} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -146, y: 236} + m_AnchorMin: {x: 0.5, y: 1} + m_AnchorMax: {x: 0.5, y: 1} + m_AnchoredPosition: {x: -146, y: -238} m_SizeDelta: {x: 206.46652, y: 207.34766} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &1185316499 @@ -66146,7 +66146,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!224 &1242157414 RectTransform: m_ObjectHideFlags: 0 @@ -109481,7 +109481,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!224 &1996625630 RectTransform: m_ObjectHideFlags: 0 @@ -115791,7 +115791,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!224 &2120604532 RectTransform: m_ObjectHideFlags: 0 @@ -116846,12 +116846,12 @@ PrefabInstance: - target: {fileID: 77748483005084366, guid: f69b4b94559d7a14d99e0d870647c1f9, type: 3} propertyPath: m_AnchorMax.x - value: 0 + value: 1 objectReference: {fileID: 0} - target: {fileID: 77748483005084366, guid: f69b4b94559d7a14d99e0d870647c1f9, type: 3} propertyPath: m_AnchorMax.y - value: 0 + value: 1 objectReference: {fileID: 0} - target: {fileID: 77748483005084366, guid: f69b4b94559d7a14d99e0d870647c1f9, type: 3} @@ -116866,7 +116866,7 @@ PrefabInstance: - target: {fileID: 77748483683952273, guid: f69b4b94559d7a14d99e0d870647c1f9, type: 3} propertyPath: m_AnchoredPosition.y - value: -0.000030517578 + value: 0 objectReference: {fileID: 0} - target: {fileID: 1357256667308970758, guid: f69b4b94559d7a14d99e0d870647c1f9, type: 3} diff --git a/Assets/GWConquest/Scripts/Battle.cs b/Assets/GWConquest/Scripts/Battle.cs index 307e777..10d3587 100644 --- a/Assets/GWConquest/Scripts/Battle.cs +++ b/Assets/GWConquest/Scripts/Battle.cs @@ -204,17 +204,23 @@ namespace GWConquest if(hasChanges) { - var ui = IngameUI.Instance.PlanetView.BattleUI; - if(ui.isActiveAndEnabled) - { - ui.PlayerPanel.UpdateIcons(); - ui.EnemyPanel.UpdateIcons(); - } - + SetUIDirty(); } } + public void SetUIDirty(bool updatePositions=false) + { + var ui = IngameUI.Instance.PlanetView.BattleUI; + if(ui.isActiveAndEnabled) + { + if(updatePositions) { + ui.UpdateFormations(); + } + ui.UpdateIcons(); + } + } + private void SimulateUnitAction(Unit unit) { BoltLog.Info("Simulating action for unit {0} on turn {1}", unit, BattleTurn); @@ -259,6 +265,30 @@ namespace GWConquest } } + public void MoveUnitToFlank(Unit unit, BattleFlank flank, int flankIndex) + { + if(flank.Player != unit.Player) + { + BoltLog.Error("Tried to move unit {0} of player {1} to flank {2} of player {3}", unit, unit.Player, flank, flank.Player); + } + else if(flank.MaxUnitCount <= flankIndex) + { + BoltLog.Error("Tried to move unit {0} to flank index {1} on flank {2} with size {3}", unit, flankIndex, flank, flank.MaxUnitCount); + } + else if(flank.GetUnit(flankIndex) != null) + { + BoltLog.Error("Tried to move unit {0} to flank index {1} on flank {2}, but it was already occupied by {3}", unit, flankIndex, flank, flank.GetUnit(flankIndex)); + } + else { + BoltLog.Info("Moving unit {0} to flank index {1} on flank {2}", unit, flankIndex, flank); + + unit.BattleState = BattleUnitState.OnFlank; + flank.SetUnit(flankIndex, unit); + + SetUIDirty(updatePositions: true); + } + } + private static bool Check(float chance) { return Random.Range(0f, 1f) <= chance; } @@ -290,5 +320,21 @@ namespace GWConquest } } + + } + + public enum BattleUnitState { + InReserve, + OnFlank, + Arriving, + Departing, + MovingToFlank, + MovingToReserve + } + + public enum RevealState { + Visible, + FullHidden, + ClassHidden } } \ No newline at end of file diff --git a/Assets/GWConquest/Scripts/ServerCallbacks.cs b/Assets/GWConquest/Scripts/ServerCallbacks.cs index 9e925e6..28741d2 100644 --- a/Assets/GWConquest/Scripts/ServerCallbacks.cs +++ b/Assets/GWConquest/Scripts/ServerCallbacks.cs @@ -68,5 +68,11 @@ namespace GWConquest DistrictFactory factory = evnt.Factory.GetComponent(); factory.AddProductionQueueEntry(evnt.UnitClass, evnt.Player.GetComponent()); } + + public override void OnEvent(MoveUnitToFlankEvent evnt) + { + var flank = evnt.Flank.GetComponent(); + flank.Battle.MoveUnitToFlank(evnt.Unit.GetComponent(), flank, evnt.FlankIndex); + } } } \ No newline at end of file diff --git a/Assets/GWConquest/Scripts/UI/BattleArmyPanel.cs b/Assets/GWConquest/Scripts/UI/BattleArmyPanel.cs index 2560683..f6f7d43 100644 --- a/Assets/GWConquest/Scripts/UI/BattleArmyPanel.cs +++ b/Assets/GWConquest/Scripts/UI/BattleArmyPanel.cs @@ -52,11 +52,12 @@ namespace GWConquest { { var formations = GetBattleFormations().ToList(); - foreach(var fui in FormationUIList) + foreach(var fui in FormationUIList.ToList()) { if(formations.Contains(fui.Formation)) { formations.Remove(fui.Formation); + fui.UpdateUnitIcons(); } else { fui.OnRemove(); @@ -145,5 +146,23 @@ namespace GWConquest { } } + public void OnIconDragged(BattleUnitIcon icon, BattleUnitIcon target) + { + if(icon.Unit.BattleState == BattleUnitState.InReserve) + { + var flankUI = target.GetComponentInParent(); + if(flankUI != null) + { + var flankIndex = System.Array.IndexOf(flankUI.Icons, target); + + var ev = MoveUnitToFlankEvent.Create(Bolt.GlobalTargets.OnlyServer); + ev.Unit = icon.Unit.entity; + ev.Flank = flankUI.BattleFlank.entity; + ev.FlankIndex = flankIndex; + ev.Send(); + } + } + } + } } \ No newline at end of file diff --git a/Assets/GWConquest/Scripts/UI/BattleFlankUI.cs b/Assets/GWConquest/Scripts/UI/BattleFlankUI.cs index 045b8a8..935f6e3 100644 --- a/Assets/GWConquest/Scripts/UI/BattleFlankUI.cs +++ b/Assets/GWConquest/Scripts/UI/BattleFlankUI.cs @@ -47,6 +47,20 @@ namespace GWConquest { rt.sizeDelta = new Vector2(Cols * IconSize, rowCount * IconSize); } + public void UpdateIcons() + { + for(int i = 0; i < Icons.Length; i++) + { + var icon = Icons[i]; + var unit = BattleFlank.GetUnit(i); + if(icon.Unit != unit) + { + icon.Init(unit); + } + icon.UpdateIcon(); + } + } + } } \ No newline at end of file diff --git a/Assets/GWConquest/Scripts/UI/BattleFormationUI.cs b/Assets/GWConquest/Scripts/UI/BattleFormationUI.cs index 05db463..7e2dbc5 100644 --- a/Assets/GWConquest/Scripts/UI/BattleFormationUI.cs +++ b/Assets/GWConquest/Scripts/UI/BattleFormationUI.cs @@ -48,11 +48,16 @@ namespace GWConquest { return CurrentHeight; } + public IEnumerable GetShownUnits() + { + return Formation.Units.Where(u => u.BattleState == BattleUnitState.InReserve); + } + public void UpdateUnitIcons() { - var units = Formation.Units.ToList(); + var units = GetShownUnits().ToList(); - foreach(var icon in IconList) + foreach(var icon in IconList.ToList()) { if(units.Contains(icon.Unit)) { diff --git a/Assets/GWConquest/Scripts/UI/BattleUI.cs b/Assets/GWConquest/Scripts/UI/BattleUI.cs index 4040aea..545c6d4 100644 --- a/Assets/GWConquest/Scripts/UI/BattleUI.cs +++ b/Assets/GWConquest/Scripts/UI/BattleUI.cs @@ -1,5 +1,6 @@ using UnityEngine; using UnityEngine.UI; +using System.Linq; namespace GWConquest { public class BattleUI : MonoBehaviour { @@ -23,10 +24,11 @@ namespace GWConquest { public void InitFlankPanel(){ - float width = FlankPanel.rect.width; + var rect = FlankPanel.rect; //float uiWidth = FlankUIs[0].RectTransform.rect.width; - float x = width/4; + float x = rect.width/4; + FlankUIs = new BattleFlankUI[Battle.FlankCount]; for(int i = 0; i < Battle.FlankCount; i++) @@ -44,6 +46,22 @@ namespace GWConquest { } + var PlayerUIs = FlankUIs.Where(ui => ui.BattleFlank.Player == Player.CurrentPlayer).ToList(); + + for(int i = 0; i < PlayerUIs.Count; i++) + { + var pos = new Vector2(-x, -(i+1) * rect.height / (PlayerUIs.Count+1)); + PlayerUIs[i].RectTransform.anchoredPosition = pos; + } + + var EnemyUIs = FlankUIs.Where(ui => ui.BattleFlank.Player != Player.CurrentPlayer).ToList(); + + for(int i = 0; i < EnemyUIs.Count; i++) + { + var pos = new Vector2(x, -(i+1) * rect.height / (EnemyUIs.Count+1)); + EnemyUIs[i].RectTransform.anchoredPosition = pos; + } + } @@ -54,5 +72,15 @@ namespace GWConquest { EnemyPanel.UpdateFormations(); } + public void UpdateIcons() + { + PlayerPanel.UpdateIcons(); + EnemyPanel.UpdateIcons(); + foreach(var flankUI in FlankUIs) + { + flankUI.UpdateIcons(); + } + } + } } \ No newline at end of file diff --git a/Assets/GWConquest/Scripts/UI/BattleUnitIcon.cs b/Assets/GWConquest/Scripts/UI/BattleUnitIcon.cs index 61a1ac8..1b492e9 100644 --- a/Assets/GWConquest/Scripts/UI/BattleUnitIcon.cs +++ b/Assets/GWConquest/Scripts/UI/BattleUnitIcon.cs @@ -2,7 +2,7 @@ using UnityEngine; using UnityEngine.UI; namespace GWConquest { - public class BattleUnitIcon : MonoBehaviour { + public class BattleUnitIcon : DragDropElement { public Image IconImage; @@ -18,6 +18,8 @@ namespace GWConquest { [System.NonSerialized] public Unit Unit; + private RectTransform ImageTransform; + public static int Compare(Unit a, Unit b) { return (int) (a.entity.NetworkId.PackedValue - b.entity.NetworkId.PackedValue); @@ -31,18 +33,28 @@ namespace GWConquest { public void Init(Unit u) { Unit = u; - Unit.CurrentIcon = this; + if(Unit != null) + { + Unit.CurrentIcon = this; - IconImage.sprite = Unit.Class.Sprite; + IconImage.sprite = Unit.Class.Sprite; + IconImage.enabled = true; + } + else { + IconImage.sprite = null; + IconImage.enabled = false; + } + + ImageTransform = IconImage.GetComponent(); } public void OnClick(){ - GetComponentInParent().OnIconClicked(this); + GetComponentInParent()?.OnIconClicked(this); } public void UpdateIcon() { - if(Unit.Hitpoints < Unit.Class.Hitpoints) + if(Unit != null && Unit.Hitpoints < Unit.Class.Hitpoints) { HealthBarGO.SetActive(true); float percentage = (float) Unit.Hitpoints / Unit.Class.Hitpoints; @@ -78,6 +90,28 @@ namespace GWConquest { SoundEffects.Instance.PlayEffect("GlancingHit"); } + public override RectTransform rectTransform => ImageTransform; + + public override bool OnDragFinished() + { + if(Unit != null) + { + foreach(BattleUnitIcon icon in FindObjectsOfType()) + { + var iconRT = icon.GetComponent(); + Vector3 mousePos = Input.mousePosition; + if(RectTransformUtility.RectangleContainsScreenPoint(iconRT, mousePos)) + { + GetComponentInParent()?.OnIconDragged(this, icon); + break; + } + } + + } + + return true; + } + } } \ No newline at end of file diff --git a/Assets/GWConquest/Scripts/UI/DistrictIcon.cs b/Assets/GWConquest/Scripts/UI/DistrictIcon.cs index 62a4b5a..858cf08 100644 --- a/Assets/GWConquest/Scripts/UI/DistrictIcon.cs +++ b/Assets/GWConquest/Scripts/UI/DistrictIcon.cs @@ -92,7 +92,7 @@ namespace GWConquest EnemyIndicatorMask.enabled = false; } - BattleIcon.SetActive(district.Zone.HasBattle); + } private void Update() { @@ -105,6 +105,8 @@ namespace GWConquest animator.SetBool("Producing", producing); } } + + BattleIcon.SetActive(district.Zone.HasBattle); } public void OpenBattleMenu() diff --git a/Assets/GWConquest/Scripts/UI/DragDropElement.cs b/Assets/GWConquest/Scripts/UI/DragDropElement.cs index d2229e7..c3c58fb 100644 --- a/Assets/GWConquest/Scripts/UI/DragDropElement.cs +++ b/Assets/GWConquest/Scripts/UI/DragDropElement.cs @@ -13,7 +13,7 @@ namespace GWConquest private bool hasMoved = false; - public RectTransform rectTransform + public virtual RectTransform rectTransform { get => GetComponent(); } diff --git a/Assets/GWConquest/Scripts/Unit.cs b/Assets/GWConquest/Scripts/Unit.cs index 378d40b..1aca667 100644 --- a/Assets/GWConquest/Scripts/Unit.cs +++ b/Assets/GWConquest/Scripts/Unit.cs @@ -39,6 +39,16 @@ namespace GWConquest get => Formation.Player; } + public BattleUnitState BattleState { + get => (BattleUnitState) state.BattleState; + set => state.BattleState = (int) value; + } + + public RevealState RevealState { + get => (RevealState) state.RevealState; + set => state.RevealState = (int) value; + } + [System.NonSerialized] public BattleUnitIcon CurrentIcon; @@ -88,6 +98,8 @@ namespace GWConquest } } + + } } \ No newline at end of file diff --git a/Assets/GWConquest/Textures/Effects/Explosion 04/BattleUnitIcon.controller b/Assets/GWConquest/Textures/Effects/Explosion 04/BattleUnitIcon.controller index 165e05c..3cd7f5d 100644 --- a/Assets/GWConquest/Textures/Effects/Explosion 04/BattleUnitIcon.controller +++ b/Assets/GWConquest/Textures/Effects/Explosion 04/BattleUnitIcon.controller @@ -139,14 +139,14 @@ AnimatorStateTransition: m_Mute: 0 m_IsExit: 0 serializedVersion: 3 - m_TransitionDuration: 0.15 + m_TransitionDuration: 0.1 m_TransitionOffset: 0 m_ExitTime: 0.75 m_HasExitTime: 0 m_HasFixedDuration: 1 m_InterruptionSource: 0 m_OrderedInterruption: 1 - m_CanTransitionToSelf: 1 + m_CanTransitionToSelf: 0 --- !u!1102 &-3473988378507739373 AnimatorState: serializedVersion: 5 @@ -194,14 +194,14 @@ AnimatorStateTransition: m_Mute: 0 m_IsExit: 0 serializedVersion: 3 - m_TransitionDuration: 0.15 + m_TransitionDuration: 0.1 m_TransitionOffset: 0 m_ExitTime: 0.75 m_HasExitTime: 0 m_HasFixedDuration: 1 m_InterruptionSource: 0 m_OrderedInterruption: 1 - m_CanTransitionToSelf: 1 + m_CanTransitionToSelf: 0 --- !u!1102 &-886644631191437290 AnimatorState: serializedVersion: 5 @@ -300,14 +300,14 @@ AnimatorStateTransition: m_Mute: 0 m_IsExit: 0 serializedVersion: 3 - m_TransitionDuration: 0.15 + m_TransitionDuration: 0.1 m_TransitionOffset: 0 m_ExitTime: 0.75 m_HasExitTime: 0 m_HasFixedDuration: 1 m_InterruptionSource: 0 m_OrderedInterruption: 1 - m_CanTransitionToSelf: 1 + m_CanTransitionToSelf: 0 --- !u!1102 &3856284254593435620 AnimatorState: serializedVersion: 5 @@ -371,7 +371,7 @@ AnimatorStateMachine: m_ChildStates: - serializedVersion: 1 m_State: {fileID: 4230381212576871578} - m_Position: {x: 430, y: -60, z: 0} + m_Position: {x: 450, y: -80, z: 0} - serializedVersion: 1 m_State: {fileID: 3856284254593435620} m_Position: {x: 430, y: 50, z: 0} diff --git a/Assets/Photon/PhotonBolt/assemblies/bolt.user.dll b/Assets/Photon/PhotonBolt/assemblies/bolt.user.dll index d8c47a87d8c424069e4029045db8005272154835..4b6d84b2030ed1fcca989176cbedfb1f94fd014d 100644 GIT binary patch literal 53760 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 Gn*Too{)&?T delta 14465 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 G7XCkGj2bBb literal 19100 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 diff --git a/Assets/Photon/PhotonBolt/project.json b/Assets/Photon/PhotonBolt/project.json index acb720b..a80518c 100644 --- a/Assets/Photon/PhotonBolt/project.json +++ b/Assets/Photon/PhotonBolt/project.json @@ -637,6 +637,24 @@ "ExtrapolationMaxFrames": 9, "SnapMagnitude": 10.0 } + }, + { + "Name": "BattleState", + "Enabled": true, + "Expanded": true, + "ReplicationMode": 1, + "Priority": 1, + "PropertyType": { + "$type": "Bolt.Compiler.PropertyTypeInteger, bolt.compiler", + "MaxValue": 255 + }, + "AssetSettings": { + "$type": "Bolt.Compiler.PropertyStateSettings, bolt.compiler", + "ExtrapolationErrorTolerance": 0.25, + "_ExtrapolationCorrectionFrames": 6, + "ExtrapolationMaxFrames": 9, + "SnapMagnitude": 10.0 + } } ], "PacketMaxBits": 512, @@ -1303,6 +1321,75 @@ "Name": "BattleFlankState", "Guid": "b15bfd78-d5db-4d5f-b238-6a1404090291", "Groups": [] + }, + { + "$type": "Bolt.Compiler.EventDefinition, bolt.compiler", + "Properties": [ + { + "Name": "Unit", + "Enabled": true, + "Expanded": true, + "ReplicationMode": 1, + "Priority": 1, + "PropertyType": { + "$type": "Bolt.Compiler.PropertyTypeEntity, bolt.compiler" + }, + "AssetSettings": { + "$type": "Bolt.Compiler.PropertyEventSettings, bolt.compiler" + } + }, + { + "Name": "Flank", + "Enabled": true, + "Expanded": true, + "ReplicationMode": 1, + "Priority": 1, + "PropertyType": { + "$type": "Bolt.Compiler.PropertyTypeEntity, bolt.compiler" + }, + "AssetSettings": { + "$type": "Bolt.Compiler.PropertyEventSettings, bolt.compiler" + } + }, + { + "Name": "FlankIndex", + "Enabled": true, + "Expanded": true, + "ReplicationMode": 1, + "Priority": 1, + "PropertyType": { + "$type": "Bolt.Compiler.PropertyTypeInteger, bolt.compiler", + "MaxValue": 255 + }, + "AssetSettings": { + "$type": "Bolt.Compiler.PropertyEventSettings, bolt.compiler" + } + } + ], + "Name": "MoveUnitToFlankEvent", + "Guid": "77ef4859-2899-4c6c-85b6-176c93b60157", + "Groups": [] + }, + { + "$type": "Bolt.Compiler.EventDefinition, bolt.compiler", + "Properties": [ + { + "Name": "Unit", + "Enabled": true, + "Expanded": true, + "ReplicationMode": 1, + "Priority": 1, + "PropertyType": { + "$type": "Bolt.Compiler.PropertyTypeEntity, bolt.compiler" + }, + "AssetSettings": { + "$type": "Bolt.Compiler.PropertyEventSettings, bolt.compiler" + } + } + ], + "Name": "MoveUnitToReserveEvent", + "Guid": "0903b28c-f966-427e-b2f4-d1a6652803f0", + "Groups": [] } ], "ActiveGroup": "Everything" diff --git a/ProjectSettings/PackageManagerSettings.asset b/ProjectSettings/PackageManagerSettings.asset new file mode 100644 index 0000000..9418901 --- /dev/null +++ b/ProjectSettings/PackageManagerSettings.asset @@ -0,0 +1,38 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &1 +MonoBehaviour: + m_ObjectHideFlags: 61 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 0} + m_Name: + m_EditorClassIdentifier: UnityEditor:UnityEditor.PackageManager.UI:PackageManagerProjectSettings + m_ScopedRegistriesSettingsExpanded: 1 + oneTimeWarningShown: 0 + m_Registries: + - m_Id: main + m_Name: + m_Url: https://packages.unity.com + m_Scopes: [] + m_IsDefault: 1 + m_UserSelectedRegistryName: + m_UserAddingNewScopedRegistry: 0 + m_RegistryInfoDraft: + m_ErrorMessage: + m_Original: + m_Id: + m_Name: + m_Url: + m_Scopes: [] + m_IsDefault: 0 + m_Modified: 0 + m_Name: + m_Url: + m_Scopes: + - + m_SelectedScopeIndex: 0 diff --git a/ProjectSettings/ProjectVersion.txt b/ProjectSettings/ProjectVersion.txt index d53ff41..ae9c8eb 100644 --- a/ProjectSettings/ProjectVersion.txt +++ b/ProjectSettings/ProjectVersion.txt @@ -1,2 +1,2 @@ -m_EditorVersion: 2019.4.11f1 -m_EditorVersionWithRevision: 2019.4.11f1 (2d9804dddde7) +m_EditorVersion: 2019.4.12f1 +m_EditorVersionWithRevision: 2019.4.12f1 (225e826a680e)