public void SetItem(Sprite icon, RuntimeAnimatorController animator, SkeletonDataAsset skeletonData, int id) { iconIndex = id; sprIcon = icon; if (skeleton != null && skeletonData != null) { skeleton.skeletonDataAsset = skeletonData; skeleton.Clear(); skeleton.Initialize(true); skeleton.AnimationState.SetAnimation(0, skeletonAnimName, skeletonLoop); } if (anim != null && animator != null) { anim.runtimeAnimatorController = animator; anim.enabled = true; anim.SetTrigger(animStateIdle); } else if (animator == null) { if (anim != null) { anim.enabled = false; anim.runtimeAnimatorController = null; } } imgIcon.sprite = icon; }
public void land_over_on(GameObject senderObj) { if (senderObj.GetComponent <build_info>().thema == "") { return; } bu_se_mode.GetComponent <Animation>().Play("bu_over_land"); index = senderObj.GetComponent <build_info>().index; width = senderObj.GetComponent <build_info>().width; target_name = senderObj.GetComponent <build_info>().name; thema = senderObj.GetComponent <build_info>().thema; target_check_value = senderObj.GetComponent <build_info>().target; bu_over_thema.text = thema; bu_over_width.text = width.ToString(); bu_over_name.text = GameObject.Find("inventory_mgr").GetComponent <ItemDB>().items[index - 1].name;; bu_over_level.text = ""; bu_se_mode.SetActive(true); skg = bu_spine_img.GetComponent <SkeletonGraphic>(); skg.skeletonDataAsset = Resources.Load("building/" + thema + "/" + target_name) as SkeletonDataAsset; skg.startingAnimation = aniName; skg.startingLoop = true; skg.timeScale = 1.0f; skg.Initialize(true); targetObj = senderObj; bu_spine_img.GetComponent <RectTransform>().anchoredPosition = new Vector2(-32 * width * skg.skeletonDataAsset.scale * 100, -214); // }
public static void PlayFromStart(this SkeletonGraphic skeleton, string animationToSet, bool isLoop, Spine.AnimationState.TrackEntryDelegate OnComplete = null, Spine.AnimationState.TrackEntryEventDelegate OnEvent = null) { TrackEntry trackEntry; if (skeleton.AnimationState != null) { if (skeleton.Skeleton == null) { skeleton.Initialize(true); } skeleton.startingAnimation = animationToSet; skeleton.AnimationState.ClearTrack(0); trackEntry = skeleton.AnimationState.SetAnimation(0, animationToSet, isLoop); if (OnEvent != null) { trackEntry.Event += OnEvent; } if (OnComplete != null) { trackEntry.Complete += OnComplete; } } }
public void UpdateSkeleton(string skeletonName) { if (!string.IsNullOrEmpty(skeletonName)) { SGK.ResourcesManager.LoadAsync(this, string.Format("roles_small/{0}/{0}_SkeletonData.asset", skeletonName), (o) => { if (o != null) { spine.gameObject.SetActive(true); if (o != spine.skeletonDataAsset) { spine.skeletonDataAsset = o as SkeletonDataAsset; spine.Initialize(true); spine.AnimationState.SetAnimation(0, animationName, true); } } else { spine.gameObject.SetActive(false); } }); } else { spine.gameObject.SetActive(false); } }
public override void Dispose() { Graphic_.Initialize(false); Graphic_.AnimationState.ClearTracks(); base.Dispose(); }
/// <summary> /// 加载骨骼数据 /// </summary> /// <param name="dataAssetName"></param> async CTask LoadSkeletonData(string dataAssetName) { _isLoaded = false; _dataAsstName = dataAssetName; dataAsset = await LoadHelper.LoadSkeletonData(dataAssetName); if (skeletonGraphic == null) { CLog.Error("获取物体骨骼动画组件错误"); return; } skeletonGraphic.skeletonDataAsset = dataAsset; skeletonGraphic.Initialize(true); animations = skeletonGraphic.skeletonDataAsset.GetSkeletonData(true).Animations.Items; aniNameList = new List <string>(); for (int i = 0; i < animations.Length; i++) { aniNameList.Add(animations[i].Name); } PlayStaticAnimation(); skeletonGraphic.AnimationState.TimeScale = 1; if (modelSetting != null) { skeletonGraphic.gameObject.transform.localScale = Vector3.one * modelSetting.Pos[1][2]; } _isLoaded = true; }
void OnEnable() { skeletonUtility = (SkeletonUtility)target; skeletonRenderer = skeletonUtility.skeletonRenderer; skeletonGraphic = skeletonUtility.skeletonGraphic; skeleton = skeletonUtility.Skeleton; if (skeleton == null) { if (skeletonRenderer != null) { skeletonRenderer.Initialize(false); skeletonRenderer.LateUpdate(); } else if (skeletonGraphic != null) { skeletonGraphic.Initialize(false); skeletonGraphic.LateUpdate(); } skeleton = skeletonUtility.Skeleton; } if ((skeletonRenderer != null && !skeletonRenderer.valid) || (skeletonGraphic != null && !skeletonGraphic.IsValid)) { return; } #if !NEW_PREFAB_SYSTEM isPrefab |= PrefabUtility.GetPrefabType(this.target) == PrefabType.Prefab; #endif }
public void build_over_on(GameObject senderObj) { if (tp != type.basic) { return; } bu_se_mode.GetComponent <Animation>().Play("bu_over_inven"); bu_se_mode.SetActive(true); // width = senderObj.GetComponent <test_info>().width_; index = senderObj.GetComponent <test_info>().index; thema = senderObj.GetComponent <test_info>().thema; level = senderObj.GetComponent <test_info>().level; target_name = senderObj.GetComponent <test_info>().name_; //GameObject.Find("inventory_mgr").GetComponent<ItemDB>().items[index-1].name; bu_over_thema.text = thema; bu_over_width.text = width.ToString(); bu_over_name.text = GameObject.Find("inventory_mgr").GetComponent <ItemDB>().items[index - 1].name; bu_over_level.text = "Lv " + level.ToString(); //bu_over_effect; // skg = bu_spine_img.GetComponent <SkeletonGraphic>(); skg.skeletonDataAsset = Resources.Load("building/" + thema + "/" + target_name) as SkeletonDataAsset; skg.startingAnimation = aniName; skg.startingLoop = true; skg.timeScale = 1.0f; skg.Initialize(true); bu_spine_img.GetComponent <RectTransform>().anchoredPosition = new Vector2(-32 * width * skg.skeletonDataAsset.scale * 100, -214); // targetObj = senderObj; }
public void LoadAsset(InfoFigure info) { if (info.asset != null) { skeleton.skeletonDataAsset = info.asset; skeleton.startingLoop = true; skeleton.Initialize(true); } }
private void AnimationState_Complete(Spine.TrackEntry trackEntry) { int r = Random.Range(0, 8); skg = this.GetComponent <SkeletonGraphic>(); skg.startingAnimation = firwork_name[r]; skg.Initialize(true); skg.AnimationState.Complete += AnimationState_Complete; }
void OnEnable() { int r = Random.Range(0, 8); skg = this.GetComponent <SkeletonGraphic>(); skg.startingAnimation = firwork_name[r]; skg.startingLoop = true; skg.timeScale = 1f; skg.Initialize(true); }
void Initialize(bool overwrite) { if (m_isInitialized && !overwrite) { return; } skeletonGraphic.Initialize(false); m_isInitialized = true; }
public void OnShow(InfoFigure info) { this.Show(); AudioManager1.Ins.PlaySound(SoundType.UnlockFigure); UIManager.Ins.popup.PlayComeReward(); UIManager.Ins.UpdatePlayerMasks(info.idFigure); asset.skeletonDataAsset = info.asset; asset.startingLoop = true; asset.Initialize(true); nameFigure.text = info.heroName; StartCoroutine(ShowRewardClaimed()); }
public static void ReinitializeComponent(SkeletonGraphic component) { if (component == null) { return; } if (!SkeletonDataAssetIsValid(component.SkeletonDataAsset)) { return; } component.Initialize(true); component.LateUpdate(); }
static void AfterLoad(SkeletonGraphic skeletonGraphic, SkeletonDataAsset skeletonDataAsset, string[] actions = null) { skeletonGraphic.skeletonDataAsset = skeletonDataAsset; if (actions == null && actions.Length >= 1) { skeletonGraphic.startingAnimation = actions[0]; } skeletonGraphic.Initialize(true); if (skeletonGraphic.AnimationState != null && actions != null) { for (int i = 0; i < actions.Length; i++) { skeletonGraphic.AnimationState.SetAnimation(i, actions[i], (i == (actions.Length - 1))); } } }
//=============================================================== #region Skeleton Graphic Animation public static void Play(this SkeletonGraphic skeleton, string animationToSet, bool isLoop, Spine.AnimationState.TrackEntryDelegate OnComplete = null, Spine.AnimationState.TrackEntryEventDelegate OnEvent = null) { TrackEntry trackEntry; if (skeleton.AnimationState != null) { if (skeleton.Skeleton == null) { skeleton.Initialize(true); } bool hasAnim = false; foreach (var anim in skeleton.Skeleton.Data.Animations) { if (anim.Name == animationToSet) { hasAnim = true; } } if (!hasAnim) { return; } if (skeleton.startingAnimation != animationToSet) { skeleton.startingAnimation = animationToSet; skeleton.AnimationState.ClearTrack(0); trackEntry = skeleton.AnimationState.SetAnimation(0, animationToSet, isLoop); } else { trackEntry = skeleton.AnimationState.AddAnimation(0, animationToSet, isLoop, 0f); } if (OnEvent != null) { trackEntry.Event += OnEvent; } if (OnComplete != null) { trackEntry.Complete += OnComplete; } } }
private void onLoadOver() { SkeletonDataAsset asset = LoadControl.getUnityObjectByType <SkeletonDataAsset>(_loadTool.getResourceID()); if (asset != null) { setLoading(false); _skeletonGraphic.skeletonDataAsset = asset; _skeletonGraphic.startingAnimation = ""; _skeletonGraphic.Initialize(true); } if (_overFunc != null) { _overFunc(); } }
public void Init(string spineId, SkeletonGraphic skg, string animationName) { _skg = skg; _animationName = animationName; SkeletonDataAsset skData = SpineUtil.BuildSkeletonDataAsset(spineId, skg); skg.skeletonDataAsset = skData; skg.Initialize(true); skg.AnimationState.SetAnimation(0, animationName, true); _rect = skg.GetComponent <RectTransform>(); _rect.pivot = new Vector2(0.5f, 0f); _rect.anchorMin = new Vector2(0.5f, 0.5f); _rect.anchorMax = new Vector2(0.5f, 0.5f); _rect.sizeDelta = new Vector2(300, 500); _rect.localScale = new Vector3(0.5f, 0.5f, 1); CurDerection = 0; }
public void SetUp(InfoFigure info) { nameTxt.text = info.heroName; if (info.asset != null) { skeleton.skeletonDataAsset = info.asset; skeleton.startingLoop = true; skeleton.Initialize(true); } if (info.isUsing) { HideAllCostType(); costTypePre[1].Show(); } else if (info.isBuy) { HideAllCostType(); } else if (info.costType == CostType.Coin) { HideAllCostType(); costTypePre[0].Show(); costTxt.text = info.cost.ToString(); } else if (info.costType == CostType.Video) { HideAllCostType(); costTypePre[2].Show(); } else if (info.costType == CostType.Vip) { HideAllCostType(); costTypePre[3].GetComponent <Text>().text = "Vip"; costTypePre[3].Show(); } else { HideAllCostType(); costTypePre[3].Show(); } }
void spine_building_(int parent, int target, Dnditem dnditem) { GameObject GO; SkeletonGraphic skg; switch (parent) { case 1: GO = view1.transform.GetChild(target).gameObject; skg = GO.GetComponent <SkeletonGraphic>(); skg.skeletonDataAsset = Resources.Load("building/" + dnditem.thema + "/" + dnditem.spine_name + "_1") as SkeletonDataAsset; skg.startingAnimation = sky_check(); skg.startingLoop = true; skg.timeScale = 1f; skg.Initialize(true); GO.SetActive(true); break; case 2: GO = view2.transform.GetChild(target).gameObject; skg = GO.GetComponent <SkeletonGraphic>(); skg.skeletonDataAsset = Resources.Load("building/" + dnditem.thema + "/" + dnditem.spine_name + "_2") as SkeletonDataAsset; skg.startingAnimation = sky_check(); skg.startingLoop = true; skg.timeScale = 1f; skg.Initialize(true); GO.SetActive(true); break; case 3: GO = view3.transform.GetChild(target).gameObject; skg = GO.GetComponent <SkeletonGraphic>(); skg.skeletonDataAsset = Resources.Load("building/" + dnditem.thema + "/" + dnditem.spine_name + "_3") as SkeletonDataAsset; skg.startingAnimation = sky_check(); skg.startingLoop = true; skg.timeScale = 1f; skg.Initialize(true); GO.SetActive(true); break; } }
public void LoadAnimation(string spineId, List <SpinePlayableVo> playableList = null, bool autoInit = true) { _skg = GetComponent <SkeletonGraphic>(); // RectTransform rect = GetComponent<RectTransform>(); // rect.pivot = new Vector2(0.5f, 0); // rect.sizeDelta = new Vector2(388,388); SkeletonDataAsset skData = SpineUtil.BuildSkeletonDataAsset(spineId, _skg); _skg.skeletonDataAsset = skData; _playableList = playableList; _skg.Initialize(true); if (autoInit && playableList != null) { _sequence = new SpinePlaySequence(_skg, _playableList); _sequence.Play(); } }
public void Init(string name, string text, SkeletonDataAsset skeletonDataAsset, AnimationReferenceAsset animation, Color backColor) { if (!string.IsNullOrEmpty(name) && nameTextField) { nameTextField.text = name; } textTextField.text = text; if (avatar) { avatar.gameObject?.SetActive(false); } back.color = backColor; spineParent.gameObject.SetActive(true); spineSkeleton.Clear(); spineSkeleton.skeletonDataAsset = skeletonDataAsset; spineSkeleton.Initialize(true); spineSkeleton.AnimationState.SetAnimation(0, animation, true); }
/**public SkeletonAnimation getSpine(string spineName){ * if (!spinePool.ContainsKey (spineName)) { * SkeletonDataAsset yourSkeletonDataAsset = Resources.Load<SkeletonDataAsset> ("spine/" + spineName + "/" + spineName + "_SkeletonData"); * SkeletonAnimation newSkeletonAnimation = SkeletonAnimation.NewSkeletonAnimationGameObject (yourSkeletonDataAsset); * //heroscene.DontDestroyOnLoad(newSkeletonAnimation.transform.gameObject); * newSkeletonAnimation.calculateNormals = true; * newSkeletonAnimation.loop = true; * newSkeletonAnimation.AnimationName = "stand"; * newSkeletonAnimation.transform.localPosition = new Vector3 (0.0f, -0.5f, 0.0f); * * spinePool [spineName] = newSkeletonAnimation; * } else if (spinePool [spineName] == null) { * spinePool.Remove (spineName); * getSpine (spineName); * } * return spinePool [spineName]; * } **/ public SkeletonGraphic getSkeletonGraphic(string spineName, SkeletonGraphic demo) { if (!spinePool.ContainsKey(spineName)) { SkeletonDataAsset yourSkeletonDataAsset = Resources.Load <SkeletonDataAsset> ("spine/" + spineName + "/" + spineName + "_SkeletonData"); SkeletonGraphic skeletonGraphic = (SkeletonGraphic)GameObject.Instantiate(demo, demo.transform.localPosition, demo.transform.localRotation); //heroscene.DontDestroyOnLoad(newSkeletonAnimation.transform.gameObject); skeletonGraphic.skeletonDataAsset = yourSkeletonDataAsset; skeletonGraphic.Initialize(true); skeletonGraphic.timeScale = 1; skeletonGraphic.unscaledTime = true; skeletonGraphic.AnimationState.SetAnimation(0, "stand", true); spinePool [spineName] = skeletonGraphic; } else if (spinePool [spineName] == null) { spinePool.Remove(spineName); getSkeletonGraphic(spineName, demo); } return(spinePool [spineName]); }
public void Change(SkeletonDataAsset asset) { spineGraphic.skeletonDataAsset = asset; spineGraphic.startingAnimation = "idle"; spineGraphic.Initialize(true); }
// Token: 0x06008ACF RID: 35535 RVA: 0x00287120 File Offset: 0x00285320 public bool Create(string assetName) { this.Destroy(); if (string.IsNullOrEmpty(assetName)) { return(false); } this.m_assetName = assetName; this.m_gameObject = new GameObject(GameObjectUtility.GetDefaultName(assetName)); GameObject asset = AssetUtility.Instance.GetAsset <GameObject>(assetName); if (asset == null) { global::Debug.LogWarning("UISpineGraphic.Create GetAsset " + assetName + " fail."); this.Destroy(); return(false); } SkeletonAnimation component = asset.GetComponent <SkeletonAnimation>(); if (!(component != null)) { global::Debug.LogWarning(assetName + " not spine prefab."); this.Destroy(); return(false); } SkeletonGraphic skeletonGraphic = this.m_gameObject.AddComponent <SkeletonGraphic>(); Texture texture = null; Renderer component2 = asset.GetComponent <Renderer>(); string text = string.Empty; if (component2 != null && component2.sharedMaterial != null) { if (component2.sharedMaterial.HasProperty("_AlphaTex")) { texture = component2.sharedMaterial.GetTexture("_AlphaTex"); } text = component2.sharedMaterial.shader.name; } if (texture != null) { if (text.Contains("Skeleton2_SepAlpha")) { this.m_material = new Material(AssetUtility.Instance.GetAsset <Material>("UI/Common_New_ABS/Material/UISpine2_SepAlpha.mat")); } else { this.m_material = new Material(AssetUtility.Instance.GetAsset <Material>("UI/Common_New_ABS/Material/UISpine_SepAlpha.mat")); } this.m_material.SetTexture("_AlphaTex", texture); skeletonGraphic.material = this.m_material; } else if (text.Contains("Skeleton2")) { skeletonGraphic.material = AssetUtility.Instance.GetAsset <Material>("UI/Common_New_ABS/Material/UISpine2.mat"); } else { skeletonGraphic.material = AssetUtility.Instance.GetAsset <Material>("UI/Common_New_ABS/Material/UISpine.mat"); } skeletonGraphic.initialSkinName = component.initialSkinName; skeletonGraphic.skeletonDataAsset = component.skeletonDataAsset; skeletonGraphic.raycastTarget = false; skeletonGraphic.startingAnimation = component._animationName; skeletonGraphic.startingLoop = component.loop; skeletonGraphic.Initialize(false); if (!skeletonGraphic.IsValid) { global::Debug.LogWarning("Spine " + assetName + " error."); this.Destroy(); return(false); } this.m_spine = skeletonGraphic; this.m_spine.AnimationState.Event += this.HandleSpineAnimationEvent; this.m_spine.AnimationState.Start += this.HandleSpineAnimationStart; this.m_spine.AnimationState.End += this.HandleSpineAnimationEnd; return(true); }
public SkeletonSfx(string Name, Transform Trans) : base(Name, Trans) { Graphic_ = GetComponent <SkeletonGraphic>(); Graphic_.Initialize(false); }