Help with a variable

I am trying to create a score variable. But when the action is played out the score doubles. I am not sure what I am doing wrong. I am very new to this and tried to follow the way the book showed me in one of the projects but it's not working on this game.
On my good guy sprite my code is:
When I receive start
if touching guard
broadcast caught
On my bad guy sprite my code is:
When I receive start
change score to 25
And I have a set score to 0 on my when flag clicked command on good guy sprite.

Am I missing something. Sorry don't know how to share the game for anyone else to see.

To share a project, click the file icon, select save as, then click share.

Are you sure you don't mean CHANGE SCORE BY 25?

This will keep broadcasting CAUGHT repeatedly until the sprites move apart.

I hope one of those things helps.

Thank you all I will implement the suggestions and verify codes. If there is still an issue I will share the link.

okay so I fixed it for the moment I think. I moved the SCRIPT; if touching guard then
broadcast caught; to the same script as costume change. So now it is all one SCRIPT that reads:
When I receive start
wait .3 secs
next costume
if touching guard
broadcast caugh
(close If)
(close forever)

It's the WAIT that's solving the problem for you; by then (I'm guessing) some other script has moved one of the sprites out of the way.