The man was a passenger in a car with five other occupants, and the driver had stopped on the side of the highway because the 33-year-old was feeling sick.
Police said the passenger was under the influence of alcohol and wearing dark clothing when he stepped on to the road and was hit by a northbound Mitsubishi vehicle travelling at 70kmh about 10.20pm.
Senior Sergeant Cynthia Fairley said the stationary vehicle had its headlights on, but no other indicators or hazard lights.
''As the Mitsubishi went north, the passenger is believed to have been outside the parked vehicle. The passenger went out on to the road and was hit by the Mitsubishi,'' Snr Sgt Fairley said.
Police, St John and Fire Service crews attended the incident.
The injured man was taken by helicopter to Dunedin Hospital in a critical condition.
The Mitsubishi was retained for inspection, Snr Sgt Fairley said.