Skip to content

feat: roast cocoa into hot chocolate and chocolate bars, flavoured with vanilla, cinnamon and nutmeg - #122

Merged
JustinasLa merged 7 commits into
mainfrom
feat/chocolate
Nov 2, 2026
Merged

JustinasLa merged 7 commits into
mainfrom
feat/chocolate

Conversation

@JustinasLa

Copy link
Copy Markdown
Contributor

Adds a chocolate chain and gives vanilla, cinnamon and nutmeg real uses as flavourings.

Chain

  • Cocoa beans convert on pickup and harvest like wheat, carrots and potatoes (conversions.yml). They keep the vanilla look and still plant on jungle logs. BreweryX and DrinkBuilder still accept them through the existing ingredient bridge.
  • They roast in the frying pan (types.yml cocoa_beans, pan output) into roasted cocoa beans, which can burn.
  • The milling stone grinds 2 roasted, not burnt, beans (one pan load) into cocoa powder. This is a milling-recipes.yml entry on top of feat: grind sugar cane into sugar, ladle beetroot soup as Borscht, convert sweet berries #119.
  • Hot chocolate: in the saucepan, a cup of milk plus cocoa powder plus a sweetener; an empty cup takes it out. It's a drink (POTION item), and drinking it gives the cup back.
  • Melted chocolate: the same with butter added (Milk Chocolate), or with a cup of water (Dark Chocolate). A bowl takes it out. It's poured into a new chocolate mould (crafting-stations.yml chocolate_mould), and hitting the mould with the cutting knife cuts it into 4 bars that keep its kind and flavourings and share its food.
  • Flavourings: vanilla, cinnamon and nutmeg go in once each, two at most like any spice. They name the result (Cinnamon Hot Chocolate, Vanilla Milk Chocolate Bar) through new flavour_* tracks. Cinnamon and vanilla are also new popcorn toppings.

Java

  • Saucepan bottles take optional extras (path + track, once each; they tag the output) and container / container-name (what takes the output out instead of a glass bottle; the wrong container is refused with a hint).
  • types.yml returns: drinking such a food leaves that item where vanilla leaves the glass bottle (DrinkConsumeListener.onServedDrink).
  • Milling: a recipe that loads by a c. food path and names no input-food refunds that food line (category and tags kept), so broken stones give the roasted beans back and they can load again.

Assets

  • ItemsAdder/tfmc_cooking/contents/chocolate.yml and its models and textures, made by scratch/new-foods/chocolate/bin/gen.py. Melted milk chocolate reuses the pack's unused cooking_chocolate.
  • The mould furniture (InteractibleFurniture chocolate_mould, one slot input_1 at its centre) and three more hidden saucepan input slots are Dev-only config.

Not changed: pies and sweet dough. Spices aren't a pie filling or a mixing-bowl input, so flavouring them would need Java in those handlers.

mvn -o -B clean verify passes (100% line coverage).

🤖 Generated with Claude Code

JustinasLa and others added 6 commits November 1, 2026 20:49
…tainer, and drinks return it

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…asted cocoa, flavoured with vanilla, cinnamon and nutmeg

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… pack

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Nov 2, 2026 •

Copy link
Copy Markdown

Important

  • Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 4b5b0b6d-4475-43d8-8695-f0dffc92ec7a
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

# Conflicts:
#	src/main/resources/crafting-stations.yml
@github-actions github-actions Bot added the size:XXL 1,000+ effective changed lines (tests excluded in mixed PRs). label Nov 2, 2026
@JustinasLa
JustinasLa merged commit 968f126 into main Nov 2, 2026
3 checks passed
@JustinasLa
JustinasLa deleted the feat/chocolate branch November 2, 2026 04:08
JustinasLa added a commit that referenced this pull request Nov 2, 2026
returns now means what a food comes in, given back once it's drunk (hot
chocolate's cup, #122) or used up in a station (honey's bottle).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XXL 1,000+ effective changed lines (tests excluded in mixed PRs).

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant