private void lbl_PlayerName_Click(object sender, EventArgs e)
        {
            if (lbl_PlayerName.Tag != null)
            {
                string camera1PointerAddress = ByteConverstionHelper.byteArrayHexToAddressString(_m.ReadBytes(GameHelper.SPECTATOR_CAMERA_POINTER_ADDRESS, 4));

                string playerPointer = "0" + this.PDM._pointerAddress.Substring(1, 7);

                if (this.PDM._LivingStatus != "DEAD")
                {
                    _m.WriteMemory((int.Parse(camera1PointerAddress, System.Globalization.NumberStyles.HexNumber) + GameHelper.SPECTATOR_CAMERA_POINTER_OFFSET1).ToString("X4"), "bytes", ByteConverstionHelper.formatBytesToLittleEndian(int.Parse(playerPointer, System.Globalization.NumberStyles.HexNumber), 8));
                    _m.WriteMemory((int.Parse(camera1PointerAddress, System.Globalization.NumberStyles.HexNumber) + GameHelper.SPECTATOR_CAMERA_POINTER_OFFSET2).ToString("X4"), "bytes", ByteConverstionHelper.formatBytesToLittleEndian(int.Parse(playerPointer, System.Globalization.NumberStyles.HexNumber), 8));
                }
            }
        }
Example #2
0
        private void processGameData(string cirTypeIDAddress, string triTypeIDAddress, string sqTypeIDAddress, string xTypeIDAddress,
                                     string cirCatIDAddress, string triCatIDAddress, string sqCatIDAddress, string xCatIDAddress, string cirIDAddress, string triIDAddress,
                                     string sqIDAddress, string xIDAddress, string cirMessageAddress, string triMessageAddress, string sqMessageAddress, string xMessageAddress)
        {
            int             circleTypeID       = m.Read <byte>(CalculateNewAddress(cirTypeIDAddress, gGameOffset), false);
            int             triangleTypeID     = m.Read <byte>(CalculateNewAddress(triTypeIDAddress, gGameOffset), false);
            int             squareTypeID       = m.Read <byte>(CalculateNewAddress(sqTypeIDAddress, gGameOffset), false);
            int             crossTypeID        = m.Read <byte>(CalculateNewAddress(xTypeIDAddress, gGameOffset), false);
            string          circleCategoryID   = m.Read <byte>(CalculateNewAddress(cirCatIDAddress, gGameOffset), false).ToString("X1");
            string          triangleCategoryID = m.Read <byte>(CalculateNewAddress(triCatIDAddress, gGameOffset), false).ToString("X1");
            string          squareCategoryID   = m.Read <byte>(CalculateNewAddress(sqCatIDAddress, gGameOffset), false).ToString("X1");
            string          crossCategoryID    = m.Read <byte>(CalculateNewAddress(xCatIDAddress, gGameOffset), false).ToString("X1");
            string          circleID           = m.Read <short>(CalculateNewAddress(cirIDAddress, gGameOffset), false).ToString("X4");
            string          triangleID         = m.Read <short>(CalculateNewAddress(triIDAddress, gGameOffset), false).ToString("X4");
            string          squareID           = m.Read <short>(CalculateNewAddress(sqIDAddress, gGameOffset), false).ToString("X4");
            string          crossID            = m.Read <short>(CalculateNewAddress(xIDAddress, gGameOffset), false).ToString("X4");
            string          circleMessage      = ByteConverstionHelper.converyBytesToSJIS(m.Read <byte>(CalculateNewAddress(cirMessageAddress, gGameOffset), 20, false));
            string          triangleMessag     = ByteConverstionHelper.converyBytesToSJIS(m.Read <byte>(CalculateNewAddress(triMessageAddress, gGameOffset), 20, false));
            string          squareMessage      = ByteConverstionHelper.converyBytesToSJIS(m.Read <byte>(CalculateNewAddress(sqMessageAddress, gGameOffset), 20, false));
            string          crossMessage       = ByteConverstionHelper.converyBytesToSJIS(m.Read <byte>(CalculateNewAddress(xMessageAddress, gGameOffset), 20, false));
            ShortCutIDModel SCIDM;

            // 1 = Spell, 2 = Item, 0 = Message

            if (circleTypeID == 1)
            {
                SCIDM           = GameHelper.ShortCutIdData.Find(x => x._id == circleID);
                lbl_Circle.Text = SCIDM._name;
            }
            else if (circleTypeID == 2)
            {
                SCIDM           = GameHelper.ShortCutIdData.Find(x => x._id == circleID && x._categoryID == circleCategoryID);
                lbl_Circle.Text = SCIDM._name;
            }
            else if (circleTypeID == 0)
            {
                lbl_Circle.Text = circleMessage;
            }
            else if (circleTypeID == 255)
            {
                lbl_Circle.Text = "Unused";
            }

            if (triangleTypeID == 1)
            {
                SCIDM             = GameHelper.ShortCutIdData.Find(x => x._id == triangleID);
                lbl_Triangle.Text = SCIDM._name;
            }
            else if (triangleTypeID == 2)
            {
                SCIDM             = GameHelper.ShortCutIdData.Find(x => x._id == triangleID && x._categoryID == triangleCategoryID);
                lbl_Triangle.Text = SCIDM._name;
            }
            else if (triangleTypeID == 0)
            {
                lbl_Triangle.Text = triangleMessag;
            }
            else if (triangleTypeID == 255)
            {
                lbl_Triangle.Text = "Unused";
            }

            if (squareTypeID == 1)
            {
                SCIDM           = GameHelper.ShortCutIdData.Find(x => x._id == squareID);
                lbl_Square.Text = SCIDM._name;
            }
            else if (squareTypeID == 2)
            {
                SCIDM           = GameHelper.ShortCutIdData.Find(x => x._id == squareID && x._categoryID == squareCategoryID);
                lbl_Square.Text = SCIDM._name;
            }
            else if (squareTypeID == 0)
            {
                lbl_Square.Text = squareMessage;
            }
            else if (squareTypeID == 255)
            {
                lbl_Square.Text = "Unused";
            }

            if (crossTypeID == 1)
            {
                SCIDM          = GameHelper.ShortCutIdData.Find(x => x._id == crossID);
                lbl_Cross.Text = SCIDM._name;
            }
            else if (crossTypeID == 2)
            {
                SCIDM          = GameHelper.ShortCutIdData.Find(x => x._id == crossID && x._categoryID == crossCategoryID);
                lbl_Cross.Text = SCIDM._name;
            }
            else if (crossTypeID == 0)
            {
                lbl_Cross.Text = crossMessage;
            }
            else if (crossTypeID == 255)
            {
                lbl_Cross.Text = "Unused";
            }
        }