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_PersistentCalls:
m_Calls:
- m_Target: {fileID: 1086179196}
- m_Target: {fileID: 640078696}
m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp
m_MethodName: OpenShop
m_Mode: 1
@@ -639,7 +639,7 @@ MonoBehaviour:
m_fontSizeMax: 72
m_fontStyle: 0
m_HorizontalAlignment: 1
m_VerticalAlignment: 256
m_VerticalAlignment: 512
m_textAlignment: 65535
m_characterSpacing: 0
m_wordSpacing: 0
@@ -784,7 +784,7 @@ MonoBehaviour:
m_OnClick:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 1086179196}
- m_Target: {fileID: 640078696}
m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp
m_MethodName: AddLife
m_Mode: 1
@@ -1174,7 +1174,7 @@ MonoBehaviour:
m_OnClick:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 1086179196}
- m_Target: {fileID: 640078696}
m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp
m_MethodName: CloseDevPanel
m_Mode: 1
@@ -1315,6 +1315,7 @@ GameObject:
- component: {fileID: 486346479}
- component: {fileID: 486346478}
- component: {fileID: 486346477}
- component: {fileID: 486346480}
m_Layer: 5
m_Name: TextMoneten
m_TagString: Untagged
@@ -1377,7 +1378,7 @@ MonoBehaviour:
m_fontSizeMax: 72
m_fontStyle: 0
m_HorizontalAlignment: 1
m_VerticalAlignment: 256
m_VerticalAlignment: 512
m_textAlignment: 65535
m_characterSpacing: 0
m_wordSpacing: 0
@@ -1440,6 +1441,21 @@ RectTransform:
m_AnchoredPosition: {x: 0, y: -102}
m_SizeDelta: {x: 200, y: 50}
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
GameObject:
m_ObjectHideFlags: 0
@@ -1595,7 +1611,7 @@ MonoBehaviour:
m_fontSizeMax: 72
m_fontStyle: 0
m_HorizontalAlignment: 1
m_VerticalAlignment: 256
m_VerticalAlignment: 512
m_textAlignment: 65535
m_characterSpacing: 0
m_wordSpacing: 0
@@ -1819,6 +1835,9 @@ GameObject:
- component: {fileID: 640078692}
- component: {fileID: 640078694}
- component: {fileID: 640078693}
- component: {fileID: 640078695}
- component: {fileID: 640078696}
- component: {fileID: 640078697}
m_Layer: 5
m_Name: PanelBackground
m_TagString: Untagged
@@ -1883,6 +1902,101 @@ CanvasRenderer:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 640078691}
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
GameObject:
m_ObjectHideFlags: 0
@@ -1965,7 +2079,7 @@ MonoBehaviour:
m_OnClick:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 1086179196}
- m_Target: {fileID: 640078696}
m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp
m_MethodName: ShowDevMode
m_Mode: 1
@@ -2073,8 +2187,6 @@ GameObject:
- component: {fileID: 1086179193}
- component: {fileID: 1086179195}
- component: {fileID: 1086179194}
- component: {fileID: 1086179196}
- component: {fileID: 1086179197}
m_Layer: 5
m_Name: PanelShop
m_TagString: Untagged
@@ -2140,83 +2252,6 @@ CanvasRenderer:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1086179192}
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
GameObject:
m_ObjectHideFlags: 0
@@ -2963,7 +2998,7 @@ MonoBehaviour:
m_OnClick:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 1086179196}
- m_Target: {fileID: 640078696}
m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp
m_MethodName: ClosePanel
m_Mode: 1
@@ -3095,7 +3130,7 @@ MonoBehaviour:
m_OnClick:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 1086179196}
- m_Target: {fileID: 640078696}
m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp
m_MethodName: OpenShop
m_Mode: 1
@@ -3227,7 +3262,7 @@ MonoBehaviour:
m_OnClick:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 1086179196}
- m_Target: {fileID: 640078696}
m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp
m_MethodName: BuyGems
m_Mode: 1
@@ -3518,7 +3553,7 @@ MonoBehaviour:
m_OnClick:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 1086179196}
- m_Target: {fileID: 640078696}
m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp
m_MethodName: CloseShop
m_Mode: 1
@@ -3786,7 +3821,7 @@ MonoBehaviour:
m_OnClick:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 1086179196}
- m_Target: {fileID: 640078696}
m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp
m_MethodName: ChangeActivation
m_Mode: 1
@@ -3918,7 +3953,7 @@ MonoBehaviour:
m_OnClick:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 1086179196}
- m_Target: {fileID: 640078696}
m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp
m_MethodName: AddEnergy
m_Mode: 1
@@ -4050,7 +4085,7 @@ MonoBehaviour:
m_OnClick:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 1086179196}
- m_Target: {fileID: 640078696}
m_TargetAssemblyTypeName: ShopScript, Assembly-CSharp
m_MethodName: BuyMore
m_Mode: 1

View File

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

View File

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