Joseph,
This will do what you want:
switch = WhenEvent[
x[t] == -4, {Print["t=", t, " x(0)=", x[t], " x'(0)=", x'[t]],
x'[t] -> 2*x'[t], x[t] -> -2,
Print["After bump: t=", t, " x(0)=", x[t], " x'(0)=", x'[t]]}];
solution =
NDSolve[{eqn, initialconditions, switch}, {x[t], x'[t]}, {t, 0,
5}];
Plot[Evaluate[x[t]] /. solution, {t, 0, .4}, PlotRange -> All,
PlotLabel -> "x(t)"]
Plot[Evaluate[x'[t]] /. solution, {t, 0, .4}, PlotRange -> All,
PlotLabel -> "v(t)"]
Regards,
Neil