Guest User

Untitled

a guest
Sep 14th, 2014
891
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 19.94 KB | None | 0 0
  1. quest:
  2.  
  3. quest training_mount begin
  4. state start begin
  5. function check_list(material, pc_level, horse_level)
  6. if pc.count_item(material) <= 0 then
  7. say_title(""..mob_name(20349).."")
  8. say(gameforge.training_mount._02_say)
  9. return 0
  10. elseif pc.level < pc_level then
  11. say_title(""..mob_name(20349).."")
  12. say(gameforge.training_mount._01_say)
  13. return 0
  14. elseif horse.get_level()< horse_level then
  15. say_title(""..mob_name(20349).."")
  16. say(string.format(gameforge.training_mount._33_say,horse_level))
  17. return 0
  18. else
  19. return 1
  20. end
  21. end
  22.  
  23. function extraTime(typ)
  24. local n = number (1,100)
  25. if typ == 1 then
  26. if n <= 50 then
  27. return 86400
  28. elseif n <= 80 then
  29. return 86400*2
  30. elseif n <=95 then
  31. return 86400*3
  32. else
  33. return 86400*4
  34. end
  35. elseif typ == 2 then
  36. if n <= 30 then
  37. return 0
  38. elseif n <= 70 then
  39. return 86400
  40. elseif n <=90 then
  41. return 86400*2
  42. else
  43. return 86400*3
  44. end
  45. end
  46. end
  47.  
  48. when 20349.chat.gameforge.training_mount._04_say begin
  49. say_title(""..mob_name(20349).."")
  50. say(gameforge.training_mount._05_say)
  51. say("")
  52. wait()
  53. say_title(""..mob_name(20349).."")
  54. say(gameforge.training_mount._06_say)
  55. say("")
  56. wait()
  57. say_title(""..mob_name(20349).."")
  58. say(gameforge.training_mount._07_say)
  59. say("")
  60. set_state(main_point)
  61. end
  62. end
  63.  
  64. state main_point begin
  65. when 20349.chat.gameforge.training_mount._08_say begin
  66. say_title(""..mob_name(20349).."")
  67. say(gameforge.training_mount._09_say)
  68. say("")
  69. wait()
  70. say_title(""..mob_name(20349).."")
  71. say(gameforge.training_mount._10_say)
  72. say("")
  73. wait()
  74. say_title(""..mob_name(20349).."")
  75. say(gameforge.training_mount._11_say)
  76.  
  77. local s=select(gameforge.training_mount._12_say,gameforge.training_mount._13_say)
  78.  
  79. if 2==s then
  80. return
  81. end
  82. if pc.count_item(50067) >0 or pc.count_item(50068)>0 then
  83. say_title(""..mob_name(20349).."")
  84. say(gameforge.training_mount._14_say)
  85. else
  86. say_title(""..mob_name(20349).."")
  87. say(gameforge.training_mount._02_say)
  88. return
  89. end
  90.  
  91. local s=select(gameforge.training_mount._15_say,gameforge.training_mount._15_2_say,gameforge.training_mount._16_say)
  92. if 1==s then
  93. if training_mount.check_list(50067,25,11) == 1 then
  94. say_title(""..mob_name(20349).."")
  95. say(gameforge.training_mount._17_say)
  96. end
  97. elseif 2==s then
  98. if training_mount.check_list(50068,45,20) == 1 then
  99. say_title(""..mob_name(20349).."")
  100. say(gameforge.training_mount._18_say)
  101. end
  102. elseif 3==s then
  103. say_title(""..mob_name(20349).."")
  104. say(gameforge.training_mount._19_say)
  105. say("")
  106. return
  107. end
  108. end --when
  109.  
  110.  
  111. when 20349.take with
  112. 52001 <= item.vnum and item.vnum <= 52005 or
  113. 52016 <= item.vnum and item.vnum <= 52020 or
  114. 52031 <= item.vnum and item.vnum <= 52035 or
  115. 52046 <= item.vnum and item.vnum <= 52050 or
  116. 52061 <= item.vnum and item.vnum <= 52065 or
  117. 52076 <= item.vnum and item.vnum <= 52080 or
  118. 52091 <= item.vnum and item.vnum <= 52095 begin
  119. if pc.is_riding() == true then
  120. say_title(""..mob_name(20349).."")
  121. say(gameforge.training_mount._32_say)
  122. return
  123. end
  124. if count_item_range(38100, 38102) >= 1 then
  125. say_title(""..mob_name(20349).."")
  126. say(gameforge.training_mount._34_say)
  127. local choice = select(gameforge.training_mount._35_select_1, gameforge.training_mount._35_select_2, locale.cancel)
  128. if choice == 3 then
  129. return
  130. elseif choice == 1 then
  131. local option_select = select(gameforge.training_mount._36_select_1, gameforge.training_mount._36_select_2, gameforge.training_mount._36_select_3, locale.cancel)
  132. local information = {}
  133. if option_select == 4 then
  134. return
  135. end
  136. if option_select == 1 then
  137. if pc.count_item(38100) >= 1 then
  138. information = {86400*7,38100}
  139. else
  140. say_title(""..mob_name(20349).."")
  141. say(gameforge.training_mount._37_say)
  142. return
  143. end
  144. elseif option_select == 2 then
  145. if pc.count_item(38101) >= 1 then
  146. information = {86400*15,38101}
  147. else
  148. say_title(""..mob_name(20349).."")
  149. say(gameforge.training_mount._37_say)
  150. return
  151. end
  152. elseif option_select == 3 then
  153. if pc.count_item(38102) >= 1 then
  154. information = {86400*30, 38102}
  155. else
  156. say_title(""..mob_name(20349).."")
  157. say(gameforge.training_mount._37_say)
  158. return
  159. end
  160. end
  161. local remain_time =item.get_socket(0)
  162. item.set_socket(0,remain_time+information[1])
  163. pc.remove_item(information[2],1)
  164. return
  165. end
  166. end
  167. if training_mount.check_list(50067,25,11) == 1 then
  168. say_title(""..mob_name(20349).."")
  169. say(gameforge.training_mount._20_say)
  170. wait()
  171. say_title(""..mob_name(20349).."")
  172. say(gameforge.training_mount._22_say)
  173. local remain_time =item.get_socket(0)
  174. local old_vnum =item.get_vnum()
  175. local new_vnum =item.get_vnum()+5
  176. local extra = training_mount.extraTime(1)
  177. pc.give_item2_select(new_vnum,1)
  178. item.set_socket(0,remain_time+extra)
  179. pc.remove_item(old_vnum,1)
  180. pc.remove_item(50067,1)
  181. end
  182. end
  183.  
  184. when 20349.take with 52006 <= item.vnum and item.vnum <= 52010 or
  185. 52021 <= item.vnum and item.vnum <= 52025 or
  186. 52036 <= item.vnum and item.vnum <= 52040 or
  187. 52051 <= item.vnum and item.vnum <= 52055 or
  188. 52081 <= item.vnum and item.vnum <= 52085 or
  189. 52066 <= item.vnum and item.vnum <= 52070 or
  190. 52096 <= item.vnum and item.vnum <= 52100 begin
  191. if pc.is_riding() == true then
  192. say_title(""..mob_name(20349).."")
  193. say(gameforge.training_mount._32_say)
  194. return
  195. end
  196.  
  197. if count_item_range(38100, 38102) >= 1 then
  198. say_title(""..mob_name(20349).."")
  199. say(gameforge.training_mount._34_say)
  200. local choice = select (gameforge.training_mount._35_select_1, gameforge.training_mount._35_select_2, locale.cancel)
  201. if choice == 3 then
  202. return
  203. elseif choice == 1 then
  204. local option_select = select(gameforge.training_mount._36_select_1, gameforge.training_mount._36_select_2, gameforge.training_mount._36_select_3, locale.cancel)
  205. local information = {}
  206. if option_select == 4 then
  207. return
  208. end
  209. if option_select == 1 then
  210. if pc.count_item(38100) >= 1 then
  211. information = {86400*7,38100}
  212. else
  213. say_title(""..mob_name(20349).."")
  214. say(gameforge.training_mount._37_say)
  215. return
  216. end
  217. elseif option_select == 2 then
  218. if pc.count_item(38101) >= 1 then
  219. information = {86400*15,38101}
  220. else
  221. say_title(""..mob_name(20349).."")
  222. say(gameforge.training_mount._37_say)
  223. return
  224. end
  225. elseif option_select == 3 then
  226. if pc.count_item(38102) >= 1 then
  227. information = {86400*30, 38102}
  228. else
  229. say_title(""..mob_name(20349).."")
  230. say(gameforge.training_mount._37_say)
  231. return
  232. end
  233. end
  234.  
  235. local remain_time =item.get_socket(0)
  236. item.set_socket(0,remain_time+information[1])
  237. pc.remove_item(information[2],1)
  238. return
  239. end
  240. end
  241. if training_mount.check_list(50068,45,20) == 1 then
  242. say_title(""..mob_name(20349).."")
  243. say(gameforge.training_mount._21_say)
  244. wait()
  245. say_title(""..mob_name(20349).."")
  246. say(gameforge.training_mount._22_say)
  247. local remain_time =item.get_socket(0)
  248. local old_vnum =item.get_vnum()
  249. local new_vnum =item.get_vnum()+5
  250. local extra = training_mount.extraTime(1)
  251. pc.give_item2_select(new_vnum,1)
  252. item.set_socket(0,remain_time+extra)
  253. pc.remove_item (old_vnum,1)
  254. pc.remove_item (50068,1)
  255.  
  256. end
  257. end
  258.  
  259. when 20349.take with 52011 <= item.vnum and item.vnum <= 52015 or
  260. 52026 <= item.vnum and item.vnum <= 52031 or
  261. 52041 <= item.vnum and item.vnum <= 52045 or
  262. 52056 <= item.vnum and item.vnum <= 52061 or
  263. 52086 <= item.vnum and item.vnum <= 52091 or
  264. 52071 <= item.vnum and item.vnum <= 52075 or
  265. 52101 <= item.vnum and item.vnum <= 52105
  266. begin
  267. if pc.is_riding() == true then
  268. say_title(""..mob_name(20349).."")
  269. say(gameforge.training_mount._32_say)
  270. return
  271. end
  272.  
  273. say_title(""..mob_name(20349).."")
  274. say(gameforge.training_mount._38_say)
  275. local choice = select (gameforge.training_mount._35_select_1, locale.cancel)
  276. if choice == 2 then
  277. return
  278. elseif choice == 1 then
  279. local option_select = select(gameforge.training_mount._36_select_1, gameforge.training_mount._36_select_2, gameforge.training_mount._36_select_3, gameforge.training_mount._36_select_4, locale.cancel)
  280. local information = {}
  281. if option_select == 5 then
  282. return
  283. end
  284. if option_select == 1 then
  285. if pc.count_item(38100) >= 1 then
  286. information = {86400*7,38100}
  287. else
  288. say_title(""..mob_name(20349).."")
  289. say(gameforge.training_mount._37_say)
  290. return
  291. end
  292. elseif option_select == 2 then
  293. if pc.count_item(38101) >= 1 then
  294. information = {86400*15,38101}
  295. else
  296. say_title(""..mob_name(20349).."")
  297. say(gameforge.training_mount._37_say)
  298. return
  299. end
  300. elseif option_select == 3 then
  301. if pc.count_item(38102) >= 1 then
  302. information = {86400*30, 38102}
  303. else
  304. say_title(""..mob_name(20349).."")
  305. say(gameforge.training_mount._37_say)
  306. return
  307. end
  308. elseif option_select == 4 then
  309. local remain_time = item.get_socket(0)
  310. local run_time = remain_time-get_time()
  311. if (remain_time-get_time()) > 86400 then
  312. say_title(""..mob_name(20349).."")
  313. say(gameforge.training_mount._39_say)
  314. if is_test_server() then
  315. item.set_socket(0, get_time() + 86460)
  316. end
  317. return
  318. end
  319. if pc.count_item(50068) >= 1 and pc.get_gold() >= 200000 then
  320. information = {training_mount.extraTime(2),50068}
  321. pc.changegold(-200000)
  322. else
  323. say_title(""..mob_name(20349).."")
  324. say(gameforge.training_mount._40_say)
  325. return
  326. end
  327. end
  328.  
  329. local remain_time = item.get_socket(0)
  330. item.set_socket(0,remain_time+information[1])
  331. pc.remove_item(information[2],1)
  332. return
  333. end
  334.  
  335. end
  336.  
  337. when 20349.chat.gameforge.training_mount._23_say begin
  338. say_title(""..mob_name(20349).."")
  339. say(gameforge.training_mount._24_say)
  340. wait()
  341. say_title(""..mob_name(20349).."")
  342. say(gameforge.training_mount._25_say)
  343. wait()
  344. say_title(""..mob_name(20349).."")
  345. say(gameforge.training_mount._26_say)
  346. local s=select(locale.yes,locale.no)
  347. if 2==s then
  348. return
  349. end
  350. say_title(""..mob_name(20349).."")
  351. say(gameforge.training_mount._27_say)
  352. wait()
  353. if pc.count_item(50068) >0 then
  354. if horse.get_level()>1 then
  355. say_title(""..mob_name(20349).."")
  356. say(gameforge.training_mount._28_say)
  357. wait()
  358. say(gameforge.training_mount._29_say)
  359. else
  360. say_title(""..mob_name(20349).."")
  361. say(gameforge.training_mount._30_say)
  362. return
  363. end
  364. else
  365. say_title(""..mob_name(20349).."")
  366. say(gameforge.training_mount._31_say)
  367. return
  368. end
  369. end
  370. end
  371. end
  372.  
  373.  
  374. locale.lua/translate.lua:
  375.  
  376. gameforge.training_mount = {}
  377. gameforge.training_mount._01_say = "Tut mir leid, aber du hast noch nicht die nötige[ENTER]Reiterfahrung, um dein Mount zu verbessern. Dafür[ENTER]solltest du mindestens die Kampfpferd-Lizenz[ENTER]haben. "
  378. gameforge.training_mount._02_say = "Tut mir leid, ohne die richtigen Dokumente kann[ENTER]ich nichts für dich tun. Versuche nicht noch mal,[ENTER]mich übers Ohr zu hauen, sonst lasse ich dich[ENTER]dafür bezahlen. "
  379. gameforge.training_mount._03_say = "Wo ist dein Reittier-Siegel? Ohne dieses Siegel[ENTER]kann ich auch kein Mount verbessern. Schau mal[ENTER]hinter der drehenden Münze. Dort findest du[ENTER]Urkunden, die du bei mir gegen ein[ENTER]Reittier-Siegel eintauschen kannst. "
  380. gameforge.training_mount._04_say = "Ich möchte ein neues Mount reiten! "
  381. gameforge.training_mount._05_say = "Hey! Du reitest noch immer auf einem Pferd?[ENTER]Ist das zu fassen? Heutzutage können wir doch[ENTER]Wildtiere zähmen. "
  382. gameforge.training_mount._06_say = "Um gezähmte Wildtiere für den Kampf zu[ENTER]trainieren, solltest du allerdings gute[ENTER]Reitkenntnisse besitzen. Außerdem benötigst du[ENTER]folgende Gegenstände: die Rolle der Evolution, um[ENTER]dein Mount zu einem Wilden Reittier zu[ENTER]verbessern, und die Rolle der Mutation, um es zu[ENTER]einem Tapferen Reittier zu machen. "
  383. gameforge.training_mount._07_say = "Wenn du Fragen hast, suche mich jederzeit wieder[ENTER]auf. Ich werde dir helfen, so gut ich kann. "
  384. gameforge.training_mount._08_say = "Ich will mein Mount verbessern! "
  385. gameforge.training_mount._09_say = "Du willst also dein Mount verbessern? Weißt du[ENTER]denn, wie das geht? Also gut, ich werde es dir[ENTER]erklären. "
  386. gameforge.training_mount._10_say = "Um dein Mount zu einem Wilden Reittier zu[ENTER]verwandeln, musst du dich auf die Suche nach der[ENTER]Rolle der Evolution begeben. Finde die Rolle der[ENTER]Mutation, damit du das Wilde zu einem Tapferen[ENTER]Reittier ausbilden kannst. Es heißt, sie seien in[ENTER]einem fernen Land, bewohnt von gefährlichen[ENTER]Giganten, versteckt! "
  387. gameforge.training_mount._11_say = "Bringe mir eine dieser Rollen und ich werde dein[ENTER]Mount verbessern. Du hast sie nicht zufällig[ENTER]schon bei dir? "
  388. gameforge.training_mount._12_say = "Ja, ich möchte mein Mount verbessern! "
  389. gameforge.training_mount._13_say = "Nein, jetzt nicht. "
  390. gameforge.training_mount._14_say = "Ah, du hast eine der Rollen dabei. Welche ist[ENTER]es denn? Mit der Rolle der Evolution bildest du[ENTER]dein unerfahrenes Jungtier für den Kampf aus. Mit[ENTER]der Rolle der Mutation kannst du es dann zum[ENTER]Tapferen Reittier verbessern. "
  391. gameforge.training_mount._15_2_say = "Ich habe die Rolle der Mutation. "
  392. gameforge.training_mount._15_say = "Ich habe die Rolle der Evolution. "
  393. gameforge.training_mount._16_say = "Ich habe keine der Rollen dabei. "
  394. gameforge.training_mount._17_say = "Ah, schau an - die Rolle der Evolution! Dann lass[ENTER]mich mal einen Blick auf dein Reittier-Siegel[ENTER]werfen. So mancher hat schon versucht, mich mit[ENTER]einer Fälschung reinzulegen! Ich werde[ENTER]zuerst seine Echtheit prüfen. Gib es mir mal her.[ENTER](Ziehe das Siegel auf den Stallburschen.) "
  395. gameforge.training_mount._18_say = "Die Rolle der Mutation! Bisher kannte ich sie[ENTER]nur aus Erzählungen. Ich habe sie noch nie in den[ENTER]Händen gehalten. Zeige mir nun dein[ENTER]Reittier-Siegel. Ich werde es gegen ein[ENTER]mächtigeres austauschen, sobald ich seine[ENTER]Echtheit bestätigt habe. (Ziehe das Siegel auf[ENTER]den Stallburschen.) "
  396. gameforge.training_mount._19_say = "Sobald du eine der Rollen gefunden hast, kehre[ENTER]zu mir zurück. Dann kann ich dein altes[ENTER]Reittier-Siegel in ein mächtigeres tauschen. "
  397. gameforge.training_mount._20_say = "Dein Reittier-Siegel hat wahrhaftig schon bessere[ENTER]Tage gesehen. Warte, ich werde es[ENTER]gegen ein neues eintauschen.[ENTER]Bitte, hier hast du es. Nun kannst du dein Wildes[ENTER]Reittier herbeirufen. Kehre zu mir zurück, sobald[ENTER]du die Rolle der Mutation entdeckt hast. Dann[ENTER]werde ich dir ein noch machtvolleres[ENTER]Reittier-Siegel erschaffen. "
  398. gameforge.training_mount._21_say = "Das ist das Reittier-Siegel, dass du vor einer[ENTER]Weile von mir erhalten hast. Es ist aber schon[ENTER]ziemlich abgenutzt. Gib es mir zurück und ich[ENTER]werde dir ein noch machtvolleres Reittier-Siegel[ENTER]erschaffen! "
  399. gameforge.training_mount._22_say = "Die Macht dieses Siegels ruft dein verwandeltes[ENTER]Mount herbei. Achte gut darauf, denn es ist von[ENTER]unschätzbarem Wert! "
  400. gameforge.training_mount._23_say = "Kann ich Pferdefertigkeiten nutzen? "
  401. gameforge.training_mount._24_say = "Du möchtest Pferdefertigkeiten einsetzen? Du bist[ENTER]ganz schön anspruchsvoll! Aber auch ich träume[ENTER]davon ... Nun gut, um das zu erlernen, musst du[ENTER]ein paar Regeln befolgen. "
  402. gameforge.training_mount._25_say = "Als Erstes solltest du das Reiten beherrschen,[ENTER]andernfalls bringst du dich ernsthaft in Gefahr.[ENTER]Außerdem muss dein Mount kampftauglich sein, denn[ENTER]nur dann ist es in der Lage, Pferdefertigkeiten[ENTER]einzusetzen. "
  403. gameforge.training_mount._26_say = "Ist dein Mount in der Lage, Pferdefertigkeiten zu[ENTER]erlernen? Andernfalls kann ich das[ENTER]Training nicht erlauben. Was möchtest du tun? "
  404. gameforge.training_mount._27_say = "Ich verstehe. Ich werde nun deine Stärke und[ENTER]deine Reitkenntnisse einschätzen. Warte einen[ENTER]Moment. "
  405. gameforge.training_mount._28_say = "Hm ... ein starkes Rückgrat, fundierte[ENTER]Reitkenntnisse und dein Mount ist äußerst[ENTER]kampflustig. Du kannst Pferdefertigkeiten nutzen. "
  406. gameforge.training_mount._29_say = "Nun kann dein Mount Pferdefertigkeiten einsetzen.[ENTER]Holst du dir allerdings ein neues Reittier, muss[ENTER]es auch die Fertigkeiten erst wieder erlernen.[ENTER]Kehre in diesem Fall zu mir zurück. "
  407. gameforge.training_mount._30_say = "Komm schon, ich habe dir doch gesagt, dass es[ENTER]zu gefährlich ist, wenn du nicht reiten kannst.[ENTER]Kehre zu mir zurück, wenn du es erlernt hast. "
  408. gameforge.training_mount._31_say = "Ich fürchte, dein Mount ist noch nicht bereit.[ENTER]Komm wieder, wenn es mehr Kampflust zeigt. "
  409. gameforge.training_mount._32_say = "Könntest du bitte von deinem Mount absteigen,[ENTER]solange wir miteinander reden? Ich habe einen[ENTER]steifen Nacken und es ist ziemlich anstrengend,[ENTER]die ganze Zeit zu dir aufschauen zu müssen. "
  410. gameforge.training_mount._33_say = "Du hast nicht die geeignete Reitlizenz, um dein[ENTER]Mount zu verbessern. Du benötigst mindestens die[ENTER]Kampfpferd-Lizenz, damit du ein Wildes Reittier[ENTER]trainieren kannst. Um ein Tapferes Reittier[ENTER]bändigen zu können, musst du die[ENTER]Militärpferd-Lizenz haben. "
  411. gameforge.training_mount._34_say = "Ich sehe, du besitzt einen Powersnack. Diese[ENTER]wertvolle Heilpflanze versorgt dein Power Mount[ENTER]mit reiner Energie - das verlängert seine[ENTER]Lebenszeit um einige Tage. Was soll ich für dich[ENTER]tun? Möchtest du, dass ich das Leben deines[ENTER]Mounts verlängere oder möchtest du es verbessern[ENTER]lassen? "
  412. gameforge.training_mount._35_select_1 = "Verlängern "
  413. gameforge.training_mount._35_select_2 = "Verbessern "
  414. gameforge.training_mount._36_select_1 = "7 Tage "
  415. gameforge.training_mount._36_select_2 = "15 Tage "
  416. gameforge.training_mount._36_select_3 = "30 Tage "
  417. gameforge.training_mount._36_select_4 = "Rolle der Mutation + 200k Yang "
  418. gameforge.training_mount._37_say = "Leider hast du nicht den passenden Powersnack für[ENTER]die ausgewählte Dauer. Aber du findest ihn hinter[ENTER]der drehenden Münze! "
  419. gameforge.training_mount._38_say = "Die Rolle der Mutation besitzt große Macht! Sie[ENTER]kann das Leben deines Tapferen Mounts bis zu[ENTER]vier Tage verlängern. Ein Versuch kostet dich[ENTER]200.000 Yang. Dein Mount muss dafür jedoch sehr[ENTER]erschöpft sein und weniger als einen Tag zu leben[ENTER]haben. Natürlich gehört auch etwas Glück dazu![ENTER]Sollte die Verlängerung fehlschlagen, füttere ihm[ENTER]doch einen Powersnack. Du findest diesen hinter[ENTER]der drehenden Münze. "
  420. gameforge.training_mount._39_say = "Dein Power Mount ist noch zu stark. Hier kann die[ENTER]Rolle der Mutation nichts bewirken. Komme wieder,[ENTER]wenn es weniger als einen Tag zu leben hat. "
  421. gameforge.training_mount._40_say = "Leider kann ich dir nicht helfen. Entweder trägst[ENTER]du die Rolle der Mutation nicht bei dir oder du[ENTER]besitzt weniger als 200.000 Yang. "
Advertisement
Add Comment
Please, Sign In to add comment