الموضوع: ModelSwitch
عرض مشاركة واحدة
قديم 12-11-2017, 04:57 PM   #2

Neoon
عضو فضى



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


• الانـتـسـاب » Mar 2015
• رقـم العـضـويـة » 121247
• المشـــاركـات » 3,301
• الـدولـة » مصر
• الـهـوايـة » ذكر الله ~ لا اله الا الله ~
• اسـم الـسـيـرفـر » No Server
• الـجـنـس » Male
• نقـاط التقييم » 98
Neoon جـيـد

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



افتراضي رد: ModelSwitch!!!!!!!!!!!



كود PHP:
USE [SRO_VT_SHARDLOG]
GO
/****** Object:  StoredProcedure [dbo].[_AddLogItem]    Script Date: 10/30/2017 2:55:41 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO


-------------------------------------------------------------------------------------------------------------------
-- 
Step 2
-- ±âأپ¸ ¾أ†أ€أŒأ…أ› ·أژ±× أ€أ”·أ‚ Stored procedure ¼أ¶أپ¤
-- DataBase            : Shard Log  
ALTER  procedure 
[dbo].[_AddLogItem]  
  @
CharID  int,  
  @
ItemRefID int,  
  @
ItemSerial bigint,  
  @
dwData int,  
  @
TargetStorage tinyint,  
  @
Operation tinyint,  
  @
Slot_From tinyint,  
  @
Slot_To tinyint,  
  @
EventPos varchar(64),  
  @
strDesc varchar(128),
  @
Gold        bigint            -- #ifdef EXTEND_GOLD_TYPE »أ°أ€أ”   
  
as  
   declare @
len_pos int  
   
declare @len_desc int  
    
       set 
@len_pos = len(@EventPos)  
   
set @len_desc = len(@strDesc)  
   if (@
len_pos > 0 and @len_desc > 0)  
   
begin  
            insert _LogEventItem 
(EventTime, CharID, ItemRefID, dwData, TargetStorage, Operation, Slot_From, Slot_To, EventPos, strDesc, Serial64, Gold)    -- #ifdef EXTEND_GOLD_TYPE ±³أƒ¼
            
values(GetDate(), @CharID, @ItemRefID, @dwData, @TargetStorage, @Operation, @Slot_From, @Slot_To, @EventPos, @strDesc, @ItemSerial, @Gold)        -- #ifdef EXTEND_GOLD_TYPE ±³أƒ¼
   
end  
   
else if (@len_pos > 0 and @len_desc = 0)  
   
begin  
            insert _LogEventItem 
(EventTime, CharID, ItemRefID, dwData, TargetStorage, Operation, Slot_From, Slot_To, EventPos, Serial64, Gold)            -- #ifdef EXTEND_GOLD_TYPE ±³أƒ¼
            
values(GetDate(), @CharID, @ItemRefID, @dwData, @TargetStorage, @Operation, @Slot_From, @Slot_To, @EventPos, @ItemSerial, @Gold)                -- #ifdef EXTEND_GOLD_TYPE ±³أƒ¼ 
   
end  
   
else if (@len_pos = 0 and @len_desc > 0)  
   
begin  
            insert _LogEventItem 
(EventTime, CharID, ItemRefID, dwData, TargetStorage, Operation, Slot_From, Slot_To, strDesc, Serial64, Gold)            -- #ifdef EXTEND_GOLD_TYPE ±³أƒ¼
            
values(GetDate(), @CharID, @ItemRefID, @dwData, @TargetStorage, @Operation, @Slot_From, @Slot_To, @strDesc, @ItemSerial, @Gold)                    -- #ifdef EXTEND_GOLD_TYPE ±³أƒ¼ 
   
end  
   
else if (@len_pos = 0 and @len_desc = 0)  
   
begin  
            insert _LogEventItem 
(EventTime, CharID, ItemRefID, dwData, TargetStorage, Operation, Slot_From, Slot_To, Serial64, Gold)                        -- #ifdef EXTEND_GOLD_TYPE ±³أƒ¼
            
values(GetDate(), @CharID, @ItemRefID, @dwData, @TargetStorage, @Operation, @Slot_From, @Slot_To, @ItemSerial, @Gold)                            -- #ifdef EXTEND_GOLD_TYPE ±³أƒ¼
   
end  
   
-- أ€¯·أ، ¾أ†أ€أŒأ…أ› ±¸أ€أ”أ€أŒ¸é!  
   -- 
#define LOG_ITEMEVENT_BUY_CASHITEM  (BYTE)35  
   
   
IF (@Operation = 41) 
BEGIN 
    
IF (@ItemRefID = 2128) -- Bandit den return scroll (ITEM_ETC_SCROLL_RETURN_THIEFDEN_01), will work only when MaxStack is 1 
    BEGIN 
        
/* 
         * Get latest region of character 
         */ 
        
