Exemple #1
0
        protected virtual void OnDisable()
        {
            CameraHandler.RemoveMapRotationListener(OnMapRotationChanged);
            DestroyAttachedEffects();
            if (null != m_playableDirector)
            {
                TimelineContextUtility.ClearFightContext(m_playableDirector);
                m_playableDirector.Stop();
                m_playableDirector.set_playableAsset(null);
            }
            if (m_animationCallback != null)
            {
                m_animationCallback.Release();
                m_animationCallback = null;
            }
            ReleaseAnimator();
            AnimatedCharacterData animatedCharacterData = GetAnimatedCharacterData();

            if (null != animatedCharacterData)
            {
                animatedCharacterData.UnloadTimelineResources();
                ClearAnimatedCharacterData();
                AssetManager.UnloadAssetBundle(AssetBundlesUtility.GetAnimatedCharacterDataBundle(m_animatedCharacterDataBundleCategory));
                m_animatedCharacterDataBundleCategory = BundleCategory.None;
            }
            if (m_activeCharacterDataBundleCategory != 0)
            {
                AssetManager.UnloadAssetBundle(AssetBundlesUtility.GetAnimatedCharacterDataBundle(m_activeCharacterDataBundleCategory));
                m_activeCharacterDataBundleCategory = BundleCategory.None;
            }
        }
        public static PlayableDirector CreateTimelineAssetEffectInstance([NotNull] TimelineAsset timelineAsset, [NotNull] Transform parent, Quaternion rotation, Vector3 scale, [CanBeNull] FightContext fightContext, [CanBeNull] ITimelineContextProvider contextProvider)
        {
            //IL_0038: Unknown result type (might be due to invalid IL or missing references)
            //IL_003d: Unknown result type (might be due to invalid IL or missing references)
            //IL_004a: Unknown result type (might be due to invalid IL or missing references)
            //IL_004f: Unknown result type (might be due to invalid IL or missing references)
            //IL_0052: Unknown result type (might be due to invalid IL or missing references)
            //IL_005e: Unknown result type (might be due to invalid IL or missing references)
            if (null == timelineAsset)
            {
                throw new NullReferenceException();
            }
            if (null == s_instance)
            {
                Log.Error("CreateTimelineAssetEffectInstance called while the factory is not ready.", 412, "C:\\BuildAgents\\AgentB\\work\\cub_client_win64_develop\\client\\DofusCube.Unity\\Assets\\Core\\Code\\Fight\\FightObjectFactory.cs");
                return(null);
            }
            GameObject obj        = s_timelineAssetEffectPool.Instantiate(parent.get_position(), rotation, parent);
            Vector3    localScale = obj.get_transform().get_localScale();

            localScale.Scale(scale);
            obj.get_transform().set_localScale(localScale);
            PlayableDirector component = obj.GetComponent <PlayableDirector>();

            if (null != fightContext)
            {
                TimelineContextUtility.SetFightContext(component, fightContext);
            }
            if (contextProvider != null)
            {
                TimelineContextUtility.SetContextProvider(component, contextProvider);
            }
            component.Play(timelineAsset, 2);
            return(component);
        }
Exemple #3
0
 public void Initialize(FightStatus fightStatus, PlayerStatus ownerStatus, CharacterStatus characterStatus)
 {
     base.Initialize(fightStatus, ownerStatus, characterStatus);
     base.life           = characterStatus.life;
     actionValue         = characterStatus.actionValue;
     base.armor          = characterStatus.armor;
     base.baseLife       = characterStatus.baseLife;
     actionType          = characterStatus.actionType;
     hasRange            = characterStatus.hasRange;
     movementPoints      = characterStatus.movementPoints;
     baseMovementPoints  = characterStatus.movementPoints;
     physicalDamageBoost = characterStatus.physicalDamageBoost;
     physicalHealBoost   = characterStatus.physicalHealBoost;
     m_context.SetParameterValue("life", base.life);
     TimelineContextUtility.SetFightContext(m_playableDirector, fightStatus.context);
     m_base.InitializeState(fightStatus, characterStatus, ownerStatus);
     m_lifeUI.set_enabled(false);
     m_lifeUI.Setup(characterStatus.life);
     m_lifeUI.SetValues(characterStatus.life, characterStatus.armor);
     m_actionUI.set_enabled(false);
     m_actionUI.Setup(characterStatus.actionType, characterStatus.hasRange);
     if (actionValue.HasValue)
     {
         m_actionUI.SetValue(actionValue.Value);
     }
     m_elementaryStateUI.Setup();
 }
Exemple #4
0
 protected override void OnEnable()
 {
     base.OnEnable();
     InitializeAnimator();
     m_playableDirector.set_playableAsset(null);
     m_playableDirector.set_extrapolationMode(0);
     TimelineContextUtility.SetContextProvider(m_playableDirector, this);
     CameraHandler.AddMapRotationListener(OnMapRotationChanged);
 }
 public void Initialize(FightStatus fightStatus, PlayerStatus ownerStatus, ObjectMechanismStatus objectMechanismStatus)
 {
     base.Initialize(fightStatus, ownerStatus, objectMechanismStatus);
     base.life     = objectMechanismStatus.life;
     base.baseLife = objectMechanismStatus.baseLife;
     TimelineContextUtility.SetFightContext(m_playableDirector, fightStatus.context);
     m_lifeUI.set_enabled(false);
     m_lifeUI.SetValue(objectMechanismStatus.life);
 }
 public static void DestroyTimelineAssetEffectInstance(PlayableDirector instance, bool clearFightContext)
 {
     if (clearFightContext)
     {
         TimelineContextUtility.ClearFightContext(instance);
     }
     TimelineContextUtility.ClearContextProvider(instance);
     instance.set_playableAsset(null);
     if (null != s_instance)
     {
         s_timelineAssetEffectPool.Release(instance.get_gameObject());
     }
     else
     {
         Object.Destroy(instance.get_gameObject());
     }
 }
        public override Playable CreatePlayable(PlayableGraph graph, GameObject owner)
        {
            //IL_000d: Unknown result type (might be due to invalid IL or missing references)
            //IL_0031: Unknown result type (might be due to invalid IL or missing references)
            //IL_0037: Unknown result type (might be due to invalid IL or missing references)
            //IL_005e: Unknown result type (might be due to invalid IL or missing references)
            //IL_0061: Unknown result type (might be due to invalid IL or missing references)
            //IL_0066: Unknown result type (might be due to invalid IL or missing references)
            if (string.IsNullOrEmpty(m_eventGuid))
            {
                return(Playable.get_Null());
            }
            Guid guid = Guid.ParseExact(m_eventGuid, "N");

            if (guid == Guid.Empty)
            {
                return(Playable.get_Null());
            }
            AudioContext context = TimelineContextUtility.GetContext <AudioContext>(graph);
            AudioEventPlayableBehaviour audioEventPlayableBehaviour = new AudioEventPlayableBehaviour(guid, m_stopMode, m_volume, m_parameters, context, owner.get_transform());

            return(ScriptPlayable <AudioEventPlayableBehaviour> .op_Implicit(ScriptPlayable <AudioEventPlayableBehaviour> .Create(graph, audioEventPlayableBehaviour, 0)));
        }
Exemple #8
0
 public void Initialize(FightStatus fightStatus, PlayerStatus ownerStatus, FloorMechanismStatus floorMechanismStatus)
 {
     m_tooltipValueProvider = new DynamicFightValueProvider(floorMechanismStatus, floorMechanismStatus.level);
     TimelineContextUtility.SetFightContext(m_playableDirector, fightStatus.context);
     m_base.Setup(ownerStatus.playerType);
 }