if you have gotten the elite four, just fly or surf to the waterfall place and at that little space of clear water use a super rod. if it is a lovedisc catch it or thief and i might be holding a heart scale.
Heart scales are only in Pokemon emerald, ruby and sapphire but you can get one if you trade a heart scale from ruby or emerald or sapphire to leafgreen then take it but it will not do anything in the game.
You can find them on beaches or go to the entrance of victory road and fish for luvdisces and occasionally they will hold one.
You can find them in the Underground
underground
To find heart scales on Pokemon diamond/pearl you need the explorer kit to go underground. once you are underground look for cracks inthe wall, and eventully you will find a heart scale in the cracks.
I only found heart scales in Ruby, Sapphire and Emerald but I'm not sure of the other games.
Heart Scales can be purchased in the Pokeathlon shop for 1000P
you have to trade one from heart gold or sapphire
They r dug up underground. They are hard to find
You can find the Heart Scale under ground by using the Explorer Kit.
Heart scales can typically be found underground by using the Explorer Kit.
There is no Pokemon mansion in sapphire.