عرض مشاركة واحدة
قديم 15-11-2017, 05:46 PM   #6

Scrox
عضو لامع



الصورة الرمزية Scrox


• الانـتـسـاب » Apr 2017
• رقـم العـضـويـة » 132672
• المشـــاركـات » 1,355
• الـدولـة » GB
• الـهـوايـة » miMobXD
• اسـم الـسـيـرفـر » Private Server
• الـجـنـس » Male
• نقـاط التقييم » 38
Scrox صـاعـد

Scrox غير متواجد حالياً


إرسال رسالة عبر ICQ إلى Scrox إرسال رسالة عبر AIM إلى Scrox إرسال رسالة عبر Yahoo إلى Scrox

افتراضي رد: مشكله في system Auto EquipMent



جرب ده شغاله 1-9 d
sun +7 stats 100%


كود PHP:
USE [SRO_VT_SHARD]
GO
/****** Object:  StoredProcedure [dbo].[_ADD_AUTOEQUIP_GEAR]    Script Date: 12/15/2014 18:35:10 ******/
SET ANSI_NULLS OFF
GO
SET QUOTED_IDENTIFIER OFF
GO

ALTER PROCEDURE 
[dbo].[_ADD_AUTOEQUIP_GEAR]
    @
CharName AS VARCHAR(64),
    @
EQPlus AS TINYINT
AS    
    -- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    -- @@@ 
BEGINSETTINGS
    
    
-- CHANGE THIS! -- CHANGE THIS! -- CHANGE THIS! (if needed)

    -- (
Represent ITEM_CH_BOW_11_A_RARE), change as you need it
    
DECLARE @GearSuffix VARCHAR(16) = 'C_RARE'

    
-- @@@ ENDSETTINGS
    
-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

    
SET NOCOUNT ON

    
-- Check if character exist
    
DECLARE    @isCharExist TINYINT 0

    
PRINT 'Validating Character...'
    
EXEC @isCharExist = [_IsExistingCharName] @CharNameToCheck = @CharName
    
IF (@isCharExist 0)
    
BEGIN
        RAISERROR
('Character: %s does not exist. Sequence canceled!'116, @CharName)
        RETURN -
1
    END

    
-- Check character and account related information (In relation with SRO_VT_ACCOUNT)
    DECLARE @
CharID INT 0
    
DECLARE @RefCharID INT 0
    
DECLARE @UserJID INT 0
    
DECLARE @GMLevel INT 0
    
DECLARE @AccountName VARCHAR(32) = ''

    
-- Check if character assigned to Account ID
    
PRINT 'Validating Account ID...'
    
SELECT @CharID CharID, @RefCharID RefObjID FROM _Char WHERE CharName16 = @CharName
    SELECT 
@UserJID UserJID FROM _User WHERE CharID = @CharID
    
IF (@UserJID IS NULL OR @UserJID 0)
    
BEGIN
        RAISERROR
('Account ID does not exist, or character: %s is not assigned to any user accounts. Sequence canceled!'116, @CharName)
        RETURN -
2
    END

    
-- Check character gender and race
    
DECLARE @CharGender VARCHAR(1) = ''
    
DECLARE @CharRace VARCHAR(2) = ''

    
PRINT 'Validating race and gender...'
    
SET @CharRace = CASE
        
