<commit_before># PlayerUseHoe

The PlayerUseHoe Event is fired whenever a player uses his hoe... If you know what I mean.

## Event Class
You will need to cast the event in the function header as this class:  
`crafttweaker.event.PlayerUseHoeEvent`  
You can, of course, also [import](/AdvancedFunctions/Import/) the class before and use that name then.

## Event interface extensions
PlayerUseHoe Events implement the following interfaces and are able to call all of their methods/getters/setters as well:

- [IEventCancelable](/Vanilla/Events/Events/IEventCancelable/)
- [IPlayerEvent](/Vanilla/Events/Events/IPlayerEvent/)
- [IProcessableEvent](/Vanilla/Events/Events/IProcessableEvent/)
- [IEventPositionable](/Vanilla/Events/Events/IEventPositionable/)


## ZenGetters
The following information can be retrieved from the event:

| ZenGetter    | Return Type                               |
|--------------|-------------------------------------------|
| `canceled`   | boolean                                   |
| `processed`  | boolean                                   |
| `x`          | int                                       |
| `y`          | int                                       |
| `z`          | int                                       |
| `player`     | [IPlayer](/Vanilla/Players/IPlayer/)       |
| `world`      | [IWorld](/Vanilla/World/IWorld/)           |
| `block`      | [IBlock](/Vanilla/Blocks/IBlock/)          |
| `blockState` | [IBlock](/Vanilla/Blocks/IBlockState/)     |
| `dimension`  | int                                       |
| `item`       | [IItemStack](/Vanilla/Items/IItemStack/)   |

## ZenMethods

- `event.cancel()` sets the event as cancelled
- `event.process()` sets the event as processed<commit_msg>Fix type in typo of blockState<commit_after># PlayerUseHoe

The PlayerUseHoe Event is fired whenever a player uses his hoe... If you know what I mean.

## Event Class
You will need to cast the event in the function header as this class:  
`crafttweaker.event.PlayerUseHoeEvent`  
You can, of course, also [import](/AdvancedFunctions/Import/) the class before and use that name then.

## Event interface extensions
PlayerUseHoe Events implement the following interfaces and are able to call all of their methods/getters/setters as well:

- [IEventCancelable](/Vanilla/Events/Events/IEventCancelable/)
- [IPlayerEvent](/Vanilla/Events/Events/IPlayerEvent/)
- [IProcessableEvent](/Vanilla/Events/Events/IProcessableEvent/)
- [IEventPositionable](/Vanilla/Events/Events/IEventPositionable/)


## ZenGetters
The following information can be retrieved from the event:

| ZenGetter    | Return Type                               |
|--------------|-------------------------------------------|
| `canceled`   | boolean                                   |
| `processed`  | boolean                                   |
| `x`          | int                                       |
| `y`          | int                                       |
| `z`          | int                                       |
| `player`     | [IPlayer](/Vanilla/Players/IPlayer/)       |
| `world`      | [IWorld](/Vanilla/World/IWorld/)           |
| `block`      | [IBlock](/Vanilla/Blocks/IBlock/)          |
| `blockState` | [IBlockState](/Vanilla/Blocks/IBlockState/)     |
| `dimension`  | int                                       |
| `item`       | [IItemStack](/Vanilla/Items/IItemStack/)   |

## ZenMethods

- `event.cancel()` sets the event as cancelled
- `event.process()` sets the event as processed
{'fraction_non_alphanumeric': 0.1388101983002833, 'fraction_numerical': 0.0, 'mean_word_length': 1.775943396226415, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 18, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '121149', 'n_tokens_mistral': 985, 'n_tokens_neox': 936, 'n_words': 248}