summaryrefslogtreecommitdiff
path: root/Client/Assets/Scripts/Walls/XTransferWall.cs
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2021-01-25 14:28:30 +0800
committerchai <chaifix@163.com>2021-01-25 14:28:30 +0800
commit6eb915c129fc90c6f4c82ae097dd6ffad5239efc (patch)
tree7dd2be50edf41f36b60fac84696e731c13afe617 /Client/Assets/Scripts/Walls/XTransferWall.cs
+scripts
Diffstat (limited to 'Client/Assets/Scripts/Walls/XTransferWall.cs')
-rw-r--r--Client/Assets/Scripts/Walls/XTransferWall.cs33
1 files changed, 33 insertions, 0 deletions
diff --git a/Client/Assets/Scripts/Walls/XTransferWall.cs b/Client/Assets/Scripts/Walls/XTransferWall.cs
new file mode 100644
index 00000000..d0e9042a
--- /dev/null
+++ b/Client/Assets/Scripts/Walls/XTransferWall.cs
@@ -0,0 +1,33 @@
+using UnityEngine;
+using XUtliPoolLib;
+
+public class XTransferWall : XWall
+{
+ public enum transfer_type
+ {
+ current_scene,
+ other_scene,
+ }
+
+ public transfer_type targetScene;
+ public int sceneID;
+ public GameObject targetPos;
+
+ protected override void OnTriggered()
+ {
+ if (targetScene == transfer_type.current_scene)
+ {
+ if (targetPos != null)
+ {
+ _interface.TransferToSceneLocation(targetPos.transform.position, targetPos.transform.forward);
+ }
+ }
+ else if (targetScene == transfer_type.other_scene)
+ {
+ if (sceneID > 0)
+ {
+ _interface.TransferToNewScene((uint)sceneID);
+ }
+ }
+ }
+}