コード例 #1
0
ファイル: Game1.cs プロジェクト: James-Goodbourn/Jimmys-XNA
        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();
        }
コード例 #2
0
ファイル: ScrollScale.cs プロジェクト: JingChen1988/Bubble
    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();
    }
コード例 #3
0
ファイル: TrailManager.cs プロジェクト: Lucjari/Everest
            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;
                }
            }
コード例 #4
0
ファイル: TrailManager.cs プロジェクト: reimoe/Everest
            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;
                }
            }