Add Timeline Handler for BTC; integrate first chatbot anims to story
This commit is contained in:
parent
18d04fc29e
commit
dbc8f9dc1a
@ -495,11 +495,11 @@ MonoBehaviour:
|
|||||||
- {fileID: 5507569759037005138}
|
- {fileID: 5507569759037005138}
|
||||||
- {fileID: 3818191983791096580}
|
- {fileID: 3818191983791096580}
|
||||||
- {fileID: 6311139388440893090}
|
- {fileID: 6311139388440893090}
|
||||||
m_FixedDuration: 0
|
m_FixedDuration: 5.433333333333334
|
||||||
m_EditorSettings:
|
m_EditorSettings:
|
||||||
m_Framerate: 60
|
m_Framerate: 60
|
||||||
m_ScenePreview: 1
|
m_ScenePreview: 1
|
||||||
m_DurationMode: 0
|
m_DurationMode: 1
|
||||||
m_MarkerTrack: {fileID: 3035553712261358546}
|
m_MarkerTrack: {fileID: 3035553712261358546}
|
||||||
--- !u!114 &3035553712261358546
|
--- !u!114 &3035553712261358546
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
|
@ -12,8 +12,11 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
Composite(Sequence) {
|
Composite(Sequence) {
|
||||||
RunTree("26_Castello_Castelli_di_Bellinzona_Intro")
|
//RunTree("26_Castello_Castelli_di_Bellinzona_Intro")
|
||||||
//RunTree("26_Castello_Castelli_di_Bellinzona_Geschichte_Castelli")
|
//RunTree("26_Castello_Castelli_di_Bellinzona_Geschichte_Castelli")
|
||||||
|
|
||||||
|
RunTree("26_Castello_Castelli_di_Bellinzona_Chatbot_Init")
|
||||||
|
RunTree("26_Castello_Castelli_di_Bellinzona_Chatbot_Burgen")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -408,10 +411,15 @@ Tree("26_Castello_Castelli_di_Bellinzona_Chatbot_Burgen") {
|
|||||||
BTC.Run("Depthkit.VIDEOS.ChatbotBurgen1Cast")
|
BTC.Run("Depthkit.VIDEOS.ChatbotBurgen1Cast")
|
||||||
BTC.Hide("Depthkit.VIDEOS.ChatbotBurgen1Cast")
|
BTC.Hide("Depthkit.VIDEOS.ChatbotBurgen1Cast")
|
||||||
|
|
||||||
|
BTC.Run("Timeline.TIMELINES.TimelineCastelloCh_atbot_Start")
|
||||||
|
|
||||||
BTC.Show("Depthkit.VIDEOS.ChatbotBurgen2Cast")
|
BTC.Show("Depthkit.VIDEOS.ChatbotBurgen2Cast")
|
||||||
BTC.Run("Depthkit.VIDEOS.ChatbotBurgen2Cast")
|
BTC.Run("Depthkit.VIDEOS.ChatbotBurgen2Cast")
|
||||||
BTC.Hide("Depthkit.VIDEOS.ChatbotBurgen2Cast")
|
BTC.Hide("Depthkit.VIDEOS.ChatbotBurgen2Cast")
|
||||||
|
|
||||||
|
BTC.Run("Timeline.TIMELINES.TimelineCastelloCh_atbot_ThinkStart")
|
||||||
|
BTC.Run("Timeline.TIMELINES.TimelineCastelloCh_atbot_ThinkEnd")
|
||||||
|
|
||||||
BTC.SynthesizeText("Per proteggere la città dagli attacchi nemici. Vuoi saperne di più?")
|
BTC.SynthesizeText("Per proteggere la città dagli attacchi nemici. Vuoi saperne di più?")
|
||||||
BTC.SpeechOutputEnded()
|
BTC.SpeechOutputEnded()
|
||||||
|
|
||||||
@ -509,6 +517,9 @@ Tree("26_Castello_Castelli_di_Bellinzona_Geschichte_Castelli_Bot") {
|
|||||||
BTC.Run("Depthkit.VIDEOS.GeschichteCastelli_Bot1_02")
|
BTC.Run("Depthkit.VIDEOS.GeschichteCastelli_Bot1_02")
|
||||||
BTC.Hide("Depthkit.VIDEOS.GeschichteCastelli_Bot1_02")
|
BTC.Hide("Depthkit.VIDEOS.GeschichteCastelli_Bot1_02")
|
||||||
|
|
||||||
|
BTC.Run("Timeline.TIMELINES.TimelineCastelloCh_atbot_ThinkStart")
|
||||||
|
BTC.Run("Timeline.TIMELINES.TimelineCastelloCh_atbot_ThinkEnd")
|
||||||
|
|
||||||
BTC.SynthesizeText("La valle veniva chiusa costruendo la cinta muraria della città e la Murata. In questo modo nessuno poteva attraversare i passi alpini del Gottardo, del San Bernardino, della Novena e del Lucomagno. Bellinzona si trovava su un'importante via commerciale tra il nord e il sud dell'Europa.")
|
BTC.SynthesizeText("La valle veniva chiusa costruendo la cinta muraria della città e la Murata. In questo modo nessuno poteva attraversare i passi alpini del Gottardo, del San Bernardino, della Novena e del Lucomagno. Bellinzona si trovava su un'importante via commerciale tra il nord e il sud dell'Europa.")
|
||||||
BTC.SpeechOutputEnded()
|
BTC.SpeechOutputEnded()
|
||||||
|
|
||||||
|
96
Viagg-io/Assets/Packages/MyBT/BTC/Handlers/NamedTimeline.cs
Normal file
96
Viagg-io/Assets/Packages/MyBT/BTC/Handlers/NamedTimeline.cs
Normal file
@ -0,0 +1,96 @@
|
|||||||
|
//============= Copyright (c) Ludic GmbH, All rights reserved. ==============
|
||||||
|
//
|
||||||
|
// Purpose: Part of the My Behaviour Tree Controller Code
|
||||||
|
//
|
||||||
|
//=============================================================================
|
||||||
|
|
||||||
|
using System.Collections;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using UnityEngine;
|
||||||
|
using MyBT;
|
||||||
|
using UnityEngine.Playables;
|
||||||
|
|
||||||
|
#if UNITY_EDITOR
|
||||||
|
using UnityEditor;
|
||||||
|
[CustomEditor(typeof(NamedTimeline))]
|
||||||
|
public class NamedTimelineInspector : ComponentHandlerInspector
|
||||||
|
{
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
[System.Serializable]
|
||||||
|
public class NamedTimeline : ComponentHandler
|
||||||
|
{
|
||||||
|
public override string TypeLabel()
|
||||||
|
{
|
||||||
|
return "Timeline";
|
||||||
|
}
|
||||||
|
|
||||||
|
public override string ContentLabel()
|
||||||
|
{
|
||||||
|
UpdateComponent();
|
||||||
|
return _playableDirector?.playableAsset.name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void UpdateComponent()
|
||||||
|
{
|
||||||
|
base.UpdateComponent();
|
||||||
|
_playableDirector = GetComponent<PlayableDirector>();
|
||||||
|
//playableDuration = _playableDirector.duration;
|
||||||
|
}
|
||||||
|
|
||||||
|
//public double playableDuration;
|
||||||
|
|
||||||
|
private PlayableDirector _playableDirector;
|
||||||
|
//private double _startTime;
|
||||||
|
|
||||||
|
public override string titleText
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return "Run Timeline";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public override string[][] helpText
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return new string[][] {
|
||||||
|
new string[] {"Run", null, $"BTC.Run(\"{roomId}\", \"{gameObject.name}\")"},
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void Run(MyBT.NodeState nodeState)
|
||||||
|
{
|
||||||
|
// at start
|
||||||
|
if (nodeState == NodeState.FirstRun)
|
||||||
|
{
|
||||||
|
if (_playableDirector == null)
|
||||||
|
{
|
||||||
|
Task.SetFailed();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
_playableDirector.Play();
|
||||||
|
// _startTime = Time.time;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// during runtime
|
||||||
|
if (nodeState == NodeState.Running)
|
||||||
|
{
|
||||||
|
/* if (Time.time - _startTime >= playableDuration)
|
||||||
|
{
|
||||||
|
Task.SetSucceeded();
|
||||||
|
return;
|
||||||
|
}*/
|
||||||
|
if (_playableDirector?.state != PlayState.Playing)
|
||||||
|
{
|
||||||
|
Task.SetSucceeded();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,11 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: e625e8f4b064a455293d51adea1c73b3
|
||||||
|
MonoImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user