demo.lua 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606
  1. print("luascript is doing")
  2. function Test1()
  3. print("---------------------------")
  4. print(api)
  5. end
  6. function Test(sss)
  7. --api:saveMap(); --保存地图
  8. --[[第一章]]--
  9. map = api:setMapData(1001,9,23); --设置地图信息,并获取该地图(地图资源ID,出生点坐标X,出生点坐标Y)
  10. map:changeMap();
  11. --切换地图
  12. --api:changeWeather(yu,1);
  13. user = api:getUser(); --获取玩家
  14. user:setDirectory(3); --设置面向 0上1左2下3右
  15. user:setHp(2000);
  16. user:setMaxHp(2000);
  17. api:backupFast();
  18. --user:changeClothes(1); --更换上身(资源ID)
  19. --user:changePants(1); --更换下身(资源ID)
  20. --user:changeHair(1); --更换头发(资源ID)
  21. --user:changeWeapon(1,1); --更换武器(资源ID,武器类型)
  22. --user:changeHead(1); --更换头部(资源ID)
  23. m1 = api:createMonster(1006,28,21,1,false,true); --设置怪物数据,并获取该APC(资源ID,出生点X,出生点Y,面向,是否重生)
  24. m1:setHp(200);
  25. m1:setMaxHp(200);
  26. m1:setAICamp(10); --设置AI的阵营,user0-9,monster10-19
  27. m1:setAIId(3); --设置AI脚本(脚本编号)
  28. m2 = api:createMonster(1006,28,25,1,false,true);
  29. m2:setHp(200);
  30. m2:setMaxHp(200);
  31. m2:setAICamp(10);
  32. m2:setAIId(3);
  33. camera = api:getCamera(); --获取镜头
  34. --camera:moveToPoint(0,0,0); --将镜头移动到指定点(X,Y,每帧移动的像素0表示瞬移)
  35. camera:moveToUnit(user,6);
  36. api:waitAll(); --等待当前执行的所有动作结束
  37. api:blackScreenExit(0,true);
  38. api:movieModeShow(); --开启电影模式,屏幕上下载入黑幕条
  39. user:moveTo(14,23,3); --设置自动移动到目标点(x,y,面向)
  40. api:waitAll(); --等待当前执行的所有动作结束
  41. --[[显示一个对话
  42. 参数dialogName:说话者姓名
  43. 参数dialogStr:话语内容
  44. 参数isLeft:人物图片是否在屏幕左边
  45. 参数rolePic:人物图片ID
  46. 参数facePic:表情图片ID
  47. 参数closeDialog:说完后是否关闭对话框]]--
  48. api:dialog("<name>","这是什么地方?我是谁......为什么脑子里一团乱......",true,0,0,false);
  49. camera:followUnit(m1,15);
  50. api:dialog("帝国魔兵A","看,一个人类!别让他跑了,领主大人一定很因为多了一个健壮的奴隶而奖赏我的!",false,4,0,false);
  51. api:dialog("帝国魔兵B","呃......这次你又想要独占功劳吗?",false,4,0,false);
  52. api:dialog("帝国魔兵A","少啰嗦,快抓起来,别让他跑了!",false,4,0,true);
  53. --api:dialog("<name>","......你们、你们要干什么?",true,0,0,false);
  54. --api:dialog("帝国魔兵A","虽然没有这个义务,但还是让你死个明白,我们是大名鼎鼎的赤焰帝国...血色狮子军团!",false,4,0,false);
  55. --api:dialog("<name>","赤焰帝国...很熟悉的名字...到底是什么...你们到底是谁?",true,0,0,true);
  56. --api:blackScreenExit(1,true); --在若干时间内将屏幕由黑变透明(时间S,是否需要等待这个动作结束后才执行下一个动作)
  57. camera:followUnit(user,15); --将镜头移动到单位当前所在的点(目标单位,speed)
  58. api:waitAll(); --等待当前执行的所有动作结束
  59. camera:restoreCamera(); --将镜头还原,即跟随玩家移动
  60. api:waitAll();
  61. --api:waitAll(); --等待当前执行的所有动作结束
  62. --设置玩家技能
  63. fastSkill1_user = api:createSkill(); --创建一个技能,并获取该技能
  64. fastSkill1_user:setShowIcon(0);
  65. fastSkill1_user:setCD(12); --设置CD时间
  66. fastSkill1_user:setTargetRange(4); --设置释放距离(地图格数)
  67. fastSkill1_user:setTargetType(0); --设置目标类型 0-敌对目标1-友方目标2-自己 3-任意目标4-无需目标
  68. fastSkill1_user:setDamage(40,50,50); --设置伤害数值范围(min,max,暴击概率)
  69. fastSkill2_user = api:createSkill(); --创建一个技能,并获取该技能
  70. fastSkill2_user:setCD(50); --设置CD时间
  71. fastSkill2_user:setShowIcon(101);
  72. fastSkill2_user:setDamage(40,50,50); --设置伤害数值范围(min,max,暴击概率)
  73. fastSkill2_user:setTargetRange(4); --设置释放距离(地图格数)
  74. fastSkill2_user:setTargetType(0); --设置目标类型 0-敌对目标
  75. fastSkill2_user:setFireEffect(15,0); --设置释放时自身特效(效果ID,音效ID)
  76. fastSkill2_user:setFinishEffect(1,0); --设置命中特效(效果ID,音效ID)
  77. fastSkill2_user:setRange(5,5,0);
  78. fastSkill3_user = api:createSkill();
  79. fastSkill3_user:setCD(60);
  80. fastSkill3_user:setShowIcon(102);
  81. fastSkill3_user:setDamage(40,50,50);
  82. fastSkill3_user:setTargetRange(4);
  83. fastSkill3_user:setTargetType(0);
  84. fastSkill3_user:setFireEffect(16,0); --设置释放时自身特效(效果ID,音效ID)
  85. fastSkill3_user:setExecutorEffect(2,0); --设置持续性特效(效果ID,音效ID)
  86. fastSkill3_user:setRange(5,5,0); --设置效果范围和偏移(w,h,offset)
  87. fastSkill3_user:setFinishEffect(17,0) --设置命中特效(效果ID,音效ID)
  88. fastSkill4_user = api:createSkill();
  89. fastSkill4_user:setCD(80);
  90. fastSkill4_user:setDamage(40,50,50);
  91. fastSkill4_user:setTargetRange(4);
  92. fastSkill4_user:setTargetType(0);
  93. fastSkill4_user:setFireEffect(0,0);
  94. fastSkill4_user:setShowIcon(103);
  95. fastSkill4_user:setFinishEffect(1,0)
  96. fastSkill5_user = api:createSkill();
  97. fastSkill5_user:setCD(100);
  98. fastSkill5_user:setDamage(40,50,50);
  99. fastSkill5_user:setTargetRange(7);
  100. fastSkill5_user:setTargetType(0);
  101. fastSkill5_user:setFireEffect(20,0);
  102. fastSkill5_user:setRange(4,4,0);
  103. fastSkill5_user:setShowIcon(104);
  104. fastSkill5_user:setFinishEffect(1,0)
  105. local pro = user:getPro();
  106. --local pro = 21;
  107. if (pro == 1) then
  108. fastSkill2_user:setShowIcon(101); --设置显示图标(图标ID)
  109. fastSkill3_user:setShowIcon(102);
  110. fastSkill4_user:setShowIcon(103);
  111. fastSkill5_user:setShowIcon(104);
  112. fastSkill5_user:setExecutorEffect(202,0);
  113. elseif (pro == 11) then
  114. fastSkill3_user:setTargetRange(8);
  115. fastSkill5_user:setTargetRange(0);
  116. fastSkill2_user:setCD(40);
  117. fastSkill5_user:setTargetType(4);
  118. fastSkill2_user:setShowIcon(1101); --设置显示图标(图标ID)
  119. fastSkill3_user:setShowIcon(1102);
  120. fastSkill4_user:setShowIcon(1103);
  121. fastSkill5_user:setShowIcon(1104);
  122. fastSkill2_user:setFireEffect(22,0);
  123. fastSkill3_user:setFireEffect(0,0);
  124. fastSkill4_user:setFireEffect(26,0);
  125. fastSkill5_user:setFireEffect(1104,0);
  126. elseif (pro == 21) then
  127. fastSkill1_user:setTargetRange(8);
  128. fastSkill2_user:setTargetRange(8);
  129. fastSkill3_user:setTargetRange(2);
  130. fastSkill4_user:setTargetRange(6);
  131. fastSkill5_user:setTargetRange(10);
  132. fastSkill2_user:setCD(30);
  133. fastSkill3_user:setCD(60);
  134. fastSkill4_user:setCD(90);
  135. fastSkill5_user:setCD(60);
  136. fastSkill3_user:setTargetType(4);
  137. fastSkill2_user:setChargeTime(10)
  138. fastSkill3_user:setChargeTime(5)
  139. fastSkill5_user:setChargeTime(20)
  140. fastSkill4_user:setChannelTime(20)
  141. --fastSkill5_user:setChargeEffect(39) -- 暂未实现
  142. fastSkill2_user:setShowIcon(2101); --设置显示图标(图标ID)
  143. fastSkill3_user:setShowIcon(2102);
  144. fastSkill4_user:setShowIcon(2103);
  145. fastSkill5_user:setShowIcon(2104);
  146. fastSkill2_user:setFireEffect(30,0);
  147. fastSkill3_user:setFireEffect(0,0);
  148. fastSkill4_user:setFireEffect(36,0);
  149. fastSkill5_user:setFireEffect(0,0);
  150. fastSkill2_user:setFinishEffect(32,0);
  151. fastSkill5_user:setFinishEffect(41,0);
  152. fastSkill1_user:setFlyEffect(52000,0)
  153. fastSkill2_user:setFlyEffect(31,0)
  154. fastSkill5_user:setFlyEffect(40,0)
  155. end
  156. user:addAttackSkill(fastSkill1_user); --添加普通功能技能(技能对象)
  157. user:addFastSkill(fastSkill2_user,0); --添加一个快捷键技能(技能对象,位置索引)
  158. --user:addFastSkill(fastSkill3_user,1);
  159. --user:addFastSkill(fastSkill4_user,2);
  160. --user:addFastSkill(fastSkill5_user,3);
  161. --设置怪物技能
  162. fastSkill1_monster = api:createSkill(); --创建一个技能,并获取该技能
  163. fastSkill1_monster:setCD(20); --设置CD时间
  164. fastSkill1_monster:setDamage(5,10,10); --设置伤害数值范围(min,max,暴击概率)
  165. fastSkill1_monster:setTargetRange(4); --设置释放距离(地图格数)
  166. fastSkill1_monster:setTargetType(0);
  167. m1:addAttackSkill(fastSkill1_monster);
  168. m2:addAttackSkill(fastSkill1_monster);
  169. m1:setAIId(2);
  170. m2:setAIId(2);
  171. api:movieModeExit(); --关闭电影模式,屏幕上下载入黑幕条
  172. api:teachMove(); --启动移动教学
  173. api:waitAll();
  174. api:teachAttack(); --启动攻击教学
  175. api:checkKillAllMonster(); --检测是否所有的怪物都被消灭
  176. api:blackScreenShow(1,true);
  177. api:waitAll();
  178. api:movieModeShow(); --开启电影模式,屏幕上下载入黑幕条
  179. --[[
  180. user:doAttackAction(3); --做一次攻击动作(面向)
  181. m1:addEffect(3,0,false);
  182. m2:addEffect(3,0,false); --释放一个技能效果(技能ID,音效ID,结束动作true挥砍,false无动作)
  183. api:waitByFrame(8); --等待若干帧后执行下一个动作(帧数)
  184. m2:doDeadAction(2); --设置为死亡模式(面向)
  185. m1:doDeadAction(2);
  186. api:waitByFrame(10);
  187. ]]--
  188. m3 = api:createMonster(1006,28,23,1,false,true);
  189. api:blackScreenExit(0.4,true);
  190. api:waitAll();
  191. m3:moveTo(46,18,3);
  192. --api:waitAll();
  193. api:dialog("帝国魔兵A","你、你等着,赤焰帝国不会放过你的!",false,4,0,false);
  194. m3:setVisible(false,0);
  195. api:dialog("<name>","赤焰帝国?",true,0,0,true);
  196. user:moveTo(45,18,3); --设置自动移动到目标点(x,y,面向)
  197. api:waitAll(); --等待当前执行的所有动作结束
  198. api:waitByFrame(5); --等待若干帧后执行下一个动作(帧数)
  199. user:setVisible(false,0); --设置为是否可见
  200. api:waitAll(); --等待当前执行的所有动作结束
  201. --[[第二章]]--
  202. map = api:setMapData(1002,10,39);
  203. map:changeMap();
  204. api:changeWeather(yu,2);
  205. user = api:getUser();
  206. user:setDirectory(3);
  207. user:setHp(2000);
  208. user:setMaxHp(2000);
  209. api:movieModeShow();
  210. api:blackScreenExit(0,true);
  211. user:moveTo(20,25,3); --设置自动移动到目标点(x,y,面向)
  212. api:waitAll();
  213. --6个怪
  214. m1 = api:createMonster(1006,43,26,2,false,true);
  215. m1:setAICamp(10);
  216. m1:setAIId(3);
  217. m2 = api:createMonster(1006,43,24,2,false,true);
  218. m2:setAICamp(10);
  219. m2:setAIId(3);
  220. m3 = api:createMonster(1006,42,25,2,false,true);
  221. m3:setAICamp(10);
  222. m3:setAIId(3);
  223. m4 = api:createMonster(1006,42,26,2,false,true);
  224. m4:setAICamp(10);
  225. m4:setAIId(3);
  226. m5 = api:createMonster(1006,41,26,2,false,true);
  227. m5:setAICamp(10);
  228. m5:setAIId(3);
  229. m6 = api:createMonster(1006,41,22,2,false,true);
  230. m6:setAICamp(10);
  231. m6:setAIId(3);
  232. --[[
  233. map = api:setMapData(1,11,21);
  234. map:changeMap();
  235. map:addPortalEffect(49,14,"","",0); --添加一个传送门效果
  236. api:movieModeShow(); --开启电影模式,屏幕上下载入黑幕条
  237. user = api:getUser();
  238. user:setDirectory(3);]]--
  239. --[[玩家技能]]--
  240. --[[
  241. --刷小怪
  242. m1 = api:createMonster(1003,30,20,2,false);
  243. m1:setAICamp(10);
  244. m1:setAIId(3);
  245. m1:setUnitName(TextParse:getString(18,50)); --设置显示的名称
  246. m2 = api:createMonster(1003,39,22,1,false);
  247. m2:setAICamp(10);
  248. m2:setAIId(3);
  249. m2:setUnitName(TextParse:getString(18,50));
  250. m3 = api:createMonster(1003,44,17,2,false);
  251. m3:setAICamp(10);
  252. m3:setAIId(3);
  253. m3:setUnitName(TextParse:getString(18,50));
  254. api:waitAll(); --等待当前执行的所有动作结束
  255. api:blackScreenExit(0,true); --在若干时间内将屏幕由黑变透明(时间S,是否需要等待这个动作结束后才执行下一个动作)
  256. user:moveTo(13,22,3);
  257. api:waitAll();
  258. api:movieModeExit(); --关闭电影模式,上下的黑幕条移出屏幕
  259. api:teachMove(); --启动移动教学
  260. triggerZone = api:createTriggerZone(17,15,10,15); --设置触发区域,并获得该区域(x,y,w,h)
  261. triggerZone:start(); --启动区域判断
  262. user:moveTo(25,20,3);
  263. api:waitAll();
  264. api:teachAttack(); --启动攻击教学
  265. api:createDirectoryCue(3,5); --创建方向箭头提示(方向,持续时间)
  266. triggerZone = api:createTriggerZone(48,13,3,3); --设置触发区域,并获得该区域(x,y,w,h)
  267. triggerZone:start(); --启动区域判断
  268. ]]--
  269. --[[第三章]]--
  270. --[[
  271. map = api:setMapData(2,10,39);
  272. map:changeMap();
  273. user = api:getUser();
  274. user:setDirectory(3);
  275. api:movieModeShow();
  276. api:blackScreenExit(0,true);
  277. user:moveTo(26,25,0); --设置自动移动到目标点(x,y,面向)
  278. api:waitAll();
  279. --6个怪
  280. m1 = api:createMonster(1003,31,26,2,false);
  281. m1:setAICamp(10);
  282. m1:setAIId(3);
  283. m2 = api:createMonster(1003,33,26,2,false);
  284. m2:setAICamp(10);
  285. m2:setAIId(3);
  286. m3 = api:createMonster(1003,31,24,2,false);
  287. m3:setAICamp(10);
  288. m3:setAIId(3);
  289. m4 = api:createMonster(1003,35,26,2,false);
  290. m4:setAICamp(10);
  291. m4:setAIId(3);
  292. m5 = api:createMonster(1003,31,22,2,false);
  293. m5:setAICamp(10);
  294. m5:setAIId(3);
  295. m6 = api:createMonster(1003,34,23,2,false);
  296. m6:setAICamp(10);
  297. m6:setAIId(3);
  298. ]]--
  299. api:waitAll();
  300. api:waitByFrame(5); --等待若干帧后执行下一个动作
  301. --user:addFacePic(0);
  302. camera:followUnit(m3,15);
  303. api:dialog("魔兵队长A","真该死,我正心情不好呢,又出现一个人类,刚洗干净的衣服又要染血了。",false,4,0,false);
  304. api:dialog("魔兵队长B","等等,我觉得不对劲,这个人类身上是不是有什么奇怪的力量?",false,4,0,false);
  305. api:dialog("魔兵队长A","别管了,一个人类而已。我要他戴的那条红色宝石项链,其他都归你。",false,4,0,false);
  306. api:dialog("魔兵队长B","就这么办。",false,4,0,false);
  307. api:waitAll();
  308. camera:followUnit(user,15);
  309. api:dialog("<name>","这条项链......一路上很多人都想抢走它。",true,0,0,false);
  310. api:waitAll();
  311. camera:followUnit(m3,15);
  312. api:dialog("魔兵队长A","以后就不会,让老子替你保管吧!",false,4,0,true);
  313. api:waitAll();
  314. --[[
  315. ]]--
  316. camera:followUnit(user,15);
  317. api:waitAll();
  318. camera:restoreCamera();
  319. user:moveTo(26,25,3); --瞬移到目标点(x,y,面向)
  320. api:waitAll();
  321. api:blackScreenShow(0.3,true);
  322. api:dialogScreen("敌人的数量和实力都远胜于你,正当你力不从心之际,一个背影挡在了你的面前",26);
  323. --普攻技能
  324. attackSkill = api:createSkill();
  325. attackSkill:setCD(20);
  326. attackSkill:setTargetRange(8);
  327. attackSkill:setDamage(40,50,50);
  328. --刷出APC
  329. --apc = api:createAPC(2001,20,30,3,true);
  330. apc = api:createAPC(2001,32,25,3,true);
  331. --apc:addEffect(11,0,false);
  332. apc:setHp(50000);
  333. apc:setMaxHp(50000);
  334. apc:addAttackSkill(attackSkill);
  335. apc:addFastSkill(fastSkill2_user,0); --添加一个快捷键技能(技能对象,位置索引)
  336. apc:addFastSkill(fastSkill3_user,1);
  337. apc:addFastSkill(fastSkill4_user,2);
  338. apc:addFastSkill(fastSkill5_user,3);
  339. apc:setAICamp(0);
  340. apc:setAIId(3);
  341. apc:setUnitName("神秘人");
  342. api:blackScreenExit(0.1,true);
  343. api:waitAll();
  344. m1:moveTo(37,24,2);
  345. m2:moveTo(36,24,2);
  346. m3:moveTo(35,25,2);
  347. m4:moveTo(35,25,2);
  348. m5:moveTo(36,26,2);
  349. m6:moveTo(37,26,2);
  350. api:waitAll();
  351. --user:setDirectory(2);
  352. --user:addFacePic(14);
  353. --m1:addFacePic(16);
  354. --m2:addFacePic(16);
  355. api:waitAll();
  356. --api:waitByFrame(5);
  357. --camera:followUnit(apc,5); --将镜头移动到单位所在的点,之后跟随单位移动(目标单位,帧数)
  358. --api:waitAll();
  359. --apc:moveTo(32,25,3);
  360. --api:waitAll();
  361. --user:setDirectory(3);
  362. apc:doAttackAction(3);
  363. apc:addEffect(15,0,true);
  364. --m1:addEffect(2,0,false); --释放一个技能效果(技能ID,音效ID,结束动作true挥砍,false无动作)
  365. --m2:addEffect(2,0,false); --释放一个技能效果(技能ID,音效ID,结束动作true挥砍,false无动作)
  366. api:waitByFrame(5);
  367. m1:doDeadAction(1);
  368. m2:doDeadAction(1);
  369. m3:doDeadAction(1);
  370. m4:doDeadAction(1);
  371. m5:doDeadAction(1);
  372. m6:doDeadAction(1);
  373. api:waitAll();
  374. camera:restoreCamera(); -- 将镜头还原,即跟随玩家移动
  375. api:dialog("神秘人","年轻人,没事吧?这里刚刚撤走一批魔兵主力,后续部队正在四处扫荡,你一个人非常危险。",false,1,0,false);
  376. api:dialog("<name>","多谢你救了我,请问你是?",true,0,0,true);
  377. --user:addFacePic(16);
  378. --apc:addFacePic(16);
  379. api:removeAllMonster();
  380. --刷出BOSS
  381. boss = api:createMonster(1044,43,25,2,false,true);
  382. --boss:addEffect(11,0,false);
  383. boss:setUnitName("魔族首领");
  384. camera:followUnit(boss,15);
  385. api:waitAll();
  386. api:dialog("魔族首领","可恶,一个卑弱的人类,竟敢伤害我的部属,我要把你们撕成碎片!",false,13,0,false);
  387. camera:followUnit(user,15);
  388. api:dialog("<name>","真抱歉,刚认识就连累你......",true,0,0,false);
  389. api:dialog("神秘人","别分心,握紧你的武器,这只就交给我了!",false,1,0,true);
  390. boss:moveTo(36,25,1);
  391. api:waitAll();
  392. camera:restoreCamera();
  393. --map:setTerrianBlock(18,21,1,20); -- 设置地图块为不可行走区域(x,y,w,h)
  394. api:movieModeExit();
  395. api:waitAll();
  396. api:changeWeather(yu,2);
  397. api:waitByFrame(5);
  398. --BOSS技能
  399. fastSkill1_boss = api:createSkill();
  400. fastSkill1_boss:setCD(20);
  401. fastSkill1_boss:setDamage(10,20,50);
  402. fastSkill1_boss:setTargetRange(4);
  403. fastSkill1_boss:setTargetType(0);
  404. fastSkill1_boss:setFireEffect(16,0);
  405. fastSkill1_boss:setShowIcon(50004);
  406. boss:addFastSkill(fastSkill1_boss,2);
  407. fastSkill2_boss = api:createSkill();
  408. fastSkill2_boss:setCD(20);
  409. fastSkill2_boss:setDamage(10,20,50);
  410. fastSkill2_boss:setTargetRange(4);
  411. fastSkill2_boss:setTargetType(0);
  412. --fastSkill2_boss:setFireEffect(17,0);
  413. fastSkill2_boss:setRange(4,4,0);
  414. fastSkill2_boss:setShowIcon(50005);
  415. boss:addFastSkill(fastSkill2_boss,3);
  416. boss:addAttackSkill(attackSkill);
  417. boss:setAICamp(10);
  418. boss:setAIId(2);
  419. --刷出随从
  420. --[[
  421. m1 = api:createMonster(1006,37,23,1,false,true);
  422. m1:addAttackSkill(attackSkill);
  423. m1:setAICamp(10);
  424. m1:setAIId(2);
  425. m1:setUnitName("魔兵随从");
  426. m2 = api:createMonster(1006,37,27,1,false,true);
  427. m2:addAttackSkill(attackSkill);
  428. m2:setAICamp(10);
  429. m2:setAIId(2);
  430. m2:setUnitName("魔兵随从");
  431. ]]--
  432. apc:setAIId(1);
  433. api:checkKillAllMonster(); --检测是否所有的怪物都被消灭
  434. apc:setAIId(3);
  435. api:movieModeShow();
  436. --刷出apc赛维拉
  437. swl = api:createAPC(2006,50,27,1,true);
  438. --camera:followUnit(swl,15);
  439. swl:setAICamp(0);
  440. swl:setAIId(3);
  441. swl:setUnitName("赛维拉");
  442. api:waitAll();
  443. user:setDirectory(3);
  444. user:moveTo(29,27,0);
  445. apc:moveTo(34,25,2);
  446. api:waitAll();
  447. swl:moveTo(34,27,1);
  448. api:waitAll();
  449. api:dialog("赛维拉","我好像来晚了。这位是......不管你是谁,我得说,你真走运,不是每个被魔族追捕的奴役都能遇上威灵顿将军的。怎么样,跟我们去喝一杯庆祝一下?",false,2,0,false);
  450. api:dialog("威灵顿大将军","赛维拉,现在不是开玩笑的时候。对了,你说你不知道自己是谁,是什么意思?",false,1,0,false);
  451. api:dialog("<name>","我......我不知道怎么解释。我的记忆似乎是从我醒来后开始的,而过去的一切,名字,身份,家事,一切的记忆似乎都消失了。",true,0,0,false);
  452. api:dialog("赛维拉","哈,听起来像某类传奇人物的故事。假如真的是的话,最好提前通知我,我可不想做主角的炮灰。",false,2,0,false);
  453. api:dialog("威灵顿大将军","我看你身手不错,反正你也没有别的地方去,不如来联盟军吧!",false,1,0,true);
  454. --user:addFacePic(6);
  455. api:blackScreenShow(0.3,true); --在若干时间内将屏幕由透明变黑(s,是否等到这个动作结束后执行下一个动作)
  456. api:dialogScreen("还没来得及回应威灵顿的邀请,你感到体力不支,失去意识晕倒在地。威灵顿俯身检查你的伤势,在见到你的项链时脸上隐约露出了惊讶的神色......",26);
  457. api:waitAll();
  458. --api:loadMap(); --读取地图
  459. --api:blackScreenExit(1,true);
  460. api:movieModeExit();
  461. api:restoreFast();
  462. api:waitAll();
  463. api:storyOver(); --剧情脚本结束
  464. api:apiEnd(); --事件全部结束,关闭解析器
  465. end
  466. Test1()
  467. api=ScriptExecutorLua:getGameFunInterface()
  468. Test1()
  469. Test(3)