New Zealand cricketer Jesse Ryder's condition was improving and he was responding to medical staff and his family on Friday as police said they had arrested a 20-year-old man in connection with the alleged assault.
New Zealand Police (NZP) said the man had been charged with assault on Thursday and would appear in court on April 4.
They were also speaking to a 37-year-old man, a relative of the man charged, in relation to the incidents, Detective Senior Sergeant Brian Archer told reporters on Friday.
Ryder, 28, was rushed to hospital early on Thursday with serious head injuries after being involved in two altercations outside a bar and fast food restaurant in Merivale, a suburb of Christchurch.
Police said on Friday it now appeared that only two men were involved in the first altercation with Ryder, and one in the second.
Local media reported Ryder, who was in a critical condition on Thursday, had sustained a fractured skull and a collapsed lung in the alleged assault.
New Zealand Cricket Players Association chief executive Heath Mills said that Ryder's condition had improved on Friday.
"He has been responsive and has been interacting with his family and his medical team, Jesse is still in an induced coma and is still needing support with breathing following an injury to his lungs," Mills told the TVNZ website.
"In terms of a head injury it cannot be fully determined at this stage what the effects of a knock to Jesse's head are, we will know more once he comes out of the coma."
Ryder had been expected to travel to India for the lucrative Twenty20 tournament with the Delhi Daredevils this week, but had been in a self-imposed exile from international cricket after a series of alcohol-related incidents.
Despite publicly swearing off alcohol, Ryder had begun drinking again in recent weeks, Mills said on Thursday.
Police, however, told reporters on Thursday that they did not think alcohol was a factor in the alleged assault.
Ryder was not expected to return to international cricket for New Zealand's tour of England in May-June, following their 0-0 draw in the recently completed home test series.
An aggressive batsman with a superb eye and delicate touch, Ryder has made 1,269 runs in 18 Tests at an average of 40.93 with a highest score of 201 and 1,100 runs in 39 One-day internationals at 34.37.