Put independent events in List
when you need a few of them. Then to separate while Sow/Reap - use tags in Sow - for example for 4 different events. I'll show all of them on a single plot to compare. Just use Manipulate or Animate or ListAnimate for your goal.
data = Block[{δ = 0.15, γ = 0.3},
Reap[NDSolve[{x''[t] + δ x'[t] - x[t] +
x[t]^3 == γ Cos[ t], x[0] == 0, x'[0] == 0,
WhenEvent[{Mod[t, 2 π] == 0, Mod[t, 2 π] == π/2,
Mod[t, 2 π] == π, Mod[t, 2 π] == (3 π)/2},
Sow[{x[t], x'[t]}, Round@Mod[t, 2 π]]]}, {}, {t, 0,
100000}, MaxSteps -> ∞]]];
ListPlot[data[[2]], ImageSize -> Medium,
PlotRange -> {{-1.5, 1.5}, All}, PlotStyle -> PointSize[0.0025]]