[REL] default_3x3 cata page item pricing fix

Jeppe

New member
This is a client fix I built for HabboLegacy that removes the annoying limitation of not being able to set items to be priced as pixels + coins in the default_3x3 catalogue page. As you may or may not know, you need to define the page as "cars" in order for this to work in shockwave, however this limitation is not part of flash creating inconsistency

When you try and set a cata item to be priced as pixels + coins in a default_3x3 page:
Osr50qO.png


After fix:
Rjeh7Sp.png


And you may now say "but Jeppe, why don't you just make the page into 'cars'. It's the same thing as default_3x3?" but no.

Evilish enough, there is a difference where the "cars" page doesn't support splash texts over the images like you can see here:
gJGwl2O.png


With this fix, you can make nicer looking RARE pages such as the one on HL:
kFNNpOB.png


Originally, this would only work in the flash client, but now works in both

EDIT: This also has the fix of allowing items to have multiple definitions. In shockwave you're forced to make a page either credits, pixels or credits+pixels on every item. But with this fix you'll be able to set any pricing definition on any item on any page

EDIT: I should also give credits to @Parsnip as he taught me how to decompile and recompile the shockwave client and were also involved in brainstorming for potential solutions

RELEASE:
 
Last edited:
Nice fix!
I assume Habbo was too lazy to fix it themselves and chose to create a fully new layout rather than updating the existing layout? 😛
 
Nice fix!
I assume Habbo was too lazy to fix it themselves and chose to create a fully new layout rather than updating the existing layout? 😛
To me it looked intentional, as there was just a little bit of coding missing in order to make it work properly. In the code they have a class for each layout, and in those classes they have if statements that checks which type of currency it expects. If the currency is correct, it will add the items to a "deals" array (which is the array that controls the actual purchasing logic). This is why, when you do it incorrectly, it's gray because that deal is not being added for that specific item

To make it non-gray I just had to remove the if statements and make it always add onto that list, and then the items were purchaseable. However the actual layouts that shows the pricing as either coins, pixels or coins+pixels were in seperate locations and needed some tinkering in order for it to display correctly. As, the styling is not dependent on this "deals" array

Hope this made sense.
 
Back
Top