(1) do not use OnlyIn pretty much ever, and never on methods you are creating whole cloth.
(2) your getType method is never called
(3) your useOn method does a whole lotta nuthin
(4) have you looked at the vanilla spawn egg?
(5) why are you not extending the vanilla spawn egg?
I'm from Brazil, and I'm used to code in portuguese. Like "items" in english is "itens" in portguese. Here it is the Essence class, and the EssenceItem class. I created 2 different classes to separete and simplify some things.