Actually, pipboy has the right of it there. If luffy had to decide between the destruction of a nation to which he has no ties or the death of a nakama's dream… I could very easily see him choosing the dream.
He didn't fight buggy because buggy attacked first. He fought buggy because the dog's food store burnt down and the old mayor was willing to sacrifice himself for the pride of the town.
He fought croc because of the nami's map making room. He fought kuro because usopp was willing to sacrifice himself in obscurity is the boss and realizeto save a town that hated him. He fought in drum island to show chopper had nakama. He attacked the WG because they threatened his nakama. Enel he fought to mainly to show acornhead that jaya did exist.
Luffy doesn't make himself out as a hero that fights bad guys because they do bad things. He doesn't even search out fights with difficult enemies for training purpose (think how he avoided messing with smoker).
His motivation for fighting comes about when he meets someone whose noble dream has been desecrated, and he will fight whoever it takes to make that dream come to light.
In retrospect... that is a little psycho...
Lets see, enemies and reason why Luffy powed then
Alvida - Kinda protecting Coby, he only attacked after Coby faced her.
Moochi (the animal trainer) - The dog
Buggy - the Mayor
Kuro - Ussop, later his pirate pride
Krieg - His pride as a future pirate king, found a way to skip working in Baratie
Arlong - the motherf@&@!# hurt my navigator, he found a way to help (understand) her
Smoke - he never had a reason to stay and fight, even more when he found the his attacks where useless.
Zoro - he hurted the guys that gave him food (pride??)
Red Giant - defending himself
Mister 3 - messing with the giants battle (pride)
Vapol - Defending himself (at ship), attacking his friends (while climbing the montain), defending a pirate pride (while in the caste)
Smoke - again, same reason
Crocodile - just because Vivi was willing to do everything, including killing herseft for the sake of her country, Luffy didn't wanted that, so he went do kill crocodile himself.
The guy in Jaya (tottally forgot name) - he stole the gold
Enel - he JUST was in the way for the bell, he was kinda pissed about his fried nakama as well.
Foxy - game = protect his nakama
Lucci - find what is wrong with Robin
Blueno - rescue Robin
Lucci - rescue Robin
With that said, he is no psico, he most of the times is fighting for someone else, sometimes he fight for his own beliefs or defending himself.
And yes, i really think Garp is trying to capture Luffy, maybe not with killing intent but he isn't using all his weapons against him, to give him a chance. Like a father who hit his son hard but not enought to actually hurt him, just to show to the children who is the boss and that whatever stuff the kid did, it was fucking wrong.