HOOK_POST_CRAFTING
Index: Articles Classes Hooks Quick navigation: BLOCK_SPREAD BLOCK_TO_PICKUPS BREWING_COMPLETED BREWING_COMPLETING CHAT CHUNK_AVAILABLE CHUNK_GENERATED CHUNK_GENERATING CHUNK_UNLOADED CHUNK_UNLOADING COLLECTING_PICKUP CRAFTING_NO_RECIPE DISCONNECT ENTITY_ADD_EFFECT ENTITY_CHANGED_WORLD ENTITY_CHANGING_WORLD ENTITY_TELEPORT EXECUTE_COMMAND EXPLODED EXPLODING HANDSHAKE HOPPER_PULLING_ITEM HOPPER_PUSHING_ITEM KILLED KILLING LOGIN PLAYER_ANIMATION PLAYER_BREAKING_BLOCK PLAYER_BROKEN_BLOCK PLAYER_DESTROYED PLAYER_EATING PLAYER_FISHED PLAYER_FISHING PLAYER_FOOD_LEVEL_CHANGE PLAYER_JOINED PLAYER_LEFT_CLICK PLAYER_MOVING PLAYER_PLACED_BLOCK PLAYER_PLACING_BLOCK PLAYER_RIGHT_CLICK PLAYER_RIGHT_CLICKING_ENTITY PLAYER_SHOOTING PLAYER_SPAWNED PLAYER_TOSSING_ITEM PLAYER_USED_BLOCK PLAYER_USED_ITEM PLAYER_USING_BLOCK PLAYER_USING_ITEM PLUGINS_LOADED PLUGIN_MESSAGE POST_CRAFTING PRE_CRAFTING PROJECTILE_HIT_BLOCK PROJECTILE_HIT_ENTITY SERVER_PING SPAWNED_ENTITY SPAWNED_MONSTER SPAWNING_ENTITY SPAWNING_MONSTER TAKE_DAMAGE TICK UPDATED_SIGN UPDATING_SIGN WEATHER_CHANGED WEATHER_CHANGING WORLD_STARTED WORLD_TICK | This hook is called when a player changes contents of their crafting grid, after the recipe has been established by Cuberite. Plugins may use this to modify the resulting recipe or provide an alternate recipe. If a plugin implements custom recipes, it should do so using the HOOK_PRE_CRAFTING hook, because that will save the server from going through the built-in recipes. The HOOK_POST_CRAFTING hook is intended as a notification, with a chance to tweak the result. Note that this hook is not called if a built-in recipe is not found; HOOK_CRAFTING_NO_RECIPE is called instead in such a case. Callback functionThe default name for the callback function is OnPostCrafting. It has the following signature: function OnPostCrafting(Player, Grid, Recipe) Parameters:
If the function returns false or no value, other plugins' callbacks are called. If the function returns true, no other callbacks are called for this event. In either case, Cuberite uses the value of Recipe as the recipe to be presented to the player. Code examplesRegistering the callbackcPluginManager:AddHook(cPluginManager.HOOK_POST_CRAFTING, MyOnPostCrafting); |