Does this work?
NPC Code:
if (weaponfired) {
for (i=0;i<playerscount;i++)
hitplayer i,1,playerx,playery;
}
Because if it does, testplayer isn't working properly, or isn't being used properly. (Since you need to add 1.5 and 2 to a players x and y respectively to make it detect the actual player.)