Ok boss I'm not sure what is happenning so here is a real script version of what I said, I Tested it and it works fine the problem might be something to do with your npc reaction to being talked to?
(if(Said('talk/man'))
(if(send gEgo:has (INV_FISH))
Print("leave me the hell alone i've given you my fish!"))
(else
(send gEgo:get(INV_FISH))
Print("here have a fish!")
)
)