During cribbage play, (three) players play (for example) 7-9-8, last player scores 3, and the next player plays a 7 and claims that he scores 3 points for the last three cards. Is that double-counting and not allowed, or is it fair?
According to the rules at Bicycle's site the pegging rules state:
For adding a card that forms, with those just played: [...] a sequence of three Peg 3
There is no requirement that the cards are played in order, which is of course why 7-9-8 is a 3 point sequence.
It is important to keep track of the order in which cards are played to determine whether what looks like a sequence or a run has been interrupted by a "foreign" card.
The example given is 8-7-7-6. Playing the 6 here does not form a run as the 2nd 7 disrupts the run with the 8.
In your scenario 7-9-8-7 there is a sequence 9-8-7 formed which is valid for 3 points.
The easy way to remember this is you peg the number of cards in the run. 9-8-7 is a run, so away you go with 3 points. If I play AA and you play A I don't get to say "Hey, wait a second, I already scored the points on that pair". You'd say so what? Now I have AAA and that's 6 points. Same idea here.