feat: 自动更新按钮上的文字

This commit is contained in:
2026-04-16 11:52:38 +08:00
parent b13b8f6ff6
commit a085e182c4
2 changed files with 51 additions and 16 deletions
+47 -6
View File
@@ -192,7 +192,7 @@ MonoBehaviour:
m_HorizontalOverflow: 0 m_HorizontalOverflow: 0
m_VerticalOverflow: 0 m_VerticalOverflow: 0
m_LineSpacing: 1 m_LineSpacing: 1
m_Text: SetState(Ice) m_Text: SetState(PlaceHolder)
--- !u!222 &17265521 --- !u!222 &17265521
CanvasRenderer: CanvasRenderer:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -413,6 +413,7 @@ MonoBehaviour:
m_EditorClassIdentifier: m_EditorClassIdentifier:
targetGameState: 1 targetGameState: 1
enableLowpass: 0 enableLowpass: 0
buttonText: {fileID: 17265520}
--- !u!114 &392790006 --- !u!114 &392790006
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -456,7 +457,19 @@ MonoBehaviour:
m_TargetGraphic: {fileID: 392790007} m_TargetGraphic: {fileID: 392790007}
m_OnClick: m_OnClick:
m_PersistentCalls: m_PersistentCalls:
m_Calls: [] m_Calls:
- m_Target: {fileID: 392790005}
m_TargetAssemblyTypeName: OCES.ButtonInvoker, Assembly-CSharp
m_MethodName: OnButtonPressed
m_Mode: 1
m_Arguments:
m_ObjectArgument: {fileID: 0}
m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
m_IntArgument: 0
m_FloatArgument: 0
m_StringArgument:
m_BoolArgument: 0
m_CallState: 2
--- !u!114 &392790007 --- !u!114 &392790007
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -702,7 +715,7 @@ MonoBehaviour:
m_HorizontalOverflow: 0 m_HorizontalOverflow: 0
m_VerticalOverflow: 0 m_VerticalOverflow: 0
m_LineSpacing: 1 m_LineSpacing: 1
m_Text: SetState(Cloud) m_Text: SetState(PlaceHolder)
--- !u!222 &519563563 --- !u!222 &519563563
CanvasRenderer: CanvasRenderer:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -848,6 +861,7 @@ MonoBehaviour:
m_EditorClassIdentifier: m_EditorClassIdentifier:
targetGameState: 0 targetGameState: 0
enableLowpass: 1 enableLowpass: 1
buttonText: {fileID: 1985546676}
--- !u!114 &876276284 --- !u!114 &876276284
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -1148,7 +1162,19 @@ MonoBehaviour:
m_TargetGraphic: {fileID: 1161878328} m_TargetGraphic: {fileID: 1161878328}
m_OnClick: m_OnClick:
m_PersistentCalls: m_PersistentCalls:
m_Calls: [] m_Calls:
- m_Target: {fileID: 1161878330}
m_TargetAssemblyTypeName: OCES.ButtonInvoker, Assembly-CSharp
m_MethodName: OnButtonPressed
m_Mode: 1
m_Arguments:
m_ObjectArgument: {fileID: 0}
m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
m_IntArgument: 0
m_FloatArgument: 0
m_StringArgument:
m_BoolArgument: 0
m_CallState: 2
--- !u!114 &1161878328 --- !u!114 &1161878328
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -1201,6 +1227,7 @@ MonoBehaviour:
m_EditorClassIdentifier: m_EditorClassIdentifier:
targetGameState: 0 targetGameState: 0
enableLowpass: 0 enableLowpass: 0
buttonText: {fileID: 1798358788}
--- !u!1 &1193187742 --- !u!1 &1193187742
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -1883,6 +1910,7 @@ MonoBehaviour:
m_EditorClassIdentifier: m_EditorClassIdentifier:
targetGameState: 2 targetGameState: 2
enableLowpass: 0 enableLowpass: 0
buttonText: {fileID: 519563562}
--- !u!114 &1542973985 --- !u!114 &1542973985
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -1926,7 +1954,19 @@ MonoBehaviour:
m_TargetGraphic: {fileID: 1542973986} m_TargetGraphic: {fileID: 1542973986}
m_OnClick: m_OnClick:
m_PersistentCalls: m_PersistentCalls:
m_Calls: [] m_Calls:
- m_Target: {fileID: 1542973984}
m_TargetAssemblyTypeName: OCES.ButtonInvoker, Assembly-CSharp
m_MethodName: OnButtonPressed
m_Mode: 1
m_Arguments:
m_ObjectArgument: {fileID: 0}
m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
m_IntArgument: 0
m_FloatArgument: 0
m_StringArgument:
m_BoolArgument: 0
m_CallState: 2
--- !u!114 &1542973986 --- !u!114 &1542973986
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -2319,7 +2359,7 @@ MonoBehaviour:
m_HorizontalOverflow: 0 m_HorizontalOverflow: 0
m_VerticalOverflow: 0 m_VerticalOverflow: 0
m_LineSpacing: 1 m_LineSpacing: 1
m_Text: SetState(Normal) m_Text: SetState(PlaceHolder)
--- !u!222 &1798358789 --- !u!222 &1798358789
CanvasRenderer: CanvasRenderer:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -2553,6 +2593,7 @@ MonoBehaviour:
m_EditorClassIdentifier: m_EditorClassIdentifier:
targetGameState: 0 targetGameState: 0
enableLowpass: 0 enableLowpass: 0
buttonText: {fileID: 351150077}
--- !u!114 &1989157235 --- !u!114 &1989157235
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
+4 -10
View File
@@ -7,25 +7,19 @@ namespace OCES
{ {
public class ButtonInvoker : MonoBehaviour public class ButtonInvoker : MonoBehaviour
{ {
public TileMaterial targetGameState; public GameState targetGameState;
public bool enableLowpass; public bool enableLowpass;
public Text buttonText;
Button m_button; Button m_button;
void Awake() void Awake()
{ {
this.m_button = GetComponent<Button>(); this.buttonText.text = this.buttonText.text.Replace("PlaceHolder", this.targetGameState.ToString());
this.m_button.onClick.AddListener(ButtonPressed);
} }
void OnDestroy()
{
this.m_button.onClick.RemoveListener(ButtonPressed);
}
private void ButtonPressed() public void OnButtonPressed()
{ {
AudioSystem.Instance.SetState(this.targetGameState); AudioSystem.Instance.SetState(this.targetGameState);