Inventory Editlemek & Görmek[ResimLi Anlatım]

  • Konbuyu başlatan Konbuyu başlatan Metallica
  • Başlangıç tarihi Başlangıç tarihi
Konu Yazar

Metallica

Banlanmış
Kalemi Kırıldı!
May
30
1
Alıntıdır Enbaşta söyleyim =) Ama C/p Yaparkende Uğraştım xD


Resimli Anlatım Yaptım Bilmeyen Arkadaşlarımız İçin
Kodlar Matrix1536 Arkadaşımızındır!
Kodları Vereyim:

Kod:
[B]CREATE TABLE itemler
(dwid int,
   stacksize    smallint,  
   durability    smallint,  
   strUserId    varchar(50),  
   sira    int    ,
   itembasicname    varchar(100) , 
   extname    varchar(100) )[/B]

Kod:
--bu procedure Maktiris1536 tarafından eylenmiştir..


CREATE procedure itemleri_encode
@StrUserID varchar(30)
AS
DECLARE
@length int, -- stritem uzunluğu
@row int, -- yerine göre deişior.
@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
GO

Kod:
--bu procedure Maktiris1536 tarafından eylenmiştir..

CREATE procedure itemleri_bul 
@StrUserID varchar(30)
AS
DECLARE
@length int, -- stritem uzunluğu
@i int, -- item'in stritem deki yeri
@dwid int, 
@dur int,
@duar int,
@StackSize1 int,
@Sira int,
@Row int,
@name varchar(100),
@extname varchar(100),
@ext int


    set @i = 14*0+1
    set @length = 401

select @row=count(*) from userdata where struserid=@StrUserID

delete from itemler where struserid=@StrUserID

if @row>0 
  begin

WHILE @i < @length
Begin

Select @dwid=cast(cast(substring(cast(substring(strItem, @i,4) as varbinary(4)), 4, 1)+substring(cast(substring(strItem, @i,4) as varbinary(4)), 3, 1)+substring(cast(substring(strItem, @i,4) as varbinary(4)), 2, 1)+substring(cast(substring(strItem, @i,4) as varbinary(4)), 1, 1) as varbinary(4)) as int(4)),
@dur = cast(cast(cast( substring(strItem, @i+5, 1) as varbinary(1))+cast(substring(strItem, @i+4, 1) as varbinary(1)) as varbinary(2)) as smallint),
@StackSize1 = cast(cast(cast( substring(strItem, @i+7, 1) as varbinary(1))+cast(substring(strItem, @i+6, 1) as varbinary(1)) as varbinary(2)) as smallint),
        @StrUserID = strUserID
        From UserData
        Where strUserID = @StrUserID


if @dwid=0 
begin
set @extname='~~~~~~ item yok ~~~~~~'
set @name='~~~~~~ item yok ~~~~~~'
end
else
begin
set @extname='Bulunamadı'
set @name='Gerekli Değil'

select @extname=szname from item_basic where dwid=@dwid

if @extname='Bulunamadi' 
begin

set @ext=-1
set @name='Bulunamadı'

select @extname=szname,@ext=byextindex from item_basic where dwid= cast(substring(cast(@dwid as varchar(9)), 1, 6)+'000' as int(4)) --cast(substring(cast(@dwid as varbinary(4)),0,5) as int(4))*1000
if @ext>-1
begin
set @duar=-1
    If @ext = 0
        select @duar = siMaxDurability,@name=szheader  From itemext0 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 1
        select @duar = siMaxDurability,@name=szheader   from itemext1 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 2
        select @duar = siMaxDurability,@name=szheader   from itemext2 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 3
        select @duar = siMaxDurability,@name=szheader   from itemext3 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 4
        select @duar = siMaxDurability,@name=szheader   from itemext4 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 5
        select @duar = siMaxDurability,@name=szheader   from itemext5 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 6
        select @duar = siMaxDurability,@name=szheader   from itemext6 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 7
        select @duar = siMaxDurability,@name=szheader from itemext7 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 8
        select @duar = siMaxDurability,@name=szheader   from itemext8 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 9
        select @duar = siMaxDurability,@name=szheader   from itemext9 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 10
        select @duar = siMaxDurability,@name=szheader   from itemext10 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 11
        select @duar = siMaxDurability,@name=szheader    from itemext11 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 12
        select @duar = siMaxDurability,@name=szheader    from itemext12 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 13
        select @duar = siMaxDurability,@name=szheader    from itemext13 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 14
        select @duar = siMaxDurability,@name=szheader    from itemext14 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 15
        select @duar = siMaxDurability,@name=szheader    from itemext15 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 16
        select @duar = siMaxDurability,@name=szheader    from itemext16 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 17
        select @duar = siMaxDurability,@name=szheader    from itemext17 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 18
        select @duar = siMaxDurability,@name=szheader    from itemext18 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 19
        select @duar = siMaxDurability,@name=szheader    from itemext19 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 20
        select @duar = siMaxDurability,@name=szheader    from itemext20 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 21
        select @duar = siMaxDurability,@name=szheader    from itemext21 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 23
        select @duar = siMaxDurability,@name=szheader   from itemext23 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
