然而,刘备千算万算,还是把成都里的张松给算漏了。张松不知道刘备的计策,以为刘备军是真撤退,于是连忙写信劝他留下,结果被他的哥哥张肃知道。这个亲哥哥害怕弟弟会连累自己,竟向刘璋告发了此事。
刘璋这时候才恍然大悟:原来刘备入蜀从一开始就是一场阴谋。他生气之下,一方面将内奸张松杀掉,一方面下令成守白水关的诸将不要给刘备送文书,也不要与刘备有任何联络通信。刘备知道后非常生气,他“召璋白水军督杨怀,责以无礼,斩之”。两人自此彻底撕破脸皮。
刘备派出黄忠、卓膺统兵攻占来涪县。攻下涪县后的刘备志得意满,开始大宴群臣,似乎没有了一开始时那种信义的束缚了,他对庞统说:“今天这场宴会真是快乐致极。”庞统却在旁边冷不丁地泼了一盆冷水说道:“把讨伐别国的行为当作快乐,不是仁者之兵。”场面顿时陷入一片尴尬,所有官员都被旁听的一句话搞懵逼了。刘备对此非常生气,他说:“周武王讨伐商纣王,前歌后舞,难道也不是仁义之师吗?你这话说的不对,赶快给我滚出去。”庞统没作任何辩解,直接就起身退了出去。过一会儿,刘备就后悔了,于是又厚着脸皮硬把庞统请了回来。庞统回到原来的位置上坐下,既不看刘备,也不道歉,只顾着自己吃喝。场面又一度十分尴尬。
刘备为了“活跃气氛”对庞统说道:“刚才我们的争论,到底是谁的过失?”庞统说:“你我君臣都有过失。”刘备听后哈哈大笑,酒宴终于恢复到原来欢乐的气氛。
刘备的错是之前拿着仁义的标准来衡量自己的行为,导致做什么事都放不开手脚。而庞统的错就是拿刘备之前的标准来衡量此时正在讨伐益州的刘备。那话虽然是出自庞统之口,但观点却来自刘备。庞统说自己也有错,其实是否定刘备之前那套以信义为做事标准的价值观。因此归根解底还是刘备的错。刘备也明白庞统的良苦用心,虚心接受批评。日后刘备做事终于可以放开手脚,不必再顾及自己的行为是否符合自己的那套标准。
建安十八年(公元213年),刘璋派出将刘璝、冷苞、张任、邓贤、吴懿等前去抵御刘备,结果都被刘备打败。他们不得不退守绵竹,其中吴懿率军投降了刘备。刘璋又派护军南阳的李严和江夏的费观去统兵驻守绵竹的各路兵马,结果他们俩直接率部投敌,这使得刘备的势力一下子变得十分强大。
刘备派军队占领周围的郡县,还把刘璋的儿子刘循围困在雒城,就当刘备以为会一路顺风地打下去之时,上天却立刻给了他当头一棒。在围攻雒城战中,庞统被流失射中而死,时年36岁。刘备对庞统的死感到非常悲痛和惋惜,每次提起庞统的名字就忍不住流泪。
当时南阳的张存向来不服庞统,他说:“庞统虽然尽忠可惜,但是他违背大雅之义。”旁边的刘备一听,勃然大怒地说道:“庞军师已经杀身成仁,你还一边说他风凉话。”于是,立刻便罢免了张存的官职。
平定益州后,刘备又为了表彰庞统的功勋,追赐庞统为关内侯。还任命庞统的父亲为议郎,后升任谏议大夫,就连诸葛丞相见了都要行跪之礼。