首先,这里的soldier应该改为soldiers。另外,逗号前的独立分词结构(独立主格结构)中的having stopped宜解释为现在分词完成式(体)。
正如网友所言,这里的stopped宜解释为不及物动词过去分词,而风雨雷电这类自然现象作为主语时,stopped不宜解释为及物动词过去分词,因为它们的停止,不是被施加外力使之停止的结果。但是,如果说是影视剧或者文学作品里的描述,雨的停止是外力的结果,那则另当别论。因为,正常的逻辑,雨停止,stop解释为不及物动词比较合适,这里的C项,用现在分词完成式,表示时间先于谓语动词continue的时间。
如果选择B项,stopped则解释为限定动词过去式,而不是非限定动词过去分词,两分句间需要有从属连词或者并列连词连接,两分句间存在时间或因果关系。但是,实际语言现象中,存在“逗号句”现象。但是,建议不宜模仿使用此类逗号句。关于“逗号句”,可以参考以下文章。http://www.yygrammar.com/Article/201311/3526.html
仅供参考。