niemily
Administrator
Dołączył: 05 Cze 2006
Posty: 31
Przeczytał: 0 tematów
Ostrzeżeń: 0/5
Skąd: WaSiLqW
|
Wysłany: Wto 11:48, 04 Lip 2006 Temat postu: Wykrywacz itemów2 |
|
|
A już teraz podobny artykuł do tego o nazwie "wykrywacz itemów" tyle że troszkę inny ale prawie ten sam.
Skrypt ten wyszukuje itemki dodane przez Mueditor czyli te z serialem 0x000... [itd]
Start - Programy - Microsoft SQL Server - Query Analizer
Database wybieramy jak zwykle "MuOnline"
Czas na skrypty szukające!
Skrypt który przeszuka wszystkie Inventory:
DECLARE @Acc varchar(10), @Inv BINARY(760), @ItemSerial BINARY(3), @Item BINARY(10), @cnt INTEGER
DECLARE LISTA CURSOR LOCAL FOR
SELECT Name FROM Character
OPEN LISTA
FETCH NEXT FROM LISTA INTO @Acc
WHILE @@FETCH_STATUS = 0
BEGIN
SET @Inv = (SELECT Inventory FROM [Character] WHERE (Name=@Acc))
SET @cnt = 1
WHILE (@cnt <= (LEN(@Inv)/2))
BEGIN
SET @Item = SUBSTRING(@Inv,@cnt,10)
SET @ItemSerial = SUBSTRING(@Item,5,3)
IF (@ItemSerial = 0x000000)
BEGIN
print 'Yep! We got a 0x0 serial!'
print 'CharName: '+@Acc
print 'Item: '; print @Item
print '--------------------------'
END
SET @cnt = @cnt + 10
END
FETCH NEXT FROM LISTA INTO @Acc
END
CLOSE LISTA
DEALLOCATE LISTA
Oraz skrypt który przeszuka wszystkie Valuty:
DECLARE @Acc varchar(10), @Inv BINARY(1200), @ItemSerial BINARY(3), @Item BINARY(10), @cnt INTEGER
DECLARE LISTA CURSOR LOCAL FOR
SELECT AccountID FROM warehouse
OPEN LISTA
FETCH NEXT FROM LISTA INTO @Acc
WHILE @@FETCH_STATUS = 0
BEGIN
SET @Inv = (SELECT items FROM [warehouse] WHERE (AccountID=@Acc))
SET @cnt = 1
WHILE (@cnt <= (LEN(@Inv)/2))
BEGIN
SET @Item = SUBSTRING(@Inv,@cnt,10)
SET @ItemSerial = SUBSTRING(@Item,5,3)
IF (@ItemSerial = 0x000000)
BEGIN
print 'Yep! We got a 0x0 serial!'
print 'Account: '+@Acc
print 'Item: '; print @Item
print '--------------------------'
END
SET @cnt = @cnt + 10
END
FETCH NEXT FROM LISTA INTO @Acc
END
CLOSE LISTA
DEALLOCATE LISTA
Wciskamy F5 i mamy wszystko ładnie wypisane.
Gdy już skończymy zabawę wychodzimy z Query Analizer'a i nie zapisujemy zmian.
To tyle ...
Post został pochwalony 0 razy
|
|