Exports

Das Framework registriert Stationen, Rezepte und Zutaten ueber Exports, sodass du eigene hinzufuegen kannst, ohne eine der beiden Ressourcen anzufassen.

Content registrieren

exports['hz_cook']:RegisterStation({ id = 'my_grill', prop = 'my_prop', ... })
exports['hz_cook']:RegisterRecipe({ id = 'my_dish', stationTags = { 'grill' }, ... })
exports['hz_cook']:RegisterIngredients({ my_meat = { label = 'Meat', ... } })
exports['hz_cook']:AddLocale('fr', { ingr_my_meat = 'Viande' })

Bei jedem Framework-Start erneut registrieren

Die Registry lebt im Lua-Zustand von HZ-Cook. Ein restart hz_cook leert sie, und alles, was aus einer anderen Ressource registriert wurde, verschwindet mit ihr.

Hoer auf die Ankuendigung und registriere erneut:

AddEventHandler('hz-cook:content', registerEverything)

Hineinkopiert braucht das Barbecue-Pack davon nichts: sein Inhalt liegt in hz_cook/data/, das Framework laedt ihn bei jedem Start selbst wieder. Der Handler oben gilt fuer Inhalte, die aus deiner Ressource registriert werden.

Station-Tags statt IDs

Ein Rezept, das auf stationTags = { 'grill' } statt auf eine Stations-ID zielt, funktioniert auch auf jeder Station, die ein kuenftiges Pack als Grill taggt.

Das ist Absicht: es laesst Content-Packs zusammenspielen. Ein heute fuer den Grill geschriebenes Rezept laeuft auf einem Rost, den ein noch nicht existierendes Pack ausliefert — ohne Aenderung auf einer der beiden Seiten.