الموقع العربي الاول للعبة Silkroad Online

الموقع العربي الاول للعبة Silkroad Online (https://silkroad4arab.com/vb/index.php)
-   قسم الاسئلة و الاستفسارات لعمل السيرفرات الخاصة (https://silkroad4arab.com/vb/forumdisplay.php?f=226)
-   -   عايز كيورى لمعرفة الايتمز موجوده مع مين عن طريق سيريال الايتمز (https://silkroad4arab.com/vb/showthread.php?t=629998)

M@hmoud 10-02-2019 08:06 PM

عايز كيورى لمعرفة الايتمز موجوده مع مين عن طريق سيريال الايتمز
 
عايز كيورى لمعرفة الايتمز موجوده مع مين عن طريق سيريال الايتمز

McDiesel 14-02-2019 12:41 AM

رد: عايز كيورى لمعرفة الايتمز موجوده مع مين عن طريق سيريال الايتمز
 
اتفضل

كود:

USE SRO_VT_SHARD
GO

--//////////FindItemBySerial V1.3 By Syloxx\\\\\\\\\
DECLARE @Serial BIGINT = YOUR_SERIAL_HERE,
        @ItemID INT,
        @ItemCodeName VARCHAR(128)

        SELECT    @ItemCodeName = C.CodeName128 ,
                @ItemID = I.ID64
        FROM _RefObjCommon C
        INNER JOIN _Items I
        ON C.ID = I.RefItemID
        WHERE @Serial = I.Serial64


        --###############################################
        --#####      CHECK IF SERIAL IS VALID      #####
        --###############################################
        IF @ItemID IS NULL OR @ItemID = 0
        BEGIN
            PRINT 'No item with the specified Serial found!'
        END


        --###############################################
        --#####    CHECK IF ITEM IS IN INVENTORY    #####
        --###############################################
        ELSE IF (@ItemID IN (SELECT ItemID from _Inventory))
        BEGIN
            SELECT    TBU.JID AS 'UserJID',
                    TBU.StrUserID AS 'UserName',
                    C.CharID,
                    C.CharName16 AS 'CharName',
                    @ItemCodeName AS 'Item CodeName',
                    IT.OptLevel,
                    'Inventory' AS 'Storage',
                    INV.Slot
            FROM _Items IT
            INNER JOIN _Inventory INV
            ON INV.ItemID = IT.ID64
            INNER JOIN _Char C
            ON C.CharID = INV.CharID
            INNER JOIN _User U
            ON U.CharID = C.CharID
            INNER JOIN SRO_VT_ACCOUNT..TB_User TBU
            ON TBU.JID = U.UserJID
            WHERE IT.Serial64 = @Serial
        END


        --###############################################
        --#####    CHECK IF ITEM IS IN STORAGE    #####
        --###############################################
        ELSE IF (@ItemID IN (SELECT ItemID FROM _Chest))
        BEGIN
            SELECT    TBU.JID AS 'UserJID',
                    TBU.StrUserID AS 'UserName',
                    C.CharID,
                    C.CharName16 AS 'CharName',
                    @ItemCodeName AS 'Item CodeName',
                    IT.OptLevel,
                    'Storage' AS 'Storage',
                    SINV.Slot
            FROM _Items IT
            INNER JOIN _Chest SINV
            ON SINV.ItemID = IT.ID64
            INNER JOIN _User U
            ON U.UserJID = SINV.UserJID
            INNER JOIN _Char C
            ON C.CharID = U.CharID
            INNER JOIN SRO_VT_ACCOUNT..TB_User TBU
            ON TBU.JID = U.UserJID
            WHERE IT.Serial64 = @Serial
        END


        --###############################################
        --#####      CHECK IF ITEM IS IN PET      #####
        --###############################################
        ELSE IF (@ItemID IN (SELECT ItemID FROM _InvCOS))
        BEGIN
            DECLARE @COSSerial BIGINT,
                    @COSItemID INT,
                    @COSCodeName VARCHAR(128)

            SELECT    CCOS.ID AS 'COSID',
                    ROC.CodeName128 AS 'COS CodeName',
                    CCOS.CharName AS 'COS Name',
                    @ItemCodeName AS 'Item CodeName',
                    IT.OptLevel,
                    'COS Inventory' AS 'Storage',
                    CINV.Slot
            FROM _Items IT
            INNER JOIN _InvCOS CINV
            ON CINV.ItemID = IT.ID64
            INNER JOIN _CharCOS CCOS
            ON CCOS.ID = CINV.COSID
            INNER JOIN _Items COSIT
            ON COSIT.Data = CCOS.ID
            INNER JOIN _RefObjCommon ROC
            ON ROC.ID = COSIT.RefItemID
            WHERE IT.Serial64 = @Serial
            AND ROC.TypeID2=2
            AND ROC.TypeID3=1
            AND ROC.TypeID4=2


            SELECT    @COSSerial = COSIT.Serial64,
                    @COSItemID = COSIT.ID64,
                    @COSCodeName = ROC.CodeName128
            FROM _Items IT
            INNER JOIN _InvCOS CINV
            ON CINV.ItemID = IT.ID64
            INNER JOIN _CharCOS CCOS
            ON CCOS.ID = CINV.COSID
            INNER JOIN _Items COSIT
            ON COSIT.Data = CCOS.ID
            INNER JOIN _RefObjCommon ROC
            ON ROC.ID = COSIT.RefItemID
            WHERE IT.Serial64 = @Serial
            AND ROC.TypeID2=2
            AND ROC.TypeID3=1
            AND ROC.TypeID4=2


            --##############################################
            --#####    CHECK IF PET IS IN INVENTORY    #####
            --##############################################
            IF (@COSItemID IN (SELECT ItemID from _Inventory))
            BEGIN
                SELECT    TBU.JID AS 'UserJID',
                        TBU.StrUserID AS 'UserName',
                        C.CharID,
                        C.CharName16 AS 'CharName',
                        @COSCodeName AS 'COS CodeName',
                        IT.OptLevel,
                        'Inventory' AS 'Storage',
                        INV.Slot
                FROM _Items IT
                INNER JOIN _Inventory INV
                ON INV.ItemID = IT.ID64
                INNER JOIN _Char C
                ON C.CharID = INV.CharID
                INNER JOIN _User U
                ON U.CharID = C.CharID
                INNER JOIN SRO_VT_ACCOUNT..TB_User TBU
                ON TBU.JID = U.UserJID
                WHERE IT.Serial64 = @COSSerial
            END


            --##############################################
            --#####    CHECK IF PET IS IN STORAGE    #####
            --##############################################
            ELSE IF (@COSItemID IN (SELECT ItemID FROM _Chest))
            BEGIN
                SELECT    TBU.JID AS 'UserJID',
                        TBU.StrUserID AS 'UserName',
                        C.CharID,
                        C.CharName16 AS 'CharName',
                        @COSCodeName AS 'COS CodeName',
                        IT.OptLevel,
                        'Storage' AS 'Storage',
                        SINV.Slot
                FROM _Items IT
                INNER JOIN _Chest SINV
                ON SINV.ItemID = IT.ID64
                INNER JOIN _User U
                ON U.UserJID = SINV.UserJID
                INNER JOIN _Char C
                ON C.CharID = U.CharID
                INNER JOIN SRO_VT_ACCOUNT..TB_User TBU
                ON TBU.JID = U.UserJID
                WHERE IT.Serial64 = @COSSerial
            END


            --##############################################
            --#####  CHECK IF PET IS IN GUILD STORAGE  #####
            --##############################################
            ELSE IF (@COSItemID IN (SELECT ItemID FROM _GuildChest))
            BEGIN
                SELECT    TBU.JID AS 'UserJID',
                        TBU.StrUserID AS 'UserName',
                        GM.CharID,
                        GM.CharName AS 'GuildMaster',
                        G.ID AS 'GuildID',
                        G.Name AS 'GuildName',
                        @COSCodeName AS 'COS CodeName',
                        IT.OptLevel,
                        'Guild Storage' AS 'Storage',
                        GINV.Slot
                FROM _Items IT
                INNER JOIN _GuildChest GINV
                ON GINV.ItemID = IT.ID64
                INNER JOIN _Guild G
                ON G.ID = GINV.GuildID
                INNER JOIN _GuildMember GM
                ON GM.GuildID = G.ID
                INNER JOIN _User U
                ON U.CharID = GM.CharID
                INNER JOIN SRO_VT_ACCOUNT..TB_User TBU
                ON TBU.JID = U.UserJID
                WHERE IT.Serial64 = @COSSerial
                AND GM.MemberClass = 0
            END
        END


        --###############################################
        --#####  CHECK IF ITEM IS IN GUILD STORAGE  #####
        --###############################################
        ELSE IF (@ItemID IN (SELECT ItemID FROM _GuildChest))
        BEGIN
            SELECT    TBU.JID AS 'UserJID',
                    TBU.StrUserID AS 'UserName',
                    GM.CharID,
                    GM.CharName AS 'GuildMaster',
                    G.ID AS 'GuildID',
                    G.Name AS 'GuildName',
                    @ItemCodeName AS 'Item CodeName',
                    IT.OptLevel,
                    'Guild Storage' AS 'Storage',
                    GINV.Slot
            FROM _Items IT
            INNER JOIN _GuildChest GINV
            ON GINV.ItemID = IT.ID64
            INNER JOIN _Guild G
            ON G.ID = GINV.GuildID
            INNER JOIN _GuildMember GM
            ON GM.GuildID = G.ID
            INNER JOIN _User U
            ON U.CharID = GM.CharID
            INNER JOIN SRO_VT_ACCOUNT..TB_User TBU
            ON TBU.JID = U.UserJID
            WHERE IT.Serial64 = @Serial
            AND GM.MemberClass = 0
        END


M@hmoud 14-02-2019 02:42 PM

رد: عايز كيورى لمعرفة الايتمز موجوده مع مين عن طريق سيريال الايتمز
 
اقتباس:

المشاركة الأصلية كتبت بواسطة McDiesel (المشاركة 5365093)
اتفضل

كود:

USE SRO_VT_SHARD
GO

--//////////FindItemBySerial V1.3 By Syloxx\\\\\\\\\
DECLARE @Serial BIGINT = YOUR_SERIAL_HERE,
        @ItemID INT,
        @ItemCodeName VARCHAR(128)

        SELECT    @ItemCodeName = C.CodeName128 ,
                @ItemID = I.ID64
        FROM _RefObjCommon C
        INNER JOIN _Items I
        ON C.ID = I.RefItemID
        WHERE @Serial = I.Serial64


        --###############################################
        --#####      CHECK IF SERIAL IS VALID      #####
        --###############################################
        IF @ItemID IS NULL OR @ItemID = 0
        BEGIN
            PRINT 'No item with the specified Serial found!'
        END


        --###############################################
        --#####    CHECK IF ITEM IS IN INVENTORY    #####
        --###############################################
        ELSE IF (@ItemID IN (SELECT ItemID from _Inventory))
        BEGIN
            SELECT    TBU.JID AS 'UserJID',
                    TBU.StrUserID AS 'UserName',
                    C.CharID,
                    C.CharName16 AS 'CharName',
                    @ItemCodeName AS 'Item CodeName',
                    IT.OptLevel,
                    'Inventory' AS 'Storage',
                    INV.Slot
            FROM _Items IT
            INNER JOIN _Inventory INV
            ON INV.ItemID = IT.ID64
            INNER JOIN _Char C
            ON C.CharID = INV.CharID
            INNER JOIN _User U
            ON U.CharID = C.CharID
            INNER JOIN SRO_VT_ACCOUNT..TB_User TBU
            ON TBU.JID = U.UserJID
            WHERE IT.Serial64 = @Serial
        END


        --###############################################
        --#####    CHECK IF ITEM IS IN STORAGE    #####
        --###############################################
        ELSE IF (@ItemID IN (SELECT ItemID FROM _Chest))
        BEGIN
            SELECT    TBU.JID AS 'UserJID',
                    TBU.StrUserID AS 'UserName',
                    C.CharID,
                    C.CharName16 AS 'CharName',
                    @ItemCodeName AS 'Item CodeName',
                    IT.OptLevel,
                    'Storage' AS 'Storage',
                    SINV.Slot
            FROM _Items IT
            INNER JOIN _Chest SINV
            ON SINV.ItemID = IT.ID64
            INNER JOIN _User U
            ON U.UserJID = SINV.UserJID
            INNER JOIN _Char C
            ON C.CharID = U.CharID
            INNER JOIN SRO_VT_ACCOUNT..TB_User TBU
            ON TBU.JID = U.UserJID
            WHERE IT.Serial64 = @Serial
        END


        --###############################################
        --#####      CHECK IF ITEM IS IN PET      #####
        --###############################################
        ELSE IF (@ItemID IN (SELECT ItemID FROM _InvCOS))
        BEGIN
            DECLARE @COSSerial BIGINT,
                    @COSItemID INT,
                    @COSCodeName VARCHAR(128)

            SELECT    CCOS.ID AS 'COSID',
                    ROC.CodeName128 AS 'COS CodeName',
                    CCOS.CharName AS 'COS Name',
                    @ItemCodeName AS 'Item CodeName',
                    IT.OptLevel,
                    'COS Inventory' AS 'Storage',
                    CINV.Slot
            FROM _Items IT
            INNER JOIN _InvCOS CINV
            ON CINV.ItemID = IT.ID64
            INNER JOIN _CharCOS CCOS
            ON CCOS.ID = CINV.COSID
            INNER JOIN _Items COSIT
            ON COSIT.Data = CCOS.ID
            INNER JOIN _RefObjCommon ROC
            ON ROC.ID = COSIT.RefItemID
            WHERE IT.Serial64 = @Serial
            AND ROC.TypeID2=2
            AND ROC.TypeID3=1
            AND ROC.TypeID4=2


            SELECT    @COSSerial = COSIT.Serial64,
                    @COSItemID = COSIT.ID64,
                    @COSCodeName = ROC.CodeName128
            FROM _Items IT
            INNER JOIN _InvCOS CINV
            ON CINV.ItemID = IT.ID64
            INNER JOIN _CharCOS CCOS
            ON CCOS.ID = CINV.COSID
            INNER JOIN _Items COSIT
            ON COSIT.Data = CCOS.ID
            INNER JOIN _RefObjCommon ROC
            ON ROC.ID = COSIT.RefItemID
            WHERE IT.Serial64 = @Serial
            AND ROC.TypeID2=2
            AND ROC.TypeID3=1
            AND ROC.TypeID4=2


            --##############################################
            --#####    CHECK IF PET IS IN INVENTORY    #####
            --##############################################
            IF (@COSItemID IN (SELECT ItemID from _Inventory))
            BEGIN
                SELECT    TBU.JID AS 'UserJID',
                        TBU.StrUserID AS 'UserName',
                        C.CharID,
                        C.CharName16 AS 'CharName',
                        @COSCodeName AS 'COS CodeName',
                        IT.OptLevel,
                        'Inventory' AS 'Storage',
                        INV.Slot
                FROM _Items IT
                INNER JOIN _Inventory INV
                ON INV.ItemID = IT.ID64
                INNER JOIN _Char C
                ON C.CharID = INV.CharID
                INNER JOIN _User U
                ON U.CharID = C.CharID
                INNER JOIN SRO_VT_ACCOUNT..TB_User TBU
                ON TBU.JID = U.UserJID
                WHERE IT.Serial64 = @COSSerial
            END


            --##############################################
            --#####    CHECK IF PET IS IN STORAGE    #####
            --##############################################
            ELSE IF (@COSItemID IN (SELECT ItemID FROM _Chest))
            BEGIN
                SELECT    TBU.JID AS 'UserJID',
                        TBU.StrUserID AS 'UserName',
                        C.CharID,
                        C.CharName16 AS 'CharName',
                        @COSCodeName AS 'COS CodeName',
                        IT.OptLevel,
                        'Storage' AS 'Storage',
                        SINV.Slot
                FROM _Items IT
                INNER JOIN _Chest SINV
                ON SINV.ItemID = IT.ID64
                INNER JOIN _User U
                ON U.UserJID = SINV.UserJID
                INNER JOIN _Char C
                ON C.CharID = U.CharID
                INNER JOIN SRO_VT_ACCOUNT..TB_User TBU
                ON TBU.JID = U.UserJID
                WHERE IT.Serial64 = @COSSerial
            END


            --##############################################
            --#####  CHECK IF PET IS IN GUILD STORAGE  #####
            --##############################################
            ELSE IF (@COSItemID IN (SELECT ItemID FROM _GuildChest))
            BEGIN
                SELECT    TBU.JID AS 'UserJID',
                        TBU.StrUserID AS 'UserName',
                        GM.CharID,
                        GM.CharName AS 'GuildMaster',
                        G.ID AS 'GuildID',
                        G.Name AS 'GuildName',
                        @COSCodeName AS 'COS CodeName',
                        IT.OptLevel,
                        'Guild Storage' AS 'Storage',
                        GINV.Slot
                FROM _Items IT
                INNER JOIN _GuildChest GINV
                ON GINV.ItemID = IT.ID64
                INNER JOIN _Guild G
                ON G.ID = GINV.GuildID
                INNER JOIN _GuildMember GM
                ON GM.GuildID = G.ID
                INNER JOIN _User U
                ON U.CharID = GM.CharID
                INNER JOIN SRO_VT_ACCOUNT..TB_User TBU
                ON TBU.JID = U.UserJID
                WHERE IT.Serial64 = @COSSerial
                AND GM.MemberClass = 0
            END
        END


        --###############################################
        --#####  CHECK IF ITEM IS IN GUILD STORAGE  #####
        --###############################################
        ELSE IF (@ItemID IN (SELECT ItemID FROM _GuildChest))
        BEGIN
            SELECT    TBU.JID AS 'UserJID',
                    TBU.StrUserID AS 'UserName',
                    GM.CharID,
                    GM.CharName AS 'GuildMaster',
                    G.ID AS 'GuildID',
                    G.Name AS 'GuildName',
                    @ItemCodeName AS 'Item CodeName',
                    IT.OptLevel,
                    'Guild Storage' AS 'Storage',
                    GINV.Slot
            FROM _Items IT
            INNER JOIN _GuildChest GINV
            ON GINV.ItemID = IT.ID64
            INNER JOIN _Guild G
            ON G.ID = GINV.GuildID
            INNER JOIN _GuildMember GM
            ON GM.GuildID = G.ID
            INNER JOIN _User U
            ON U.CharID = GM.CharID
            INNER JOIN SRO_VT_ACCOUNT..TB_User TBU
            ON TBU.JID = U.UserJID
            WHERE IT.Serial64 = @Serial
            AND GM.MemberClass = 0
        END


تمام شكرا تم الحل

BuiLt4KiLl 14-02-2019 09:30 PM

رد: عايز كيورى لمعرفة الايتمز موجوده مع مين عن طريق سيريال الايتمز
 
تمام ، يغلق للانتهاء
##


الساعة الآن 08:56 PM.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions, Inc.