DECLARE @IsBattleField BIT 
        SELECT 
@IsBattleField = IsBattleField 
            FROM 
[SRO_VT_SHARD].[dbo].[_Char] 
            
INNER JOIN [SRO_VT_SHARD].[dbo].[_RefRegion] 
            
ON [SRO_VT_SHARD].[dbo].[_Char].LatestRegion = [SRO_VT_SHARD].[dbo].[_RefRegion].wRegionID 
            WHERE 
[SRO_VT_SHARD].[dbo].[_Char].CharID = @CharID 
        
/* 
         * Scroll is used inside town 
         */ 
        
IF (@IsBattleField = 0) 
        
BEGIN 
            
DECLARE @COSID BIGINT 
            
DECLARE @ReFCharID INT 
            
DECLARE @TypeID4 INT 
            
/* 
             * Get any summoned COS by current character 
             * 
             * It's actually fine not to use CURSOR, so far I noticed that any summoned COS 
             * won't set "OwnerCharID", except for transport COS. 
             * But just to be sure, I put CURSOR in use. 
             */ 
            
SET NOCOUNT ON; 
            DECLARE 
CurCOS CURSOR FOR SELECT ID, RefCharID FROM [SRO_VT_SHARD].[dbo].[_CharCOS] WHERE OwnerCharID = @CharID ORDER BY ID ASC; 
            
OPEN CurCOS; 
            
FETCH NEXT FROM CurCOS INTO @COSID, @ReFCharID; 
            WHILE @@
FETCH_STATUS = 0 
            BEGIN 
                SELECT 
@TypeID4 = TypeID4 FROM [SRO_VT_SHARD].[dbo].[_RefObjCommon] WHERE ID = @ReFCharID 
                
/* 
                 * If current COS is a transport COS, erase all items 
                 * TypeID4 = 2 = Transport COS 
                 */ 
                
IF (@TypeID4 = 2) 
                
BEGIN 
                    UPDATE 
[SRO_VT_SHARD].[dbo].[_InvCOS] SET ItemID = 0 WHERE COSID = @COSID 
                END 
                FETCH NEXT FROM CurCOS INTO 
@COSID, @ReFCharID; 
            
END; 
            
CLOSE CurCOS; 
            
DEALLOCATE CurCOS; 
        
END 
    END 
END  

   
if (@Operation = 35)  
   
begin  
    insert _LogCashItem 
(RefItemID, CharID, Cnt, EventTime, Serial64)  
    
values(@ItemRefID, @CharID, @dwData, GetDate(), @ItemSerial)  
   
end
   
declare @CharName varchar(64)
   
set @CharName = (select CharName16 from [SRO_VT_SHARD].dbo._Char where CharID = @CharID )
   declare @
CharType int
  set 
@CharType = (select RefObjID from [SRO_VT_SHARD].dbo._Char where CharID = @CharID )

  
/*Mod Switcher*/ 
  
IF @ItemRefID BETWEEN '63630' and '63641' AND @Operation = '41' 
  
BEGIN EXEC [SRO_VT_SHARDLOG].dbo._ModelSwitcher @CharId, @ItemRefID  
  END 


توقيع Neoon :
جميع مواضيعي هنا







سبحان الله وبحمده
لا اله الا الله محمد رسول الله
الله اكبر - ماشاء الله
اللهم ارزقنا حسن الخاتمة
اللهم انك عفو كريم تحب العفو فأعف عنا
اللهم صل وسلم على سيدنا محمد

[ اسماء الله الحسنى ]



قال رسول الله صلى الله عليه وسلم
إن لله تسعة وتسعين اسما ، مائة إلا واحدا ، من أحصاها دخل الجنة
[/CENTER]


رد مع اقتباس