Shop ist jetzt funktional in der MainMenueScene

This commit is contained in:
2026-02-03 11:38:36 +01:00
parent 20358f541a
commit 62d40f5467
3 changed files with 200 additions and 118 deletions

View File

@@ -201,7 +201,7 @@ MonoBehaviour:
m_OnClick: m_OnClick:
m_PersistentCalls: m_PersistentCalls:
m_Calls: m_Calls:
- m_Target: {fileID: 1086179196} - m_Target: {fileID: 640078696}
m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp
m_MethodName: OpenShop m_MethodName: OpenShop
m_Mode: 1 m_Mode: 1
@@ -639,7 +639,7 @@ MonoBehaviour:
m_fontSizeMax: 72 m_fontSizeMax: 72
m_fontStyle: 0 m_fontStyle: 0
m_HorizontalAlignment: 1 m_HorizontalAlignment: 1
m_VerticalAlignment: 256 m_VerticalAlignment: 512
m_textAlignment: 65535 m_textAlignment: 65535
m_characterSpacing: 0 m_characterSpacing: 0
m_wordSpacing: 0 m_wordSpacing: 0
@@ -784,7 +784,7 @@ MonoBehaviour:
m_OnClick: m_OnClick:
m_PersistentCalls: m_PersistentCalls:
m_Calls: m_Calls:
- m_Target: {fileID: 1086179196} - m_Target: {fileID: 640078696}
m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp
m_MethodName: AddLife m_MethodName: AddLife
m_Mode: 1 m_Mode: 1
@@ -1174,7 +1174,7 @@ MonoBehaviour:
m_OnClick: m_OnClick:
m_PersistentCalls: m_PersistentCalls:
m_Calls: m_Calls:
- m_Target: {fileID: 1086179196} - m_Target: {fileID: 640078696}
m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp
m_MethodName: CloseDevPanel m_MethodName: CloseDevPanel
m_Mode: 1 m_Mode: 1
@@ -1315,6 +1315,7 @@ GameObject:
- component: {fileID: 486346479} - component: {fileID: 486346479}
- component: {fileID: 486346478} - component: {fileID: 486346478}
- component: {fileID: 486346477} - component: {fileID: 486346477}
- component: {fileID: 486346480}
m_Layer: 5 m_Layer: 5
m_Name: TextMoneten m_Name: TextMoneten
m_TagString: Untagged m_TagString: Untagged
@@ -1377,7 +1378,7 @@ MonoBehaviour:
m_fontSizeMax: 72 m_fontSizeMax: 72
m_fontStyle: 0 m_fontStyle: 0
m_HorizontalAlignment: 1 m_HorizontalAlignment: 1
m_VerticalAlignment: 256 m_VerticalAlignment: 512
m_textAlignment: 65535 m_textAlignment: 65535
m_characterSpacing: 0 m_characterSpacing: 0
m_wordSpacing: 0 m_wordSpacing: 0
@@ -1440,6 +1441,21 @@ RectTransform:
m_AnchoredPosition: {x: 0, y: -102} m_AnchoredPosition: {x: 0, y: -102}
m_SizeDelta: {x: 200, y: 50} m_SizeDelta: {x: 200, y: 50}
m_Pivot: {x: 0.5, y: 0.5} m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &486346480
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 486346476}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 5973ed7f2e7a3374d97418dafd88e753, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::InventoryScript
energy: 0
health: 0
gems: 0
--- !u!1 &561033674 --- !u!1 &561033674
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -1595,7 +1611,7 @@ MonoBehaviour:
m_fontSizeMax: 72 m_fontSizeMax: 72
m_fontStyle: 0 m_fontStyle: 0
m_HorizontalAlignment: 1 m_HorizontalAlignment: 1
m_VerticalAlignment: 256 m_VerticalAlignment: 512
m_textAlignment: 65535 m_textAlignment: 65535
m_characterSpacing: 0 m_characterSpacing: 0
m_wordSpacing: 0 m_wordSpacing: 0
@@ -1819,6 +1835,9 @@ GameObject:
- component: {fileID: 640078692} - component: {fileID: 640078692}
- component: {fileID: 640078694} - component: {fileID: 640078694}
- component: {fileID: 640078693} - component: {fileID: 640078693}
- component: {fileID: 640078695}
- component: {fileID: 640078696}
- component: {fileID: 640078697}
m_Layer: 5 m_Layer: 5
m_Name: PanelBackground m_Name: PanelBackground
m_TagString: Untagged m_TagString: Untagged
@@ -1883,6 +1902,101 @@ CanvasRenderer:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 640078691} m_GameObject: {fileID: 640078691}
m_CullTransparentMesh: 1 m_CullTransparentMesh: 1
--- !u!114 &640078695
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 640078691}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 5973ed7f2e7a3374d97418dafd88e753, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::InventoryScript
energy: 3
health: 3
gems: 500
--- !u!114 &640078696
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 640078691}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 1a63d792debb71643a4072a0cc116dbe, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::ShopScript
shopPanel: {fileID: 1086179192}
errorPanel: {fileID: 214291183}
backgroundPanel: {fileID: 640078691}
paymentSystemActive: 0
textfeld: {fileID: 1155050246}
devPanel: {fileID: 1757621470}
textfeldA: {fileID: 568460950}
textfeldB: {fileID: 268415208}
textfeldC: {fileID: 486346477}
errorText: {fileID: 1937164643}
--- !u!212 &640078697
SpriteRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 640078691}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 0
m_RayTraceProcedural: 0
m_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_ForceMeshLod: -1
m_MeshLodSelectionBias: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 9dfc825aed78fcd4ba02077103263b40, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_GlobalIlluminationMeshLod: 0
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_Sprite: {fileID: 21300000, guid: de50d1f4106f65545921a17c92cf0250, type: 3}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_FlipX: 0
m_FlipY: 0
m_DrawMode: 0
m_Size: {x: 2.56, y: 2.56}
m_AdaptiveModeThreshold: 0.5
m_SpriteTileMode: 0
m_WasSpriteAssigned: 1
m_MaskInteraction: 0
m_SpriteSortPoint: 0
--- !u!1 &846914925 --- !u!1 &846914925
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -1965,7 +2079,7 @@ MonoBehaviour:
m_OnClick: m_OnClick:
m_PersistentCalls: m_PersistentCalls:
m_Calls: m_Calls:
- m_Target: {fileID: 1086179196} - m_Target: {fileID: 640078696}
m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp
m_MethodName: ShowDevMode m_MethodName: ShowDevMode
m_Mode: 1 m_Mode: 1
@@ -2073,8 +2187,6 @@ GameObject:
- component: {fileID: 1086179193} - component: {fileID: 1086179193}
- component: {fileID: 1086179195} - component: {fileID: 1086179195}
- component: {fileID: 1086179194} - component: {fileID: 1086179194}
- component: {fileID: 1086179196}
- component: {fileID: 1086179197}
m_Layer: 5 m_Layer: 5
m_Name: PanelShop m_Name: PanelShop
m_TagString: Untagged m_TagString: Untagged
@@ -2140,83 +2252,6 @@ CanvasRenderer:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1086179192} m_GameObject: {fileID: 1086179192}
m_CullTransparentMesh: 1 m_CullTransparentMesh: 1
--- !u!114 &1086179196
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1086179192}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 1a63d792debb71643a4072a0cc116dbe, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::ShopScript
shopPanel: {fileID: 1086179192}
errorPanel: {fileID: 214291183}
textfeld: {fileID: 1155050246}
devPanel: {fileID: 1757621470}
textfeldA: {fileID: 568460950}
textfeldB: {fileID: 268415208}
textfeldC: {fileID: 486346477}
--- !u!212 &1086179197
SpriteRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1086179192}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 0
m_RayTraceProcedural: 0
m_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_ForceMeshLod: -1
m_MeshLodSelectionBias: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 9dfc825aed78fcd4ba02077103263b40, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_GlobalIlluminationMeshLod: 0
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_Sprite: {fileID: 21300000, guid: 4d2a4136ebef6f041b43fdca42412caa, type: 3}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_FlipX: 0
m_FlipY: 0
m_DrawMode: 0
m_Size: {x: 2.56, y: 2.56}
m_AdaptiveModeThreshold: 0.5
m_SpriteTileMode: 0
m_WasSpriteAssigned: 1
m_MaskInteraction: 0
m_SpriteSortPoint: 0
--- !u!1 &1102325228 --- !u!1 &1102325228
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -2963,7 +2998,7 @@ MonoBehaviour:
m_OnClick: m_OnClick:
m_PersistentCalls: m_PersistentCalls:
m_Calls: m_Calls:
- m_Target: {fileID: 1086179196} - m_Target: {fileID: 640078696}
m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp
m_MethodName: ClosePanel m_MethodName: ClosePanel
m_Mode: 1 m_Mode: 1
@@ -3095,7 +3130,7 @@ MonoBehaviour:
m_OnClick: m_OnClick:
m_PersistentCalls: m_PersistentCalls:
m_Calls: m_Calls:
- m_Target: {fileID: 1086179196} - m_Target: {fileID: 640078696}
m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp
m_MethodName: OpenShop m_MethodName: OpenShop
m_Mode: 1 m_Mode: 1
@@ -3227,7 +3262,7 @@ MonoBehaviour:
m_OnClick: m_OnClick:
m_PersistentCalls: m_PersistentCalls:
m_Calls: m_Calls:
- m_Target: {fileID: 1086179196} - m_Target: {fileID: 640078696}
m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp
m_MethodName: BuyGems m_MethodName: BuyGems
m_Mode: 1 m_Mode: 1
@@ -3518,7 +3553,7 @@ MonoBehaviour:
m_OnClick: m_OnClick:
m_PersistentCalls: m_PersistentCalls:
m_Calls: m_Calls:
- m_Target: {fileID: 1086179196} - m_Target: {fileID: 640078696}
m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp
m_MethodName: CloseShop m_MethodName: CloseShop
m_Mode: 1 m_Mode: 1
@@ -3786,7 +3821,7 @@ MonoBehaviour:
m_OnClick: m_OnClick:
m_PersistentCalls: m_PersistentCalls:
m_Calls: m_Calls:
- m_Target: {fileID: 1086179196} - m_Target: {fileID: 640078696}
m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp
m_MethodName: ChangeActivation m_MethodName: ChangeActivation
m_Mode: 1 m_Mode: 1
@@ -3918,7 +3953,7 @@ MonoBehaviour:
m_OnClick: m_OnClick:
m_PersistentCalls: m_PersistentCalls:
m_Calls: m_Calls:
- m_Target: {fileID: 1086179196} - m_Target: {fileID: 640078696}
m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp
m_MethodName: AddEnergy m_MethodName: AddEnergy
m_Mode: 1 m_Mode: 1
@@ -4050,7 +4085,7 @@ MonoBehaviour:
m_OnClick: m_OnClick:
m_PersistentCalls: m_PersistentCalls:
m_Calls: m_Calls:
- m_Target: {fileID: 1086179196} - m_Target: {fileID: 640078696}
m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp
m_MethodName: BuyMore m_MethodName: BuyMore
m_Mode: 1 m_Mode: 1

