- CREATE procedure ITEMLERI_ENCODE
- @StrUserID varchar(30)
- AS
- -- By exselansTR | HepGeL.CoM
- DECLARE
- @length int, -- stritem uzunlugu
- @row int, -- yerine göre deisior.
- @i int, -- item'in stritem deki yeri
- @dwid int, -- dwid
- @pos int,
- @dur int,
- @dur1 int,
- @ext int,
- @StackSize1 int,
- @strName varchar(30),
- @strExtName varchar(30),
- @Cdwid varbinary(4),
- @cdur varchar(2),
- @Source tinyint,
- @NEWdwid int,
- @StackSize int,
- @cstack varchar(2),
- @sira int
- set @sira=0
- set @i = 14*0
- set @length = 401
- select @row=count( * ) from userdata where struserid=@StrUserID
- if @row>0
- begin
- Select @dwid=dwid,
- @dur = durability,
- @StackSize1 = stacksize,
- @StrUserID = strUserID
- From itemler
- Where strUserID = @StrUserID and sira=@sira
- Set @Cdwid = Substring(cast(@dwid as varbinary(4)), 4, 1) + Substring(cast(@dwid as varbinary(4)), 3, 1) +
- Substring(cast(@dwid as varbinary(4)), 2, 1) + Substring(cast(@dwid as varbinary(4)), 1, 1)
- Set @Cdur = cast(Substring(cast(@dur as varbinary(2)), 2, 1)+Substring(cast(@dur as varbinary(2)), 1, 1) as
- varchar(2))
- Set @Cstack = cast(Substring(cast(@StackSize1 as varbinary(2)), 2, 1)+Substring(cast(@StackSize1 as
- varbinary(2)), 1, 1) as varchar(2))
- update UserData set strItem = cast(cast(cast(@Cdwid as varchar(4)) + @Cdur + @Cstack as varchar(8)) as
- binary(400)) where strUserID = @strUserID
- set @i=@i+8
- set @sira=@sira+1
- WHILE @sira < 50
- Begin
- Select @dwid=dwid,
- @dur = durability,
- @StackSize1 = stacksize,
- @StrUserID = strUserID
- From itemler
- Where strUserID = @StrUserID and sira=@sira
- Set @Cdwid = Substring(cast(@dwid as varbinary(4)), 4, 1) + Substring(cast(@dwid as varbinary(4)), 3, 1) +
- Substring(cast(@dwid as varbinary(4)), 2, 1) + Substring(cast(@dwid as varbinary(4)), 1, 1)
- Set @Cdur = cast(Substring(cast(@dur as varbinary(2)), 2, 1)+Substring(cast(@dur as varbinary(2)), 1, 1) as
- varchar(2))
- Set @Cstack = cast(Substring(cast(@StackSize1 as varbinary(2)), 2, 1)+Substring(cast(@StackSize1 as
- varbinary(2)), 1, 1) as varchar(2))
- update UserData set strItem = cast( substring(strItem, 1, @i) + cast(cast(@Cdwid as varchar(4)) + @Cdur +
- @Cstack as varchar(8)) + substring(strItem, @i+8, 401-@i) as binary(400)) where strUserID = @strUserID
- set @i=@i+8
- set @sira=@sira+1
- end
- end
- delete from itemler
- GO
复制代码 |