protected override void Initialize() { //initialise scaler - add event handler to the graphics device (resset) SpriteScaler = new SpriteScale(ORIGINAL_WIDTH, ORIGINAL_HEIGHT, this.graphics); graphics.GraphicsDevice.DeviceReset += new EventHandler <EventArgs>(SpriteScaler.DeviceReset); base.Initialize(); }
const int Rate = 1;//缩放频率 public void Init() { Transform mTran = transform; UIScrollView mScrollView = NGUITools.FindInParents<UIScrollView>(gameObject); panelTrans = mScrollView.panel.cachedTransform; Factor = MaxFactor - MinFactor; //获取中心点 Vector3[] corners = mScrollView.panel.worldCorners; panelCenter = (corners[2] + corners[0]) * 0.5f; //初始化子项集合 ItemCount = mTran.childCount; Items = new Transform[ItemCount]; SpriteList = new UIWidget[ItemCount][]; ItemsClick = new UICenterOnClick[ItemCount]; for (int i = 0; i < ItemCount; i++) { Transform tr = mTran.GetChild(i); Items[i] = tr; ItemsClick[i] = tr.GetComponent<UICenterOnClick>(); SpriteCount = tr.childCount; SpriteList[i] = new UIWidget[SpriteCount]; for (int j = 0; j < SpriteCount; j++) SpriteList[i][j] = tr.GetChild(j).GetComponent<UIWidget>(); } FirstItem = Items[0]; //获取宽度和高度偏移 Origin = new SpriteScale[SpriteCount]; for (int i = 0; i < SpriteCount; i++) { UIWidget sprite = SpriteList[0][i]; if (sprite == null) continue; float w = sprite.width; float h = sprite.height; int t = sprite.topAnchor.absolute; int b = sprite.bottomAnchor.absolute; int l = sprite.leftAnchor.absolute; int r = sprite.rightAnchor.absolute; Origin[i] = new SpriteScale(w, h, t, b, l, r); } //开启自动居中功能 UICenterOnChild UICenter = GetComponent<UICenterOnChild>(); UICenter.enabled = false; UICenter.enabled = true; //设置回调 UICenter.onCenter = onCenter; UICenter.onFinished = onFinished; //缩放 if (IsScale) Scale(); }
public new void Init(TrailManager manager, int index, Vector2 position, Image sprite, PlayerHair hair, Color color, float duration, int depth) { orig_Init(manager, index, position, sprite, hair, color, duration, depth); // Fixed an issue with vanilla itself, player's body trail is always facing right if (!Everest.Flags.IsDisabled && sprite != null && hair != null) { SpriteScale.X = SpriteScale.Abs().X *(int)hair.Facing; } }
public new void Init(TrailManager manager, int index, Vector2 position, Image sprite, PlayerHair hair, Color color, float duration, int depth) { orig_Init(manager, index, position, sprite, hair, color, duration, depth); // Fixed an issue with vanilla itself, player's body trail is always facing right // It has been fixed since version 1.2.9.1 // http://www.celestegame.com/temp/changelog_tech_test.txt // Fixed rendering bug where Madeline's dash trail could face the wrong way if (!Everest.Flags.IsDisabled && sprite != null && hair != null) { SpriteScale.X = SpriteScale.Abs().X *(int)hair.Facing; } }