Register for your free account! | Forgot your password?

You last visited: Today at 00:19

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[FIXED] Item Bug

Discussion on [FIXED] Item Bug within the SRO Private Server forum part of the Silkroad Online category.

Reply
 
Old   #1
 
badibatu22's Avatar
 
elite*gold: 0
Join Date: Dec 2009
Posts: 594
Received Thanks: 358
[FIXED] Item Bug

Credits goes to :

SRO_VT_SHARD_INIT/Programmability/stored procedures/_STRG_DEL_ITEM_NoTX

Right Click and Modify _STRG_DEL_ITEM_NoTX



and u can see there is a problem on '' itemToDel ''

just change it to ''ItemToDel''

omg finally yea
badibatu22 is offline  
Thanks
2 Users
Old   #2
 
elite*gold: 0
Join Date: Sep 2009
Posts: 137
Received Thanks: 14
This solution works thanks
alger is offline  
Old   #3
 
badibatu22's Avatar
 
elite*gold: 0
Join Date: Dec 2009
Posts: 594
Received Thanks: 358
bump
badibatu22 is offline  
Old   #4
 
elite*gold: 0
Join Date: Aug 2009
Posts: 671
Received Thanks: 288
Quote:
Originally Posted by badibatu22 View Post
bump
Bump :P

Ben paylaşcaktım sen hızlı davrandın
LegendM is offline  
Thanks
1 User
Old   #5
 
elite*gold: 0
Join Date: May 2010
Posts: 79
Received Thanks: 6
PHP Code:
USE [SRO_VT_SHARD_INIT]
GO
/****** Object:  StoredProcedure [dbo].[_STRG_DEL_ITEM_NoTX]    Script Date: 09/24/2011 21:07:01 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO





ALTER procedure 
[dbo].[_STRG_DEL_ITEM_NoTX]
@
DelFromPC_Inv    AS TINYINT,
@
CharID            AS BIGINT,  -- 매직 큐브 추가로 인해 확장
@Slot            AS TINYINT

as
    declare @
Rvalue int
    
declare @ItemToDel bigint
    
    
if (@DelFromPC_Inv = 1)
        
select @ItemToDel = ItemID FROM _Inventory WHERE CharID = @CharID AND Slot = @Slot
    
else if ( @DelFromPC_Inv = 2 )
        
select @ItemToDel = ItemID FROM _InventoryForLinkedStorage WHERE LinkedItemID = @CharID AND Slot = @Slot
    
else
        
select @ItemToDel = ItemID FROM _InvCOS WHERE COSID = @CharID AND Slot = @Slot        
    
    
if (@ItemToDel IS NULL or @ItemToDel = 0)
        return -
1

    
----------------------------------------
    -- 
졸라 이 아래쪽 순전히 펫 소환아이템 때문에 
    
-- 들어간 코드이다. 분명 overhead이긴 하지만
    
-- _STRG_DEL_ITEM 의 신뢰도와 게임�*버 코드 복잡도
    
-- 증가를 유발하지 않기 위해 어쩔 수 없는 판단이었다. T_T
    
----------------------------------------
    declare @
BoundCOS int
    
declare @RefItemID int
    select 
@RefItemID = RefItemID, @BoundCOS = Data from _Items where ID64 = @ItemToDel
    
if (@@ROWCOUNT = 0)
        return -
2

    
----------------------------------------
    -- 
혹시 이눔 PET 소환아이템인가?
    ----------------------------------------
    declare @
TypeID1 tinyint
    
declare @TypeID2 tinyint
    
declare @TypeID3 tinyint
    select 
@TypeID1 = TypeID1, @TypeID2 = TypeID2, @TypeID3 = TypeID3 from _RefObjCommon where ID = @RefItemID
    
if (@TypeID1 = 3 and @TypeID2 = 2 and @TypeID3 = 1 )
    
begin
        
----------------------------------------
        -- 
엮여있는 PET 이 있으면 그넘 삭제
        
----------------------------------------
        if (@
BoundCOS <> 0)    
        
begin
            exec 
@Rvalue = _DeleteCharCOS_NoTX @BoundCOS
            
if (@Rvalue < 0)
                return @
Rvalue
        end
    end

    
----------------------------------------          
    -- 
혹시 이눔 LinkedStorage아이템인가?          
    ----------------------------------------          
    else if( @
TypeID1 = 3 and @TypeID2 = 2 and @TypeID3 = 3 )          
    
begin        
        
----------------------------------------          
        -- 
엮여있는 Storage 있으면 그넘 삭제          
        
----------------------------------------          
        if (@
BoundCOS <> 0)           
        
begin          
            
IF( NOT EXISTS( select LinkedItemID from _InventoryForLinkedStorage where LinkedItemID = @ItemToDel ) )        
            
BEGIN return -1000 END        
            
IF( EXISTS( select top 1 ItemID from _InventoryForLinkedStorage where LinkedItemID = @ItemToDel and ItemID <> 0 and ItemID IS NOT NULL  ) )        
            
BEGIN        
                update _ItemPool Set InUse 
= 0 from _ItemPool as IP join _InventoryForLinkedStorage as IFLS on IP.ItemID = IFLS.ItemID        
                where IFLS
.LinkedItemID = @ItemToDel AND IFLS.ItemID <> 0        
            END        
            DELETE FROM _InventoryForLinkedStorage where LinkedItemID 
= @ItemToDel        
            
IF( @@ERROR <> 0 )        
            
BEGIN return -2 END         
        end          
    end


    
----------------------------------------------------------
    -- 
슬롯 비우기
    
----------------------------------------------------------    
    if (@
DelFromPC_Inv = 1 )
        
update _Inventory SET ItemID = 0 WHERE CharID = @CharID AND Slot = @Slot
    
else if (@DelFromPC_Inv = 2 )
        
update _InventoryForLinkedStorage SET ItemID = 0 WHERE LinkedItemID = @CharID AND Slot = @Slot
    
else
        
update _InvCOS SET ItemID = 0 WHERE COSID = @CharID AND Slot = @Slot

    
if (@@error <> 0 OR @@rowcount = 0)
        return -
3

    
----------------------------------------------------------  
    -- 
삭제 대상 아이템에 �*인 임대 정보 삭제
    
----------------------------------------------------------  
    if 
exists (select 1 from _RentItemInfo with (nolock) where nItemDBID = @ItemToDel)
    
begin
        delete from _RentItemInfo where nItemDBID 
= @ItemToDel
        
if (@@ERROR <> 0 OR @@ROWCOUNT = 0)
        
begin
            rollback transaction
            
return -6
        end
    end

    
----------------------------------------------------------
    -- 
해당 아이템 삭제 
    
----------------------------------------------------------
    
exec @Rvalue = _STRG_FREE_ITEM_NoTX  @ItemToDel
    
if (@Rvalue < 0)
        return -
4

    
return 1 
polat2587 is offline  
Old   #6
 
Darkness�'s Avatar
 
elite*gold: 0
Join Date: Jun 2009
Posts: 2,085
Received Thanks: 1,669
which item bug ?

i don't has any item bug or smth like that.
Darkness� is offline  
Reply


Similar Threads Similar Threads
How do you make an item fixed?
07/14/2006 - Conquer Online 2 - 11 Replies
I see fixed equip in the market all the time. How would I make my own fixed stuff?



All times are GMT +1. The time now is 00:19.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.