Nextrek
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
|
/*
*
* Adventure Creator
* by Chris Burton, 2013-2014
*
* "ActionEndGame.cs"
*
* This Action will force the game to either
* restart an autosave, or quit.
*
*/
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
using AC;
#if UNITY_EDITOR
using UnityEditor;
#endif
[System.Serializable]
public class ActionEndGame : Action
{
public enum AC_EndGameType { QuitGame, LoadAutosave, ResetScene, RestartGame };
public AC_EndGameType endGameType;
public int sceneNumber;
public ActionEndGame ()
{
this.isDisplayed = true;
title = "Engine: End game";
numSockets = 0;
}
override public float Run ()
{
if (endGameType == AC_EndGameType.QuitGame)
{
#if UNITY_EDITOR
UnityEditor.EditorApplication.isPlaying = false;
#else
Application.Quit ();
#endif
}
else if (endGameType == AC_EndGameType.LoadAutosave)
{
SaveSystem.LoadAutoSave ();
}
else
{
LevelStorage levelStorage = GameObject.FindWithTag (Tags.persistentEngine).GetComponent <LevelStorage>();
Destroy (GameObject.FindWithTag (Tags.player));
if (endGameType == AC_EndGameType.RestartGame)
{
levelStorage.ClearAllLevelData ();
levelStorage.GetComponent <RuntimeInventory>().Awake ();
levelStorage.GetComponent <RuntimeVariables>().Awake ();
Application.LoadLevel (sceneNumber);
}
else if (endGameType == AC_EndGameType.ResetScene)
{
levelStorage.ClearCurrentLevelData ();
Application.LoadLevel (Application.loadedLevel);
}
}
return 0f;
}
override public int End (List<Action> actions)
{
return -1;
}
#if UNITY_EDITOR
override public void ShowGUI ()
{
endGameType = (AC_EndGameType) EditorGUILayout.EnumPopup ("Command:", endGameType);
if (endGameType == AC_EndGameType.RestartGame)
{
sceneNumber = EditorGUILayout.IntField ("Scene to restart to:", sceneNumber);
}
}
public override string SetLabel ()
{
return (" (" + endGameType.ToString () + ")");
}
#endif
}
|
Revision |
Author |
Commited |
Message |
83
|
FMMortaroli
|
Tue 13 May, 2014 11:32:51 +0000 |
|