Feature - Rejected Put a "no b" checkbox in the Item Manager

slyz

Developer
Edit by Minion, Bale: This was originally posted in THIS thread. The post has been truncated to the relevant suggestion.



Add a "don't show items with b" checkbox in the item manager, and in the Creatable section.
 
Last edited by a moderator:

slyz

Developer
Thanks for the quick changes. I'll try to have a good hard look at CreateItemPanel.java to see if I can add this feature:
  • Add a "don't show items with b" checkbox in the item manager, and in the Creatable section.

Same thing for
  • Don't allow food, drinks or spleen items with a "b" to be added to the consumption queue.
 

Bale

Minion
The consumption manager doesn't need a checkbox. Just don't show stuff that has a b when it is scary.
 

slyz

Developer
I was thinking of the Creatable section, that already has the "requires in-a-boxes", "repair on explosion" and "use closet" checkboxes.
 

muczachan

Member
Thanks for the quick changes. I'll try to have a good hard look at CreateItemPanel.java to see if I can add this feature:
  • Add a "don't show items with b" checkbox in the item manager, and in the Creatable section.

Actually there is at least one creatable item with a 'b' that is still useful (just checked).

If you have access to Knoll shops, you can still create the bitchin' meatcar for beach access.
 

matt.chugg

Moderator
That's why I was thinking of a checkbox, and not a systematic filter.

is it worth it?

Its a "challenge" path, in fact its the summer 2011 challenge path, there will most likely be a new challenge path by september and all the b(ee) stuff added to the gui would need to be undone, although until we know what the next challenge path is, we don't know how much code is re-usable!

Just my trivial thoughts!!!
 

lostcalpolydude

Developer
Staff member
These challenge paths will be around forever, they just won't have any special reward in the future.

If the checkbox only shows up when you're in a Bee run, then that seems fine. Otherwise it will be clutter the majority of the time.
 

slyz

Developer
Here is a patch that adds a "b items" checkbox - only for people in Beecore - after the "no-trade" checkbox in the General/Recent/Closet/Storage/Free Pulls panels of the item Manager. When unchecked, all items that contain a 'b' are removed from the list.

With the "!=b" filtering, I don't know if this is still useful. It was more of an exercise for me.
 

Attachments

  • BeeFilter.patch
    2.2 KB · Views: 28

slyz

Developer
I started out with a "no b" checkbox, but changed it to "b items" for consistency with the "food", "booze", "equip", "others" and "no-trade" checkboxes: it is checked by default, like all the other, and 'b' items are removed when you uncheck it, like the others.

I'm really bad at making up names for this kind of things in english (or any other language, for that matter), so anyone with a good name is welcome to speak up.
 

lostcalpolydude

Developer
Staff member
How does it work when you enter/leave bee restrictions? My guess is that you have to restart mafia to make the checkbox (dis)appear.
 

Winterbay

Active member
I started out with a "no b" checkbox, but changed it to "b items" for consistency with the "food", "booze", "equip", "others" and "no-trade" checkboxes: it is checked by default, like all the other, and 'b' items are removed when you uncheck it, like the others.

I'm really bad at making up names for this kind of things in english (or any other language, for that matter), so anyone with a good name is welcome to speak up.

Ahh right. I forgot that those boxes were ticked by default. I was under the delusion that I needed to check those to make things go away, not that I unchecked it for that to happen. Carry on then :)
 

slyz

Developer
How does it work when you enter/leave bee restrictions? My guess is that you have to restart mafia to make the checkbox (dis)appear.
Apparently, you do, yes. Or, at least, you have to close and re-open the Item Manager.

I don't have any idea of how to remove the checkbox. Even using the "priphea" CLI command, that seems to recreate the Mafia GUI, doesn't remove the checkbox when I change the preference that controls the return value of KoLCharacter.inBeecore() in my copy.

There is probably a way, by adding some sort of listener, but that is not something I know how to do.
 

slyz

Developer
Suggestion: Would it be possibel to filter the familiar list in the equipment manager to not show familiars that contain b's while you are on a b-core run.
I tried modifying KoLCharacter.addFamiliar() to skip familiars with a 'b' so that Mafia will simply thinks that you don't own any of those familiars.

A small drawback I can see (since you can't enthrone those familiars) is that if, for some reason, you go to the familiar page and equip an item on a familiar with a 'b', Mafia will not see that you have that item anymore. You will have to unequip it manually.

The big issue is that, when you break the prism, the GUI won't update with the new familiar list. Like with the patch for the "b items" checkbox, I don't know how to refresh the whole Mafia GUI to remove Beecore changes. I tried to mitigate this by adding a visit to familiar.php when you free the king: it will update the familiar list with all your familiars, but you will still need to restart Mafia.

I won't post the patch since it seems like a bad idea. Breaking the prism and having a "b items" checkbox in your GUI is one thing, but having a reduced familiar list means you are forced to restart mafia completely.
 

slyz

Developer
The only other store I can think of that has different items on sale depending on your situation is the Hippy store. Mafia handles this by having separate "Hippy Store (Pre-War)", "Hippy Store (Hippy)" and "Hippy Store (Fratboy)" stores in npcstores.txt.

One solution is to add a "Barrrtleby's Barrrgain Books (Bees Hate You)" store, and add a check for inBeecore() in NPCStoreDatabase.canPurchase().

The other solution would be to add a special case for the Massive Manual of Marauder Mockery directly in NPCStoreDatabase.canPurchase().

Here is a patch that does the former. It works for me.
 

Attachments

  • MassiveManualMarauderMockery.patch
    1.7 KB · Views: 29

Veracity

Developer
Staff member
Edit by Minion, Bale: This post was originally written in another thread, HERE. It was a very long post so only the relevant portion of the original post is retained in this thread's copy.

But, as I said, this thread is cumbersome, and I'd prefer if each such issue got split into its own thread. Perhaps some Minion would be interested in doing that? ;)

6) Put a "no b" checkbox in the Item Manager.

Nah. I think !b filtering is good enough, and gets around the problem of having to remove the checkbox when you free the king - or log out and back in with a character not in Beecore.
 
Last edited by a moderator:
Top