diff --git a/.gitignore b/.gitignore
index 85d427eb3..72e8d42e5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -12,6 +12,7 @@
/Recordings/
# Wwise folders
+/Aetheria-Economy_WwiseProject/.backup
/Aetheria-Economy_WwiseProject/.cache
/Aetheria-Economy_WwiseProject/GeneratedSoundBanks
@@ -84,4 +85,5 @@ Economy.Shared/obj/
# JetBrains Rider .idea folder
.idea/
+
Packages/packages-lock.json
diff --git a/Aetheria-Economy_WwiseProject/Aetheria-Economy_WwiseProject.rwvens.validationcache b/Aetheria-Economy_WwiseProject/Aetheria-Economy_WwiseProject.rwvens.validationcache
index c13fd0420..72575378b 100644
--- a/Aetheria-Economy_WwiseProject/Aetheria-Economy_WwiseProject.rwvens.validationcache
+++ b/Aetheria-Economy_WwiseProject/Aetheria-Economy_WwiseProject.rwvens.validationcache
@@ -26,39 +26,49 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Aetheria-Economy_WwiseProject/Aetheria-Economy_WwiseProject.rwvens.wsettings b/Aetheria-Economy_WwiseProject/Aetheria-Economy_WwiseProject.rwvens.wsettings
index cafc34416..ce04dab38 100644
--- a/Aetheria-Economy_WwiseProject/Aetheria-Economy_WwiseProject.rwvens.wsettings
+++ b/Aetheria-Economy_WwiseProject/Aetheria-Economy_WwiseProject.rwvens.wsettings
@@ -53,7 +53,7 @@
-
+
@@ -91,11 +91,24 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Asset Sources/shield.psd b/Asset Sources/shield.psd
new file mode 100644
index 000000000..9ec68d4a1
--- /dev/null
+++ b/Asset Sources/shield.psd
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:34223475abc62202bd62ccd7bf85c141f2564a4b6f9e73db50fa404dde535767
+size 650402
diff --git a/Assets/Materials/UI/Map Gravity Lines.mat b/Assets/Materials/UI/Map Gravity Lines.mat
index baba86f69..749d876be 100644
--- a/Assets/Materials/UI/Map Gravity Lines.mat
+++ b/Assets/Materials/UI/Map Gravity Lines.mat
@@ -86,7 +86,7 @@ Material:
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- - _Scale: 2.7380018
+ - _Scale: 0.5
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
diff --git a/Assets/Resources/Sprites/Icons/Shield2.png b/Assets/Resources/Sprites/Icons/Shield2.png
new file mode 100644
index 000000000..4115354bb
--- /dev/null
+++ b/Assets/Resources/Sprites/Icons/Shield2.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:e122132706d5e0da9cdda0029d67dbb8e83586f92e39f3975f5caa92cfece241
+size 9609
diff --git a/Assets/Resources/Sprites/Icons/Shield2.png.meta b/Assets/Resources/Sprites/Icons/Shield2.png.meta
new file mode 100644
index 000000000..708192251
--- /dev/null
+++ b/Assets/Resources/Sprites/Icons/Shield2.png.meta
@@ -0,0 +1,108 @@
+fileFormatVersion: 2
+guid: 2a61aee34fcf7e640a093cb4c4fa56bc
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 11
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ isReadable: 0
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: -1
+ aniso: -1
+ mipBias: -100
+ wrapU: 1
+ wrapV: 1
+ wrapW: -1
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 1
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 8
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID: 5e97eb03825dee720800000000000000
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ spritePackingTag:
+ pSDRemoveMatte: 0
+ pSDShowRemoveMatteOption: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Resources/Sprites/Icons/Shield2_no.png b/Assets/Resources/Sprites/Icons/Shield2_no.png
new file mode 100644
index 000000000..b43c4fe88
--- /dev/null
+++ b/Assets/Resources/Sprites/Icons/Shield2_no.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:c1739bda5c80a853289eb2aa22ecf6ae1059fad1566554eab797f1f381dd6c7a
+size 18623
diff --git a/Assets/Resources/Sprites/Icons/Shield2_no.png.meta b/Assets/Resources/Sprites/Icons/Shield2_no.png.meta
new file mode 100644
index 000000000..dd4279b0e
--- /dev/null
+++ b/Assets/Resources/Sprites/Icons/Shield2_no.png.meta
@@ -0,0 +1,108 @@
+fileFormatVersion: 2
+guid: bc1017eafc2627f4aaa4e247f14347fd
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 11
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ isReadable: 0
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: -1
+ aniso: -1
+ mipBias: -100
+ wrapU: 1
+ wrapV: 1
+ wrapW: -1
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 1
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 8
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 64
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID: 5e97eb03825dee720800000000000000
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ spritePackingTag:
+ pSDRemoveMatte: 0
+ pSDShowRemoveMatteOption: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scenes/ARPG.unity b/Assets/Scenes/ARPG.unity
index 23eafa957..94bf44fb5 100644
--- a/Assets/Scenes/ARPG.unity
+++ b/Assets/Scenes/ARPG.unity
@@ -888,7 +888,7 @@ MonoBehaviour:
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
- m_Sprite: {fileID: 21300000, guid: b7e9fa39f6151b14ca05120764cf2cb5, type: 3}
+ m_Sprite: {fileID: 21300000, guid: 2a61aee34fcf7e640a093cb4c4fa56bc, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
@@ -16189,14 +16189,26 @@ MonoBehaviour:
ActionBarSlot: {fileID: 8334150340270499366, guid: bfce34a0acbaa454e97a700e1875357e,
type: 3}
EffectManagerParent: {fileID: 134113271}
+ ZoneRenderer: {fileID: 1009503731}
+ DockCamera: {fileID: 393266593}
+ FollowCamera: {fileID: 887677622}
+ WormholeCamera: {fileID: 1644480539}
+ SectorMap: {fileID: 2132980328}
+ VolumeRenderer: {fileID: 2115559093}
+ MainMenu: {fileID: 588628536}
+ Menu: {fileID: 1726632268}
+ MenuMap: {fileID: 630131162}
TradeMenu: {fileID: 522642869}
+ Inventory: {fileID: 1997243495}
+ ShipPanel: {fileID: 7628189704109037582}
+ TargetShipPanel: {fileID: 410701133}
+ Dialog: {fileID: 620555924}
+ Context: {fileID: 1157981993}
+ Dropdown: {fileID: 178733681}
+ GameplayUI: {fileID: 346000248}
+ EventLog: {fileID: 1396909588}
HostileTargetIndicator: {fileID: 1787772783}
ViewDot: {fileID: 146394778}
- TargetIndicator: {fileID: 1556666357}
- TargetHitpointsFill: {fileID: 1691348884}
- TargetVisibilityFill: {fileID: 1715434759}
- VisibilityToTargetFill: {fileID: 88683285}
- TargetShieldsFill: {fileID: 932155240}
LockIndicator: {fileID: 1876420642}
Crosshairs:
- {fileID: 1914685583}
@@ -16205,25 +16217,19 @@ MonoBehaviour:
- {fileID: 1631662979}
HitMarker: {fileID: 1771741748}
HitMarkerDuration: 0.25
- EventLog: {fileID: 1396909588}
- ZoneRenderer: {fileID: 1009503731}
- DockCamera: {fileID: 393266593}
- FollowCamera: {fileID: 887677622}
- WormholeCamera: {fileID: 1644480539}
- GameplayUI: {fileID: 346000248}
- MainMenu: {fileID: 588628536}
- Menu: {fileID: 1726632268}
- MenuMap: {fileID: 630131162}
- SectorMap: {fileID: 2132980328}
- VolumeRenderer: {fileID: 2115559093}
SchematicDisplay: {fileID: 7628189704109037584}
TargetSchematicDisplay: {fileID: 410701129}
- Inventory: {fileID: 1997243495}
- ShipPanel: {fileID: 7628189704109037582}
- TargetShipPanel: {fileID: 410701133}
- Dialog: {fileID: 620555924}
- Context: {fileID: 1157981993}
- Dropdown: {fileID: 178733681}
+ TargetIndicator: {fileID: 1556666357}
+ TargetHitpointsFill: {fileID: 1691348884}
+ TargetVisibilityFill: {fileID: 1715434759}
+ VisibilityToTargetFill: {fileID: 88683285}
+ TargetShieldsBackground: {fileID: 2030645739}
+ TargetShieldsFill: {fileID: 932155240}
+ TargetShieldsIcon: {fileID: 79560454}
+ ShieldColor: {r: 0.18823527, g: 0.5620914, b: 0.7490196, a: 1}
+ NoShieldColor: {r: 0.6, g: 0.6, b: 0.6, a: 1}
+ ShieldIcon: {fileID: 21300000, guid: 2a61aee34fcf7e640a093cb4c4fa56bc, type: 3}
+ NoShieldIcon: {fileID: 21300000, guid: bc1017eafc2627f4aaa4e247f14347fd, type: 3}
IntroDuration: 10
--- !u!4 &1009503730
Transform:
@@ -23544,12 +23550,12 @@ PrefabInstance:
- target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e,
type: 3}
propertyPath: m_AnchorMax.y
- value: 0
+ value: 1
objectReference: {fileID: 0}
- target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e,
type: 3}
propertyPath: m_AnchorMin.y
- value: 0
+ value: 1
objectReference: {fileID: 0}
- target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e,
type: 3}
@@ -23569,7 +23575,7 @@ PrefabInstance:
- target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e,
type: 3}
propertyPath: m_AnchoredPosition.y
- value: 0
+ value: -16
objectReference: {fileID: 0}
- target: {fileID: 1713457305180270767, guid: 2758dfa2744d7ad4d8877545189d116e,
type: 3}
@@ -24756,12 +24762,12 @@ PrefabInstance:
- target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e,
type: 3}
propertyPath: m_AnchorMax.y
- value: 0
+ value: 1
objectReference: {fileID: 0}
- target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e,
type: 3}
propertyPath: m_AnchorMin.y
- value: 0
+ value: 1
objectReference: {fileID: 0}
- target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e,
type: 3}
@@ -24781,7 +24787,7 @@ PrefabInstance:
- target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e,
type: 3}
propertyPath: m_AnchoredPosition.y
- value: 0
+ value: -16
objectReference: {fileID: 0}
- target: {fileID: 1713457305180270767, guid: 2758dfa2744d7ad4d8877545189d116e,
type: 3}
diff --git a/Assets/Scripts/Gameplay/ActionGameManager.cs b/Assets/Scripts/Gameplay/ActionGameManager.cs
index 2b6cf8e95..52a800c98 100644
--- a/Assets/Scripts/Gameplay/ActionGameManager.cs
+++ b/Assets/Scripts/Gameplay/ActionGameManager.cs
@@ -92,38 +92,50 @@ public class ActionGameManager : MonoBehaviour
public Transform ActionBar;
public ActionBarSlot ActionBarSlot;
public Transform EffectManagerParent;
- public TradeMenu TradeMenu;
- public Prototype HostileTargetIndicator;
- public PlaceUIElementWorldspace ViewDot;
- public PlaceUIElementWorldspace TargetIndicator;
- public Image TargetHitpointsFill;
- public Image TargetVisibilityFill;
- public Image VisibilityToTargetFill;
- public Image TargetShieldsFill;
- public Prototype LockIndicator;
- public PlaceUIElementWorldspace[] Crosshairs;
- public GameObject HitMarker;
- public float HitMarkerDuration;
- public EventLog EventLog;
public ZoneRenderer ZoneRenderer;
public CinemachineVirtualCamera DockCamera;
public CinemachineVirtualCamera FollowCamera;
public CinemachineVirtualCamera WormholeCamera;
- public CanvasGroup GameplayUI;
- public MainMenu MainMenu;
- public MenuPanel Menu;
- public MapRenderer MenuMap;
//public SectorRenderer SectorRenderer;
public SectorMap SectorMap;
public VolumeSampling VolumeRenderer;
- public SchematicDisplay SchematicDisplay;
- public SchematicDisplay TargetSchematicDisplay;
+
+ [Header("Menu UI")]
+ public MainMenu MainMenu;
+ public MenuPanel Menu;
+ public MapRenderer MenuMap;
+ public TradeMenu TradeMenu;
public InventoryMenu Inventory;
public InventoryPanel ShipPanel;
public InventoryPanel TargetShipPanel;
public ConfirmationDialog Dialog;
public ContextMenu Context;
public DropdownMenu Dropdown;
+
+ [Header("Gameplay UI")]
+ public CanvasGroup GameplayUI;
+ public EventLog EventLog;
+ public Prototype HostileTargetIndicator;
+ public PlaceUIElementWorldspace ViewDot;
+ public Prototype LockIndicator;
+ public PlaceUIElementWorldspace[] Crosshairs;
+ public GameObject HitMarker;
+ public float HitMarkerDuration;
+ public SchematicDisplay SchematicDisplay;
+ public SchematicDisplay TargetSchematicDisplay;
+
+ [Header("Target Indicator")]
+ public PlaceUIElementWorldspace TargetIndicator;
+ public Image TargetHitpointsFill;
+ public Image TargetVisibilityFill;
+ public Image VisibilityToTargetFill;
+ public Image TargetShieldsBackground;
+ public Image TargetShieldsFill;
+ public Image TargetShieldsIcon;
+ public Color ShieldColor;
+ public Color NoShieldColor;
+ public Sprite ShieldIcon;
+ public Sprite NoShieldIcon;
public float IntroDuration;
@@ -922,6 +934,18 @@ public class ActionGameManager : MonoBehaviour
TargetShipPanel.gameObject.SetActive(target != null);
if (target != null)
{
+ if (target.Shield != null)
+ {
+ TargetShieldsBackground.color = new Color(ShieldColor.r, ShieldColor.g, ShieldColor.b, .4f);
+ TargetShieldsIcon.color = ShieldColor;
+ TargetShieldsIcon.sprite = ShieldIcon;
+ }
+ else
+ {
+ TargetShieldsBackground.color = new Color(NoShieldColor.r, NoShieldColor.g, NoShieldColor.b, .4f);
+ TargetShieldsIcon.color = NoShieldColor;
+ TargetShieldsIcon.sprite = NoShieldIcon;
+ }
TargetShipPanel.Display(target, true);
TargetSchematicDisplay.ShowShip(target, CurrentEntity);
@@ -1078,6 +1102,7 @@ public class ActionGameManager : MonoBehaviour
TargetVisibilityFill.fillAmount = lerp(.25f, .75f, (CurrentEntity.EntityInfoGathered[target] - threshold)/(1-threshold));
VisibilityToTargetFill.fillAmount = lerp(.25f, .75f, target.EntityInfoGathered[CurrentEntity] / threshold);
TargetHitpointsFill.fillAmount = lerp(.25f, .75f, target.Hull.Durability / target.EquippedHull.Data.Durability);
+ TargetShieldsFill.fillAmount = target.Shield == null ? 0 : lerp(.25f, .75f, target.Shield.Progress);
}
var tractorPower = Input.Player.TractorBeam.ReadValue();
diff --git a/Assets/Scripts/ServerShared/Behaviors/Shield.cs b/Assets/Scripts/ServerShared/Behaviors/Shield.cs
index b3e0b60ee..56f8d0165 100644
--- a/Assets/Scripts/ServerShared/Behaviors/Shield.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/Shield.cs
@@ -26,12 +26,11 @@ public class ShieldData : BehaviorData
}
}
-public class Shield : Behavior
+public class Shield : Behavior, IProgressBehavior
{
public float Efficiency { get; private set; }
public float EnergyUsage { get; private set; }
-
private ShieldData _data;
public Shield(ShieldData data, EquippedItem item) : base(data, item)
@@ -60,4 +59,6 @@ public class Shield : Behavior
Entity.TryConsumeEnergy(damage * EnergyUsage);
AddHeat(damage / Efficiency);
}
+
+ public virtual float Progress => Item.ThermalPerformance;
}
\ No newline at end of file
diff --git a/GameData/PlayerSettings.msgpack b/GameData/PlayerSettings.msgpack
index d6a4871ec..047ec0721 100644
--- a/GameData/PlayerSettings.msgpack
+++ b/GameData/PlayerSettings.msgpack
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:184aa9a87d9e9721cdd0e3b047dfd40e18d1112e0513d0ac8e073f88cda87bba
-size 66
+oid sha256:11e2f1ce318f24fc2ba46f014fc64518a4594c47cc4d40fd54a85e1af5ca0a5f
+size 27072