Solo usuarios registrados pueden comentar y agradecer, Logueate o Registrate

Autor Topic: Script para localizar items  (Visto 3508 veces)

0 Miembros and 1 Guest are viewing this topic.

Online ZabiinoOo Posteado: December 08, 2017, 02:34:01 PM

  • MAESTRO

  • US. DE HONOR

  • LEYENDA

  • Administrador
  • 0 puntos por ventas
  • *
  • Rank: Puto amo
  • Posts: 7.311
  • Gracias recibida: 125965
  • pe
Hola amigos aqui les dejo este script para localizar items en especificos colocando grupo al que pertenece y numero del item.

Code: [Select]
Ejemplo:

Battle Scepter
GRUPO 2
ITEM 8

Funciona en versiones season4 o mayores

Code: [Select]
DECLARE
@acid varchar(10),
@name varchar(10),
@inv_data binary(3792),
@ware_data binary(3840),
@type binary(1),
@group binary(1),
@grupo int,
@item int,
@count int

-- Coloque o grupo e nĂºmero do item que deseja procura
set @grupo    = 0;
set @item    = 2;

print '-------------------------';
print 'ENCONTRADO NO INVENTORIO:';
print '-------------------------';

DECLARE LISTA CURSOR LOCAL FOR
SELECT inventory, name, AccountID FROM Character
OPEN LISTA
FETCH NEXT FROM LISTA INTO @inv_data, @name, @acid
WHILE @@FETCH_STATUS = 0
BEGIN

SET @count=0

WHILE @count<237 AND @inv_data IS NOT NULL
BEGIN
SET @type    =SUBSTRING(@inv_data,@count*16+1,2)
SET @group    =SUBSTRING(@inv_data,@count*16+10,2)

IF (@type = (SELECT CONVERT(varbinary(1), @item)) AND @group = (SELECT CONVERT(varbinary(1), (@grupo*16))))
  BEGIN
    print 'Conta: ' + @acid + ' Personagem: ' +  @name;
    SET @count=237;
  END

SET @count=@count+1

END

FETCH NEXT FROM LISTA INTO @inv_data, @name, @acid
END
CLOSE LISTA
DEALLOCATE LISTA

print '------------------';
print 'ENCONTRADO NO BAU:';
print '------------------';

DECLARE LISTA CURSOR LOCAL FOR
SELECT items, AccountID FROM warehouse
OPEN LISTA
FETCH NEXT FROM LISTA INTO @ware_data, @acid
WHILE @@FETCH_STATUS = 0
BEGIN

SET @count=0

WHILE @count<240 AND @ware_data IS NOT NULL
BEGIN
SET @type    =SUBSTRING(@ware_data,@count*16+1,2)
SET @group    =SUBSTRING(@ware_data,@count*16+10,2)

IF (@type = (SELECT CONVERT(varbinary(1), @item)) AND @group = (SELECT CONVERT(varbinary(1), (@grupo*16))))
  BEGIN
    print 'Conta: ' + @acid;
    SET @count=240;
  END

SET @count=@count+1

END

FETCH NEXT FROM LISTA INTO @ware_data, @acid
END
CLOSE LISTA
DEALLOCATE LISTA




Prohibido pedir soporte via MP
Leer las reglas de cada seccion
we trust god

Gracias:


Offline Ratablanca #1 Posteado: March 23, 2022, 08:50:36 PM

  • 0 puntos por ventas
  • *
  • Rank: Usuario activo
  • Posts: 66
  • Gracias recibida: 18
  • ar
Nadie respondio aca y se q pasaron mas de 30 dias, pero muchas gracias hermano! Pedazo de query, la estaba por armar y dije.. la voy a buscar por las dudas alguien se haya copado.. y funciona a la perfeccion


Solo usuarios registrados pueden comentar y agradecer, Logueate o Registrate


 

Related Topics

  Subject / Started by Replies Last post
9 Replies
3335 Views
Last post April 06, 2017, 12:52:42 PM
by jigokush
6 Replies
1457 Views
Last post April 19, 2020, 12:50:27 AM
by cufa1
6 Replies
4705 Views
Last post August 14, 2022, 10:01:45 PM
by Shrimp
2 Replies
1875 Views
Last post March 27, 2023, 12:39:37 PM
by CAPITOL
2 Replies
1599 Views
Last post November 30, 2023, 03:45:50 PM
by sonytfm