View File

@@ -1,6 +1,7 @@
using System.Xml.Serialization; using System.Xml.Serialization;
using TMPro; using TMPro;
using Unity.VisualScripting; using Unity.VisualScripting;
using Unity.VisualScripting.Antlr3.Runtime;
using UnityEngine; using UnityEngine;
using UnityEngine.U2D; using UnityEngine.U2D;
@@ -8,8 +9,9 @@ public class ShopScript : MonoBehaviour
{ {
[SerializeField] GameObject shopPanel; [SerializeField] GameObject shopPanel;
[SerializeField] GameObject errorPanel; [SerializeField] GameObject errorPanel;
[SerializeField] GameObject backgroundPanel;
private bool paymentSystemActive = false; [SerializeField]public bool paymentSystemActive = false;
//TMP_Text textfeld; //TMP_Text textfeld;
[SerializeField] TMP_Text textfeld; [SerializeField] TMP_Text textfeld;
@@ -32,12 +34,17 @@ public class ShopScript : MonoBehaviour
[SerializeField] TMP_Text textfeldA; //als text [SerializeField] TMP_Text textfeldA; //als text
[SerializeField] TMP_Text textfeldB; [SerializeField] TMP_Text textfeldB;
[SerializeField] TMP_Text textfeldC; [SerializeField] TMP_Text textfeldC;
[SerializeField] TMP_Text errorText;
#endregion #endregion
private void Awake()
{
inventory = backgroundPanel.GetComponent<InventoryScript>();
}
void Start() void Start()
{ {
InventoryScript inventory = GetComponent<InventoryScript>();
shopPanel.SetActive(false); shopPanel.SetActive(false);
errorPanel.SetActive(false); errorPanel.SetActive(false);
@@ -50,9 +57,11 @@ public class ShopScript : MonoBehaviour
{ {
textfeld.text = inventory.Gems.ToString(); textfeld.text = inventory.Gems.ToString();
textfeldA.text = inventory.Energy.ToString();
textfeldB.text = inventory.Health.ToString();
textfeldC.text = moneten.ToString();
ShowDevMode();
} }
public void OpenShop() public void OpenShop()
@@ -72,29 +81,57 @@ public class ShopScript : MonoBehaviour
public void AddLife() public void AddLife()
{ {
inventory.Health++;
if (inventory.Gems - updateCost < 0)
{
errorText.text = "Not enough gems!";
}
inventory.Gems -= updateCost; else
{
inventory.Health++;
inventory.Gems -= updateCost;
}
} }
public void AddEnergy() public void AddEnergy()
{ {
inventory.Energy++; if (inventory.Gems - updateCost <0)
{
errorText.text = "Not enough gems!";
}
inventory.Gems -= updateCost; else
{
inventory.Energy++;
inventory.Gems -= updateCost;
}
} }
public void BuyGems() public void BuyGems()
{ {
if (paymentSystemActive) if (paymentSystemActive)
{ {
moneten -= gemsCost;
Debug.Log("Ich mag Moeneten"); if (moneten - gemsCost <= 0)
{
errorText.text = "Payment System inactive!";
}
else
{
moneten -= gemsCost;
Debug.Log("Ich mag Moeneten");
inventory.Gems += 100;
}
} }
else else
{ {
errorPanel.SetActive(true); errorPanel.SetActive(true);
errorText.text = "Payment System inactive!";
} }
} }
@@ -103,13 +140,23 @@ public class ShopScript : MonoBehaviour
if (paymentSystemActive) if (paymentSystemActive)
{ {
moneten -= manyGemsCost; if (moneten - manyGemsCost <= 0)
Debug.Log("Ich mag Moeneten"); {
} errorText.text = "Payment System inactive!";
}
else
{
moneten -= manyGemsCost;
Debug.Log("Ich mag Moeneten");
inventory.Gems += 200;
}
}
else else
{ {
errorPanel.SetActive(true); errorPanel.SetActive(true);
errorText.text = "Payment System inactive!";
} }
} }
@@ -121,26 +168,26 @@ public class ShopScript : MonoBehaviour
//textfeldB = textB; //textfeldB = textB;
//textfeldC = textC; //textfeldC = textC;
textfeldA.text = inventory.Energy.ToString(); //textfeldA.text = inventory.Energy.ToString();
textfeldB.text = inventory.Health.ToString(); //textfeldB.text = inventory.Health.ToString();
textfeldC.text = moneten.ToString(); //textfeldC.text = moneten.ToString();
} }
public void ChangeActivation() public void ChangeActivation()
{ {
SpriteRenderer spriteRenderer = GetComponent<SpriteRenderer>(); SpriteRenderer spriteRenderer = GetComponent<SpriteRenderer>();
if (paymentSystemActive) if (!paymentSystemActive)
{ {
paymentSystemActive = false; paymentSystemActive = true;
spriteRenderer.sprite = Resources.Load<Sprite>("T_12_ok.png");
spriteRenderer.sprite = Resources.Load<Sprite>("T_11_no.png");
} }
else else
{ {
paymentSystemActive = true; paymentSystemActive = false;
spriteRenderer.sprite = Resources.Load<Sprite>("T_12_ok.png");
spriteRenderer.sprite = Resources.Load<Sprite>("T_11_no.png");
} }
} }

View File

@@ -9,7 +9,7 @@ public class InventoryScript : MonoBehaviour
[SerializeField] int health = 1; [SerializeField] int health = 1;
//Gems //Gems
[SerializeField] int gems; [SerializeField] int gems = 100;
public InventoryScript(int energy, int health, int gems) public InventoryScript(int energy, int health, int gems)
@@ -25,7 +25,7 @@ public class InventoryScript : MonoBehaviour
void Start() void Start()
{ {
Gems = 10;
} }
void Update() void Update()