diff --git a/src/p_user.c b/src/p_user.c
index 04c5e138797e7981dd71cc783db01edc2a1fab23..166027c8d1f4aefc5fb80c5cc63718dbc320eece 100644
--- a/src/p_user.c
+++ b/src/p_user.c
@@ -1342,7 +1342,7 @@ void P_DoSuperTransformation(player_t *player, boolean giverings)
 	P_SetPlayerMobjState(player->mo, S_PLAY_SUPER_TRANS1);
 
 	if (giverings)
-		player->rings += 50;
+		P_GivePlayerRings(player, 50)
 
 	// Just in case.
 	if (!(mapheaderinfo[gamemap-1]->levelflags & LF_NOSSMUSIC))