======  OnHopperPullingItems hook callback function ======
This callback is called whenever a hopper transfers an item from another block item into its own internal storage. A plugin may decide to disallow the move by returning true. Note that in such a case, the hook may be called again, with different slot numbers.

===== Function signature =====
<code lua>
function OnHopperPullingItems(World, Hopper, DstSlotNum, SrcBlockEntity, SrcSlotNum)
</code>
Parameters:
| World | [[API:cWorld|cWorld]] | The world in which the hopper resides |
| Hopper | [[API:cHopperEntity|cHopperEntity]] | The hopper that is pulling the item |
| DstSlotNum | number | Slot in the hopper that will receive the item |
| SrcBlockEntity | [[API:cBlockEntityWithItems|cBlockEntityWithItems]] | The block entity that is losing the item |
| SrcSlotNum | number | Slot in SrcBlockEntity from where the item will be pulled |

===== Return values =====
If the function returns false or no value, the next plugin's callback is called. If the function returns true, no other callback is called for this event and the hopper will not pull the item.

===== Registering the callback =====
To register your plugin to receive a callback through this function, use the hook [[api:plugin:hooks|HOOK_HOPPER_PULLING_ITEM]]
<code lua>
PluginManager = cPluginManager:GetPluginManager()
PluginManager:AddHook(Plugin, cPluginManager.HOOK_HOPPER_PULLING_ITEM)
</code>