This was originally a help post, but I thought I could give it a thread of its own. Anyway:
This system has two halves, it can be used perfectly with just the switch section, but the variable side makes it a little more fun.
First, make two switches, both as your ingredients like so;
Switch 1: Bread
Switch 2: Lettuce
Items can be used as the switches also, this will allow to see the items in your Inventory. Thanks AlienSoldier!
Event: If 1 and 2 are on and you press an event, say for instance, a sandwich icon in the menu you will start cooking it and you recieve one sandwich. This is the simple way.
You could add a bit more and use Variables to add a bit of "chance" to it. You can basically make a variable of "If Sandwich is cooking, what are are the odds of it working?", so Variable 1: Sandwich cooking can triggered when you hit the sandwich icon (Along with the Bread and Lettuce switches). When this is done, you can goto the Variable side of things, so "If Variable 1 is on, use random variable numbers for the probability of sandwich cooking succeeding", after this point you can do what you want with the numbers, make it random as shown here:
Change both zeros to the numbers of your liking.
After this, you can use this Conditional Branch:
<>Branch if Car [xxxx:Sandwich Cooking] is y or more/less
<>Message: Failed!
<>
: Else Handler
<>Message: SUCCESS!
<>Change Items: 1 Sandwich Add
<>
: End
<>
This can seem confusing, but that is the basics.
Just replace "xxxx" with switch number and "y" with the number you want.
Finished product in RMXP from Aliensoldier:
@>Text: Do you want to cook with the available ingredients?
@>Show Choice: Yes, No
: When [Yes]
@>Text: What would you like to cook?
@>Show Choice: Sandwich, Nevermind
: When [Sandwich]
@>Conditional Branch: [Bread] in inventory
@>Conditional Branch: [Lettuce] in inventory
@>Change Item: [Bread], -1
@>Change Item: [Lettuce], -1
@>Control Variables: [Sandwich cooking] = Random No. (1...10)
@>Play SE: "042-Knock03", 80, 100
@>Wait: 5 frame(s)
@>Play SE: "042-Knock03", 80, 100
@>Wait: 5 frame(s)
@>Play SE: "042-Knock03", 80, 100
@>Wait: 5 frame(s)
@>Play SE: "042-Knock03", 80, 100
@>Wait: 30 frame(s)
@>Conditional Branch: Variable [0003:Sandwich cooking] >= 5
@>Play ME: '007-Fanfare01', 100, 100
@>Text: SUCCESS! (Adquired 1x Sandwich)
@>
:Else
@>Play ME: '005-Defeat', 100, 100
@>FAILURE!
@>
:Branch End
@>
:Else
@>Text: Not enough ingredients.
@>
:Branch End
: When [Nevermind]
@>
:Branch End
:When [No]
@>
:Branch End
@>
For the graphic side of things, you will need to do that yourself.
If you are using RMXP, test this and see if it works, I have not tried it in RMXP.
You can use any switch or variable slot as your ingredients and success probability.