霍元甲(赵文卓 饰)(李连杰 饰)对刘振声(贾宏伟 饰)等人说,他曾说过习武之人要做民之表率,一辈子不能染上烟瘾,若有违约,必废武功,逐出师门,今日他染上烟瘾,虽为奸人所致,但绝不能自暴自弃,他问过费德勒(福乐克 饰),如何戒掉烟瘾,费德勒说世间无此良药,他思前想后,毒瘾是心魔所致,他决定驱除心魔。刘振声问怎么个驱除法时,许大有(周斌 饰)拿来麻绳,霍元甲让徒弟把他绑在屋子里,无论他怎么喊,怎么骂都不要理,一个月为限,要么他驱除心魔,戒掉毒瘾;要么死在屋子。刘振声等人不帮,王氏(毛林林 饰)在外听到霍元甲说的话,便进来对霍元甲说,霍元甲愿跟毒瘾一战,她为霍元甲擂鼓助威。
王氏亲手把霍元甲绑在椅子上后,见霍母(哈斯高娃 饰)(鲍起静 饰),替霍元甲传话,如果毒瘾没戒成,霍元甲无颜见娘。黄文发(寇家瑞 饰)教师弟们学武,王氏听费德勒说,霍元甲三天的情况不好。王氏亲自给霍元甲送饭。轮到许大有教授武功,费德勒告诉王氏,霍元甲决定不用镇定剂,还说三天内不吃饭,锁门不见任何人。霍元甲已挺过五天,费德勒觉得霍元甲不必对自己残忍,王氏听后,让刘振声锁门。下雨天,王氏忍不住去看霍元甲,到了门口,王氏忍住不开门,站在门外,听见霍元甲撕心裂肺的呼喊声,王氏很是心痛。
有一天,天津八极门的八极三雄带着弟子(吴晗 饰)们,闯进霍家,让刘振声等人把吸烟的霍元甲叫出来,刘振声不承认霍元甲吸烟。八极三雄让人把福寿堂姓孙的掌柜押上来,问孙掌柜,一个月前,霍家有人去过福寿堂吗?孙掌柜说霍母去过福寿堂买了烟枪烟灯跟福寿膏,刘振声等人不敢找霍母对质。两方闹得不可开交时,农劲荪(吴超 饰)(董勇 饰)来了。农劲荪对外宣称,霍元甲生病,不宜见客。沙燕(王之一 饰)听到看见八极三雄带头闹事。立马告诉霍母,霍母没有见过福寿堂的孙掌柜。王氏知道呂四鹰想让霍元甲身败名裂,便来到门口。
王氏听见八极三雄想砸了销烟大侠的牌匾,让许大有取来牌匾。黄文发等人忍无可忍,打算动手时,霍元甲和许大有抬着出现了。众人见精神十足的霍元甲,不像是抽大烟的样子。八极门的二掌门让霍元甲砸了牌匾,霍元甲不不砸,他帮霍元甲砸。霍元甲跟二掌门过招中,猜到对方来自天津八极门的八极三雄。八极三雄跟霍家有渊源,霍元甲向八极三雄坦诚,他确实不幸染上烟瘾,却从未抽过大烟,八极三雄听不明白,费德勒为霍元甲作证。八极三雄的大掌门不相信洋人费德勒的话,说霍元甲如果能接过他三招,他就相信霍元甲没有抽过大烟。
霍元甲不敢以下犯上,便向大家展示八极拳,八极三雄见霍元甲打八极拳的样子,不像是吸过大烟。霍元甲声称自己被人陷害,不幸染上烟瘾,如今在费德勒的帮助下,成功戒掉大烟,随后在众人全面耍霍家枪,八极三雄夸霍元甲不幸染上烟瘾,成功戒掉烟瘾的霍元甲勇气可嘉,百姓也放心把自家的孩子交给霍元甲。霍母抱着霍元甲哭,霍元甲成功戒掉烟瘾,霍母不停地夸霍元甲是个英雄。霍东方(梁家桐 饰)找霍元甲说,他也要学功夫,霍元甲不让霍东方学功夫。霍东方想让高奇(许政国 饰)教他功夫,霍元甲听霍东方说高奇杀人。
贝特朗(克拉克 饰)来到霍家,霍元甲不欢迎贝特朗。贝特朗让手下把常德利(于洪州 饰)的尸体抬上来,霍元甲得知常德利死于暗器,便让贝特朗把尸体抬走,他跟徒弟·不会使用暗器。贝特朗跟霍元甲僵持不下时,刘大人(张志伟 饰)来了。刘大卫替霍元甲解围,贝特朗表示如果找到霍元甲杀人的证据,霍元甲就死定了。根据条约,天津城外二十里外不得驻军,刘大人相仿西洋组建巡警总局,霍元甲听刘大人招募巡警,立马高奇推荐给刘大人。霍元甲让高奇当警察,高奇不愿意。高奇找沙燕说,他愿意跟沙燕回十三里岗,给杀狼当二当家,沙燕不跟高奇走,高奇以为沙燕看上刘振声了,随后跟霍元甲高密,想独占沙燕。