• 2008-10-21

    『神話』

    直到最近才觀摩了成龍帶給我們的虛實交融的神話,可能是看的電影確實很少吧,雖然可以感覺到這部片子的內涵很少,但是還是情不自禁地被動人的情感所打動……

    現實和歷史的交合實在是太如合一契了,雖然1.2億港元拍攝的大片在計算機技術上還有一些毛刺,但是傳神的鏡頭語言給我們帶來的是一種視覺享受與精神愉悅。

    秦國大將蒙毅(成龍)奉命保衛金國公主玉漱(金喜善),金國叛軍為了不讓和親一事達成,圍困了秦國護送者,蒙毅為了履行自己的使命以死保護玉漱,最終和玉漱一起跌入了萬丈深淵……鏡頭切回了現代社會,考古學家jack從夢中驚醒,他已經不止一次夢到這樣的場景了,夢中那個女子究竟是誰?這離奇的夢和他到底有著什么樣的關聯?一系列的問題使他輾轉反側。

    一日,考古學家william(梁家輝)前來邀請jack參加一項頂尖宇宙神秘漂浮力量的研究,于是他們一同去了印度帝沙。果然,有一位僧侶正在表演懸浮術,無數僧人在膜拜。他們悄悄潛入神殿,發現神殿中有一個巨大的石棺正懸浮在空中,石棺旁邊還有一把鋒利無比的寶劍!這時,貪婪的william撬走了石像上的隕石眼睛,石棺突然恢復了重力,直墜地面,在棺頂的背面,jack發現了夢中一直出現的那個令他魂牽夢縈的神秘女子畫像。這驚動了膜拜的僧人,他們追來,jack意外墜落了河流,暈死了過去。

    在夢中,他看見了自己揮動寶劍與金國叛賊殊死搏斗,保衛玉漱公主的場景,他的手被劃開了一個巨大的口子,劇烈的疼痛使他暈了過去,玉漱公主用自己的玉簪和頭發為他縫合了傷口……jack的尸體漂流到了下游,一個印度女子救了他,慢慢地恢復了。jack見到了一位印度的高僧,在拿著那把石棺旁的神秘寶劍參加比武之后,高僧告訴他,他與這把寶劍有著前世的緣分。看著遠方的雪山,jack陷入了沉思。他看到了蒙毅為了守衛玉漱公主,在山洞外被凍僵了,玉漱心疼地用身體為他取暖,他們彼此相愛了,但是,蒙毅時刻不忘他的使命,決定把公主送回秦國,為秦金兩國的社稷的安詳而赴湯蹈火……

    突然,jack的夢境被打斷了,印度少女趕來告訴他,警察追來了,他們一路躲避,終于在膠水廠把警察甩掉了。在印度少女的幫助下,jack成功地回到了中國西安兵馬俑基地,把寶劍和神秘女子的畫像交還給了博物館。此時,趕來的Williams卻因文物應該如何處理與jack發生了爭執。后來william才得知暗中資助自己進行科研的竟然是因盜墓遭到jack的揭發而失去教授資格的邪惡的古博士。在利益的誘惑下,William決定與古博士合作找出數次在jack夢中出現的那個墓穴。

    回去后,jack研究了秦國的歷史,得知了蒙毅的一段可歌可泣的事跡:秦王嬴政隨部隊戰斗在外,年邁而重病,朝中術士研制出長身不老之仙藥,而護送仙藥的部隊卻被叛軍圍困在山外。若嬴政過世,玉漱難免成為殉葬品。蒙毅主動請命取回仙藥。在與叛軍的作戰中因為寡不敵眾,蒙毅將仙藥交給了副將南宮,囑咐一定要交給秦王。而蒙毅卻最終壯烈犧牲了。

    于是,他們來到了驪山的一座瀑布前,經探查,瀑布后隱藏著一個巨大的洞穴,jack渾身裝備以后進入了瀑布。奇跡般地,jack見到了夢中的那個白衣女子玉漱,他不敢相信自己的眼睛。玉漱也異常激動,他看到了jack那熟悉的面龐和右手的傷疤,那是她用青絲為蒙毅縫合的,她以為蒙毅履行自己千年的承諾回來找她了。在墓穴里,jack還看到了存活下來的副將南宮。這到底是怎么回事呢?冥冥中他回憶起蒙毅死前英勇殺敵的情景,原來南宮帶回仙藥以后,太監們懷疑仙藥的真假,讓南宮親自試藥,也逼玉漱也吃了仙藥,然而秦王卻沒有能夠服下仙藥便一命嗚呼了,于是他們倆活了下來,玉漱為了等待那長相廝守的承諾,在這仙洞里苦苦守了兩千多年!

    這時,古先生帶著人馬也進了山洞,他們要洗劫這古墓。混戰中,南宮的身手不敵古先生修煉的太極,被打得遍體鱗傷。貪心的william又撬動了石像上的寶石,無數懸浮在空中的兵馬俑和宮殿開始塌方,而William也被掉落的巨石壓住,地面的防盜墓裝置啟動了,大片的水銀溢出來,william臨死前,把隕石交給了jack,讓他幫他完成未完成的研究。古先生想沖上天宮去拿長身不老藥,卻被南宮拉住了腳,他們一起墜落了無底深淵……jack拉著玉漱讓她逃走,可是玉漱沒有答應,她固執地要留在這里等待蒙毅回來,一直等下去,等待他來兌現諾言,她的眼里噙滿了淚水……

    悲欢岁月唯有爱是永远的神话

    谁都没有遗忘古老古老的誓言

    你的泪水化为漫天飞舞的彩蝶

    爱是翼下之风两心相随自在飞

  • 2008-10-05

    感谢敌人

    感谢我的敌人,在我开心的时候给我泼冷水,在我成功之前按给我制造困难,感谢敌人,不断给我制造压力,感谢我的敌人,在我成功的时候给我战胜你的快乐感觉。
  • as3编译器错误中文说明

    1000 对 _ 的引用不明确。 引用可能指向多项。例如,下面使用了 rss 和 xml 命名空间。每个命名空间为 hello() 函数定义了不同的值。trace(hello()) 语句返回此错误,因为它无法确定使用哪个命名空间。 private namespace rss; private namespace xml; public function ErrorExamples() { use namespace rss; use namespace xml; trace(hello()); } rss function hello():String { return “hola”; } xml function hello():String { return “foo”; } 通过使用具体的引用来纠正不明确的引用。下面的示例 使用 namespace::function 这种格式指定所要使用的命名空间: public function ErrorExamples() { trace(rss::hello()); trace(xml::hello()); }

    1003 不允许将访问说明符与命名空间属性结合使用。 不能在定义中同时使用访问说明符(如私有或公共)和命名空间属性。

    1004 找不到命名空间,或者命名空间不是编译时常量。 该命名空间未知,或是运行时可能具有不同值的表达式。检查命名空间的拼写及其定义的导入是否正确。

     1006 super 表达式只能在类实例方法的内部使用。

    1007 super 语句只能在类实例构造函数的内部使用。 不能在静态成员的内部使用 super 语句。只能在类实例的内部使用 super 语句。

    1008 属性无效。

    1010 override 属性只能在类的属性定义中使用。 不能在函数块的内部使用 override 关键字。

    1011 virtual 属性只能在类的属性定义中使用。 声明的属性不属于某个类时(例如在函数块的内部声明某个变量时),不能使用 virtual 属性。

     1012 static 属性只能在类内部的定义中使用。

    1013 private 属性只能在类的属性定义中使用。

    1014 不再支持 intrinsic 属性。 ActionScript 3.0 不支持 intrinsic 关键字。

     1016 基类为 final 类。 无法扩展超类,因为它标记为 final。

    1017 找不到基类 _ 的定义。

    1018 类的定义 _ 重复。

    1020 标记为 override 的方法必须覆盖其它方法。

     1021 函数的定义重复。 在同一个范围内,不能使用相同的标识符名称声明多个函数。

     1022 不能覆盖 final 存取器。

    1023 覆盖不兼容。 标记为 override 的函数必须与所要覆盖的函数的参数和返回类型声明完全匹配。它必须具有相同数量的参数,且每个参数的类型相同,还必须声明相同的返回类型。如果任何一个参数是可选的,该函数也必须与此参数匹配。这两个函数还必须使用相同的访问说明符(如公共和私有等)或命名空间属性。

    1024 覆盖没有标记为 override 的函数。 如果某个类中的方法覆盖基类中的方法,则必须使用 override 属性对其进行显式声明,如下面的示例所示: public override function foo():void{};

    1025 不能重新定义 final 方法。 不能扩展该方法,因为它在基类中标记为 final。

    1026 构造函数必须是实例方法。

     1027 函数不能同时为 static 和 override 函数。

    1028 函数不能同时为 static 和 virtual 函数。

    1029 函数不能同时为 final 和 virtual 函数。

    1030 必须指定变量参数数组的名称。 …(rest) 参数定义指定:…(rest) 之后提供的所有值都收集到任一数组中。必须指定该数组的名称,如 function foo(x,…(rest)) 表达式中所示。

    1033 不支持 virtual 变量。

    1034 变量不能是 native。

    1035 变量不能同时为 final 和 virtual。

    1037 不能嵌套包。

    1038 找不到 break 语句的目标。

    1039 找不到 continue 语句的目标。

    1040 标签的定义重复。

    1041 属性是不可调用的。

    1042 this 关键字不能在 static 方法中使用。它只能在实例方法、函数闭包和全局代码中使用。 不能在静态成员的内部使用 this 关键字,因为 this 可能没有上下文。

    1043 命名空间未定义。

    1044 接口方法 _(属于命名空间 _)未经类 _ 实现。

    1045 找不到接口 _。

    1046 找不到类型,或者类型不是编译时常量 _。 用作类型声明的类未知,或是运行时可能具有不同值的表达式。检查导入的类是否正确以及该类的包位置是否尚未更改。此外,检查包含代码的包(不是导入的类)是否正确定义(例如,确保使用正确的 ActionScript 3.0 包语法,而不是 ActionScript 2.0 包语法)。如果所要引用的类没有在使用的命名空间中定义或未定义为公共,也会出现该错误: public class Foo{} 如果正在使用 Flex? Builder? 2 并且该类存在于库中,请确保为项目设置类路径。

    1047 参数的初始值未知,或不是编译时常量。 用作该参数默认值的值未定义或在运行时可能具有不同的值。检查初始值设定项的拼写是否正确,以及初始值设定项的值是不是一个会在运行时导致产生不同值的表达式。

    1048 方法不能用作构造函数。 不能创建类方法的实例。只有全局函数才能在 new 表达式中使用。 class D { function xx() { return 22; } } var d = new D(); var x = new d.xx(); // 错误,方法不能用作构造函数 function yy() { this.a = 22; } var z = new yy(); // 无错误,全局函数可以用作构造函数。

    1049 对指定为常量的变量的赋值非法。

    1050 不能赋给非引用值。

    1051 返回值必须是 undefined。 正在试图在声明了 void 返回类型的方法中使用 return 语句。

    1052 常量的初始值未知,或不是编译时常量。 用来初始化该常量的值是 undefined,或在运行时可能具有不同的值。检查初始值设定项的拼写是否正确,以及初始值设定项的值是不是一个会在运行时导致产生不同值的表达式。 1053 存取器类型必须匹配。

    1054 setter 定义的返回类型必须是 unspecified 或 void。 不能为 setter 函数指定返回值。例如,下面的语句无效: public function set gamma(g:Number):Number; 下面的语句是 有效的: public function set gamma(g:Number):void;

    1058 属性是只写的。

    1059 属性是只读的。

    此属性通过 getter 函数定义,因此,可以检索该属性的值。但是,不存在为此属性定义的 setter 函数,因此,该属性是只读的。 在下面的示例中,第 3 行会生成错误,因为不存在为 xx 定义的 setter 函数: class D { function get xx() { return 22; } } var d = new D(); d.xx = 44; // 错误,属性是只读的

     1061 调用可能未定义的方法 _(通过静态类型为 _ 的引用来调用)。 所要调用的方法未定义。

    1063 无法打开文件 _。

     1064 元数据无效。 无法识别此元数据。

    1065 元数据的属性不能包含多个元素。

     1067 将 _ 类型的值隐式强制为无关 _ 类型。 正在试图将对象转换为无法转换成的类型。如果所要转换的类不在正在转换的对象继承链中,可能会出现这种情况。仅当编译器在严格模式下运行时,才会出现这种错误。 1068 无法打开包含的文件 _。

    1069 语法错误:应有定义或指令。 检查该行中的语法。

    1071 语法错误:定义关键字(如 function)应在属性 _ 之后,而不是 _ 之后。 如果作者忘记在声明中使用“var”和“function”关键字,将会出现此错误。 public int z;// 应为“public var z:int;” 编译器遇到意外字符时,也会出现此错误。例如,由于缺少括号,下面使用的 trace() 函数无效(正确的语法是 trace(”hello”)): import flash.utils.trace; trace “hello”

    1072 语法错误:命名空间之前应有 xml。 正确的语句语法是 default xml namespace = ns。或者缺少关键字 xml(注意小写),或者使用了错误的关键字。有关详细信息,请参阅默认的 xml 命名空间指令。 1073 语法错误:应有 catch 或 finally 子句。

    1075 语法错误:如果没有“in”运算符,则不允许使用“each”关键字。

     1076 语法错误:标识符之前应有左括号。 1077 应有 CaseLabel。 在 switch 块中,编译器此时应该执行 case 语句。下面的 switch 块错误地在第一个 case 语句之前包含对 print 的调用: switch(x) { trace(2); case 0: trace(0); break }

    1078 标签必须是一个简单的标识符。

    1079 super 表达式必须具有一个操作数。

    1080 应有递增或递减运算符。

    1082 括号内应有一个表达式。

    1083 语法错误:遇到意外的 _。 代码行缺少某些信息。在下面的示例中,最后一个加号的后面必须带有某个表达式(如其它数字): var sum:int = 1 + 2 + ;

    1084 语法错误:应有 _(_ 之前)。 此处不需要该表达式。如果错误是“程序结束之前应有右括号”,则表示代码块缺少右大括号 (})。 如果错误是“_ 之前应有左括号”,则表示条件表达式中可能遗漏括号,如下面的示例(有意出错)所示: var fact:int = 1 * 2 * 3; if fact > 2 { var bigger:Boolean = true; }

    1086 语法错误:_ 之前应有分号。

    1087 语法错误:程序结束之后找到额外的字符。

     1093 语法错误。

    1094 语法错误:字符串文字必须在换行符之前终止。

    1095 语法错误:字符串文字必须在换行符之前终止。

     1097 语法错误:输入已在到达字符串文字的右引号之前结束。

    1099 语法错误。

    1100 语法错误:XML 没有匹配的开始和结束标签。

     1102 不能删除超级后代。

    1103 命名空间的定义重复。 已多次定义该命名空间。请删除或修改重复的定义。

    1105 赋值的目标必须是引用值。 可以给变量赋值,但是不能将一个值赋给另外一个值。

    1106 递增操作数必须是引用。 操作数必须是变量、数组中的元素或对象的属性。

    1107 递增操作数无效。 操作数必须是变量、数组中的元素或对象的属性。

    1108 递减操作数无效。 操作数必须是变量、数组中的元素或对象的属性。

    1109 应有表达式。 代码的一部分缺少表达式。例如,下面的代码会生成此错误(if 语句中缺少某项条件): var x = (5 > 2) ? trace(x)

    1110 缺少 XML 标签名称。

     1112 可能会出现无限递归问题,因为此文件包含 _。 所要编译的源代码中包含的某文件中包含可能导致无限循环的其它 include 语句。例如,下面的 a.as 和 b.as 文件会生成此错误,因为每个文件都试图包含另外一个文件。 文件 a.as 中包含以下代码,它试图包含文件 b.as: import foo.bar.baz; include “b.as” trace(2); 文件 b.as 包含以下代码,它试图包含文件 a.as: include “a.as” 1113 在 _ 中检测到循环类型引用。 类正在尝试扩展超类。例如,如果类 B 从类 A 继承而来,则 A 不能扩展 B: class a extends b { } class b extends a { }

    1114 public 属性只能在包的内部使用。

     1115 internal 属性只能在包的内部使用。

    1116 用户定义的命名空间属性只能在顶级的类定义中使用。

    1118 将静态类型为 _ 的值隐式强制为可能无关的类型 _。 所要使用的值不是预期的类型,不存在将其转换为预期类型的隐式强制。 可能使用的是超级类型,但需要的是子类型。例如: class A {} var a:A = new A(); class B extends A { function f() } var b : B = a // 错误 最后一个语句会出错,因为该语句尝试将类型 A 的对象赋给类型 B 的变量。 同样,下面定义的 foo() 函数采用了类型为 B 的参数。语句 foo(a); 会出错,因为该语句试图使用类型为 A 的参数: function foo(x:B) { } foo(a); 此外,下面的语句也会出错,因为 foo2() 的返回值必须为类型 B: function foo2():B { return new A(); }

    1119 访问可能未定义的属性 _(通过静态类型为 _ 的引用来访问)。 正在尝试访问的属性对于指定对象不存在。例如,下面的代码会生成此错误,因为 int 对象没有名为 assortment 的属性: var i:int = 44; var str:String = i.assortment; 仅当编译器在严格模式下运行时,才会出现这种错误。

     1120 访问未定义的属性 _。 正在试图访问未定义的变量。例如,如果尚未定义变量 huh,调用该变量时会生成此错误: huh = 55; 只有编译器在严格模式下运行时,才会出现此错误。

     1121 getter 定义不能包含参数。

    1122 setter 定义只能包含一个参数。

     1123 setter 定义不能包含可选参数。

     1124 getter 定义的返回类型不能为 void。 getter 函数模拟变量。由于变量类型不能为 void,因此不能将 getter 函数声明为返回类型 void。

    1125 接口中定义的方法不能包含方法体。

    1126 函数没有函数体。

    1127 已多次指定属性 _。 在同一语句中多次指定了某个属性。例如,语句 public static public var x; 会生成此错误,因为该语句两次指定变量 x 是公共变量。请删除重复的声明。

    1129 接口的定义 _ 重复。 请更改或删除重复的定义。

     1130 构造函数不能指定返回类型。

    1131 不能嵌套类。

    1132 final 属性只能在类中定义的方法内使用。

    1133 native 属性只能与函数定义结合使用。

    1134 dynamic 属性只能与类定义结合使用。

    1135 语法错误:_ 不是有效类型。

    1136 参数数目不正确。数目应为 _。 函数需要的参数数目与提供的参数数目不同。例如, 下面定义的函数 goo 具有两个参数: class A { static function goo(x:int,y:int) { return(x+y); } } 下面的语句可能会出错,因为该语句提供了三个参数: A.goo(1,2,3);

     1137 参数数目不正确。不应超过 _ 个。

     1138 可选参数之后不允许有必需的参数。

    1139 不允许在接口中声明变量。

    1140 如果参数是在 …rest 参数定义关键字之后指定的,则只能是 Array 数据类型。

    1141 一个类只能扩展另外一个类,而不能扩展接口。

    1142 一个接口只能扩展另外一个接口,但 _ 是一个类。 正在试图使用接口扩展类。一个接口只能扩展另外一个 接口。

    1143 override 属性只能在类中定义的方法内使用。

    1144 接口方法 _(属于命名空间 _)使用类 _ 中不兼容的签名进行实现。 方法签名必须完全匹配。

    1145 Native 方法不能包含方法体。 不能使用 native,因为它是一个保留关键字。

    1146 构造函数不能是 getter 或 setter 方法。

     1147 未指定 AS 源文件。

     1149 return 语句不能在静态初始化代码中使用。

     1150 protected 属性只能在类的属性定义中使用。

    1151 定义 _(属于命名空间 _)存在冲突。 在同一个范围内,不能使用相同的标识符名称声明多个变量,除非所有这些变量都声明为相同的类型。在 ActionScript 3.0 中,不同的代码 块(例如在同一个函数定义中的两个 for 循环中使用的块) 视为属于同一个范围。 下面的代码示例可以正确地将变量 x 转换为相同类型: function test() { var x:int = 3; for(var x:int = 33; x < 55; x++) trace(x); for(var x:int = 11; x < 33; x++) trace(x) } 下面的代码示例会生成错误,因为变量声明和 for 循环中的类型转换是不同的: function test() { var x:String = “The answer is”; for(var x:int = 33; x < 55; x++) // 错误 trace(x); for(var x:unit = 11; x < 33; x++) // 错误 trace(x) } 1152 继承的定义 _(属于命名空间 _)存在冲突。

    1153 只能将构造函数声明为公共函数。

    1154 只能在定义中指定 public、private、protected 或 internal 之一。

    1155 不能在其它函数的内部嵌套存取器。

    1156 不能使用新运算符实例化接口。

     1157 接口成员不能声明为 public、private、protected 或 internal。

    1158 语法错误:函数体之前缺少左大括号 ({)。

    1159 return 语句不能在包的初始化代码中使用。

    1160 native 属性不能在接口定义中使用。 不能使用 native,因为它是一个保留关键字。

     1162 每个定义中只能使用一个命名空间属性。

    1163 方法 _ 与从接口 _ 继承的定义冲突。

    1165 接口属性 _ 无效。

    1166 Namespace declarations are not permitted in interfaces.

    1167 类 _ 多次实现接口 _。 该类多次实现同一个接口。例如,下面的示例会生成此错误,因为类 C 两次实现接口 A: interface A { public function f(); }; class C implements A,A { public function f() { trace(”f”); } } 正确的实现语句应为 class C implements A {。

    1168 Illegal assignment to function _. 正在试图重新定义函数。例如,下面定义的函数 topLevel() 要输出“top”一词。第二个语句会生成错误,因为该语句赋给该函数不同的返回值: function topLevel() { trace(”top”); } topLevel = function() { trace(”replacement works in ~”);} // 错误

    1169 不允许在接口方法中使用命名空间属性。

    1170 函数没有返回值。 如果返回类型不是 void,函数中每个可能的控制流都必须返回值。下面的函数 f(x) 不会生成错误,因为 if..else 语句总是返回值: function f(x):int { if (x) return 2; else return 3; } // 无错误 但是,下面的函数 g(x) 会生成该错误,因为 switch 语句并非总是返回值。 function g(x:int):int { switch(x) { case 1: return 1; case 2: return 2: } // return 2;//取消注释可清除该错误 } 只有函数声明的返回类型不是 void 时,才启用此检查。

    1171 命名空间初始值必须是文字字符串或其它命名空间。

    1172 找不到定义 _。

     1173 标签定义无效。

    1176 将静态类型为 _ 的值与可能无关的类型 _ 进行了比较。 在严格模式下会生成此错误。

    1177 return 语句不能在全局初始化代码中使用。

    1178 尝试访问不可访问的属性 _(通过静态类型为 _ 的引用)。

     1180 调用可能未定义的方法 _。 仅当编译器在严格模式下运行时,才会出现这种错误。

    1181 转发对基类 _ 的引用。

    1182 包不能用作值 _。

    1184 使用了类型 _ 的不兼容默认值,但是应为 _。

     1185 switch 包含多个默认值,但是只能使用一个默认值。

    1188 对类 _ 的赋值非法。

    1189 试图删除固定属性 _。只能删除动态定义的属性。 delete 会从对象中动态删除定义的属性。不能删除类的声明属性。仅当编译器在严格模式下运行时,才会出现这种错误。

     1190 找不到基类,或基类不是编译时常量。

    1191 找不到接口,或接口不是编译时常量。

     1192 不允许在命名空间定义中使用 static 属性。

    1193 不能在类或其它接口定义中嵌套接口定义。

    1194 prototype 属性无效。

     1195 试图访问不可访问的方法 _(通过静态类型为 _ 的引用)。 要么从其它类调用 private 方法,要么调用未使用的命名空间中定义的方法。如果调用的是未使用的命名空间中定义的方法,请为必需的命名空间添加 use 语句。

     1196 语法错误:throw 之后应有表达式。

    1197 类 _ 不能扩展 _,因为二者都与库符号或主时间轴关联。

    1198 不允许在包的定义中使用属性。

     1199 内部错误:_。

    1200 语法错误:for-in 初始值无效,只能有 1 个表达式。

    1201 this、super、return 或 throw 语句之后不能出现 super 语句。

     1202 访问未定义的属性 _(属于包 _)。 正在试图访问包中未定义的变量。例如,如果尚未定义变量 p.huh,调用该变量时会生成此错误: p.huh = 55; 仅当编译器在严格模式下运行时,才会出现此错误。

    1203 在基类 _ 中未找到默认构造函数。 如果有 1 个或多个必选参数,则必须使用 super() 语句显式调用基类的构造函数。 1204 /* 无对应匹配项 */ . 发现了指示注释开始位置的字符“/*”,但未发现指示注释块结束位置的对应字符“*/”。

  • 2008-09-22

    声东击西 - [三十六计]

    庞涓连夜赶路,夺取了成皋。太子得知后,对自己的轻敌万分恼怒。韩王收到成皋失陷的消息后,痛恨自己当初没有听从孙膑的意见。回都以后,韩王卧床不起,太子前来看望,并且许诺攻下成皋将功补过。钟离春在市井上买东西,突然发现庞聪乘坐马车来到了韩国,于是立刻回去通报了孙膑。原来庞涓利用皇太子的刚愎自用偷偷攻下成皋就是为了胁迫韩王交出孙膑,韩王这才看出了他的阴谋,一口否决了庞聪的要求,可是庞聪气势汹汹,威胁韩王说:“如果不交出孙膑,韩国的破灭指日可待!”韩王动摇了。经过朝内大臣的商议,他们决定交出孙膑以求韩国的安宁。

    皇太子听到这个消息,快马加鞭赶到皇宫,请求父王不要交出孙膑。为什么呢?难道太子对孙膑的指导怀有感激之情吗?你太看重他了,太子之所以如此请求是因为他急切地希望建功立业,博得朝中大臣和天下百姓的信任,如果交出了孙膑,天下百姓岂不耻笑太子无能攻下成皋,使得韩王不得不交出孙膑以求太平?因此,皇太子说什么也不同意交出孙膑。但是韩王一心为国,为了韩国的存亡,他不得不坚持自己的决断。皇太子这回豁出去了,拔出宝剑要挟父王,“父王,你若不答应我,我就断去左手食指……”说罢,剑光一闪,鲜血直流。太后看了发疯一般的扑了上去,“孩儿啊,你这是何必呢……”眼泪刷刷地就掉了下来。在太后的一再求情下,韩王无奈地答应了儿子的请求。

    这样一来,韩王为了掩盖自己内心的矛盾,假说是自己为了掩盖攻打成皋的目的,演习给庞涓看呢。于是,攻下成皋的重任落到了孙膑和太子的身上,太子当然希望能够自己建功立业,而不是在孙膑的指挥下,于是,在协同作战的过程中,两人矛盾重重。孙膑为了击退庞涓,一方面和太子协定发布命令的事情又太子做,一方面向太子隐藏自己攻打庞涓的真正计策,才使得计划能够步履维艰地进行下去。

    孙膑没有直接攻打成皋,只是派申大夫带领3万人佯攻,庞涓当然能够看出其中的破绽,他的奸细探明了孙膑的真正走向是攻打中路,然而,这其实并不是孙膑的目的,孙膑是为了声东击西,诱骗庞涓出兵,然后派精兵入城里应外合把成皋拿下,果然,计策应验了。

  • 2008-08-30

    假道伐虢(guó)

    史黄大夫放走了孙膑和钟离春,随着禽滑回到了楚国境内,突然变脸拔出宝剑抵住禽滑的咽喉,为了回去能有个交代,史黄大夫背信弃义了。禽滑被押送到了楚国,楚王亲自来审问禽滑。禽滑果然厉害,以三寸不烂之舌分析此事之利弊,说得楚王心服口服,最后楚王给禽滑松绑,盛情款待了他。

    孙膑来到了韩国,拜见了与田忌有深交的申大夫。申大夫收留了孙膑,并打算立即举荐孙膑给韩王,但是孙膑为了避风声,暂时不打算出头露面。庞涓听到了孙膑逃走的消息,经过一番分析,他认为孙膑极有可能逃到了韩国,但是还不是很确定,于是他派侄子庞聪扮作商人到韩国打听孙膑的消息。韩王正为秦国侵犯边城一事而头痛无比,然而朝中无人,韩王很是生气。这时候,申大夫按耐不住把孙膑的事情说了出来,韩王大喜,道:“速速召见孙膑!”本来韩王打算拜孙膑为将军,但是因为夫人一直希望狂妄自大、刚愎自用的小皇太子能当将军,韩王听夫人的,让孙膑当了军师。庞聪打探到了孙膑的消息,回去报告给了庞涓。庞涓打算用计让韩王交出孙膑。

    孙膑为了提高军队战斗力,在不知不觉中给太子灌输着带兵的方法。虽然太子还是原来一样刚愎自用,但是稍有一些改变。庞涓借联合韩国出兵秦国的理由,向韩国提出借道的要求,想趁机占领韩国的要地以威胁韩王交出孙膑,这就是著名的假道伐虢之计。孙膑明锐地发现了这个阴谋,向大家说明了庞涓的计策,大家都不同意借道之事。

    庞涓打算从狂妄自大的皇太子方面入手,先是想用宝玉收买他,但是皇太子竟然把宝玉摔碎了。然后又用功名来诱惑他,皇太子最终答应劝说父王同意借道一事。但是韩王点破了其中的谋略,皇太子恍然大悟,拒绝了借道。最终,魏国还是没有善罢干休,魏王亲自来了个大诈骗,在结盟祭祀的时候装作身体不适,不能行远路,韩王心慈手软,竟然信以为真了,同意了借道一事。

    韩王排太子带领军队跟在魏军后方,但是魏军趁韩军麻痹之时攻占了险要的关卡,狂妄自大的皇太子终于得到了惩罚……