I will avoid to take the risk and point out your getTarget() method, since I suppose that i will be flamed as well.
Let us take a look on what I have pointed out right now.
1. Isn't that check a little bit useless? And even if you decide to add it, make sure to inform the player with a message saying the reason why he can't transfer.
2. Avoid adding the item to the player first and removing them afterwards.
3. There is no check to see if the player has the proper quantity in his inventory. In this way, even if the player has 1 adena, the other adena will be successfully transfered, and the player will simply lose 1 adena. Pretty easy way to farm adena by making bots.
4. Kinda useless, ain't it? I mean, the result is the same even without it, check it out.
As an overall comment, I'll have to say that you creation lacks of the proper checking and has some bad-written methods.
Take your time to fix your errors and add the proper checks and I hope that you'll keep practicing on it.
PS: Making mistakes is not bad, just try to avoid them in simple codes like this one.