public Tweener Create() { if (_targ == null) return null; //set curves Tweener tween = null; if (_props.Count == 0) { return new ObjectTweener(_targ, new NullCurve()); } else if (_props.Count == 1) { var curve = this.CreateCurve(_props[0]); if (curve == null) { Debug.LogWarning("Failed to create tween for property '" + _props[0].name + "' on target.", _targ as Object); return new ObjectTweener(_targ, TweenCurve.Null); } else tween = new ObjectTweener(_targ, curve); } else { var grp = new TweenCurveGroup(); for (int i = 0; i < _props.Count; i++) { var curve = this.CreateCurve(_props[i]); if (curve == null) Debug.LogWarning("Failed to create tween for property '" + _props[i].name + "' on target.", _targ as Object); else grp.Curves.Add(curve); } tween = new ObjectTweener(_targ, grp); } //set props tween.Id = _id; tween.UpdateType = _updateType; tween.TimeSupplier = _timeSupplier; tween.WrapMode = _wrap; tween.WrapCount = _wrapCount; tween.Reverse = _reverse; if (_onStep != null) tween.OnStep += _onStep; if (_onWrap != null) tween.OnWrap += _onWrap; if (_onFinish != null) tween.OnFinish += _onFinish; return tween; }
public Tweener Create() { if (_targ == null) return null; //set curves Tweener tween = null; if (_props.Count > 1) { var grp = new TweenCurveGroup(); for (int i = 0; i < _props.Count; i++) { var curve = this.CreateCurve(_props[i]); if (curve == null) Debug.LogWarning("Failed to create tween for property '" + _props[i].name + "' on target.", _targ as Object); else grp.Curves.Add(curve); } tween = new ObjectTweener(_targ, grp); } else if(_props.Count == 1) { var curve = this.CreateCurve(_props[0]); if (curve == null) { Debug.LogWarning("Failed to create tween for property '" + _props[0].name + "' on target.", _targ as UnityEngine.Object); return new ObjectTweener(_targ, TweenCurve.Null); } else tween = new ObjectTweener(_targ, curve); } else { tween = new ObjectTweener(_targ, TweenCurve.Null); } if(_chainLink != null) { using (var lst = com.spacepuppy.Collections.TempCollection.GetList<Tweener>()) { lst.Add(tween); var link = _chainLink; while(link != null) { lst.Add(link.Create()); link = link._chainLink; } tween = new TweenerGroup(lst.ToArray()); } } //set props if (_id != null) tween.Id = _id; tween.UpdateType = _updateType; tween.TimeSupplier = _timeSupplier; tween.WrapMode = _wrap; tween.WrapCount = _wrapCount; tween.Reverse = _reverse; tween.Delay = _delay; if (_onStep != null) tween.OnStep += _onStep; if (_onWrap != null) tween.OnWrap += _onWrap; if (_onFinish != null) tween.OnFinish += _onFinish; if (_onStopped != null) tween.OnStopped += _onStopped; return tween; }