end
end
end

insert into itemler (dwid,stacksize,durability,struserid,sira,itembasicname,extname) values(@dwid,@stacksize1,@dur,@StrUserID,(@i-1) / 8,@extname,@name )

set @i=@i+8

end
end
GO

Kod:
kupe 0
kafalık 1
kupe 2
boyunluk 3
govdelik 4
boş yer 5
silah 6
belt 7
silah 8
yuzuk 9
pantolon 10
yuzuk 11
ellik 12
ayaklık 13

Kod:
exec itemleri_bul 'charismi'

Kod:
[B]exec itemleri_encode 'charismi'[/B]

anlatm1gu1.jpg


anlatim2qc8.jpg


anlatim3ta6.jpg


anlatim4ca0.jpg


anlatim5bq3.jpg


anlatim7ck5.jpg


anlatim8ik3.jpg


anlatim81mt6.jpg


anlatm9jw5.jpg


anlatim10dy0.jpg


anlatim11kw3.jpg


anlatim12cv0.jpg


anlatim13rq7.jpg


anlatim14xj2.jpg


anlatim15kf1.jpg

Kod:
CREATE TABLE itemler
(dwid int,
   stacksize    smallint,  
   durability    smallint,  
   strUserId    varchar(50),  
   sira    int    ,
   itembasicname    varchar(100) , 
   extname    varchar(100) )
--bu procedure Maktiris1536 tarafından eylenmiştir..


CREATE procedure itemleri_encode
@StrUserID varchar(30)
AS
DECLARE
@length int, -- stritem uzunluğu
@row int, -- yerine göre deişior.
@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
GO
Kod:
--bu procedure Maktiris1536 tarafından eylenmiştir..

CREATE procedure itemleri_bul 
@StrUserID varchar(30)
AS
DECLARE
@length int, -- stritem uzunluğu
@i int, -- item'in stritem deki yeri
@dwid int, 
@dur int,
@duar int,
@StackSize1 int,
@Sira int,
@Row int,
@name varchar(100),
@extname varchar(100),
@ext int


    set @i = 14*0+1
    set @length = 401

select @row=count(*) from userdata where struserid=@StrUserID

delete from itemler where struserid=@StrUserID

if @row>0 
  begin

WHILE @i < @length
Begin

Select @dwid=cast(cast(substring(cast(substring(strItem, @i,4) as varbinary(4)), 4, 1)+substring(cast(substring(strItem, @i,4) as varbinary(4)), 3, 1)+substring(cast(substring(strItem, @i,4) as varbinary(4)), 2, 1)+substring(cast(substring(strItem, @i,4) as varbinary(4)), 1, 1) as varbinary(4)) as int(4)),
@dur = cast(cast(cast( substring(strItem, @i+5, 1) as varbinary(1))+cast(substring(strItem, @i+4, 1) as varbinary(1)) as varbinary(2)) as smallint),
@StackSize1 = cast(cast(cast( substring(strItem, @i+7, 1) as varbinary(1))+cast(substring(strItem, @i+6, 1) as varbinary(1)) as varbinary(2)) as smallint),
        @StrUserID = strUserID
        From UserData
        Where strUserID = @StrUserID


if @dwid=0 
begin
set @extname='~~~~~~ item yok ~~~~~~'
set @name='~~~~~~ item yok ~~~~~~'
end
else
begin
set @extname='Bulunamadı'
set @name='Gerekli Değil'

select @extname=szname from item_basic where dwid=@dwid

