I tried the script on TFS 1.3 and it works as expected, so it should work on 1.2 as well.
You just need to change player:addItem("fish", 1) to player:addItem(2667, 1) at the end of the script, otherwise you get the wrong fish, at least on TFS 1.3.
You said it works when you reload actions, so...