The Zelda Tears of the Kingdom Fruit Cake recipe is made using Any Fruit (2-3 types), Tabantha Wheat, Cane Sugar. When you consume the Fruit Cake you will gain the following effects: Recover Hearts.
Recover Hearts
How To Make Fruit Cake Recipe
You can make an Fruit Cake by selecting Any Fruit (2-3 types), Tabantha Wheat, Cane Sugar in your inventory to hold. Then using a cooking pot to drop them in and cook.
Ingredient | What To Use | Effects |
---|---|---|
Any Fruit (2-3 types) | Shock Fruit
Fire Fruit
Ice Fruit
Apple
Wildberry
Voltfruit
Hydromelon
Palm Fruit
Mighty Bananas
Golden Apple
Dazzlefruit
Splash Fruit
| Varying Effects |
Tabantha Wheat | Tabantha Wheat
| Hit Points Recover: 4 Time Boost: 30 Seconds |
Cane Sugar | Cane Sugar
| Time Boost: 50 Seconds |
You can add additional ingredients to make different versions of the Fruit Cake recipe. Such as a Spicy Fruit Cake or a Chilly Fruit Cake version.
Versions | Effect | Added Ingredient |
---|---|---|
Hearty Fruit Cake | Grants temporary bonus hearts | Hearty Bass Hearty Salmon Hearty Truffle Big Hearty Truffle Hearty Radish Big Hearty Radish |
Enduring Fruit Cake | Grants temporary bonus stamina | Endura Shroom Endura Carrot |
Energizing Fruit Cake | Restores stamina | Courser Bee Honey Staminoka Bass Bright-Eyed Crab Stamella Shroom Stambulb |
Sunny Fruit Cake | Repairs Broken Hearts (Heals Gloom Damage) | Sun Pumpkin Sundelion |
Mighty Fruit Cake | Increases attack power | Mighty Carp Mighty Porgy Mighty Bananas Razorclaw Crab Razorshroom Mighty Thistle |
Tough Fruit Cake | Increases defense | Armored Porgy Armored Carp Fortified Pumpkin Ironshell Crab Ironshroom Armoranth |
Hasty Fruit Cake | Increases movement speed | Fleet-Lotus Seeds Rushroom Swift Carrot Swift Violet |
Sneaky Fruit Cake | Increases stealth | Sneaky River Snail Stealthfin Trout Silent Shroom Blue Nightshade Silent Princess |
Chilly Fruit Cake | Increases heat resistance | Chillfin Trout Hydromelon Chillshroom Cool Safflina |
Spicy Fruit Cake | Increases cold resistance | Sizzlefin Trout Spicy Pepper Sunshroom Warm Safflina |
Electro Fruit Cake | Increases shock resistance | Voltfin Trout Voltfruit Zapshroom Electric Safflina |
Bright Fruit Cake | Causes a glow effect | Glowing Cave Fish Brightcap Dazzlefruit |
Scorching Fruit Cake | Increase attack power during hot weather | Fire Fruit |
Where To Find Fruit Cake Ingredients
Location | Type | Subtype | Description | Show on map |
---|
Object Name: ' + markerData.objectName + '
'; // popupContent += 'Description: ' + markerData.description + '
'; // popupContent += 'Category: ' + markerData.category + '
'; // popupContent += 'Subtype: ' + markerData.subtype + '
'; /* // Decode the encoded popupContent from the markerData object var decodedPopupContent = decodeURIComponent(markerData.popupContent); // popupContent += decodedPopupContent; var popupContent = decodedPopupContent; */// reminder, adding a div to this, broke funtionality.// popupContent += "";// marker.bindPopup(popupContent);// bind popup, use L.point to adjust where popup appears on marker/*// Check if the category is not "Material" before binding the popupif (markerData.category !== "Material") { marker.bindPopup(popupContent, { offset: L.point(-2, -20) });} */ var popupContent = ""; // Check if markerData.objectName exists in contentMap and is not null or undefined if (markerData.objectName && contentMap[markerData.objectName]) { var decodedPopupContent = decodeURIComponent(contentMap[markerData.objectName]); popupContent = decodedPopupContent; } if (popupContent && markerData.category !== "Material") { marker.bindPopup(popupContent, { offset: L.point(-2, -20) }); }// toggle pulse effects// add click event listener to markermarker.on('click', function () { // check if popup is open if (marker.isPopupOpen()) { // toggle pulse effect with false parameter toggleMarkerPulse(marker, true); } else { // toggle pulse effect with true parameter toggleMarkerPulse(marker, false); }});marker.on('popupclose', function () { toggleMarkerPulse(marker, false);}); // Make marker have highest z-index upon hovering it // Store the original zIndexOffset value marker.originalZIndexOffset = zIndexOffset; // Make marker have highest z-index upon hovering it // Add a mouseover event listener to the marker marker.on('mouseover', function () { marker.setZIndexOffset(15000); // Set the zIndexOffset to 15000 when hovering }); // Add a mouseout event listener to the marker marker.on('mouseout', function () { marker.setZIndexOffset(marker.originalZIndexOffset); // Reset the zIndexOffset to its original value when not hovering }); // Store the marker in the markers object markers[markerData.markerId] = marker;}// The findMarkerById function iterates through the layers on the map and returns the marker with the specified markerId. function findMarkerById(markerId) { var marker; map.eachLayer(function(layer) { if (layer instanceof L.Marker) { if (layer.options.markerId === markerId) { marker = layer; } } }); return marker;}', });} else { return L.icon({ iconUrl: iconUrl, iconSize: [25, 41], // (these are default size for leaflet marker) iconAnchor: [12, 41], popupAnchor: [1, -34], // how var the popup appears from marker className: 'custom-icon', // Add a custom class to the icon html: '
', });} }// Filters and displays markers on the map based on the given mapId. This function hides existing markers and shows markers that match the mapId. If a marker is not in the markers object, it creates and adds the marker to the map.function applyFilters() { // Switch to showing all markers when 'Apply Filters' button is clicked showCustomListOnly = false; displayMarkersForMap(activeMap, selectedCategories, customList);}function displayMarkersForMap(mapId, selectedCategories, customList) { // Check if mapId is valid if (!activeMap) { ///console.error("Error in displayMarkersForMap: Invalid mapId", mapId); return; } // Hide existing markers for (var markerId in markers) { map.removeLayer(markers[markerId]); } // Filter the markers by map_id and add them to the map allMarkersData.forEach(function (markerData) { if (markerData && markerData.mapId && markerData.markerId) { const shouldDisplayMarker = markerData.mapId.toString() === mapId.toString() && ((typeof selectedCategories === 'undefined' || selectedCategories.includes(markerData.category)) && !showCustomListOnly || (typeof customList !== 'undefined' && customList.includes(markerData.objectName)) && showCustomListOnly); if (shouldDisplayMarker) { // Check if the marker is already in the markers object if (markers[markerData.markerId]) { // Add the marker back to the map markers[markerData.markerId].addTo(map); } else { // If the marker is not in the markers object, add it to the map addMarkerToMap(markerData); } } } else { ///console.error("Error in displayMarkersForMap: Invalid markerData", markerData); } });}document.getElementById('applyFiltersBtn').addEventListener('click', applyFilters);// Global variable to store the circle markerslet circleMarkers = [];function displayCircleMarkersForMap(mapKey, categoriesFilter = []) { // Reset the existing circle markers on the map existingCircleMarkers.forEach(circleMarker => { if (circleMarker) { // Check if the circleMarker is not null map.removeLayer(circleMarker); } }); // Reset the array existingCircleMarkers = []; // Filter the circleMarkers based on the mapKey and categoriesFilter const filteredCircleMarkers = customMarkers.filter(markerData => { // Using customMarkers array instead of circleMarkers if (markerData.mapId !== mapKey) { return false; } if (categoriesFilter.length > 0 && !categoriesFilter.includes(markerData.category)) { return false; } return true; }); // Draw the circle markers on the map filteredCircleMarkers.forEach(markerData => { const circleMarker = drawCircleRadius(markerData); if (circleMarker) { // Check if the circleMarker is not null circleMarker.addTo(map); // Adding circleMarker to the map existingCircleMarkers.push(circleMarker); } });}// Call the new function when switching mapsdocument.getElementById('mapSelect').addEventListener('change', function (event) { const selectedMapKey = event.target.value; const selectedMapData = mapsData[selectedMapKey]; if (selectedMapData) { activeMap = selectedMapKey; // Update the active map // ... displayCircleMarkersForMap(selectedMapKey); // Call this after switching the map tileset // ... }});let boundariesVisible = false;function toggleBoundaries() { boundariesVisible = !boundariesVisible; if (boundariesVisible) { // Show all boundaries for (const boundaryId in boundaries) { boundaries[boundaryId].addTo(map); } document.getElementById('toggleBoundariesBtn').textContent = "Hide Regions"; } else { // Hide all boundaries for (const boundaryId in boundaries) { map.removeLayer(boundaries[boundaryId]); } document.getElementById('toggleBoundariesBtn').textContent = "Show Regions"; }}function displayBoundariesForMap(mapId) { // Hide existing boundaries for (var boundaryId in boundaries) { map.removeLayer(boundaries[boundaryId]); } if (boundariesVisible) { // Filter the boundaries by map_id and add them to the map allBoundariesData.forEach(function (boundaryData) { if (boundaryData.mapId.toString() === mapId.toString()) { // Check if the boundary is already in the boundaries object if (boundaries[boundaryData.boundaryId]) { // Add the boundary back to the map ONLY if it belongs to the current mapId if (boundaryData.mapId.toString() === mapId.toString()) { boundaries[boundaryData.boundaryId].addTo(map); } } else { // If the boundary is not in the boundaries object, add it to the map addBoundaryToMap(boundaryData); } } }); }}// The button for toggling the visibility of the boundariesconst toggleBoundariesButton = document.getElementById('toggleBoundariesBtn');toggleBoundariesButton.addEventListener('click', function() { boundariesVisible = !boundariesVisible; // Toggle the boundariesVisible variable // Change the button text based on whether the boundaries are currently visible toggleBoundariesButton.textContent = boundariesVisible ? "Hide Regions" : "Show Regions"; // Call the displayBoundariesForMap function for the current active map displayBoundariesForMap(activeMap);});// New functions to bind and unbind boundary popups (special case because we needed to add markers inside boundaries after disabling the popup.)function bindBoundaryPopups() { for (var boundaryId in boundaries) { if (boundaries.hasOwnProperty(boundaryId)) { var boundary = boundaries[boundaryId]; boundary.bindPopup(boundary.customPopupContent); } }}function unbindBoundaryPopups() { for (var boundaryId in boundaries) { if (boundaries.hasOwnProperty(boundaryId)) { var boundary = boundaries[boundaryId]; boundary.unbindPopup(); } }}// Stops markers from showing popups, probably anything else that has a binded popupvar shouldShowPopups = true;function bindPopups() { shouldShowPopups = true;}function unbindPopups() { shouldShowPopups = false;}map.on('popupopen', function (e) { if (!shouldShowPopups) { map.closePopup(e.popup); }});