To name a few, Butterfree, clefairy, meowth, drowzee, lapras, and umbreon. Most psychic types can learn dream eater, but it is useless unless the opponent is asleep.
Chat with our AI personalities
Actually to teach this move to Gengar you need to find the move tutor that will teach the move to any of your Pokemon this move tutor is in Viridian city you need the HM Cut to get to him though. Also a move tutor in Pokemon xd gale of darkness will teach Dream Eater to your Pokemon.
He is in Viridian City. Go left at the Pokemon Center and you will see a tree that can be cut down. Cut it, and there is a large man. He will tell you about a dream he had involving a drowzee that taught him how to eat dreams. He will then ask to teach your Pokemon Dream Eater.
Emerald is Generation 3, where as TM 85 (Dream-eater) is only introduced in Generation 4 (DP/HGSS) To get Dream-Eater in Emerald you need to defeat the Elite Four, go to the Battle Frontier and win 24 B.P. Then, you can go to the small house to the far left of the map, where there is two ladies, one of the ladies will teach your pokemon Dream-Eater for 24 B.P. I hope this helps XD
Headbutt is no a HM in Pokemon soulsilver. However a man in Ilex Forest will teach it to any Pokemon that can learn it.
Just teach it AncientPower, then level up