WHEN (@RefCharID BETWEEN 1907 AND 1919) OR (@RefCharID BETWEEN 1920 AND 1932THEN 'CH'    -- Chinese (vSRO/BR110)
        
WHEN (@RefCharID BETWEEN 14875 AND 14887) OR (@RefCharID BETWEEN 14888 AND 14900THEN 'EU'    -- Euro (vSRO)
        
WHEN (@RefCharID BETWEEN 14717 AND 14729) OR (@RefCharID BETWEEN 14730 AND 14742THEN 'EU'    -- Euro (BR110)
        ELSE 
NULL END
    SET 
@CharGender = CASE
        
WHEN (@RefCharID BETWEEN 1907 AND 1919) OR (@RefCharID BETWEEN 14875 AND 14887) OR (@RefCharID BETWEEN 14717 AND 14729THEN 'M'
        
WHEN (@RefCharID BETWEEN 1920 AND 1932) OR (@RefCharID BETWEEN 14888 AND 14900) OR (@RefCharID BETWEEN 14730 AND 14742THEN 'W'
        
ELSE NULL END
    
PRINT 'Race code is: ' + @CharRace ', gender code is: ' + @CharGender '.'
    
IF (@CharRace IS NULL OR @CharGender IS NULL)
    
BEGIN
        RAISERROR
('Invalid character race and gender info. Sequence canceled!'116, @CharName)
        RETURN -
3
    END

    
-- Check character level for item degree
    
DECLARE @EQDegree VARCHAR(2) = ''
    
DECLARE @CurLevel TINYINT 0

    SET 
@CurLevel = CASE
        
WHEN @CharRace 'CH' THEN (SELECT CurLevel FROM _Char WHERE CharID = @CharID) + 1
        WHEN 
@CharRace 'EU' THEN (SELECT CurLevel FROM _Char WHERE CharID = @CharID) - 1
        
--WHEN @CharRace 'EU' THEN (SELECT TOP (1) [LevelFROM _CharSkillMastery WHERE CharID = @CharID ORDER BY [LevelDESC) + 1
        
ELSE 0 END
    SET 
@EQDegree = CASE
        
WHEN @CurLevel 13 THEN '01'
        
WHEN @CurLevel 21 THEN '02'
        
WHEN @CurLevel 29 THEN '03'
        
WHEN @CurLevel 37 THEN '04'
        
WHEN @CurLevel 47 THEN '05'
        
WHEN @CurLevel 57 THEN '06'
        
WHEN @CurLevel 69 THEN '07'
        
WHEN @CurLevel 81 THEN '08'
    
ELSE '09' END
    
PRINT 'Character/Mastery Level: ' CAST(@CurLevel AS VARCHAR(3)) + ', degree: ' + @EQDegree '. (Level are current +1)'

    
-- Setting up equipment
    
-- Gears
    
DECLARE @CodeNameHelm        VARCHAR(64) = ''
    
DECLARE @CodeNameMail        VARCHAR(64) = ''
    
DECLARE @CodeNameShoulder    VARCHAR(64) = ''
    
DECLARE @CodeNameGauntlet    VARCHAR(64) = ''
    
DECLARE @CodeNamePants        VARCHAR(64) = ''
    
DECLARE @CodeNameBoots        VARCHAR(64) = ''
    
DECLARE @RefHelmID        INT 0
    
DECLARE @RefMailID        INT 0
    
DECLARE @RefShoulderID        INT 0
    
DECLARE @RefGauntletID        INT 0
    
DECLARE @RefPantsID        INT 0
    
DECLARE @RefBootsID        INT 0
    
DECLARE @RefHelmLinkID        INT 0
    
DECLARE @RefMailLinkID        INT 0
    
DECLARE @RefShoulderLinkID    INT 0
    
DECLARE @RefGauntletLinkID    INT 0
    
DECLARE @RefPantsLinkID        INT 0
    
DECLARE @RefBootsLinkID        INT 0

    
-- Accessories
    
DECLARE @CodeNameEarring    VARCHAR(64) = ''
    
DECLARE @CodeNameNecklace    VARCHAR(64) = ''
    
DECLARE @CodeNameRing        VARCHAR(64) = ''
    
DECLARE @RefEarringID        INT 0
    
DECLARE @RefNecklaceID        INT 0
    
DECLARE @RefRingID        INT 0
    
DECLARE @RefEarringLinkID    INT 0
    
DECLARE @RefNecklaceLinkID    INT 0
    
DECLARE @RefRingLinkID        INT 0

    
-- Weapon and Shield
    
DECLARE @CodeNameWeapon        VARCHAR(64) = ''
    
DECLARE @CodeNameShield        VARCHAR(64) = ''
    
DECLARE @RefWeaponID        INT 0
    
DECLARE @RefShieldID        INT 0
    
DECLARE @RefWeaponLinkID    INT 0
    
DECLARE @RefShieldLinkID    INT 0

    
-- Check for current equipped weapon/shield
    
PRINT 'Validating equipped weapon...'
    
DECLARE @OldWeaponID INT = (SELECT ItemID FROM _Inventory WHERE CharID = @CharID AND Slot ='6')
    IF (@
OldWeaponID IS NULL OR @OldWeaponID 0)
    
BEGIN
        RAISERROR
('Character: %s is not wearing any weapon. Sequence canceled!'101, @CharName)
        RETURN -
4
    END
    
DECLARE @RefOldWeaponID INT = (SELECT RefItemID FROM _Items WHERE ID64 = @OldWeaponID)
    DECLARE @
WPClass VARCHAR(16) = ''
    
SELECT @WPClass 
        CASE
            
WHEN TypeID1 AND TypeID2 AND TypeID3 AND TypeID4 2 THEN 'SWORD'
            
WHEN TypeID1 AND TypeID2 AND TypeID3 AND TypeID4 3 THEN 'BLADE'
            
WHEN TypeID1 AND TypeID2 AND TypeID3 AND TypeID4 4 THEN 'SPEAR'
            
WHEN TypeID1 AND TypeID2 AND TypeID3 AND TypeID4 5 THEN 'TBLADE'
            
WHEN TypeID1 AND TypeID2 AND TypeID3 AND TypeID4 6 THEN 'BOW'
            
WHEN TypeID1 AND TypeID2 AND TypeID3 AND TypeID4 7 THEN 'SWORD'
            
WHEN TypeID1 AND TypeID2 AND TypeID3 AND TypeID4 8 THEN 'TSWORD'
            
WHEN TypeID1 AND TypeID2 AND TypeID3 AND TypeID4 9 THEN 'AXE'
            
WHEN TypeID1 AND TypeID2 AND TypeID3 AND TypeID4 10 THEN 'DARKSTAFF'
            
WHEN TypeID1 AND TypeID2 AND TypeID3 AND TypeID4 11 THEN 'TSTAFF'
            
WHEN TypeID1 AND TypeID2 AND TypeID3 AND TypeID4 12 THEN 'CROSSBOW'
            
WHEN TypeID1 AND TypeID2 AND TypeID3 AND TypeID4 13 THEN 'DAGGER'
            
WHEN TypeID1 AND TypeID2 AND TypeID3 AND TypeID4 14 THEN 'HARP'
            
WHEN TypeID1 AND TypeID2 AND TypeID3 AND TypeID4 15 THEN 'STAFF'
        
END
    FROM _RefObjCommon WHERE 
[Service] = AND ID = @RefOldWeaponID ORDER BY TypeID4 ASC
    
PRINT 'Weapon is: ' + @WPClass '.'

    
-- Set no shield by default, if the weapon used is 1Hthen add shield automatically.
    PRINT 
'Checking if character is using shield...'
    
DECLARE @useShield TINYINT 0
    
IF (@WPClass 'SWORD' OR @WPClass 'BLADE' OR @WPClass 'STAFF' OR @WPClass 'DARKSTAFF')
    
BEGIN
        
PRINT '- 1H weapon is used, new shield will be added.'
        
SET @useShield 1
    END    

    
-- Item codes (trailing codes are from itemSuffix settings above)
    PRINT 
'Validating current gear...'
    
DECLARE @OldGearID INT = (SELECT TOP (1ItemID FROM _Inventory WHERE CharID = @CharID AND ItemID AND Slot BETWEEN 0 AND 5)
    IF (@
OldGearID IS NULL OR @OldGearID 0)
    
BEGIN
        RAISERROR
('Character: %s is not wearing any armor. Sequence canceled!'101, @CharName)
        RETURN -
5
    END
    
DECLARE @RefOldGearID INT = (SELECT RefItemID FROM _Items WHERE ID64 = @OldGearID)
    DECLARE @
EQClass VARCHAR(10)
    
SELECT @EQClass 
        CASE
            
WHEN TypeID1 AND TypeID2 AND (TypeID3 OR TypeID3 9THEN 'CLOTHES'
            
WHEN TypeID1 AND TypeID2 AND (TypeID3 OR TypeID3 10THEN 'LIGHT'
            
WHEN TypeID1 AND TypeID2 AND (TypeID3 OR TypeID3 11THEN 'HEAVY'
        
END
    FROM _RefObjCommon WHERE 
[Service] = AND ID = @RefOldGearID ORDER BY TypeID4 ASC
    
PRINT 'Gear type is: ' + @EQClass '.'

    
PRINT 'Setting up item codenames...'
    
-- Gears
    SET 
@CodeNameHelm    'ITEM_' + @CharRace '_' + @CharGender '_' + @EQClass '_' + @EQDegree '_HA_' + @GearSuffix
    SET 
@CodeNameMail    'ITEM_' + @CharRace '_' + @CharGender '_' + @EQClass '_' + @EQDegree '_BA_' + @GearSuffix
    SET 
@CodeNameShoulder    'ITEM_' + @CharRace '_' + @CharGender '_' + @EQClass '_' + @EQDegree '_SA_' + @GearSuffix
    SET 
@CodeNameGauntlet    'ITEM_' + @CharRace '_' + @CharGender '_' + @EQClass '_' + @EQDegree '_AA_' + @GearSuffix
    SET 
@CodeNamePants    'ITEM_' + @CharRace '_' + @CharGender '_' + @EQClass '_' + @EQDegree '_LA_' + @GearSuffix
    SET 
@CodeNameBoots    'ITEM_' + @CharRace '_' + @CharGender '_' + @EQClass '_' + @EQDegree '_FA_' + @GearSuffix

    
-- Accessories
    SET 
@CodeNameEarring    'ITEM_' + @CharRace '_EARRING_' + @EQDegree '_' + @GearSuffix
    SET 
@CodeNameNecklace    'ITEM_' + @CharRace '_NECKLACE_' + @EQDegree '_' + @GearSuffix
    SET 
@CodeNameRing    'ITEM_' + @CharRace '_RING_' + @EQDegree '_' + @GearSuffix

    
-- Weapon and Shield
    SET 
@CodeNameWeapon    'ITEM_' + @CharRace '_' + @WPClass '_' + @EQDegree '_' + @GearSuffix
    SET 
@CodeNameShield    'ITEM_' + @CharRace '_SHIELD_' + @EQDegree '_' + @GearSuffix

    
-- Get Reference ID and Link ID
    
PRINT 'Getting item reference ID and link...'
    
-- Gears
    SELECT 
@RefHelmID ID, @RefHelmLinkID link FROM _RefObjCommon WHERE [Service] = AND CodeName128 = @CodeNameHelm
    SELECT 
@RefMailID ID, @RefMailLinkID link FROM _RefObjCommon WHERE [Service] = AND CodeName128 = @CodeNameMail
    SELECT 
@RefShoulderID ID, @RefShoulderLinkID link FROM _RefObjCommon WHERE [Service] = AND CodeName128 = @CodeNameShoulder
    SELECT 
@RefGauntletID ID, @RefGauntletLinkID link FROM _RefObjCommon WHERE [Service] = AND CodeName128 = @CodeNameGauntlet
    SELECT 
@RefPantsID ID, @RefPantsLinkID link FROM _RefObjCommon WHERE [Service] = AND CodeName128 = @CodeNamePants
    SELECT 
@RefBootsID ID, @RefBootsLinkID link FROM _RefObjCommon WHERE [Service] = AND CodeName128 = @CodeNameBoots

    
-- Accessories
    SELECT 
@RefEarringID ID, @RefEarringLinkID link FROM _RefObjCommon WHERE [Service] = AND CodeName128 = @CodeNameEarring
    SELECT 
@RefNecklaceID ID, @RefNecklaceLinkID link FROM _RefObjCommon WHERE [Service] = AND CodeName128 = @CodeNameNecklace
    SELECT 
@RefRingID ID, @RefRingLinkID link FROM _RefObjCommon WHERE [Service] = AND CodeName128 = @CodeNameRing

    
-- Weapon and Shield
    SELECT 
@RefWeaponID ID, @RefWeaponLinkID Link FROM _RefObjCommon WHERE [Service] = AND CodeName128 = @CodeNameWeapon
    SELECT 
@RefShieldID ID, @RefShieldLinkID Link FROM _RefObjCommon WHERE [Service] = AND CodeName128 = @CodeNameShield

    
IF (
        @
RefHelmID IS NULL OR @RefHelmID OR 
        @
RefMailID IS NULL OR @RefMailID OR 
        @
RefShoulderID IS NULL OR @RefShoulderID OR 
        @
RefGauntletID IS NULL OR @RefGauntletID OR 
        @
RefPantsID IS NULL OR @RefPantsID OR 
        @
RefBootsID IS NULL OR @RefBootsID OR 
        @
RefEarringID IS NULL OR @RefEarringID OR 
        @
RefNecklaceID IS NULL OR @RefNecklaceID OR 
        @
RefRingID IS NULL OR @RefRingID OR
        @
RefWeaponID IS NULL OR @RefWeaponID OR
        @
RefShieldID IS NULL OR @RefShieldID 0
    
)
    
BEGIN
        RAISERROR
('Invalid item reference ID, check item codename (degree parameter or item suffix setting). Sequence canceled!'116)
        RETURN -
6
    END
    
IF (
        @
RefHelmLinkID IS NULL OR @RefHelmLinkID OR 
        @
RefMailLinkID IS NULL OR @RefMailLinkID OR 
        @
RefShoulderLinkID IS NULL OR @RefShoulderLinkID OR 
        @
RefGauntletLinkID IS NULL OR @RefGauntletLinkID OR 
        @
RefPantsLinkID IS NULL OR @RefPantsLinkID OR 
        @
RefBootsLinkID IS NULL OR @RefBootsLinkID OR 
        @
RefEarringLinkID IS NULL OR @RefEarringLinkID OR 
        @
RefNecklaceLinkID IS NULL OR @RefNecklaceLinkID OR 
        @
RefRingLinkID IS NULL OR @RefRingLinkID OR 
        @
RefWeaponLinkID IS NULL OR @RefWeaponLinkID OR 
        @
RefShieldLinkID IS NULL OR @RefShieldLinkID 0
    
)
    
BEGIN
        RAISERROR
('Invalid link reference ID, check item codename (degree parameter or item suffix setting). Sequence canceled!'116)
        RETURN -
7
    END

    
-- Get durability for 'Data'
    
PRINT 'Getting items durability information...'
    
DECLARE @DuraHelm INT = (SELECT Dur_L FROM _RefObjItem WHERE ID = @RefHelmLinkID)
    DECLARE @
DuraMail INT = (SELECT Dur_L FROM _RefObjItem WHERE ID = @RefMailLinkID)
    DECLARE @
DuraShoulder INT = (SELECT Dur_L FROM _RefObjItem WHERE ID = @RefShoulderLinkID)
    DECLARE @
DuraGauntlet INT = (SELECT Dur_L FROM _RefObjItem WHERE ID = @RefGauntletLinkID)
    DECLARE @
DuraPants INT = (SELECT Dur_L FROM _RefObjItem WHERE ID = @RefPantsLinkID)
    DECLARE @
DuraBoots INT = (SELECT Dur_L FROM _RefObjItem WHERE ID = @RefBootsLinkID)
    DECLARE @
DuraWeapon INT = (SELECT Dur_L FROM _RefObjItem WHERE ID = @RefWeaponLinkID)
    DECLARE @
DuraShield INT = (SELECT Dur_L FROM _RefObjItem WHERE ID = @RefShieldLinkID)

    -- 
Sequence begin
    BEGIN TRANSACTION

        
-- Clear inventory (Just equipped items) ;)
        PRINT 
'Removing equipped items...'
        
DECLARE @TSlots INT 0
        
DECLARE @CharSlot INT 0
        SELECT 
@TSlots COUNT(Slotfrom _Inventory WHERE CharID = @CharID
        
WHILE @CharSlot <= @TSlots
        BEGIN
            
IF (@CharSlot 13)
            
BEGIN
                EXEC 
[_STRG_DEL_ITEM_NoTX1, @CharID, @CharSlot
            END
            SET 
@CharSlot = @CharSlot 1
        END

        
-- Add new equipment to equipment slots
        
PRINT 'Adding new items...'
        
DECLARE @HelmItemID64 BIGINT 0
        
DECLARE @MailItemID64 BIGINT 0
        
DECLARE @ShoulderItemID64 BIGINT 0
        
DECLARE @GauntletItemID64 BIGINT 0
        
DECLARE @PantsItemID64 BIGINT 0
        
DECLARE @BootsItemID64 BIGINT 0

        
DECLARE @EarringItemID64 BIGINT 0
        
DECLARE @NecklaceItemID64 BIGINT 0
        
DECLARE @RingLItemID64 BIGINT 0
        
DECLARE @RingRItemID64 BIGINT 0

        
DECLARE @WeaponItemID64 BIGINT 0
        
DECLARE @ShieldItemID64 BIGINT 0

        
-- Helm
        EXEC 
@HelmItemID64 = [_FN_ADD_INITIAL_EQUIP] @CharID0, @RefHelmID, @DuraHelm
        
IF (@HelmItemID64 <= 0)
        
BEGIN
            
PRINT 'Problem when executing [_FN_ADD_INITIAL_EQUIP], canceling sequence and rolling back data...'
            
ROLLBACK TRANSACTION
            
RETURN -8
        END
        
PRINT '- Helm equipped.'

        
-- Chest
        EXEC 
@MailItemID64 = [_FN_ADD_INITIAL_EQUIP] @CharID1, @RefMailID, @DuraMail
        
IF (@MailItemID64 <= 0)
        
BEGIN
            
PRINT 'Problem when executing [_FN_ADD_INITIAL_EQUIP], canceling sequence and rolling back data...'
            
ROLLBACK TRANSACTION
            
RETURN -9
        END
        
PRINT '- Chest equipped.'

        
-- Shoulder
        EXEC 
@ShoulderItemID64 = [_FN_ADD_INITIAL_EQUIP] @CharID2, @RefShoulderID, @DuraShoulder
        
IF (@ShoulderItemID64 <= 0)
        
BEGIN
            
PRINT 'Problem when executing [_FN_ADD_INITIAL_EQUIP], canceling sequence and rolling back data...'
            
ROLLBACK TRANSACTION
            
RETURN -10
        END
        
PRINT '- Shoulder equipped.'

        
-- Gauntlet
        EXEC 
@GauntletItemID64 = [_FN_ADD_INITIAL_EQUIP] @CharID3, @RefGauntletID, @DuraGauntlet
        
IF (@GauntletItemID64 <= 0)
        
BEGIN
            
PRINT 'Problem when executing [_FN_ADD_INITIAL_EQUIP], canceling sequence and rolling back data...'
            
ROLLBACK TRANSACTION
            
RETURN -11
        END
        
PRINT '- Gauntlet equipped.'

        
-- Pants
        EXEC 
@PantsItemID64 = [_FN_ADD_INITIAL_EQUIP] @CharID4, @RefPantsID, @DuraPants
        
IF (@PantsItemID64 <= 0)
        
BEGIN
            
PRINT 'Problem when executing [_FN_ADD_INITIAL_EQUIP], canceling sequence and rolling back data...'
            
ROLLBACK TRANSACTION
            
RETURN -12
        END
        
PRINT '- Pants equipped.'

        
-- Boots
        EXEC 
@BootsItemID64 = [_FN_ADD_INITIAL_EQUIP] @CharID5, @RefBootsID, @DuraBoots
        
IF (@BootsItemID64 <= 0)
        
BEGIN
            
PRINT 'Problem when executing [_FN_ADD_INITIAL_EQUIP], canceling sequence and rolling back data...'
            
ROLLBACK TRANSACTION
            
RETURN -13
        END
        
PRINT '- Boots equipped.'

        
-- Earring
        EXEC 
@EarringItemID64 = [_FN_ADD_INITIAL_EQUIP] @CharID9, @RefEarringID0
        
IF (@EarringItemID64 <= 0)
        
BEGIN
            
PRINT 'Problem when executing [_FN_ADD_INITIAL_EQUIP], canceling sequence and rolling back data...'
            
ROLLBACK TRANSACTION
            
RETURN -14
        END
        
PRINT '- Earring equipped.'

        
-- Necklace
        EXEC 
@NecklaceItemID64 = [_FN_ADD_INITIAL_EQUIP] @CharID10, @RefNecklaceID0
        
IF (@NecklaceItemID64 <= 0)
        
BEGIN
            
PRINT 'Problem when executing [_FN_ADD_INITIAL_EQUIP], canceling sequence and rolling back data...'
            
ROLLBACK TRANSACTION
            
RETURN -15
        END
        
PRINT '- Necklace equipped.'

        
-- Left Ring
        EXEC 
@RingLItemID64 = [_FN_ADD_INITIAL_EQUIP] @CharID11, @RefRingID0
        
IF (@RingLItemID64 <= 0)
        
BEGIN
            
PRINT 'Problem when executing [_FN_ADD_INITIAL_EQUIP], canceling sequence and rolling back data...'
            
ROLLBACK TRANSACTION
            
RETURN -16
        END
        
PRINT '- Left Ring equipped.'

        
-- Right Ring
        EXEC 
@RingRItemID64 = [_FN_ADD_INITIAL_EQUIP] @CharID12, @RefRingID0
        
IF (@RingRItemID64 <= 0)
        
BEGIN
            
PRINT 'Problem when executing [_FN_ADD_INITIAL_EQUIP], canceling sequence and rolling back data...'
            
ROLLBACK TRANSACTION
            
RETURN -17
        END
        
PRINT '- Right Ring equipped.'

        
-- Weapon
        EXEC 
@WeaponItemID64 = [_FN_ADD_INITIAL_EQUIP] @CharID6, @RefWeaponID, @DuraWeapon
        
IF (@WeaponItemID64 <= 0)
        
BEGIN
            
PRINT 'Problem when executing [_FN_ADD_INITIAL_EQUIP], canceling sequence and rolling back data...'
            
ROLLBACK TRANSACTION
            
RETURN -18
        END
        
PRINT '- Weapon equipped.'

        
-- Shield
        
IF (@useShield 1)
        
BEGIN
            EXEC 
@ShieldItemID64 = [_FN_ADD_INITIAL_EQUIP] @CharID7, @RefShieldID, @DuraShield
            
IF (@ShieldItemID64 <= 0)
            
BEGIN
                
PRINT 'Problem when executing [_FN_ADD_INITIAL_EQUIP], canceling sequence and rolling back data...'
                
ROLLBACK TRANSACTION
                
RETURN -19
            END
            
PRINT '- Shield equipped.'
        
END

        
-- Make 100% and FB
        
-- Gears
        
PRINT 'Updating gear attributes to +' CAST(@EQPlus AS VARCHAR(2)) + ' FB (Str/Int 7, Parry 60%, Durability 200%)'
        
UPDATE _Items SET OptLevel = @EQPlusVariance 34359738336MagParamNum 4MagParam1 30064771144MagParam2 30064771150MagParam3 858993459290MagParam4 257698037898MagParam5 NULLMagParam6 NULLMagParam7 NULLMagParam8 NULLMagParam9 NULLMagParam10 NULLMagParam11 NULLMagParam12 NULL WHERE ID64 = @HelmItemID64 OR ID64 = @MailItemID64 OR ID64 = @ShoulderItemID64 OR ID64 = @GauntletItemID64 OR ID64 = @PantsItemID64 OR ID64 = @BootsItemID64
        
PRINT '- Adding extra blue attributes to Chest: HP recovery/MP recovery 210%'
        
UPDATE _Items SET MagParamNum 5MagParam5 901943132463 WHERE ID64 = @MailItemID64
        UPDATE _Items 
        SET MagParamNum 
7MagParam62576980377748MagParam7 2576980377760
         WHERE ID64 
= @MailItemID64 
        
--UPDATE _Items
        
--SET MagParamNum=7MagParam50MagParam62576980377748MagParam7 2576980377760
        
--WHERE ID64 = @HelmItemID64 OR ID64 = @PantsItemID64
        
-- Accessories
        
PRINT 'Updating accessory attributes to +' CAST(@EQPlus AS VARCHAR(2)) + ' FB (Str/Int 7, Freeze 20%, Electric Shock 20%, Burn 20%, Poison 20%, Zombie 20%)'
        
UPDATE _Items SET OptLevel = @EQPlusVariance 1073741823MagParamNum 7MagParam1 30064771144MagParam2 30064771150MagParam3 85899346100MagParam4 85899346094MagParam5 85899346088MagParam6 85899346106MagParam7 85899346112MagParam8 NULLMagParam9 NULLMagParam10 NULLMagParam11 NULLMagParam12 NULL WHERE ID64 = @EarringItemID64 OR ID64 = @NecklaceItemID64 OR ID64 = @RingLItemID64 OR ID64 = @RingRItemID64
        
PRINT '- Adding extra blue attributes to Earring: CombustionProbability 50% Reduce, SleepProbability 50% Reduce'
        
UPDATE _Items SET MagParamNum 9MagParam8 214748365115MagParam9 214748365139 WHERE ID64 = @EarringItemID64
        
PRINT '- Adding extra blue attributes to Necklace: StunProbability 50% Reduce'
        
UPDATE _Items SET MagParamNum 8MagParam8 47244640547 WHERE ID64 = @NecklaceItemID64
        
PRINT '- Adding extra blue attributes to Rings: DiseaseProbability 25% Reduce, FearProbability 25% Reduce'
        
UPDATE _Items SET MagParamNum 9MagParam8 107374182751MagParam9 107374182727  WHERE ID64 = @RingLItemID64 OR ID64 = @RingRItemID64

        
-- Weapon
        
PRINT 'Updating weapon attributes to +' CAST(@EQPlus AS VARCHAR(2)) + ' FB (Str/Int 7, Block 100, Attack Rate 60%, Durability 200%)'
        
UPDATE _Items SET OptLevel = @EQPlusVariance 34359738336MagParamNum 5MagParam1 30064771144MagParam2 30064771150MagParam3 858993459290MagParam4 429496729714MagParam5 257698037862MagParam6 NULLMagParam7 NULLMagParam8 NULLMagParam9 NULLMagParam10 NULLMagParam11 NULLMagParam12 NULL WHERE ID64 = @WeaponItemID64
        
PRINT '- Adding extra blue attributes to Weapon: Critical 3'
        
UPDATE _Items SET MagParamNum 6MagParam6 12884902155 WHERE ID64 = @WeaponItemID64

        
-- Shield
        
IF (@ShieldItemID64 IS NOT NULL AND @ShieldItemID64 0)
        
BEGIN
            
PRINT 'Updating shield attributes to +' CAST(@EQPlus AS VARCHAR(2)) + ' FB (Str/Int 7, Critical 100, Durability 200%)'
            
UPDATE _Items SET OptLevel = @EQPlusVariance 34359738336MagParamNum 4MagParam1 30064771144MagParam2 30064771150MagParam3 858993459290MagParam4 429496729726MagParam5 NULLMagParam6 NULLMagParam7 NULLMagParam8 NULLMagParam9 NULLMagParam10 NULLMagParam11 NULLMagParam12 NULL WHERE ID64 = @ShieldItemID64
        END

    COMMIT TRANSACTION
    
PRINT 'Sequence complete.'

RETURN 1
-- EOF 


توقيع Scrox :
عفوا ,,, لايمكنك مشاهده الروابط لانك غير مسجل لدينا [ للتسجيل اضغط هنا ]