T0E T0E  • 28.09.17 18:37

[TUTORIAL] [FIX] Pesquisa no catálogo funcionando corretamente em PRODUCTIONS antigas Empty [TUTORIAL] [FIX] Pesquisa no catálogo funcionando corretamente em PRODUCTIONS antigas 28.09.17 18:37

Oi,

Hoje, estarei lançando uma correção na funcionalidade da pesquisa no catálogo.

Você pode atualizar sua PRODUCTION para a versão mais recente ou aplicar essa correção. Você decide!

Aqui está um GIF que demonstra um catálogo com pesquisa quebrada:

[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]

Veja isso? Em vez de obter o mobi vermelho, está me mostrando, todas as cores de bloco de tijolos e raros de cores diferentes? Eu também não posso procurar mobílias individuais como o "Porch" da seção do Halloween 2010.

Para corrigir isso, você precisará usar JPEXS Free Flash Decomplier. Você pode baixá-lo acessando [Tens de ter uma conta e sessão iniciada para poderes visualizar este link] se você não possui o programa. Você pode usar outros decompiladores para aplicar a correção (se eles funcionam).

Avançemos com o ActionScripts depois de ter aberto sua Habbo.swf com o JPEXS. No script HabboCatalog, procure por:

Código:
this.localization.registerParameter("catalog.search.results", "count", k.length.toString());
this.localization.registerParameter("catalog.search.results", "needle", _arg1);

Ao encontrar esse código deve ver uma função privada como essa:

Código:
private function _-3sq(_arg1:String):void
        {
            var k:_-61k;
            var k:String;
            var _local7:Vector.<_-0Qi>;
            var _local8:Vector.<_-0Qi>;
            if (this._-1zq){
                this._-1zq.stop();
            };
            if ((((((this._-g0 == null)) || ((_arg1 == null)))) || ((_arg1.length == 0)))){
                return;
            };
            var k:Array = [];
            var k:Vector.<_-61k> = new <_-61k>[];
            var k:String = _arg1.toLowerCase().replace(" ", "");
            for each (k in this._-g0) {
                if ((((this._-6fK == _-6eh.BUILDER)) && (!(k._-4wY)))){
                } else {
                    if ((((this._-6fK == _-6eh.NORMAL)) && (k._-3vw))){
                    } else {
                        k = [k._-1cw, k.description, k._-2u5].join(" ");
                        k = k.replace(/ /gi, "");
                        if ((((((this._-6fK == _-6eh.BUILDER)) && ((k._-3Bt == _-4kY)))) && ((k._-6fb == _-4kY)))){
                            if (((!((k._-b4 == ""))) && ((k.indexOf(k._-b4) < 0)))){
                                if (k.indexOf(k) >= 0){
                                    k.push(k._-b4);
                                };
                            };
                        } else {
                            _local7 = this._-2PA._-2GU(k._-3Bt, true);
                            _local8 = this._-2PA._-2GU(k._-6fb, true);
                            if (((!((_local7 == null))) || ((((this._-6fK == _-6eh.NORMAL)) && (!((_local8 == null))))))){
                                if (k.indexOf(k) >= 0){
                                    k.push(k);
                                    if (k.length >= _-5AR){
                                        break;
                                    };
                                };
                            };
                        };
                    };
                };
            };
            this.localization.registerParameter("catalog.search.results", "count", k.length.toString());
            this.localization.registerParameter("catalog.search.results", "needle", _arg1);
            this._-49L.findChildByName(PageLocalization._-sW).caption = "${catalog.search.header}";
            this._-2PA._-6ka();
            this._-54A._-64x(k);
            this._-2PA.filter(k, k);
        }

Na função que coloquei acima, procure:

Código:
var k:String = _arg1.toLowerCase().replace(" ", "");

Altere para:

Código:
var k:String = _arg1.toLocaleLowerCase().replace(" ", "");

Em seguida, procure:

Código:
if (k.indexOf(k) >= 0)

Há dois deles.

Altere para:

Código:
if (k.toLocaleLowerCase().indexOf(k) >= 0)

E é isso. Salve as alterações quando terminar.

Aqui está uma pesquisa no catálogo funcional quando você aplica as correções no Habbo.swf:

[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]


Créditos

Jerry


Última edição por T0E em 28.09.17 18:37, editado 1 vez(es) (Motivo da edição : Correção do LINK do JPEXS)

Addison Addison  • 07.11.17 20:09

Permissões neste sub-fórum
Não podes responder a tópicos

BH Servers

Recomendamos a BH Servers com proteção DDOS gratuita em Cloud Server de alta performance. Entrega imediata.