if @extname='Bulunamadi' 
begin

set @ext=-1
set @name='Bulunamadı'

select @extname=szname,@ext=byextindex from item_basic where dwid= cast(substring(cast(@dwid as varchar(9)), 1, 6)+'000' as int(4)) --cast(substring(cast(@dwid as varbinary(4)),0,5) as int(4))*1000
if @ext>-1
begin
set @duar=-1
    If @ext = 0
        select @duar = siMaxDurability,@name=szheader  From itemext0 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 1
        select @duar = siMaxDurability,@name=szheader   from itemext1 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 2
        select @duar = siMaxDurability,@name=szheader   from itemext2 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 3
        select @duar = siMaxDurability,@name=szheader   from itemext3 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 4
        select @duar = siMaxDurability,@name=szheader   from itemext4 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 5
        select @duar = siMaxDurability,@name=szheader   from itemext5 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 6
        select @duar = siMaxDurability,@name=szheader   from itemext6 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 7
        select @duar = siMaxDurability,@name=szheader from itemext7 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 8
        select @duar = siMaxDurability,@name=szheader   from itemext8 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 9
        select @duar = siMaxDurability,@name=szheader   from itemext9 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 10
        select @duar = siMaxDurability,@name=szheader   from itemext10 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 11
        select @duar = siMaxDurability,@name=szheader    from itemext11 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 12
        select @duar = siMaxDurability,@name=szheader    from itemext12 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 13
        select @duar = siMaxDurability,@name=szheader    from itemext13 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 14
        select @duar = siMaxDurability,@name=szheader    from itemext14 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 15
        select @duar = siMaxDurability,@name=szheader    from itemext15 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 16
        select @duar = siMaxDurability,@name=szheader    from itemext16 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 17
        select @duar = siMaxDurability,@name=szheader    from itemext17 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 18
        select @duar = siMaxDurability,@name=szheader    from itemext18 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 19
        select @duar = siMaxDurability,@name=szheader    from itemext19 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 20
        select @duar = siMaxDurability,@name=szheader    from itemext20 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 21
        select @duar = siMaxDurability,@name=szheader    from itemext21 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
    If @ext = 23
        select @duar = siMaxDurability,@name=szheader   from itemext23 where dwid = cast(substring(cast(@dwid as varchar(9)), 7, 9) as int(4))
end
end
end

insert into itemler (dwid,stacksize,durability,struserid,sira,itembasicname,extname) values(@dwid,@stacksize1,@dur,@StrUserID,(@i-1) / 8,@extname,@name )

set @i=@i+8

end
end
GO
Kod:
kupe 0
kafalık 1
kupe 2
boyunluk 3
govdelik 4
boş yer 5
silah 6
belt 7
silah 8
yuzuk 9
pantolon 10
yuzuk 11
ellik 12
ayaklık 13
Kod:
exec itemleri_bul 'charismi'
Kod:
exec itemleri_encode 'charismi'

 
Cevap: Inventory Editlemek & Görmek[ResimLi Anlatım]

çok karışık olmuş :) ben şöyle yapıyorum.
item_bul ve item_encode presedürleri var :)
item_bul=a_a
item_encoede=a_c yaptım :)

daha sonra query analyzerden EXEC a_a 'nick'

itemler tablesinde ayarlarımı yapıp EXEC a_c 'nick' f5 :) bu daha basit
 
Cevap: Inventory Editlemek & Görmek[ResimLi Anlatım]

Ellerine Saglık Böyle Konu Acın İste Kopyala Yapıstır Yaptıysan Bile Bir Katkın Olsun Matrix1536 alper Alınma Ama Böyle Daha İyi:D Sen Herkesi Senin Gibi Sanma:) Bilmiyenler Burdan Yapar İns
 
Cevap: Inventory Editlemek & Görmek[ResimLi Anlatım]

çift el silah takmak için cok uzundan gidionuz yav cok basit bişi var prodecureleri ekle itemler tablesini olustur queryden exec itemeri_bul 'isim' sonra 6 sağ 7 sol el sonra queryden exec itemleri_encode 'isim' bu kadar :D a_c a_a ne bu böle cok uzun :D
 
Cevap: Inventory Editlemek & Görmek[ResimLi Anlatım]

teşekkürler..
 
Geri
Üst Alt