public void PlayDemo(Demo demo, bool loop, bool staticCam) { if (demoPlayer != null) { demoPlayer.StopDemoPlayback(); } demoPlayer = Instantiate(worldData.demoPlayerTemplate).GetComponent <DemoPlayer>(); RaceScript = demoPlayer.GetComponent <DemoRaceScript>(); demoPlayer.PlayDemo(demo, loop, staticCam); }
private void OnTriggerEnter(Collider other) { Debug.Log("Added key: " + keyID); if (other.gameObject.tag == "Player") { if (!DemoPlayer.HasKey(keyID)) { DemoPlayer.AddKey(keyID); GameObject.Destroy(this.gameObject); } } }
private void OnTriggerEnter(Collider other) { bool needsKey = !genDoor.data.open; //a door is either locked or open (eg, unlocked) int neededKey = neededKey = genDoor.data.keyID; if ((needsKey == false) || (needsKey && DemoPlayer.HasKey(neededKey))) { if (other.gameObject.tag == "Player") { doorMesh.gameObject.SetActive(false); } } }
void LoadDemos() { DemoList.Items.Clear(); FileSystemNode demos = Root.Instance.FileSystem.Get("demos"); foreach (DictionaryEntry de in demos) { string name = (string)de.Key; if (name.EndsWith(".demo")) { FileSystemNode n = (FileSystemNode)de.Value; DemoPlayer demo = new DemoPlayer(n); ListViewItem lvi = new ListViewItem(new string[] { name, demo.Length.ToString(), n.info.Length.ToString(), demo.FrameCount.ToString() }); lvi.Tag = n; DemoList.Items.Add(lvi); } } }
private void StartDemo(String path) { m_mode = Mode.Demo; timerManager = CreateTimerManager(); notifications = CreateNotifications(timerManager); sharedStorage = CreateSharedStorage("storage", timerManager); m_demoPlayer = new DemoPlayer(path); inputManager = new DemoPlayerInputManager(); assetManager = CreateAssetManager(); rootController = CreateRootController(); AddGameObject(rootController); started = true; OnStart(); inputManager.AddInputListener(rootController); rootController.Start(); }
/// <summary> /// OnStateEnter is called when a transition starts and the state machine starts to evaluate this state. /// In the case of the base class it sets up the enemy owner of the state. /// </summary> /// <param name="animator">Animator.</param> /// <param name="stateInfo">State info.</param> /// <param name="layerIndex">Layer index.</param> public override void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) { this.self = animator.gameObject.GetComponent <DemoPlayer>(); }
public void Start() { var nodes = NodeManifest.Construct( new Type[] { typeof(AddNode), typeof(RollNode), typeof(OutputValueNode), typeof(ItemInputNode), typeof(GetStatNode), typeof(IterateNode), } ); var types = TypeManifest.ConstructBaseTypes(); var manifest = new BehaviourManifest() { Nodes = nodes, Types = types }; File.WriteAllText("Content/RPGCoreMath.bmfst", manifest.ToString()); Console.WriteLine("Importing Graph..."); var proj = ProjectExplorer.Load("Content/Tutorial"); Console.WriteLine(proj.Name); Console.WriteLine("\t\"" + proj.Name + "\""); foreach (var resource in ((IPackageExplorer)proj).Resources) { Console.WriteLine("\t" + resource.FullName); } var editorTargetResource = proj.Resources["Tutorial Gamerules/Main.bhvr"]; var editorTargetData = editorTargetResource.LoadStream(); JObject editorTarget; var serializer = new JsonSerializer(); using (var sr = new StreamReader(editorTargetData)) using (var reader = new JsonTextReader(sr)) { editorTarget = JObject.Load(reader); } var editor = new EditorSession(manifest, editorTarget, "SerializedGraph", serializer); foreach (var node in editor.Root["Nodes"]) { var nodeData = node["Data"]; foreach (var field in nodeData) { Console.WriteLine($"{field}"); if (field.Name == "MaxValue") { field.SetValue(field.GetValue <int> () + 10); field.ApplyModifiedProperties(); field.SetValue(field.GetValue <int> ()); field.ApplyModifiedProperties(); } else if (field.Name == "ValueB") { Console.WriteLine(field.GetValue <LocalPropertyId> ()); } } } using (var file = editorTargetResource.WriteStream()) using (var jsonWriter = new JsonTextWriter(file) { Formatting = Formatting.Indented }) { serializer.Serialize(jsonWriter, editorTarget); } Console.WriteLine(new DirectoryInfo("Content/Temp").FullName); var consoleRenderer = new BuildConsoleRenderer(); var buildPipeline = new BuildPipeline() { Exporters = new List <ResourceExporter> () { new BhvrExporter() }, BuildActions = new List <IBuildAction> () { consoleRenderer } }; consoleRenderer.DrawProgressBar(32); proj.Export(buildPipeline, "Content/Temp"); Console.WriteLine("Exported package..."); var exportedPackage = PackageExplorer.Load("Content/Temp/Core.bpkg"); var fireballAsset = exportedPackage.Resources["Fireball/Main.bhvr"]; var data = fireballAsset.LoadStream(); SerializedGraph packageItem; using (var sr = new StreamReader(data)) using (var reader = new JsonTextReader(sr)) { packageItem = serializer.Deserialize <SerializedGraph> (reader); } Console.WriteLine("Imported: " + packageItem.Name); var unpackedGraph = packageItem.Unpack(); Console.WriteLine("Running Simulation..."); var player = new DemoPlayer(); IGraphInstance instancedItem = unpackedGraph.Create(); instancedItem.Setup(); instancedItem.SetInput(player); for (int i = 0; i < 5; i++) { Thread.Sleep(100); player.Health.Value -= 10; } instancedItem.Remove(); var packedInstance = ((GraphInstance)instancedItem).Pack(); string serializedGraph = packedInstance.AsJson(); Console.WriteLine(serializedGraph); var deserialized = JsonConvert.DeserializeObject <SerializedGraphInstance> (serializedGraph); var unpackedInstance = deserialized.Unpack(unpackedGraph); unpackedInstance.SetInput(player); unpackedInstance.Setup(); for (int i = 0; i < 5; i++) { Thread.Sleep(100); player.Health.Value -= 20; } unpackedInstance.Remove(); for (int i = 0; i < 5; i++) { Thread.Sleep(100); player.Health.Value -= 20; } }
private void DemoLoad(object sender, RoutedEventArgs e) { DemoPlayer.Play(); }
private void btnDemoStop_Click(object sender, RoutedEventArgs e) { DemoPlayer.Stop(); }
private void btnDemoPause_Click(object sender, RoutedEventArgs e) { DemoPlayer.Pause(); }
void LoadDemos() { DemoList.Items.Clear(); FileSystemNode demos = Root.Instance.FileSystem.Get("demos"); foreach (DictionaryEntry de in demos) { string name = (string)de.Key; if (name.EndsWith(".demo")) { FileSystemNode n = (FileSystemNode)de.Value; DemoPlayer demo = new DemoPlayer(n); ListViewItem lvi = new ListViewItem(new string[] { name, demo.Length.ToString(), n.info.Length.ToString(), demo.FrameCount.ToString() }); lvi.Tag = n; DemoList.Items.Add(lvi); } } }
public void Start() { this.parent = this.transform.GetComponentInParent <DemoPlayer>(); }