Drain the tofu and press out excess liquid in a paper towel.
Thinly slice the tofu to approximately 1/4 inch thick. Lightly spray a frying pan with cooking spray or use a nonstick pan. Cook tofu slices on low/medium heat until well browned on each side and the liquid is cooked out.
While the tofu cooks thinly slice the mushrooms.
Once the tofu is browned add a few splashes of soy sauce and flip the tofu to evenly coat. Just before the soy sauce dries sprinkle a small sprinkle of garlic & onion powder onto the top of the tofu. Remove tofu from the pan and set aside.
Keep the heat on low/medium and do NOT rinse the dried soy sauce from the pan. Add the sliced mushrooms to the coated pan.
When the mushrooms start to stick to the bottom of the pan add enough water to loosen and flip the mushrooms. Continue cooking until they start to dry out. Add water again or a little more soy sauce and cook until they dry out again. Remove the pan from the heat.
Slice the onions, tomatoes, and avocados. Toast the bread if desired and assemble the tofu sandwich with all ingredients to your desired taste.