Advertisement
shad0wshayd3_

Pokemon Just Basic v0.2 Beta 1

Jan 2nd, 2014
424
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 70.02 KB | None | 0 0
  1. mainwin 45 25
  2. dim pkmn(718,32), pokemonname$(718)
  3. dim userpkmn(6,30), userpokemonname$(6), tempuserpkmn(1,30), tempuserpokemonname$(1)
  4. dim cpupkmn(6,30), cpupokemonname$(6), tempcpupkmn(1,30), tempcpupokemonname$(1)
  5. dim moveid(616,5), movename$(616), tempmoveid(1,5), tempmovename$(1)
  6. global bmenuchoice, bopchoice, pkmnopchoice$, runawayval, laststat, stat, move, pid, uet, cet
  7. call setup
  8. call movesetup
  9. input pid
  10. call userpokemon1in
  11. call pkmnivrand
  12. call cpupokemon1in
  13.  
  14. [main_menu]
  15. cls
  16. print "| Pokemon Just Basic v0.2 |"
  17. print "1) Random Battle"
  18. print "2) Trainer Battle"
  19. print "3) My Pokemon"
  20. print "4) Someone's PC"
  21. print "5) PokeShop"
  22. print "6) PokeDex"
  23. print "7) Quit"
  24. input "Do Which? ";answer
  25. select case answer
  26. case 1 : goto [randombattle]
  27. case 2 : goto [setupbattle]
  28. case 3 : goto [mypokemon]
  29. case 4 : goto [pc]
  30. case 5 : goto [shop]
  31. case 6 : goto [dex]
  32. case 7 : goto [quit]
  33. case else : goto [main_menu]
  34. end select
  35.  
  36. [randombattle]
  37. pid = rnd(int(1)*718)+1
  38. cpupokemoncount = 1
  39. call cpupokemon1in
  40. goto [main]
  41.  
  42. [setupbattle]
  43. input "What is the id of the Pokemon you'd like to fight? ";pid
  44. cpupokemoncount = 1
  45. call cpupokemon1in
  46. input "Fight another? (y/n) ";ans$
  47. select case lower$(ans$)
  48. case "y"
  49. input "What is the id of the Pokemon you'd like to fight? ";pid
  50. cpupokemoncount = 2
  51. call cpupokemon2in
  52. case "n"
  53. goto [main]
  54. case else
  55. goto [setupbattle]
  56. end select
  57. input "Fight another? (y/n) ";ans$
  58. select case lower$(ans$)
  59. case "y"
  60. input "What is the id of the Pokemon you'd like to fight? ";pid
  61. cpupokemoncount = 3
  62. call cpupokemon3in
  63. case "n"
  64. goto [main]
  65. case else
  66. goto [setupbattle]
  67. end select
  68. input "Fight another? (y/n) ";ans$
  69. select case lower$(ans$)
  70. case "y"
  71. input "What is the id of the Pokemon you'd like to fight? ";pid
  72. cpupokemoncount = 4
  73. call cpupokemon4in
  74. case "n"
  75. goto [main]
  76. case else
  77. goto [setupbattle]
  78. end select
  79. input "Fight another? (y/n) ";ans$
  80. select case lower$(ans$)
  81. case "y"
  82. input "What is the id of the Pokemon you'd like to fight? ";pid
  83. cpupokemoncount = 5
  84. call cpupokemon5in
  85. case "n"
  86. goto [main]
  87. case else
  88. goto [setupbattle]
  89. end select
  90. input "Fight another? (y/n) ";ans$
  91. select case lower$(ans$)
  92. case "y"
  93. input "What is the id of the Pokemon you'd like to fight? ";pid
  94. cpupokemoncount = 6
  95. call cpupokemon6in
  96. case "n"
  97. goto [main]
  98. case else
  99. goto [setupbattle]
  100. end select
  101. goto [main]
  102.  
  103. [mypokemon]
  104. cls : call mainborder
  105. call pkmnstats
  106. select case stat
  107. case 2 : call twoforone
  108. case 3 : call threeforone
  109. case 4 : call fourforone
  110. case 5 : call fiveforone
  111. case 6 : call sixforone
  112. case 7 : goto [main_menu]
  113. end select
  114. goto [mypokemon]
  115.  
  116. [pc]
  117. print "Not yet implamented"
  118. input "[Press Enter]";dummy$
  119. goto [main_menu]
  120.  
  121. [shop]
  122. print "Not yet implamented"
  123. input "[Press Enter]";dummy$
  124. goto [main_menu]
  125.  
  126. [dex]
  127. print "Not yet implamented"
  128. input "[Press Enter]";dummy$
  129. goto [main_menu]
  130.  
  131. [quit]
  132. print "Press ALT-F4 to close the window."
  133. end
  134.  
  135. [main]
  136. cpufirst = 0 : userfirst = 0
  137. cls : call mainborder
  138. call boxtext
  139. call battlemenuoptions
  140. select case bmenuchoice
  141. case 1 : goto [menu_battle]
  142. case 2 : goto [menu_bag]
  143. case 3 : goto [menu_pokemon]
  144. case 4 : goto [menu_runaway]
  145. case else : goto [main]
  146. end select
  147. goto [main]
  148.  
  149. [menu_battle]
  150. cls : call mainborder
  151. call boxtext
  152. call battleoptions
  153. select case bopchoice
  154. case 1 : goto [move_1]
  155. case 2 : goto [move_2]
  156. case 3 : goto [move_3]
  157. case 4 : goto [move_4]
  158. case else : goto [main]
  159. end select
  160. goto [main]
  161.  
  162. [menu_bag]
  163. cls : call mainborder
  164. call baginterface
  165. goto [main]
  166.  
  167. [menu_pokemon]
  168. if stat = 7 then
  169. stat = 1
  170. select case laststat
  171. case 2 : call twoforone
  172. case 3 : call threeforone
  173. case 4 : call fourforone
  174. case 5 : call fiveforone
  175. case 6 : call sixforone
  176. end select
  177. end if
  178. cls : call mainborder
  179. call pkmnselect
  180. select case pkmnopchoice$
  181. case "1" : goto [main]
  182. case "2" : call twoforone
  183. case "3" : call threeforone
  184. case "4" : call fourforone
  185. case "5" : call fiveforone
  186. case "6" : call sixforone
  187. case "s" : goto [stats]
  188. case "S" : goto [stats]
  189. case else : goto [main]
  190. end select
  191. goto [main]
  192.  
  193. [menu_runaway]
  194. cls : call mainborder
  195. call boxtext
  196. call runaway
  197. if runawayval = 1 then goto [main_menu]
  198. goto [main]
  199.  
  200. [stats]
  201. call pkmnstats
  202. select case stat
  203. case 2 : call twoforone
  204. case 3 : call threeforone
  205. case 4 : call fourforone
  206. case 5 : call fiveforone
  207. case 6 : call sixforone
  208. case 7 : goto [menu_pokemon]
  209. case else
  210. end select
  211. goto [stats]
  212.  
  213. [miss]
  214. cls : call mainborder
  215. call boxtext
  216. call screenupdate
  217. locate 4, 17 : print userpokemonname$(1);"'s attack missed!"
  218. locate 4, 18 : input "[Press Enter]";dummy$
  219. userfirst = 1
  220. turn = turn + 1
  221. goto [check]
  222.  
  223. [move_1]
  224. cls : call mainborder : move = 1
  225. select case moveid(userpkmn(1,16),3)
  226. case 1 : call normaleffectiveuserattack
  227. case 2 : call fightingeffectiveuserattack
  228. case 3 : call flyingeffectiveuserattack
  229. case 4 : call poisoneffectiveuserattack
  230. case 5 : call groundeffectiveuserattack
  231. case 6 : call rockeffectiveuserattack
  232. case 7 : call bugeffectiveuserattack
  233. case 8 : call ghosteffectiveuserattack
  234. case 9 : call steeleffectiveuserattack
  235. case 10 : call fireeffectiveuserattack
  236. case 11 : call watereffectiveuserattack
  237. case 12 : call grasseffectiveuserattack
  238. case 13 : call electriceffectiveuserattack
  239. case 14 : call psychiceffectiveuserattack
  240. case 15 : call iceeffectiveuserattack
  241. case 16 : call dragoneffectiveuserattack
  242. case 17 : call darkeffectiveuserattack
  243. case 18 : call fairyeffectiveuserattack
  244. end select
  245.  
  246. p = moveid(userpkmn(1,16),5) * (userpkmn(1,14)/userpkmn(1,15))
  247. if p >= 0.41 then goto [clause1]
  248. if p <= 0.4 then goto [miss]
  249.  
  250. [clause1]
  251. z = int(rnd(1)*255)+1
  252. if z < 217 then goto [clause1]
  253. if uet > 2 then y = 40
  254. if uet = 1 then y = 20
  255. if uet = 0 then y = 10
  256. if uet = -1 then y = 5
  257. if uet <= -2 then y = 2.5
  258. turn = turn + 1
  259. if turn > 2 then goto [main]
  260. c = moveid(userpkmn(1,16), 1)
  261. if moveid(userpkmn(1,16), 4) = 1 then
  262. b = userpkmn(1,2) : d = cpupkmn(1,3)
  263. end if
  264. if moveid(userpkmn(1,16), 4) = 2 then
  265. b = userpkmn(1,4) : d = cpupkmn(1,5)
  266. end if
  267. if moveid(userpkmn(1,16), 3) = userpkmn(1, 21) or moveid(userpkmn(1,16), 3) = userpkmn(1, 20) then
  268. x = 1.5 : a = userpkmn(1,7)
  269. else
  270. x = 1 : a = userpkmn(1,7)
  271. end if
  272. crit = int(rnd(1)*100)+1
  273. if crit = 1 then
  274. crit = 1.5
  275. else
  276. crit = 1
  277. end if
  278. hpdamage = int((((((((((2*a)/5+2)*b*c)/d)/50)+2)*x)*y/10)*z)/255)*crit
  279. goto [cpumovedecide]
  280.  
  281. [move_2]
  282. cls : call mainborder : move = 2
  283. select case moveid(userpkmn(1,17),3)
  284. case 1 : call normaleffectiveuserattack
  285. case 2 : call fightingeffectiveuserattack
  286. case 3 : call flyingeffectiveuserattack
  287. case 4 : call poisoneffectiveuserattack
  288. case 5 : call groundeffectiveuserattack
  289. case 6 : call rockeffectiveuserattack
  290. case 7 : call bugeffectiveuserattack
  291. case 8 : call ghosteffectiveuserattack
  292. case 9 : call steeleffectiveuserattack
  293. case 10 : call fireeffectiveuserattack
  294. case 11 : call watereffectiveuserattack
  295. case 12 : call grasseffectiveuserattack
  296. case 13 : call electriceffectiveuserattack
  297. case 14 : call psychiceffectiveuserattack
  298. case 15 : call iceeffectiveuserattack
  299. case 16 : call dragoneffectiveuserattack
  300. case 17 : call darkeffectiveuserattack
  301. case 18 : call fairyeffectiveuserattack
  302. end select
  303.  
  304. p = moveid(userpkmn(1,17),5) * (userpkmn(1,14)/userpkmn(1,15))
  305. if p >= 0.41 then goto [clause2]
  306. if p <= 0.4 then goto [miss]
  307.  
  308. [clause2]
  309. z = int(rnd(1)*255)+1
  310. if z < 217 then goto [clause2]
  311. if uet >= 2 then y = 40
  312. if uet = 1 then y = 20
  313. if uet = 0 then y = 10
  314. if uet = -1 then y = 5
  315. if uet <= -2 then y = 2.5
  316. turn = turn + 1
  317. if turn > 2 then goto [main]
  318. c = moveid(userpkmn(1,17), 1)
  319. if moveid(userpkmn(1,17), 4) = 1 then
  320. b = userpkmn(1,2) : d = cpupkmn(1,3)
  321. end if
  322. if moveid(userpkmn(1,17), 4) = 2 then
  323. b = userpkmn(1,4) : d = cpupkmn(1,5)
  324. end if
  325. if moveid(userpkmn(1,17), 3) = userpkmn(1, 21) or moveid(userpkmn(1,17), 3) = userpkmn(1, 20) then
  326. x = 1.5 : a = userpkmn(1,7)
  327. else
  328. x = 1 : a = userpkmn(1,7)
  329. end if
  330. crit = int(rnd(1)*100)+1
  331. if crit = 1 then
  332. crit = 1.5
  333. else
  334. crit = 1
  335. end if
  336. hpdamage = int((((((((((2*a)/5+2)*b*c)/d)/50)+2)*x)*y/10)*z)/255)*crit
  337. goto [cpumovedecide]
  338.  
  339. [move_3]
  340. cls : call mainborder : move = 3
  341. select case moveid(userpkmn(1,18),3)
  342. case 1 : call normaleffectiveuserattack
  343. case 2 : call fightingeffectiveuserattack
  344. case 3 : call flyingeffectiveuserattack
  345. case 4 : call poisoneffectiveuserattack
  346. case 5 : call groundeffectiveuserattack
  347. case 6 : call rockeffectiveuserattack
  348. case 7 : call bugeffectiveuserattack
  349. case 8 : call ghosteffectiveuserattack
  350. case 9 : call steeleffectiveuserattack
  351. case 10 : call fireeffectiveuserattack
  352. case 11 : call watereffectiveuserattack
  353. case 12 : call grasseffectiveuserattack
  354. case 13 : call electriceffectiveuserattack
  355. case 14 : call psychiceffectiveuserattack
  356. case 15 : call iceeffectiveuserattack
  357. case 16 : call dragoneffectiveuserattack
  358. case 17 : call darkeffectiveuserattack
  359. case 18 : call fairyeffectiveuserattack
  360. end select
  361.  
  362. p = moveid(userpkmn(1,18),5) * (userpkmn(1,14)/userpkmn(1,15))
  363. if p >= 0.41 then goto [clause3]
  364. if p <= 0.4 then goto [miss]
  365.  
  366. [clause3]
  367. z = int(rnd(1)*255)+1
  368. if z < 217 then goto [clause3]
  369. if uet > 2 then y = 40
  370. if uet = 1 then y = 20
  371. if uet = 0 then y = 10
  372. if uet = -1 then y = 5
  373. if uet <= -2 then y = 2.5
  374. turn = turn + 1
  375. if turn > 2 then goto [main]
  376. c = moveid(userpkmn(1,18), 1)
  377. if moveid(userpkmn(1,18), 4) = 1 then
  378. b = userpkmn(1,2) : d = cpupkmn(1,3)
  379. end if
  380. if moveid(userpkmn(1,17), 4) = 2 then
  381. b = userpkmn(1,4) : d = cpupkmn(1,5)
  382. end if
  383. if moveid(userpkmn(1,18), 3) = userpkmn(1, 21) or moveid(userpkmn(1,18), 3) = userpkmn(1, 20) then
  384. x = 1.5 : a = userpkmn(1,7)
  385. else
  386. x = 1 : a = userpkmn(1,7)
  387. end if
  388. crit = int(rnd(1)*100)+1
  389. if crit = 1 then
  390. crit = 1.5
  391. else
  392. crit = 1
  393. end if
  394. hpdamage = int((((((((((2*a)/5+2)*b*c)/d)/50)+2)*x)*y/10)*z)/255)*crit
  395. goto [cpumovedecide]
  396.  
  397. [move_4]
  398. cls : call mainborder : move = 4
  399. select case moveid(userpkmn(1,19),3)
  400. case 1 : call normaleffectiveuserattack
  401. case 2 : call fightingeffectiveuserattack
  402. case 3 : call flyingeffectiveuserattack
  403. case 4 : call poisoneffectiveuserattack
  404. case 5 : call groundeffectiveuserattack
  405. case 6 : call rockeffectiveuserattack
  406. case 7 : call bugeffectiveuserattack
  407. case 8 : call ghosteffectiveuserattack
  408. case 9 : call steeleffectiveuserattack
  409. case 10 : call fireeffectiveuserattack
  410. case 11 : call watereffectiveuserattack
  411. case 12 : call grasseffectiveuserattack
  412. case 13 : call electriceffectiveuserattack
  413. case 14 : call psychiceffectiveuserattack
  414. case 15 : call iceeffectiveuserattack
  415. case 16 : call dragoneffectiveuserattack
  416. case 17 : call darkeffectiveuserattack
  417. case 18 : call fairyeffectiveuserattack
  418. end select
  419.  
  420. p = moveid(userpkmn(1,19),5) * (userpkmn(1,14)/userpkmn(1,15))
  421. if p >= 0.41 then goto [clause4]
  422. if p <= 0.4 then goto [miss]
  423.  
  424. [clause4]
  425. z = int(rnd(1)*255)+1
  426. if z < 217 then goto [clause4]
  427. if uet > 2 then y = 40
  428. if uet = 1 then y = 20
  429. if uet = 0 then y = 10
  430. if uet = -1 then y = 5
  431. if uet <= -2 then y = 2.5
  432. turn = turn + 1
  433. if turn > 2 then goto [main]
  434. c = moveid(userpkmn(1,19), 1)
  435. if moveid(userpkmn(1,19), 4) = 1 then
  436. b = userpkmn(1,2) : d = cpupkmn(1,3)
  437. end if
  438. if moveid(userpkmn(1,17), 4) = 2 then
  439. b = userpkmn(1,4) : d = cpupkmn(1,5)
  440. end if
  441. if moveid(userpkmn(1,19), 3) = userpkmn(1, 21) or moveid(userpkmn(1,19), 3) = userpkmn(1, 20) then
  442. x = 1.5 : a = userpkmn(1,7)
  443. else
  444. x = 1 : a = userpkmn(1,7)
  445. end if
  446. crit = int(rnd(1)*100)+1
  447. if crit = 1 then
  448. crit = 1.5
  449. else
  450. crit = 1
  451. end if
  452. hpdamage = int((((((((((2*a)/5+2)*b*c)/d)/50)+2)*x)*y/10)*z)/255)*crit
  453. goto [cpumovedecide]
  454.  
  455. [cpu_miss]
  456. cls : call mainborder
  457. call boxtext
  458. call screenupdate
  459. locate 4, 17 : print cpupokemonname$(1);"'s attack missed!"
  460. locate 4, 18 : input "V";dummy$
  461. cpufirst = 1
  462. turn = turn + 1
  463. goto [check]
  464.  
  465. [cpumovedecide]
  466. turn = turn + 1
  467. if turn > 2 then goto [main]
  468. cpumove = int(rnd(1)*4)+1
  469. select case cpumove
  470. case 1 : goto [cpu_move_1]
  471. case 2 : goto [cpu_move_2]
  472. case 3 : goto [cpu_move_3]
  473. case 4 : goto [cpu_move_4]
  474. end select
  475.  
  476. [cpu_move_1]
  477. cls : call mainborder : cpmove = 1
  478. select case moveid(cpupkmn(1,16),3)
  479. case 1 : call normaleffectivecpuattack
  480. case 2 : call fightingeffectivecpuattack
  481. case 3 : call flyingeffectivecpuattack
  482. case 4 : call poisoneffectivecpuattack
  483. case 5 : call groundeffectivecpuattack
  484. case 6 : call rockeffectivecpuattack
  485. case 7 : call bugeffectivecpuattack
  486. case 8 : call ghosteffectivecpuattack
  487. case 9 : call steeleffectivecpuattack
  488. case 10 : call fireeffectivecpuattack
  489. case 11 : call watereffectivecpuattack
  490. case 12 : call grasseffectivecpuattack
  491. case 13 : call electriceffectivecpuattack
  492. case 14 : call psychiceffectivecpuattack
  493. case 15 : call iceeffectivecpuattack
  494. case 16 : call dragoneffectivecpuattack
  495. case 17 : call darkeffectivecpuattack
  496. case 18 : call fairyeffectivecpuattack
  497. end select
  498.  
  499. p = moveid(cpupkmn(1,16),5) * (cpupkmn(1,14)/cpupkmn(1,15))
  500. if p >= 0.41 then goto [cpu_clause1]
  501. if p <= 0.4 then goto [cpu_miss]
  502.  
  503. [cpu_clause1]
  504. z = int(rnd(1)*255)+1
  505. if z < 217 then goto [cpu_clause1]
  506. if cet >= 2 then y = 40
  507. if cet = 1 then y = 20
  508. if cet = 0 then y = 10
  509. if cet = -1 then y = 5
  510. if cet <= -2 then y = 2.5
  511. turn = turn + 1
  512. if turn > 2 then goto [main]
  513. c = moveid(cpupkmn(1,16), 1)
  514. if moveid(cpupkmn(1,16), 4) = 1 then
  515. b = cpupkmn(1,2) : d = userpkmn(1,3)
  516. end if
  517. if moveid(cpupkmn(1,16), 4) = 2 then
  518. b = cpupkmn(1,4) : d = userpkmn(1,5)
  519. end if
  520. if moveid(cpupkmn(1,16), 3) = cpupkmn(1, 21) or moveid(cpupkmn(1,16), 3) = cpupkmn(1, 20) then
  521. x = 1.5 : a = cpupkmn(1,7)
  522. else
  523. x = 1 : a = cpupkmn(1,7)
  524. end if
  525. crit = int(rnd(1)*100)+1
  526. if crit = 1 then
  527. crit = 1.5
  528. else
  529. crit = 1
  530. end if
  531. cphpdamage = int((((((((((2*a)/5+2)*b*c)/d)/50)+2)*x)*y/10)*z)/255)*crit
  532. goto [check]
  533.  
  534. [cpu_move_2]
  535. cls : call mainborder : cpmove = 2
  536. select case moveid(cpupkmn(1,17),3)
  537. case 1 : call normaleffectivecpuattack
  538. case 2 : call fightingeffectivecpuattack
  539. case 3 : call flyingeffectivecpuattack
  540. case 4 : call poisoneffectivecpuattack
  541. case 5 : call groundeffectivecpuattack
  542. case 6 : call rockeffectivecpuattack
  543. case 7 : call bugeffectivecpuattack
  544. case 8 : call ghosteffectivecpuattack
  545. case 9 : call steeleffectivecpuattack
  546. case 10 : call fireeffectivecpuattack
  547. case 11 : call watereffectivecpuattack
  548. case 12 : call grasseffectivecpuattack
  549. case 13 : call electriceffectivecpuattack
  550. case 14 : call psychiceffectivecpuattack
  551. case 15 : call iceeffectivecpuattack
  552. case 16 : call dragoneffectivecpuattack
  553. case 17 : call darkeffectivecpuattack
  554. case 18 : call fairyeffectivecpuattack
  555. end select
  556.  
  557. p = moveid(cpupkmn(1,17),5) * (cpupkmn(1,14)/cpupkmn(1,15))
  558. if p >= 0.41 then goto [cpu_clause2]
  559. if p <= 0.4 then goto [cpu_miss]
  560.  
  561. [cpu_clause2]
  562. z = int(rnd(1)*255)+1
  563. if z < 217 then goto [cpu_clause2]
  564. if cet >= 2 then y = 40
  565. if cet = 1 then y = 20
  566. if cet = 0 then y = 10
  567. if cet = -1 then y = 5
  568. if cet <= -2 then y = 2.5
  569. turn = turn + 1
  570. if turn > 2 then goto [main]
  571. c = moveid(cpupkmn(1,17), 1)
  572. if moveid(cpupkmn(1,17), 4) = 1 then
  573. b = cpupkmn(1,2) : d = userpkmn(1,3)
  574. end if
  575. if moveid(cpupkmn(1,17), 4) = 2 then
  576. b = cpupkmn(1,4) : d = userpkmn(1,5)
  577. end if
  578. if moveid(cpupkmn(1,17), 3) = cpupkmn(1, 21) or moveid(cpupkmn(1,17), 3) = cpupkmn(1, 20) then
  579. x = 1.5 : a = cpupkmn(1,7)
  580. else
  581. x = 1 : a = cpupkmn(1,7)
  582. end if
  583. crit = int(rnd(1)*100)+1
  584. if crit = 1 then
  585. crit = 1.5
  586. else
  587. crit = 1
  588. end if
  589. cphpdamage = int((((((((((2*a)/5+2)*b*c)/d)/50)+2)*x)*y/10)*z)/255)*crit
  590. goto [check]
  591.  
  592. [cpu_move_3]
  593. cls : call mainborder : cpmove = 3
  594. select case moveid(cpupkmn(1,18),3)
  595. case 1 : call normaleffectivecpuattack
  596. case 2 : call fightingeffectivecpuattack
  597. case 3 : call flyingeffectivecpuattack
  598. case 4 : call poisoneffectivecpuattack
  599. case 5 : call groundeffectivecpuattack
  600. case 6 : call rockeffectivecpuattack
  601. case 7 : call bugeffectivecpuattack
  602. case 8 : call ghosteffectivecpuattack
  603. case 9 : call steeleffectivecpuattack
  604. case 10 : call fireeffectivecpuattack
  605. case 11 : call watereffectivecpuattack
  606. case 12 : call grasseffectivecpuattack
  607. case 13 : call electriceffectivecpuattack
  608. case 14 : call psychiceffectivecpuattack
  609. case 15 : call iceeffectivecpuattack
  610. case 16 : call dragoneffectivecpuattack
  611. case 17 : call darkeffectivecpuattack
  612. case 18 : call fairyeffectivecpuattack
  613. end select
  614.  
  615. p = moveid(cpupkmn(1,18),5) * (cpupkmn(1,14)/cpupkmn(1,15))
  616. if p >= 0.41 then goto [cpu_clause3]
  617. if p <= 0.4 then goto [cpu_miss]
  618.  
  619. [cpu_clause3]
  620. z = int(rnd(1)*255)+1
  621. if z < 217 then goto [cpu_clause3]
  622. if cet > 2 then y = 40
  623. if cet = 1 then y = 20
  624. if cet = 0 then y = 10
  625. if cet = -1 then y = 5
  626. if cet <= -2 then y = 2.5
  627. turn = turn + 1
  628. if turn > 2 then goto [main]
  629. c = moveid(cpupkmn(1,18), 1)
  630. if moveid(cpupkmn(1,18), 4) = 1 then
  631. b = cpupkmn(1,2) : d = userpkmn(1,3)
  632. end if
  633. if moveid(cpupkmn(1,18), 4) = 2 then
  634. b = cpupkmn(1,4) : d = userpkmn(1,5)
  635. end if
  636. if moveid(cpupkmn(1,18), 3) = cpupkmn(1, 21) or moveid(cpupkmn(1,18), 3) = cpupkmn(1, 20) then
  637. x = 1.5 : a = cpupkmn(1,7)
  638. else
  639. x = 1 : a = cpupkmn(1,7)
  640. end if
  641. crit = int(rnd(1)*100)+1
  642. if crit = 1 then
  643. crit = 1.5
  644. else
  645. crit = 1
  646. end if
  647. cphpdamage = int((((((((((2*a)/5+2)*b*c)/d)/50)+2)*x)*y/10)*z)/255)*crit
  648. goto [check]
  649.  
  650. [cpu_move_4]
  651. cls : call mainborder : cpmove = 4
  652. select case moveid(cpupkmn(1,19),3)
  653. case 1 : call normaleffectivecpuattack
  654. case 2 : call fightingeffectivecpuattack
  655. case 3 : call flyingeffectivecpuattack
  656. case 4 : call poisoneffectivecpuattack
  657. case 5 : call groundeffectivecpuattack
  658. case 6 : call rockeffectivecpuattack
  659. case 7 : call bugeffectivecpuattack
  660. case 8 : call ghosteffectivecpuattack
  661. case 9 : call steeleffectivecpuattack
  662. case 10 : call fireeffectivecpuattack
  663. case 11 : call watereffectivecpuattack
  664. case 12 : call grasseffectivecpuattack
  665. case 13 : call electriceffectivecpuattack
  666. case 14 : call psychiceffectivecpuattack
  667. case 15 : call iceeffectivecpuattack
  668. case 16 : call dragoneffectivecpuattack
  669. case 17 : call darkeffectivecpuattack
  670. case 18 : call fairyeffectivecpuattack
  671. end select
  672.  
  673. p = moveid(cpupkmn(1,19),5) * (cpupkmn(1,14)/cpupkmn(1,15))
  674. if p >= 0.41 then goto [cpu_clause4]
  675. if p <= 0.4 then goto [cpu_miss]
  676.  
  677. [cpu_clause4]
  678. z = int(rnd(1)*255)+1
  679. if z < 217 then goto [cpu_clause4]
  680. if cet > 2 then y = 40
  681. if cet = 1 then y = 20
  682. if cet = 0 then y = 10
  683. if cet = -1 then y = 5
  684. if cet <= -2 then y = 2.5
  685. turn = turn + 1
  686. if turn > 2 then goto [main]
  687. c = moveid(cpupkmn(1,19), 1)
  688. if moveid(cpupkmn(1,19), 4) = 1 then
  689. b = cpupkmn(1,2) : d = userpkmn(1,3)
  690. end if
  691. if moveid(cpupkmn(1,19), 4) = 2 then
  692. b = cpupkmn(1,4) : d = userpkmn(1,5)
  693. end if
  694. if moveid(cpupkmn(1,19), 3) = cpupkmn(1, 21) or moveid(cpupkmn(1,19), 3) = cpupkmn(1, 20) then
  695. x = 1.5 : a = cpupkmn(1,7)
  696. else
  697. x = 1 : a = cpupkmn(1,7)
  698. end if
  699. crit = int(rnd(1)*100)+1
  700. if crit = 1 then
  701. crit = 1.5
  702. else
  703. crit = 1
  704. end if
  705. cphpdamage = int((((((((((2*a)/5+2)*b*c)/d)/50)+2)*x)*y/10)*z)/255)*crit
  706. goto [check]
  707.  
  708. '-----------------------------------------------------------------------------------
  709.  
  710. [check]
  711. if userfirst = 1 then goto [cpubattleprint]
  712. if cpufirst = 1 then goto [userbattleprint]
  713. if userpkmn(1,6) > cpupkmn(1,6) then
  714. userfirst = 1
  715. goto [userbattleprint]
  716. end if
  717. cpufirst = 1
  718. goto [cpubattleprint]
  719.  
  720. '-------------------------------------------------------------------------------
  721.  
  722. [cpubattleprint]
  723. userpkmn(1,1) = userpkmn(1,1)-cphpdamage
  724. call screenupdate
  725. locate 4, 17 : print cpupokemonname$(1);" used ";movename$(cpupkmn(1,16));"!"
  726. locate 4, 18 : input "[Press Enter]";dummy$
  727. cls:call mainborder:call boxtext:call screenupdate
  728. if crit <> 1 then
  729. locate 4, 17 : print "Critital Hit!"
  730. locate 4, 18 : input "[Press Enter]";dummy$
  731. end if
  732. cls:call mainborder:call boxtext:call screenupdate
  733. if cet >= 1 then
  734. locate 4, 17 : print "It's super effective!"
  735. locate 4, 18 : input "[Press Enter]";dummy$
  736. end if
  737. cls:call mainborder:call boxtext:call screenupdate
  738. if cet <= -1 then
  739. locate 4, 17 : print "It's not very effective..."
  740. locate 4, 18 : input "[Press Enter]";dummy$
  741. end if
  742. cls:call mainborder:call boxtext:call screenupdate
  743. if userfirst = 1 then goto [main]
  744. goto [check]
  745.  
  746. [userbattleprint]
  747. cpupkmn(1,1) = cpupkmn(1,1)-hpdamage
  748. call screenupdate
  749. locate 4, 17 : print userpokemonname$(1);" used ";movename$(userpkmn(1,19));"!"
  750. locate 4, 18 : input "[Press Enter]";dummy$
  751. cls:call mainborder:call boxtext:call screenupdate
  752. if crit <> 1 then
  753. locate 4, 17 : print "Critital Hit!"
  754. locate 4, 18 : input "[Press Enter]";dummy$
  755. end if
  756. cls:call mainborder:call boxtext:call screenupdate
  757. if uet >= 1 then
  758. locate 4, 17 : print "It's super effective!"
  759. locate 4, 18 : input "[Press Enter]";dummy$
  760. end if
  761. cls:call mainborder:call boxtext:call screenupdate
  762. if uet <= -1 then
  763. locate 4, 17 : print "It's not very effective..."
  764. locate 4, 18 : input "[Press Enter]";dummy$
  765. end if
  766. cls:call mainborder:call boxtext:call screenupdate
  767. if cpufirst = 1 then goto [main]
  768. goto [check]
  769.  
  770.  
  771. '-------------------------------------------------------------------------------------------------------
  772.  
  773. function healthcalc(pid)
  774. healthcalc = int(((((pkmn(pid,14)+(2*pkmn(pid,1))+(pkmn(pid,23)/4)+100)*pkmn(pid,7))/100)+10)-0.5)
  775. end function
  776.  
  777. function attackcalc(pid)
  778. NAT = 1
  779. attackcalc = int((((((pkmn(pid,15)+(2*pkmn(pid,2))+(pkmn(pid,24)/4))*pkmn(pid,7))/100)+5)*NAT)-0.5)
  780. end function
  781.  
  782. function defensecalc(pid)
  783. NAT = 1
  784. defensecalc = int((((((pkmn(pid,16)+(2*pkmn(pid,3))+(pkmn(pid,25)/4))*pkmn(pid,7))/100)+5)*NAT)-0.5)
  785. end function
  786.  
  787. function specialattackcalc(pid)
  788. NAT = 1
  789. specialattackcalc = int((((((pkmn(pid,17)+(2*pkmn(pid,4))+(pkmn(pid,26)/4))*pkmn(pid,7))/100)+5)*NAT)-0.5)
  790. end function
  791.  
  792. function specialdefensecalc(pid)
  793. NAT = 1
  794. specialdefensecalc = int((((((pkmn(pid,18)+(2*pkmn(pid,5))+(pkmn(pid,27)/4))*pkmn(pid,7))/100)+5)*NAT)-0.5)
  795. end function
  796.  
  797. function speedcalc(pid)
  798. NAT = 1
  799. speedcalc = int((((((pkmn(pid,19)+(2*pkmn(pid,6))+(pkmn(pid,28)/4))*pkmn(pid,7))/100)+5)*NAT)-0.5)
  800. end function
  801.  
  802. function hpdam(a, b, c, d, x, y, z)
  803. hpdam = int((((((((((2*a)/5+2)*b*c)/d)/50)+2)*x)*y/10)*z)/255)
  804. end function
  805. '------------------------------------------------------------------------------------------------------
  806.  
  807. sub mainborder
  808. locate 1, 1 : print "****************************************"
  809. locate 1, 2 : print "*"
  810. locate 1, 3 : print "*"
  811. locate 1, 4 : print "*"
  812. locate 1, 5 : print "*"
  813. locate 1, 6 : print "*"
  814. locate 1, 7 : print "*"
  815. locate 1, 8 : print "*"
  816. locate 1, 9 : print "*"
  817. locate 1, 10 : print "*"
  818. locate 1, 11 : print "*"
  819. locate 1, 12 : print "*"
  820. locate 1, 13 : print "*"
  821. locate 1, 14 : print "*"
  822. locate 1, 15 : print "*"
  823. locate 1, 16 : print "*"
  824. locate 1, 17 : print "*"
  825. locate 1, 18 : print "*"
  826. locate 1, 19 : print "*"
  827. locate 40, 2 : print "*"
  828. locate 40, 3 : print "*"
  829. locate 40, 4 : print "*"
  830. locate 40, 5 : print "*"
  831. locate 40, 6 : print "*"
  832. locate 40, 7 : print "*"
  833. locate 40, 8 : print "*"
  834. locate 40, 9 : print "*"
  835. locate 40, 10 : print "*"
  836. locate 40, 11 : print "*"
  837. locate 40, 12 : print "*"
  838. locate 40, 13 : print "*"
  839. locate 40, 14 : print "*"
  840. locate 40, 15 : print "*"
  841. locate 40, 16 : print "*"
  842. locate 40, 17 : print "*"
  843. locate 40, 18 : print "*"
  844. locate 40, 19 : print "*"
  845. locate 1, 20 : print "****************************************"
  846. end sub
  847.  
  848. sub boxtext
  849. locate 2, 16 : print "######################################"
  850. locate 2, 19 : print "######################################"
  851. locate 2, 17 : print "#"
  852. locate 2, 18 : print "#"
  853. locate 39, 17 : print "#"
  854. locate 39, 18 : print "#"
  855. end sub
  856.  
  857. sub battlemenuoptions
  858. locate 4, 17 : print "1) Battle"
  859. locate 4, 18 : print "3) Pokemon"
  860. locate 19, 17 : print "2) Bag"
  861. locate 19, 18 : print "4) Run"
  862. locate 3, 11 : print "---------------------"
  863. locate 3, 12 : print " ";userpokemonname$(1);" | HP: ";using("###", userpkmn(1,1))
  864. locate 3, 13 : print "---------------------"
  865. locate 17, 4 : print "---------------------"
  866. locate 17, 5 : print " ";cpupokemonname$(1);" | HP: ";using("###", cpupkmn(1,1))
  867. locate 17, 6 : print "---------------------"
  868. locate 36, 17 : input "V";bmenuchoice
  869. end sub
  870.  
  871. sub battleoptions
  872. locate 3, 17 : print "1) ";movename$(userpkmn(1,16))
  873. locate 3, 18 : print "3) ";movename$(userpkmn(1,18))
  874. locate 20, 17 : print "2) ";movename$(userpkmn(1,17))
  875. locate 20, 18 : print "4) ";movename$(userpkmn(1,19))
  876. locate 3, 11 : print "---------------------"
  877. locate 3, 12 : print " ";userpokemonname$(1);" | HP: ";using("###", userpkmn(1,1))
  878. locate 3, 13 : print "---------------------"
  879. locate 17, 4 : print "---------------------"
  880. locate 17, 5 : print " ";cpupokemonname$(1);" | HP: ";using("###", cpupkmn(1,1))
  881. locate 17, 6 : print "---------------------"
  882. locate 36, 17 : input "V";bopchoice
  883. end sub
  884.  
  885. sub screenupdate
  886. locate 3, 11 : print "---------------------"
  887. locate 3, 12 : print " ";userpokemonname$(1);" | HP: ";using("###", userpkmn(1,1))
  888. locate 3, 13 : print "---------------------"
  889. locate 17, 4 : print "---------------------"
  890. locate 17, 5 : print " ";cpupokemonname$(1);" | HP: ";using("###", cpupkmn(1,1))
  891. locate 17, 6 : print "---------------------"
  892. end sub
  893.  
  894. sub baginterface
  895. locate 20, 2 : print "*"
  896. locate 20, 3 : print "*"
  897. locate 20, 4 : print "*"
  898. locate 20, 5 : print "*"
  899. locate 20, 6 : print "*"
  900. locate 20, 7 : print "*"
  901. locate 20, 8 : print "*"
  902. locate 20, 9 : print "*"
  903. locate 20, 10 : print "*"
  904. locate 20, 11 : print "*"
  905. locate 20, 12 : print "*"
  906. locate 20, 13 : print "*"
  907. locate 20, 14 : print "*"
  908. locate 20, 15 : print "*"
  909. locate 20, 16 : print "*"
  910. locate 20, 17 : print "*"
  911. locate 20, 18 : print "*"
  912. locate 20, 19 : print "*"
  913. locate 2, 11 : print "******************"
  914. locate 36, 7 : input "";bagchoice
  915. end sub
  916.  
  917. sub pkmnselect
  918. locate 2, 4 : print "####################"
  919. locate 2, 5 : print "# ";userpokemonname$(1);" lv. ";userpkmn(1,7)
  920. locate 2, 6 : print "# HP: ";userpkmn(1,1);"/";userpkmn(1,29)
  921. locate 2, 7 : print "####################"
  922. locate 21, 2 : print "###################"
  923. locate 21, 3 : print "# ";userpokemonname$(2);" lv. ";userpkmn(2,7)
  924. locate 21, 4 : print "# HP: ";userpkmn(2,1);"/";userpkmn(2,29)
  925. locate 21, 5 : print "###################"
  926. locate 21, 6 : print "# ";userpokemonname$(3);" lv. ";userpkmn(3,7)
  927. locate 21, 7 : print "# HP: ";userpkmn(3,1);"/";userpkmn(3,29)
  928. locate 21, 8 : print "###################"
  929. locate 21, 9 : print "# ";userpokemonname$(4);" lv. ";userpkmn(4,7)
  930. locate 21, 10 : print "# HP: ";userpkmn(4,1);"/";userpkmn(4,29)
  931. locate 21, 11 : print "###################"
  932. locate 21, 12 : print "# ";userpokemonname$(5);" lv. ";userpkmn(5,7)
  933. locate 21, 13 : print "# HP: ";userpkmn(5,1);"/";userpkmn(5,29)
  934. locate 21, 14 : print "###################"
  935. locate 21, 15 : print "# ";userpokemonname$(6);" lv. ";userpkmn(6,7)
  936. locate 21, 16 : print "# HP: ";userpkmn(6,1);"/";userpkmn(6,29)
  937. locate 21, 17 : print "###################"
  938. locate 33, 18 : print "#"
  939. locate 8, 18 : print "#"
  940. locate 8, 19 : print "##########################"
  941. locate 8, 17 : print "###############"
  942. locate 2, 8 : print "# Attack: ";userpkmn(1,2)
  943. locate 2, 9 : print "#"
  944. locate 2, 10 : print "# Defense: ";userpkmn(1,3)
  945. locate 2, 11 : print "#"
  946. locate 2, 12 : print "# SpAttack: ";userpkmn(1,4)
  947. locate 2, 13 : print "#"
  948. locate 2, 14 : print "# SpDefense: ";userpkmn(1,5)
  949. locate 2, 15 : print "#"
  950. locate 2, 16 : print "# Speed: ";userpkmn(1,6)
  951. locate 2, 17 : print "######"
  952. locate 9, 18 : input "Pokemon to Switch For: ";pkmnopchoice$
  953. end sub
  954.  
  955. sub pkmnstats
  956. cls : call mainborder
  957. laststat = stat
  958. locate 2, 4 : print "####################"
  959. locate 2, 5 : print "# ";userpokemonname$(1);" lv. ";userpkmn(1,7)
  960. locate 2, 6 : print "# HP: ";userpkmn(1,1);"/";userpkmn(1,29)
  961. locate 2, 7 : print "####################"
  962. locate 21, 2 : print "###################"
  963. locate 21, 3 : print "# ";userpokemonname$(2);" lv. ";userpkmn(2,7)
  964. locate 21, 4 : print "# HP: ";userpkmn(2,1);"/";userpkmn(2,29)
  965. locate 21, 5 : print "###################"
  966. locate 21, 6 : print "# ";userpokemonname$(3);" lv. ";userpkmn(3,7)
  967. locate 21, 7 : print "# HP: ";userpkmn(3,1);"/";userpkmn(3,29)
  968. locate 21, 8 : print "###################"
  969. locate 21, 9 : print "# ";userpokemonname$(4);" lv. ";userpkmn(4,7)
  970. locate 21, 10 : print "# HP: ";userpkmn(4,1);"/";userpkmn(4,29)
  971. locate 21, 11 : print "###################"
  972. locate 21, 12 : print "# ";userpokemonname$(5);" lv. ";userpkmn(5,7)
  973. locate 21, 13 : print "# HP: ";userpkmn(5,1);"/";userpkmn(5,29)
  974. locate 21, 14 : print "###################"
  975. locate 21, 15 : print "# ";userpokemonname$(6);" lv. ";userpkmn(6,7)
  976. locate 21, 16 : print "# HP: ";userpkmn(6,1);"/";userpkmn(6,29)
  977. locate 21, 17 : print "###################"
  978. locate 33, 18 : print "#"
  979. locate 8, 18 : print "#"
  980. locate 8, 19 : print "##########################"
  981. locate 8, 17 : print "###############"
  982. locate 2, 8 : print "# Attack: ";userpkmn(1,2)
  983. locate 2, 9 : print "#"
  984. locate 2, 10 : print "# Defense: ";userpkmn(1,3)
  985. locate 2, 11 : print "#"
  986. locate 2, 12 : print "# SpAttack: ";userpkmn(1,4)
  987. locate 2, 13 : print "#"
  988. locate 2, 14 : print "# SpDefense: ";userpkmn(1,5)
  989. locate 2, 15 : print "#"
  990. locate 2, 16 : print "# Speed: ";userpkmn(1,6)
  991. locate 2, 17 : print "######"
  992. locate 9, 18 : input "Pokemon to View Stats: ";pkmnstatchoice$
  993. select case pkmnstatchoice$
  994. case "1" : goto [main]
  995. case "2" : stat = 2
  996. case "3" : stat = 3
  997. case "4" : stat = 3
  998. case "5" : stat = 5
  999. case "6" : stat = 6
  1000. case else : stat = 7
  1001. end select
  1002.  
  1003. end sub
  1004.  
  1005. sub runaway
  1006. chance = int(rnd(1)*200)+1 : runawayval = 1
  1007. if chance = 42 then runawayval = 0
  1008. if runawayval = 1 then
  1009. locate 4, 17 : print "You got away safely!"
  1010. locate 4, 18 : input "[Press Enter]";dummy$
  1011. else
  1012. locate 4, 17 : print "Can't Escape!"
  1013. locate 4, 18 : input "[Press Enter]";dummy$
  1014. end if
  1015. end sub
  1016.  
  1017. sub twoforone
  1018. for i = 1 to 30
  1019. tempuserpkmn(1, i) = userpkmn(1, i)
  1020. next i
  1021. tempuserpokemonname$(1) = userpokemonname$(1)
  1022. for j = 1 to 30
  1023. userpkmn(1, j) = userpkmn(2, j)
  1024. next j
  1025. userpokemonname$(1) = userpokemonname$(2)
  1026. for k = 1 to 30
  1027. userpkmn(2, k) = tempuserpkmn(1, k)
  1028. next k
  1029. userpokemonname$(2) = tempuserpokemonname$(1)
  1030. end sub
  1031.  
  1032. sub threeforone
  1033. for i = 1 to 30
  1034. tempuserpkmn(1, i) = userpkmn(1, i)
  1035. next i
  1036. tempuserpokemonname$(1) = userpokemonname$(1)
  1037. for j = 1 to 30
  1038. userpkmn(1, j) = userpkmn(3, j)
  1039. next j
  1040. userpokemonname$(1) = userpokemonname$(3)
  1041. for k = 1 to 30
  1042. userpkmn(3, k) = tempuserpkmn(1, k)
  1043. next k
  1044. userpokemonname$(3) = tempuserpokemonname$(1)
  1045. end sub
  1046.  
  1047. sub fourforone
  1048. for i = 1 to 30
  1049. tempuserpkmn(1, i) = userpkmn(1, i)
  1050. next i
  1051. tempuserpokemonname$(1) = userpokemonname$(1)
  1052. for j = 1 to 30
  1053. userpkmn(1, j) = userpkmn(4, j)
  1054. next j
  1055. userpokemonname$(1) = userpokemonname$(4)
  1056. for k = 1 to 30
  1057. userpkmn(4, k) = tempuserpkmn(1, k)
  1058. next k
  1059. userpokemonname$(4) = tempuserpokemonname$(1)
  1060. end sub
  1061.  
  1062. sub fiveforone
  1063. for i = 1 to 30
  1064. tempuserpkmn(1, i) = userpkmn(1, i)
  1065. next i
  1066. tempuserpokemonname$(1) = userpokemonname$(1)
  1067. for j = 1 to 30
  1068. userpkmn(1, j) = userpkmn(5, j)
  1069. next j
  1070. userpokemonname$(1) = userpokemonname$(5)
  1071. for k = 1 to 30
  1072. userpkmn(5, k) = tempuserpkmn(1, k)
  1073. next k
  1074. userpokemonname$(5) = tempuserpokemonname$(1)
  1075. end sub
  1076.  
  1077. sub sixforone
  1078. for i = 1 to 30
  1079. tempuserpkmn(1, i) = userpkmn(1, i)
  1080. next i
  1081. tempuserpokemonname$(1) = userpokemonname$(1)
  1082. for j = 1 to 30
  1083. userpkmn(1, j) = userpkmn(6, j)
  1084. next j
  1085. userpokemonname$(1) = userpokemonname$(6)
  1086. for k = 1 to 30
  1087. userpkmn(6, k) = tempuserpkmn(1, k)
  1088. next k
  1089. userpokemonname$(6) = tempuserpokemonname$(1)
  1090. end sub
  1091.  
  1092. sub pkmnivrand
  1093. for z = 1 to 718
  1094. pkmn(z,14) = int(rnd(1)*31)+1 'random hp iv
  1095. pkmn(z,15) = int(rnd(1)*31)+1 'random attack iv
  1096. pkmn(z,16) = int(rnd(1)*31)+1 'random defense iv
  1097. pkmn(z,17) = int(rnd(1)*31)+1 'random special attack iv
  1098. pkmn(z,18) = int(rnd(1)*31)+1 'random special defense iv
  1099. pkmn(z,19) = int(rnd(1)*31)+1 'random speed iv
  1100. next z
  1101. end sub
  1102.  
  1103. sub setup
  1104. pokemonname$(1) = "Bulbasaur" 'name
  1105. pkmn(1,1) = 45 'base hp
  1106. pkmn(1,2) = 49 'base attack
  1107. pkmn(1,3) = 49 'base defense
  1108. pkmn(1,4) = 65 'base special attack
  1109. pkmn(1,5) = 65 'base special defense
  1110. pkmn(1,6) = 45 'base speed
  1111. pkmn(1,7) = 5 'level
  1112. pkmn(1,8) = 0 'health ev gain
  1113. pkmn(1,9) = 0 'attack ev gain
  1114. pkmn(1,10) = 0 'defense ev gain
  1115. pkmn(1,11) = 1 'special attack ev gain
  1116. pkmn(1,12) = 0 'special defense ev gain
  1117. pkmn(1,13) = 0 'speed ev gain
  1118. pkmn(1,14) = int(rnd(1)*31)+1 'random hp iv
  1119. pkmn(1,15) = int(rnd(1)*31)+1 'random attack iv
  1120. pkmn(1,16) = int(rnd(1)*31)+1 'random defense iv
  1121. pkmn(1,17) = int(rnd(1)*31)+1 'random special attack iv
  1122. pkmn(1,18) = int(rnd(1)*31)+1 'random special defense iv
  1123. pkmn(1,19) = int(rnd(1)*31)+1 'random speed iv
  1124. pkmn(1,20) = 12 'first type
  1125. pkmn(1,21) = 4 'second type
  1126. pkmn(1,22) = 1 'nature
  1127. pkmn(1,23) = 4 'health ev
  1128. pkmn(1,24) = 4 'attack ev
  1129. pkmn(1,25) = 4 'defense ev
  1130. pkmn(1,26) = 4 'special attack ev
  1131. pkmn(1,27) = 4 'special defense ev
  1132. pkmn(1,28) = 4 'speed ev
  1133. pkmn(1,29) = 33 'move 1
  1134. pkmn(1,30) = 45 'move 2
  1135. pkmn(1,31) = 0 'move 3
  1136. pkmn(1,32) = 0 'move 4
  1137. end sub
  1138.  
  1139. sub movesetup
  1140. movename$(0) = "--------"
  1141. moveid(0,1) = 0
  1142. moveid(0,2) = 0
  1143. moveid(0,3) = 0
  1144. moveid(0,4) = 0
  1145. moveid(0,5) = 5
  1146.  
  1147. movename$(33) = "Tackle"
  1148. moveid(33,1) = 50 'move power
  1149. moveid(33,2) = 35 'power points
  1150. moveid(33,3) = 15 'move type 1
  1151. moveid(33,4) = 1 'move type 2
  1152. moveid(33,5) = 100 'move accuracy
  1153.  
  1154. movename$(45) = "Growl"
  1155. moveid(45,1) = 0
  1156. moveid(45,2) = 40
  1157. moveid(45,3) = 1
  1158. moveid(45,4) = 4
  1159. moveid(45,5) = 100
  1160. end sub
  1161.  
  1162. sub userpokemon1in
  1163. userpokemonname$(1) = pokemonname$(pid) 'name
  1164. userpkmn(1,1) = healthcalc(pid) 'hp
  1165. userpkmn(1,2) = attackcalc(pid) 'atk
  1166. userpkmn(1,3) = defensecalc(pid) 'def
  1167. userpkmn(1,4) = specialattackcalc(pid) 'spatk
  1168. userpkmn(1,5) = specialdefensecalc(pid) 'spdef
  1169. userpkmn(1,6) = speedcalc(pid) 'speed
  1170. userpkmn(1,7) = pkmn(pid,7) 'level
  1171. userpkmn(1,8) = pkmn(pid,8) 'hpevgain
  1172. userpkmn(1,9) = pkmn(pid,9) 'atkevgain
  1173. userpkmn(1,10) = pkmn(pid,10) 'defevgain
  1174. userpkmn(1,11) = pkmn(pid,11) 'spatkevgain
  1175. userpkmn(1,12) = pkmn(pid,12) 'spdefevgain
  1176. userpkmn(1,13) = pkmn(pid,13) 'speedevgain
  1177. userpkmn(1,14) = 100 'accuravy
  1178. userpkmn(1,15) = 100 'evasion
  1179. userpkmn(1,16) = pkmn(pid,29) 'move1
  1180. userpkmn(1,17) = pkmn(pid,30) 'move2
  1181. userpkmn(1,18) = pkmn(pid,31) 'move3
  1182. userpkmn(1,19) = pkmn(pid,32) 'move4
  1183. userpkmn(1,20) = pkmn(pid,20) 'type1
  1184. userpkmn(1,21) = pkmn(pid,21) 'type2
  1185. userpkmn(1,22) = pkmn(pid,22) 'nature
  1186. userpkmn(1,23) = pkmn(pid,23) 'hpev
  1187. userpkmn(1,24) = pkmn(pid,24) 'atkev
  1188. userpkmn(1,25) = pkmn(pid,25) 'defev
  1189. userpkmn(1,26) = pkmn(pid,26) 'spatkev
  1190. userpkmn(1,27) = pkmn(pid,27) 'spdefev
  1191. userpkmn(1,28) = pkmn(pid,28) 'speedev
  1192. userpkmn(1,29) = healthcalc(pid) 'maxhp
  1193. userpkmn(1,30) = 0 'exp
  1194. end sub
  1195. sub userpokemon2in
  1196. userpokemonname$(2) = pokemonname$(pid)
  1197. userpkmn(2,1) = healthcalc(pid)
  1198. userpkmn(2,2) = attackcalc(pid)
  1199. userpkmn(2,3) = defensecalc(pid)
  1200. userpkmn(2,4) = specialattackcalc(pid)
  1201. userpkmn(2,5) = specialdefensecalc(pid)
  1202. userpkmn(2,6) = speedcalc(pid)
  1203. userpkmn(2,7) = pkmn(pid,7)
  1204. userpkmn(2,8) = pkmn(pid,8)
  1205. userpkmn(2,9) = pkmn(pid,9)
  1206. userpkmn(2,10) = pkmn(pid,10)
  1207. userpkmn(2,11) = pkmn(pid,11)
  1208. userpkmn(2,12) = pkmn(pid,12)
  1209. userpkmn(2,13) = pkmn(pid,13)
  1210. userpkmn(2,14) = 100
  1211. userpkmn(2,15) = 100
  1212. userpkmn(2,16) = pkmn(pid,29)
  1213. userpkmn(2,17) = pkmn(pid,30)
  1214. userpkmn(2,18) = pkmn(pid,31)
  1215. userpkmn(2,19) = pkmn(pid,32)
  1216. userpkmn(2,20) = pkmn(pid,20)
  1217. userpkmn(2,21) = pkmn(pid,21)
  1218. userpkmn(2,22) = pkmn(pid,22)
  1219. userpkmn(2,23) = pkmn(pid,23)
  1220. userpkmn(2,24) = pkmn(pid,24)
  1221. userpkmn(2,25) = pkmn(pid,25)
  1222. userpkmn(2,26) = pkmn(pid,26)
  1223. userpkmn(2,27) = pkmn(pid,27)
  1224. userpkmn(2,28) = pkmn(pid,28)
  1225. userpkmn(2,29) = healthcalc(pid)
  1226. userpkmn(2,30) = 0
  1227. end sub
  1228. sub userpokemon3in
  1229. userpokemonname$(3) = pokemonname$(pid)
  1230. userpkmn(3,1) = healthcalc(pid)
  1231. userpkmn(3,2) = attackcalc(pid)
  1232. userpkmn(3,3) = defensecalc(pid)
  1233. userpkmn(3,4) = specialattackcalc(pid)
  1234. userpkmn(3,5) = specialdefensecalc(pid)
  1235. userpkmn(3,6) = speedcalc(pid)
  1236. userpkmn(3,7) = pkmn(pid,7)
  1237. userpkmn(3,8) = pkmn(pid,8)
  1238. userpkmn(3,9) = pkmn(pid,9)
  1239. userpkmn(3,10) = pkmn(pid,10)
  1240. userpkmn(3,11) = pkmn(pid,11)
  1241. userpkmn(3,12) = pkmn(pid,12)
  1242. userpkmn(3,13) = pkmn(pid,13)
  1243. userpkmn(3,14) = 100
  1244. userpkmn(3,15) = 100
  1245. userpkmn(3,16) = pkmn(pid,29)
  1246. userpkmn(3,17) = pkmn(pid,30)
  1247. userpkmn(3,18) = pkmn(pid,31)
  1248. userpkmn(3,19) = pkmn(pid,32)
  1249. userpkmn(3,20) = pkmn(pid,20)
  1250. userpkmn(3,21) = pkmn(pid,21)
  1251. userpkmn(3,22) = pkmn(pid,22)
  1252. userpkmn(3,23) = pkmn(pid,23)
  1253. userpkmn(3,24) = pkmn(pid,24)
  1254. userpkmn(3,25) = pkmn(pid,25)
  1255. userpkmn(3,26) = pkmn(pid,26)
  1256. userpkmn(3,27) = pkmn(pid,27)
  1257. userpkmn(3,28) = pkmn(pid,28)
  1258. userpkmn(3,29) = healthcalc(pid)
  1259. userpkmn(3,30) = 0
  1260. end sub
  1261. sub userpokemon4in
  1262. userpokemonname$(4) = pokemonname$(pid)
  1263. userpkmn(4,1) = healthcalc(pid)
  1264. userpkmn(4,2) = attackcalc(pid)
  1265. userpkmn(4,3) = defensecalc(pid)
  1266. userpkmn(4,4) = specialattackcalc(pid)
  1267. userpkmn(4,5) = specialdefensecalc(pid)
  1268. userpkmn(4,6) = speedcalc(pid)
  1269. userpkmn(4,7) = pkmn(pid,7)
  1270. userpkmn(4,8) = pkmn(pid,8)
  1271. userpkmn(4,9) = pkmn(pid,9)
  1272. userpkmn(4,10) = pkmn(pid,10)
  1273. userpkmn(4,11) = pkmn(pid,11)
  1274. userpkmn(4,12) = pkmn(pid,12)
  1275. userpkmn(4,13) = pkmn(pid,13)
  1276. userpkmn(4,14) = 100
  1277. userpkmn(4,15) = 100
  1278. userpkmn(4,16) = pkmn(pid,29)
  1279. userpkmn(4,17) = pkmn(pid,30)
  1280. userpkmn(4,18) = pkmn(pid,31)
  1281. userpkmn(4,19) = pkmn(pid,32)
  1282. userpkmn(4,20) = pkmn(pid,20)
  1283. userpkmn(4,21) = pkmn(pid,21)
  1284. userpkmn(4,22) = pkmn(pid,22)
  1285. userpkmn(4,23) = pkmn(pid,23)
  1286. userpkmn(4,24) = pkmn(pid,24)
  1287. userpkmn(4,25) = pkmn(pid,25)
  1288. userpkmn(4,26) = pkmn(pid,26)
  1289. userpkmn(4,27) = pkmn(pid,27)
  1290. userpkmn(4,28) = pkmn(pid,28)
  1291. userpkmn(4,29) = healthcalc(pid)
  1292. userpkmn(4,30) = 0
  1293. end sub
  1294. sub userpokemon5in
  1295. userpokemonname$(5) = pokemonname$(pid)
  1296. userpkmn(5,1) = healthcalc(pid)
  1297. userpkmn(5,2) = attackcalc(pid)
  1298. userpkmn(5,3) = defensecalc(pid)
  1299. userpkmn(5,4) = specialattackcalc(pid)
  1300. userpkmn(5,5) = specialdefensecalc(pid)
  1301. userpkmn(5,6) = speedcalc(pid)
  1302. userpkmn(5,7) = pkmn(pid,7)
  1303. userpkmn(5,8) = pkmn(pid,8)
  1304. userpkmn(5,9) = pkmn(pid,9)
  1305. userpkmn(5,10) = pkmn(pid,10)
  1306. userpkmn(5,11) = pkmn(pid,11)
  1307. userpkmn(5,12) = pkmn(pid,12)
  1308. userpkmn(5,13) = pkmn(pid,13)
  1309. userpkmn(5,14) = 100
  1310. userpkmn(5,15) = 100
  1311. userpkmn(5,16) = pkmn(pid,29)
  1312. userpkmn(5,17) = pkmn(pid,30)
  1313. userpkmn(5,18) = pkmn(pid,31)
  1314. userpkmn(5,19) = pkmn(pid,32)
  1315. userpkmn(5,20) = pkmn(pid,20)
  1316. userpkmn(5,21) = pkmn(pid,21)
  1317. userpkmn(5,22) = pkmn(pid,22)
  1318. userpkmn(5,23) = pkmn(pid,23)
  1319. userpkmn(5,24) = pkmn(pid,24)
  1320. userpkmn(5,25) = pkmn(pid,25)
  1321. userpkmn(5,26) = pkmn(pid,26)
  1322. userpkmn(5,27) = pkmn(pid,27)
  1323. userpkmn(5,28) = pkmn(pid,28)
  1324. userpkmn(5,29) = healthcalc(pid)
  1325. userpkmn(5,30) = 0
  1326. end sub
  1327. sub userpokemon6in
  1328. userpokemonname$(6) = pokemonname$(pid)
  1329. userpkmn(6,1) = healthcalc(pid)
  1330. userpkmn(6,2) = attackcalc(pid)
  1331. userpkmn(6,3) = defensecalc(pid)
  1332. userpkmn(6,4) = specialattackcalc(pid)
  1333. userpkmn(6,5) = specialdefensecalc(pid)
  1334. userpkmn(6,6) = speedcalc(pid)
  1335. userpkmn(6,7) = pkmn(pid,7)
  1336. userpkmn(6,8) = pkmn(pid,8)
  1337. userpkmn(6,9) = pkmn(pid,9)
  1338. userpkmn(6,10) = pkmn(pid,10)
  1339. userpkmn(6,11) = pkmn(pid,11)
  1340. userpkmn(6,12) = pkmn(pid,12)
  1341. userpkmn(6,13) = pkmn(pid,13)
  1342. userpkmn(6,14) = 100
  1343. userpkmn(6,15) = 100
  1344. userpkmn(6,16) = pkmn(pid,29)
  1345. userpkmn(6,17) = pkmn(pid,30)
  1346. userpkmn(6,18) = pkmn(pid,31)
  1347. userpkmn(6,19) = pkmn(pid,32)
  1348. userpkmn(6,20) = pkmn(pid,20)
  1349. userpkmn(6,21) = pkmn(pid,21)
  1350. userpkmn(6,22) = pkmn(pid,22)
  1351. userpkmn(6,23) = pkmn(pid,23)
  1352. userpkmn(6,24) = pkmn(pid,24)
  1353. userpkmn(6,25) = pkmn(pid,25)
  1354. userpkmn(6,26) = pkmn(pid,26)
  1355. userpkmn(6,27) = pkmn(pid,27)
  1356. userpkmn(6,28) = pkmn(pid,28)
  1357. userpkmn(6,29) = healthcalc(pid)
  1358. userpkmn(6,30) = 0
  1359. end sub
  1360. sub cpupokemon1in
  1361. cpupokemonname$(1) = pokemonname$(pid) 'name
  1362. cpupkmn(1,1) = healthcalc(pid) 'hp
  1363. cpupkmn(1,2) = attackcalc(pid) 'atk
  1364. cpupkmn(1,3) = defensecalc(pid) 'def
  1365. cpupkmn(1,4) = specialattackcalc(pid) 'spatk
  1366. cpupkmn(1,5) = specialdefensecalc(pid) 'spdef
  1367. cpupkmn(1,6) = speedcalc(pid) 'speed
  1368. cpupkmn(1,7) = pkmn(pid,7) 'level
  1369. cpupkmn(1,8) = pkmn(pid,8) 'hpevgain
  1370. cpupkmn(1,9) = pkmn(pid,9) 'atkevgain
  1371. cpupkmn(1,10) = pkmn(pid,10) 'defevgain
  1372. cpupkmn(1,11) = pkmn(pid,11) 'spatkevgain
  1373. cpupkmn(1,12) = pkmn(pid,12) 'spdefevgain
  1374. cpupkmn(1,13) = pkmn(pid,13) 'speedevgain
  1375. cpupkmn(1,14) = 100 'accuravy
  1376. cpupkmn(1,15) = 100 'evasion
  1377. cpupkmn(1,16) = pkmn(pid,29) 'move1
  1378. cpupkmn(1,17) = pkmn(pid,30) 'move2
  1379. cpupkmn(1,18) = pkmn(pid,31) 'move3
  1380. cpupkmn(1,19) = pkmn(pid,32) 'move4
  1381. cpupkmn(1,20) = pkmn(pid,20) 'type1
  1382. cpupkmn(1,21) = pkmn(pid,21) 'type2
  1383. cpupkmn(1,22) = pkmn(pid,22) 'nature
  1384. cpupkmn(1,23) = pkmn(pid,23) 'hpev
  1385. cpupkmn(1,24) = pkmn(pid,24) 'atkev
  1386. cpupkmn(1,25) = pkmn(pid,25) 'defev
  1387. cpupkmn(1,26) = pkmn(pid,26) 'spatkev
  1388. cpupkmn(1,27) = pkmn(pid,27) 'spdefev
  1389. cpupkmn(1,28) = pkmn(pid,28) 'speedev
  1390. cpupkmn(1,29) = healthcalc(pid) 'maxhp
  1391. cpupkmn(1,30) = 0 'exp
  1392. end sub
  1393. sub cpupokemon2in
  1394. cpupokemonname$(2) = pokemonname$(pid)
  1395. cpupkmn(2,1) = healthcalc(pid)
  1396. cpupkmn(2,2) = attackcalc(pid)
  1397. cpupkmn(2,3) = defensecalc(pid)
  1398. cpupkmn(2,4) = specialattackcalc(pid)
  1399. cpupkmn(2,5) = specialdefensecalc(pid)
  1400. cpupkmn(2,6) = speedcalc(pid)
  1401. cpupkmn(2,7) = pkmn(pid,7)
  1402. cpupkmn(2,8) = pkmn(pid,8)
  1403. cpupkmn(2,9) = pkmn(pid,9)
  1404. cpupkmn(2,10) = pkmn(pid,10)
  1405. cpupkmn(2,11) = pkmn(pid,11)
  1406. cpupkmn(2,12) = pkmn(pid,12)
  1407. cpupkmn(2,13) = pkmn(pid,13)
  1408. cpupkmn(2,14) = 100
  1409. cpupkmn(2,15) = 100
  1410. cpupkmn(2,16) = pkmn(pid,29)
  1411. cpupkmn(2,17) = pkmn(pid,30)
  1412. cpupkmn(2,18) = pkmn(pid,31)
  1413. cpupkmn(2,19) = pkmn(pid,32)
  1414. cpupkmn(2,20) = pkmn(pid,20)
  1415. cpupkmn(2,21) = pkmn(pid,21)
  1416. cpupkmn(2,22) = pkmn(pid,22)
  1417. cpupkmn(2,23) = pkmn(pid,23)
  1418. cpupkmn(2,24) = pkmn(pid,24)
  1419. cpupkmn(2,25) = pkmn(pid,25)
  1420. cpupkmn(2,26) = pkmn(pid,26)
  1421. cpupkmn(2,27) = pkmn(pid,27)
  1422. cpupkmn(2,28) = pkmn(pid,28)
  1423. cpupkmn(2,29) = healthcalc(pid)
  1424. cpupkmn(2,30) = 0
  1425. end sub
  1426. sub cpupokemon3in
  1427. cpupokemonname$(3) = pokemonname$(pid)
  1428. cpupkmn(3,1) = healthcalc(pid)
  1429. cpupkmn(3,2) = attackcalc(pid)
  1430. cpupkmn(3,3) = defensecalc(pid)
  1431. cpupkmn(3,4) = specialattackcalc(pid)
  1432. cpupkmn(3,5) = specialdefensecalc(pid)
  1433. cpupkmn(3,6) = speedcalc(pid)
  1434. cpupkmn(3,7) = pkmn(pid,7)
  1435. cpupkmn(3,8) = pkmn(pid,8)
  1436. cpupkmn(3,9) = pkmn(pid,9)
  1437. cpupkmn(3,10) = pkmn(pid,10)
  1438. cpupkmn(3,11) = pkmn(pid,11)
  1439. cpupkmn(3,12) = pkmn(pid,12)
  1440. cpupkmn(3,13) = pkmn(pid,13)
  1441. cpupkmn(3,14) = 100
  1442. cpupkmn(3,15) = 100
  1443. cpupkmn(3,16) = pkmn(pid,29)
  1444. cpupkmn(3,17) = pkmn(pid,30)
  1445. cpupkmn(3,18) = pkmn(pid,31)
  1446. cpupkmn(3,19) = pkmn(pid,32)
  1447. cpupkmn(3,20) = pkmn(pid,20)
  1448. cpupkmn(3,21) = pkmn(pid,21)
  1449. cpupkmn(3,22) = pkmn(pid,22)
  1450. cpupkmn(3,23) = pkmn(pid,23)
  1451. cpupkmn(3,24) = pkmn(pid,24)
  1452. cpupkmn(3,25) = pkmn(pid,25)
  1453. cpupkmn(3,26) = pkmn(pid,26)
  1454. cpupkmn(3,27) = pkmn(pid,27)
  1455. cpupkmn(3,28) = pkmn(pid,28)
  1456. cpupkmn(3,29) = healthcalc(pid)
  1457. cpupkmn(3,30) = 0
  1458. end sub
  1459. sub cpupokemon4in
  1460. cpupokemonname$(4) = pokemonname$(pid)
  1461. cpupkmn(4,1) = healthcalc(pid)
  1462. cpupkmn(4,2) = attackcalc(pid)
  1463. cpupkmn(4,3) = defensecalc(pid)
  1464. cpupkmn(4,4) = specialattackcalc(pid)
  1465. cpupkmn(4,5) = specialdefensecalc(pid)
  1466. cpupkmn(4,6) = speedcalc(pid)
  1467. cpupkmn(4,7) = pkmn(pid,7)
  1468. cpupkmn(4,8) = pkmn(pid,8)
  1469. cpupkmn(4,9) = pkmn(pid,9)
  1470. cpupkmn(4,10) = pkmn(pid,10)
  1471. cpupkmn(4,11) = pkmn(pid,11)
  1472. cpupkmn(4,12) = pkmn(pid,12)
  1473. cpupkmn(4,13) = pkmn(pid,13)
  1474. cpupkmn(4,14) = 100
  1475. cpupkmn(4,15) = 100
  1476. cpupkmn(4,16) = pkmn(pid,29)
  1477. cpupkmn(4,17) = pkmn(pid,30)
  1478. cpupkmn(4,18) = pkmn(pid,31)
  1479. cpupkmn(4,19) = pkmn(pid,32)
  1480. cpupkmn(4,20) = pkmn(pid,20)
  1481. cpupkmn(4,21) = pkmn(pid,21)
  1482. cpupkmn(4,22) = pkmn(pid,22)
  1483. cpupkmn(4,23) = pkmn(pid,23)
  1484. cpupkmn(4,24) = pkmn(pid,24)
  1485. cpupkmn(4,25) = pkmn(pid,25)
  1486. cpupkmn(4,26) = pkmn(pid,26)
  1487. cpupkmn(4,27) = pkmn(pid,27)
  1488. cpupkmn(4,28) = pkmn(pid,28)
  1489. cpupkmn(4,29) = healthcalc(pid)
  1490. cpupkmn(4,30) = 0
  1491. end sub
  1492. sub cpupokemon5in
  1493. cpupokemonname$(5) = pokemonname$(pid)
  1494. cpupkmn(5,1) = healthcalc(pid)
  1495. cpupkmn(5,2) = attackcalc(pid)
  1496. cpupkmn(5,3) = defensecalc(pid)
  1497. cpupkmn(5,4) = specialattackcalc(pid)
  1498. cpupkmn(5,5) = specialdefensecalc(pid)
  1499. cpupkmn(5,6) = speedcalc(pid)
  1500. cpupkmn(5,7) = pkmn(pid,7)
  1501. cpupkmn(5,8) = pkmn(pid,8)
  1502. cpupkmn(5,9) = pkmn(pid,9)
  1503. cpupkmn(5,10) = pkmn(pid,10)
  1504. cpupkmn(5,11) = pkmn(pid,11)
  1505. cpupkmn(5,12) = pkmn(pid,12)
  1506. cpupkmn(5,13) = pkmn(pid,13)
  1507. cpupkmn(5,14) = 100
  1508. cpupkmn(5,15) = 100
  1509. cpupkmn(5,16) = pkmn(pid,29)
  1510. cpupkmn(5,17) = pkmn(pid,30)
  1511. cpupkmn(5,18) = pkmn(pid,31)
  1512. cpupkmn(5,19) = pkmn(pid,32)
  1513. cpupkmn(5,20) = pkmn(pid,20)
  1514. cpupkmn(5,21) = pkmn(pid,21)
  1515. cpupkmn(5,22) = pkmn(pid,22)
  1516. cpupkmn(5,23) = pkmn(pid,23)
  1517. cpupkmn(5,24) = pkmn(pid,24)
  1518. cpupkmn(5,25) = pkmn(pid,25)
  1519. cpupkmn(5,26) = pkmn(pid,26)
  1520. cpupkmn(5,27) = pkmn(pid,27)
  1521. cpupkmn(5,28) = pkmn(pid,28)
  1522. cpupkmn(5,29) = healthcalc(pid)
  1523. cpupkmn(5,30) = 0
  1524. end sub
  1525. sub cpupokemon6in
  1526. cpupokemonname$(6) = pokemonname$(pid)
  1527. cpupkmn(6,1) = healthcalc(pid)
  1528. cpupkmn(6,2) = attackcalc(pid)
  1529. cpupkmn(6,3) = defensecalc(pid)
  1530. cpupkmn(6,4) = specialattackcalc(pid)
  1531. cpupkmn(6,5) = specialdefensecalc(pid)
  1532. cpupkmn(6,6) = speedcalc(pid)
  1533. cpupkmn(6,7) = pkmn(pid,7)
  1534. cpupkmn(6,8) = pkmn(pid,8)
  1535. cpupkmn(6,9) = pkmn(pid,9)
  1536. cpupkmn(6,10) = pkmn(pid,10)
  1537. cpupkmn(6,11) = pkmn(pid,11)
  1538. cpupkmn(6,12) = pkmn(pid,12)
  1539. cpupkmn(6,13) = pkmn(pid,13)
  1540. cpupkmn(6,14) = 100
  1541. cpupkmn(6,15) = 100
  1542. cpupkmn(6,16) = pkmn(pid,29)
  1543. cpupkmn(6,17) = pkmn(pid,30)
  1544. cpupkmn(6,18) = pkmn(pid,31)
  1545. cpupkmn(6,19) = pkmn(pid,32)
  1546. cpupkmn(6,20) = pkmn(pid,20)
  1547. cpupkmn(6,21) = pkmn(pid,21)
  1548. cpupkmn(6,22) = pkmn(pid,22)
  1549. cpupkmn(6,23) = pkmn(pid,23)
  1550. cpupkmn(6,24) = pkmn(pid,24)
  1551. cpupkmn(6,25) = pkmn(pid,25)
  1552. cpupkmn(6,26) = pkmn(pid,26)
  1553. cpupkmn(6,27) = pkmn(pid,27)
  1554. cpupkmn(6,28) = pkmn(pid,28)
  1555. cpupkmn(6,29) = healthcalc(pid)
  1556. cpupkmn(6,30) = 0
  1557. end sub
  1558.  
  1559. sub normaleffectivecpuattack
  1560. if userpkmn(1, 20) = 6 then cet = cet - 1
  1561. if userpkmn(1, 20) = 9 then cet = cet - 1
  1562. if userpkmn(1, 20) = 8 then cet = cet * 0
  1563. if userpkmn(1, 21) = 6 then cet = cet - 1
  1564. if userpkmn(1, 21) = 9 then cet = cet - 1
  1565. if userpkmn(1, 21) = 8 then cet = cet * 0
  1566. end sub
  1567.  
  1568. sub fightingeffectivecpuattack
  1569. if userpkmn(1, 20) = 1 then cet = cet + 1
  1570. if userpkmn(1, 20) = 6 then cet = cet + 1
  1571. if userpkmn(1, 20) = 9 then cet = cet + 1
  1572. if userpkmn(1, 20) = 15 then cet = cet + 1
  1573. if userpkmn(1, 20) = 17 then cet = cet + 1
  1574. if userpkmn(1, 20) = 3 then cet = cet - 1
  1575. if userpkmn(1, 20) = 4 then cet = cet - 1
  1576. if userpkmn(1, 20) = 7 then cet = cet - 1
  1577. if userpkmn(1, 20) = 14 then cet = cet - 1
  1578. if userpkmn(1, 20) = 18 then cet = cet - 1
  1579. if userpkmn(1, 20) = 8 then cet = cet * 0
  1580. if userpkmn(1, 21) = 1 then cet = cet + 1
  1581. if userpkmn(1, 21) = 6 then cet = cet + 1
  1582. if userpkmn(1, 21) = 9 then cet = cet + 1
  1583. if userpkmn(1, 21) = 15 then cet = cet + 1
  1584. if userpkmn(1, 21) = 17 then cet = cet + 1
  1585. if userpkmn(1, 21) = 3 then cet = cet - 1
  1586. if userpkmn(1, 21) = 4 then cet = cet - 1
  1587. if userpkmn(1, 21) = 7 then cet = cet - 1
  1588. if userpkmn(1, 21) = 14 then cet = cet - 1
  1589. if userpkmn(1, 21) = 18 then cet = cet - 1
  1590. if userpkmn(1, 21) = 8 then cet = cet * 0
  1591. end sub
  1592.  
  1593. sub flyingeffectivecpuattack
  1594. if userpkmn(1, 20) = 2 then cet = cet + 1
  1595. if userpkmn(1, 20) = 7 then cet = cet + 1
  1596. if userpkmn(1, 20) = 12 then cet = cet + 1
  1597. if userpkmn(1, 20) = 6 then cet = cet - 1
  1598. if userpkmn(1, 20) = 9 then cet = cet - 1
  1599. if userpkmn(1, 20) = 10 then cet = cet - 1
  1600. if userpkmn(1, 21) = 2 then cet = cet + 1
  1601. if userpkmn(1, 21) = 7 then cet = cet + 1
  1602. if userpkmn(1, 21) = 12 then cet = cet + 1
  1603. if userpkmn(1, 21) = 6 then cet = cet - 1
  1604. if userpkmn(1, 21) = 9 then cet = cet - 1
  1605. if userpkmn(1, 21) = 10 then cet = cet - 1
  1606. end sub
  1607.  
  1608. sub poisoneffectivecpuattack
  1609. if userpkmn(1, 20) = 12 then cet = cet + 1
  1610. if userpkmn(1, 20) = 18 then cet = cet + 1
  1611. if userpkmn(1, 20) = 4 then cet = cet - 1
  1612. if userpkmn(1, 20) = 5 then cet = cet - 1
  1613. if userpkmn(1, 20) = 6 then cet = cet - 1
  1614. if userpkmn(1, 20) = 8 then cet = cet - 1
  1615. if userpkmn(1, 20) = 9 then cet = cet * 0
  1616. if userpkmn(1, 21) = 12 then cet = cet + 1
  1617. if userpkmn(1, 21) = 18 then cet = cet + 1
  1618. if userpkmn(1, 21) = 4 then cet = cet - 1
  1619. if userpkmn(1, 21) = 5 then cet = cet - 1
  1620. if userpkmn(1, 21) = 6 then cet = cet - 1
  1621. if userpkmn(1, 21) = 8 then cet = cet - 1
  1622. if userpkmn(1, 21) = 9 then cet = cet * 0
  1623. end sub
  1624.  
  1625. sub groundeffectivecpuattack
  1626. if userpkmn(1, 20) = 4 then cet = cet + 1
  1627. if userpkmn(1, 20) = 6 then cet = cet + 1
  1628. if userpkmn(1, 20) = 9 then cet = cet + 1
  1629. if userpkmn(1, 20) = 10 then cet = cet + 1
  1630. if userpkmn(1, 20) = 13 then cet = cet + 1
  1631. if userpkmn(1, 20) = 7 then cet = cet - 1
  1632. if userpkmn(1, 20) = 11 then cet = cet - 1
  1633. if userpkmn(1, 20) = 3 then cet = cet * 0
  1634. if userpkmn(1, 21) = 4 then cet = cet + 1
  1635. if userpkmn(1, 21) = 6 then cet = cet + 1
  1636. if userpkmn(1, 21) = 9 then cet = cet + 1
  1637. if userpkmn(1, 21) = 10 then cet = cet + 1
  1638. if userpkmn(1, 21) = 13 then cet = cet + 1
  1639. if userpkmn(1, 21) = 7 then cet = cet - 1
  1640. if userpkmn(1, 21) = 11 then cet = cet - 1
  1641. if userpkmn(1, 21) = 3 then cet = cet * 0
  1642. end sub
  1643.  
  1644. sub rockeffectivecpuattack
  1645. if userpkmn(1, 20) = 3 then cet = cet + 1
  1646. if userpkmn(1, 20) = 7 then cet = cet + 1
  1647. if userpkmn(1, 20) = 10 then cet = cet + 1
  1648. if userpkmn(1, 20) = 15 then cet = cet + 1
  1649. if userpkmn(1, 20) = 2 then cet = cet - 1
  1650. if userpkmn(1, 20) = 5 then cet = cet - 1
  1651. if userpkmn(1, 20) = 9 then cet = cet - 1
  1652. if userpkmn(1, 21) = 3 then cet = cet + 1
  1653. if userpkmn(1, 21) = 7 then cet = cet + 1
  1654. if userpkmn(1, 21) = 10 then cet = cet + 1
  1655. if userpkmn(1, 21) = 15 then cet = cet + 1
  1656. if userpkmn(1, 21) = 2 then cet = cet - 1
  1657. if userpkmn(1, 21) = 5 then cet = cet - 1
  1658. if userpkmn(1, 21) = 9 then cet = cet - 1
  1659. end sub
  1660.  
  1661. sub bugeffectivecpuattack
  1662. if userpkmn(1, 20) = 12 then cet = cet + 1
  1663. if userpkmn(1, 20) = 14 then cet = cet + 1
  1664. if userpkmn(1, 20) = 17 then cet = cet + 1
  1665. if userpkmn(1, 20) = 2 then cet = cet - 1
  1666. if userpkmn(1, 20) = 3 then cet = cet - 1
  1667. if userpkmn(1, 20) = 4 then cet = cet - 1
  1668. if userpkmn(1, 20) = 8 then cet = cet - 1
  1669. if userpkmn(1, 20) = 9 then cet = cet - 1
  1670. if userpkmn(1, 20) = 10 then cet = cet - 1
  1671. if userpkmn(1, 20) = 18 then cet = cet - 1
  1672. if userpkmn(1, 21) = 12 then cet = cet + 1
  1673. if userpkmn(1, 21) = 14 then cet = cet + 1
  1674. if userpkmn(1, 21) = 17 then cet = cet + 1
  1675. if userpkmn(1, 21) = 2 then cet = cet - 1
  1676. if userpkmn(1, 21) = 3 then cet = cet - 1
  1677. if userpkmn(1, 21) = 4 then cet = cet - 1
  1678. if userpkmn(1, 21) = 8 then cet = cet - 1
  1679. if userpkmn(1, 21) = 9 then cet = cet - 1
  1680. if userpkmn(1, 21) = 10 then cet = cet - 1
  1681. if userpkmn(1, 21) = 18 then cet = cet - 1
  1682. end sub
  1683.  
  1684. sub ghosteffectivecpuattack
  1685. if userpkmn(1, 20) = 8 then cet = cet + 1
  1686. if userpkmn(1, 20) = 14 then cet = cet + 1
  1687. if userpkmn(1, 20) = 17 then cet = cet - 1
  1688. if userpkmn(1, 20) = 1 then cet = cet * 0
  1689. if userpkmn(1, 21) = 8 then cet = cet + 1
  1690. if userpkmn(1, 21) = 14 then cet = cet + 1
  1691. if userpkmn(1, 21) = 17 then cet = cet - 1
  1692. if userpkmn(1, 21) = 1 then cet = cet * 0
  1693. end sub
  1694.  
  1695. sub steeleffectivecpuattack
  1696. if userpkmn(1, 20) = 6 then cet = cet + 1
  1697. if userpkmn(1, 20) = 15 then cet = cet + 1
  1698. if userpkmn(1, 20) = 18 then cet = cet + 1
  1699. if userpkmn(1, 20) = 9 then cet = cet - 1
  1700. if userpkmn(1, 20) = 10 then cet = cet - 1
  1701. if userpkmn(1, 20) = 11 then cet = cet - 1
  1702. if userpkmn(1, 20) = 13 then cet = cet - 1
  1703. if userpkmn(1, 21) = 6 then cet = cet + 1
  1704. if userpkmn(1, 21) = 15 then cet = cet + 1
  1705. if userpkmn(1, 21) = 18 then cet = cet + 1
  1706. if userpkmn(1, 21) = 9 then cet = cet - 1
  1707. if userpkmn(1, 21) = 10 then cet = cet - 1
  1708. if userpkmn(1, 21) = 11 then cet = cet - 1
  1709. if userpkmn(1, 21) = 13 then cet = cet - 1
  1710. end sub
  1711.  
  1712. sub fireeffectivecpuattack
  1713. if userpkmn(1, 20) = 7 then cet = cet + 1
  1714. if userpkmn(1, 20) = 9 then cet = cet + 1
  1715. if userpkmn(1, 20) = 12 then cet = cet + 1
  1716. if userpkmn(1, 20) = 15 then cet = cet + 1
  1717. if userpkmn(1, 20) = 6 then cet = cet - 1
  1718. if userpkmn(1, 20) = 10 then cet = cet - 1
  1719. if userpkmn(1, 20) = 11 then cet = cet - 1
  1720. if userpkmn(1, 20) = 16 then cet = cet - 1
  1721. if userpkmn(1, 21) = 7 then cet = cet + 1
  1722. if userpkmn(1, 21) = 9 then cet = cet + 1
  1723. if userpkmn(1, 21) = 12 then cet = cet + 1
  1724. if userpkmn(1, 21) = 15 then cet = cet + 1
  1725. if userpkmn(1, 21) = 6 then cet = cet - 1
  1726. if userpkmn(1, 21) = 10 then cet = cet - 1
  1727. if userpkmn(1, 21) = 11 then cet = cet - 1
  1728. if userpkmn(1, 21) = 16 then cet = cet - 1
  1729. end sub
  1730.  
  1731. sub watereffectivecpuattack
  1732. if userpkmn(1, 20) = 5 then cet = cet + 1
  1733. if userpkmn(1, 20) = 6 then cet = cet + 1
  1734. if userpkmn(1, 20) = 10 then cet = cet + 1
  1735. if userpkmn(1, 20) = 11 then cet = cet - 1
  1736. if userpkmn(1, 20) = 12 then cet = cet - 1
  1737. if userpkmn(1, 20) = 16 then cet = cet - 1
  1738. if userpkmn(1, 21) = 5 then cet = cet + 1
  1739. if userpkmn(1, 21) = 6 then cet = cet + 1
  1740. if userpkmn(1, 21) = 10 then cet = cet + 1
  1741. if userpkmn(1, 21) = 11 then cet = cet - 1
  1742. if userpkmn(1, 21) = 12 then cet = cet - 1
  1743. if userpkmn(1, 21) = 16 then cet = cet - 1
  1744. end sub
  1745.  
  1746. sub grasseffectivecpuattack
  1747. if userpkmn(1, 20) = 5 then cet = cet + 1
  1748. if userpkmn(1, 20) = 6 then cet = cet + 1
  1749. if userpkmn(1, 20) = 11 then cet = cet + 1
  1750. if userpkmn(1, 20) = 3 then cet = cet - 1
  1751. if userpkmn(1, 20) = 4 then cet = cet - 1
  1752. if userpkmn(1, 20) = 7 then cet = cet - 1
  1753. if userpkmn(1, 20) = 9 then cet = cet - 1
  1754. if userpkmn(1, 20) = 10 then cet = cet - 1
  1755. if userpkmn(1, 20) = 12 then cet = cet - 1
  1756. if userpkmn(1, 20) = 16 then cet = cet - 1
  1757. if userpkmn(1, 21) = 5 then cet = cet + 1
  1758. if userpkmn(1, 21) = 6 then cet = cet + 1
  1759. if userpkmn(1, 21) = 11 then cet = cet + 1
  1760. if userpkmn(1, 21) = 3 then cet = cet - 1
  1761. if userpkmn(1, 21) = 4 then cet = cet - 1
  1762. if userpkmn(1, 21) = 7 then cet = cet - 1
  1763. if userpkmn(1, 21) = 9 then cet = cet - 1
  1764. if userpkmn(1, 21) = 10 then cet = cet - 1
  1765. if userpkmn(1, 21) = 12 then cet = cet - 1
  1766. if userpkmn(1, 21) = 16 then cet = cet - 1
  1767. end sub
  1768.  
  1769. sub electriceffectivecpuattack
  1770. if userpkmn(1, 20) = 3 then cet = cet + 1
  1771. if userpkmn(1, 20) = 12 then cet = cet + 1
  1772. if userpkmn(1, 20) = 13 then cet = cet - 1
  1773. if userpkmn(1, 20) = 14 then cet = cet - 1
  1774. if userpkmn(1, 20) = 16 then cet = cet - 1
  1775. if userpkmn(1, 20) = 5 then cet = cet * 0
  1776. if userpkmn(1, 21) = 3 then cet = cet + 1
  1777. if userpkmn(1, 21) = 12 then cet = cet + 1
  1778. if userpkmn(1, 21) = 13 then cet = cet - 1
  1779. if userpkmn(1, 21) = 14 then cet = cet - 1
  1780. if userpkmn(1, 21) = 16 then cet = cet - 1
  1781. if userpkmn(1, 21) = 5 then cet = cet * 0
  1782. end sub
  1783.  
  1784. sub psychiceffectivecpuattack
  1785. if userpkmn(1, 20) = 2 then cet = cet + 1
  1786. if userpkmn(1, 20) = 4 then cet = cet + 1
  1787. if userpkmn(1, 20) = 9 then cet = cet - 1
  1788. if userpkmn(1, 20) = 14 then cet = cet - 1
  1789. if userpkmn(1, 20) = 17 then cet = cet * 0
  1790. if userpkmn(1, 21) = 2 then cet = cet + 1
  1791. if userpkmn(1, 21) = 4 then cet = cet + 1
  1792. if userpkmn(1, 21) = 9 then cet = cet - 1
  1793. if userpkmn(1, 21) = 14 then cet = cet - 1
  1794. if userpkmn(1, 21) = 17 then cet = cet * 0
  1795. end sub
  1796.  
  1797. sub iceeffectivecpuattack
  1798. if userpkmn(1, 20) = 3 then cet = cet + 1
  1799. if userpkmn(1, 20) = 5 then cet = cet + 1
  1800. if userpkmn(1, 20) = 12 then cet = cet + 1
  1801. if userpkmn(1, 20) = 16 then cet = cet + 1
  1802. if userpkmn(1, 20) = 9 then cet = cet - 1
  1803. if userpkmn(1, 20) = 10 then cet = cet - 1
  1804. if userpkmn(1, 20) = 11 then cet = cet - 1
  1805. if userpkmn(1, 20) = 15 then cet = cet - 1
  1806. if userpkmn(1, 21) = 3 then cet = cet + 1
  1807. if userpkmn(1, 21) = 5 then cet = cet + 1
  1808. if userpkmn(1, 21) = 12 then cet = cet + 1
  1809. if userpkmn(1, 21) = 16 then cet = cet + 1
  1810. if userpkmn(1, 21) = 9 then cet = cet - 1
  1811. if userpkmn(1, 21) = 10 then cet = cet - 1
  1812. if userpkmn(1, 21) = 11 then cet = cet - 1
  1813. if userpkmn(1, 21) = 15 then cet = cet - 1
  1814. end sub
  1815.  
  1816. sub dragoneffectivecpuattack
  1817. if userpkmn(1, 20) = 16 then cet = cet + 1
  1818. if userpkmn(1, 20) = 9 then cet = cet - 1
  1819. if userpkmn(1, 20) = 18 then cet = cet * 0
  1820. if userpkmn(1, 21) = 16 then cet = cet + 1
  1821. if userpkmn(1, 21) = 9 then cet = cet - 1
  1822. if userpkmn(1, 21) = 18 then cet = cet * 0
  1823. end sub
  1824.  
  1825. sub darkeffectivecpuattack
  1826. if userpkmn(1, 20) = 8 then cet = cet + 1
  1827. if userpkmn(1, 20) = 13 then cet = cet + 1
  1828. if userpkmn(1, 20) = 2 then cet = cet - 1
  1829. if userpkmn(1, 20) = 17 then cet = cet - 1
  1830. if userpkmn(1, 20) = 18 then cet = cet - 1
  1831. if userpkmn(1, 21) = 8 then cet = cet + 1
  1832. if userpkmn(1, 21) = 13 then cet = cet + 1
  1833. if userpkmn(1, 21) = 2 then cet = cet - 1
  1834. if userpkmn(1, 21) = 17 then cet = cet - 1
  1835. if userpkmn(1, 21) = 18 then cet = cet - 1
  1836. end sub
  1837.  
  1838. sub fairyeffectivecpuattack
  1839. if userpkmn(1, 20) = 2 then cet = cet + 1
  1840. if userpkmn(1, 20) = 16 then cet = cet + 1
  1841. if userpkmn(1, 20) = 17 then cet = cet + 1
  1842. if userpkmn(1, 20) = 4 then cet = cet - 1
  1843. if userpkmn(1, 20) = 9 then cet = cet - 1
  1844. if userpkmn(1, 20) = 10 then cet = cet - 1
  1845. if userpkmn(1, 21) = 2 then cet = cet + 1
  1846. if userpkmn(1, 21) = 16 then cet = cet + 1
  1847. if userpkmn(1, 21) = 17 then cet = cet + 1
  1848. if userpkmn(1, 21) = 4 then cet = cet - 1
  1849. if userpkmn(1, 21) = 9 then cet = cet - 1
  1850. if userpkmn(1, 21) = 10 then cet = cet - 1
  1851. end sub
  1852.  
  1853.  
  1854.  
  1855.  
  1856.  
  1857.  
  1858. sub normaleffectiveuserattack
  1859. if cpupkmn(1, 20) = 6 then uet = uet - 1
  1860. if cpupkmn(1, 20) = 9 then uet = uet - 1
  1861. if cpupkmn(1, 20) = 8 then uet = uet * 0
  1862. if cpupkmn(1, 21) = 6 then uet = uet - 1
  1863. if cpupkmn(1, 21) = 9 then uet = uet - 1
  1864. if cpupkmn(1, 21) = 8 then uet = uet * 0
  1865. end sub
  1866.  
  1867. sub fightingeffectiveuserattack
  1868. if cpupkmn(1, 20) = 1 then uet = uet + 1
  1869. if cpupkmn(1, 20) = 6 then uet = uet + 1
  1870. if cpupkmn(1, 20) = 9 then uet = uet + 1
  1871. if cpupkmn(1, 20) = 15 then uet = uet + 1
  1872. if cpupkmn(1, 20) = 17 then uet = uet + 1
  1873. if cpupkmn(1, 20) = 3 then uet = uet - 1
  1874. if cpupkmn(1, 20) = 4 then uet = uet - 1
  1875. if cpupkmn(1, 20) = 7 then uet = uet - 1
  1876. if cpupkmn(1, 20) = 14 then uet = uet - 1
  1877. if cpupkmn(1, 20) = 18 then uet = uet - 1
  1878. if cpupkmn(1, 20) = 8 then uet = uet * 0
  1879. if cpupkmn(1, 21) = 1 then uet = uet + 1
  1880. if cpupkmn(1, 21) = 6 then uet = uet + 1
  1881. if cpupkmn(1, 21) = 9 then uet = uet + 1
  1882. if cpupkmn(1, 21) = 15 then uet = uet + 1
  1883. if cpupkmn(1, 21) = 17 then uet = uet + 1
  1884. if cpupkmn(1, 21) = 3 then uet = uet - 1
  1885. if cpupkmn(1, 21) = 4 then uet = uet - 1
  1886. if cpupkmn(1, 21) = 7 then uet = uet - 1
  1887. if cpupkmn(1, 21) = 14 then uet = uet - 1
  1888. if cpupkmn(1, 21) = 18 then uet = uet - 1
  1889. if cpupkmn(1, 21) = 8 then uet = uet * 0
  1890. end sub
  1891.  
  1892. sub flyingeffectiveuserattack
  1893. if cpupkmn(1, 20) = 2 then uet = uet + 1
  1894. if cpupkmn(1, 20) = 7 then uet = uet + 1
  1895. if cpupkmn(1, 20) = 12 then uet = uet + 1
  1896. if cpupkmn(1, 20) = 6 then uet = uet - 1
  1897. if cpupkmn(1, 20) = 9 then uet = uet - 1
  1898. if cpupkmn(1, 20) = 10 then uet = uet - 1
  1899. if cpupkmn(1, 21) = 2 then uet = uet + 1
  1900. if cpupkmn(1, 21) = 7 then uet = uet + 1
  1901. if cpupkmn(1, 21) = 12 then uet = uet + 1
  1902. if cpupkmn(1, 21) = 6 then uet = uet - 1
  1903. if cpupkmn(1, 21) = 9 then uet = uet - 1
  1904. if cpupkmn(1, 21) = 10 then uet = uet - 1
  1905. end sub
  1906.  
  1907. sub poisoneffectiveuserattack
  1908. if cpupkmn(1, 20) = 12 then uet = uet + 1
  1909. if cpupkmn(1, 20) = 18 then uet = uet + 1
  1910. if cpupkmn(1, 20) = 4 then uet = uet - 1
  1911. if cpupkmn(1, 20) = 5 then uet = uet - 1
  1912. if cpupkmn(1, 20) = 6 then uet = uet - 1
  1913. if cpupkmn(1, 20) = 8 then uet = uet - 1
  1914. if cpupkmn(1, 20) = 9 then uet = uet * 0
  1915. if cpupkmn(1, 21) = 12 then uet = uet + 1
  1916. if cpupkmn(1, 21) = 18 then uet = uet + 1
  1917. if cpupkmn(1, 21) = 4 then uet = uet - 1
  1918. if cpupkmn(1, 21) = 5 then uet = uet - 1
  1919. if cpupkmn(1, 21) = 6 then uet = uet - 1
  1920. if cpupkmn(1, 21) = 8 then uet = uet - 1
  1921. if cpupkmn(1, 21) = 9 then uet = uet * 0
  1922. end sub
  1923.  
  1924. sub groundeffectiveuserattack
  1925. if cpupkmn(1, 20) = 4 then uet = uet + 1
  1926. if cpupkmn(1, 20) = 6 then uet = uet + 1
  1927. if cpupkmn(1, 20) = 9 then uet = uet + 1
  1928. if cpupkmn(1, 20) = 10 then uet = uet + 1
  1929. if cpupkmn(1, 20) = 13 then uet = uet + 1
  1930. if cpupkmn(1, 20) = 7 then uet = uet - 1
  1931. if cpupkmn(1, 20) = 11 then uet = uet - 1
  1932. if cpupkmn(1, 20) = 3 then uet = uet * 0
  1933. if cpupkmn(1, 21) = 4 then uet = uet + 1
  1934. if cpupkmn(1, 21) = 6 then uet = uet + 1
  1935. if cpupkmn(1, 21) = 9 then uet = uet + 1
  1936. if cpupkmn(1, 21) = 10 then uet = uet + 1
  1937. if cpupkmn(1, 21) = 13 then uet = uet + 1
  1938. if cpupkmn(1, 21) = 7 then uet = uet - 1
  1939. if cpupkmn(1, 21) = 11 then uet = uet - 1
  1940. if cpupkmn(1, 21) = 3 then uet = uet * 0
  1941. end sub
  1942.  
  1943. sub rockeffectiveuserattack
  1944. if cpupkmn(1, 20) = 3 then uet = uet + 1
  1945. if cpupkmn(1, 20) = 7 then uet = uet + 1
  1946. if cpupkmn(1, 20) = 10 then uet = uet + 1
  1947. if cpupkmn(1, 20) = 15 then uet = uet + 1
  1948. if cpupkmn(1, 20) = 2 then uet = uet - 1
  1949. if cpupkmn(1, 20) = 5 then uet = uet - 1
  1950. if cpupkmn(1, 20) = 9 then uet = uet - 1
  1951. if cpupkmn(1, 21) = 3 then uet = uet + 1
  1952. if cpupkmn(1, 21) = 7 then uet = uet + 1
  1953. if cpupkmn(1, 21) = 10 then uet = uet + 1
  1954. if cpupkmn(1, 21) = 15 then uet = uet + 1
  1955. if cpupkmn(1, 21) = 2 then uet = uet - 1
  1956. if cpupkmn(1, 21) = 5 then uet = uet - 1
  1957. if cpupkmn(1, 21) = 9 then uet = uet - 1
  1958. end sub
  1959.  
  1960. sub bugeffectiveuserattack
  1961. if cpupkmn(1, 20) = 12 then uet = uet + 1
  1962. if cpupkmn(1, 20) = 14 then uet = uet + 1
  1963. if cpupkmn(1, 20) = 17 then uet = uet + 1
  1964. if cpupkmn(1, 20) = 2 then uet = uet - 1
  1965. if cpupkmn(1, 20) = 3 then uet = uet - 1
  1966. if cpupkmn(1, 20) = 4 then uet = uet - 1
  1967. if cpupkmn(1, 20) = 8 then uet = uet - 1
  1968. if cpupkmn(1, 20) = 9 then uet = uet - 1
  1969. if cpupkmn(1, 20) = 10 then uet = uet - 1
  1970. if cpupkmn(1, 20) = 18 then uet = uet - 1
  1971. if cpupkmn(1, 21) = 12 then uet = uet + 1
  1972. if cpupkmn(1, 21) = 14 then uet = uet + 1
  1973. if cpupkmn(1, 21) = 17 then uet = uet + 1
  1974. if cpupkmn(1, 21) = 2 then uet = uet - 1
  1975. if cpupkmn(1, 21) = 3 then uet = uet - 1
  1976. if cpupkmn(1, 21) = 4 then uet = uet - 1
  1977. if cpupkmn(1, 21) = 8 then uet = uet - 1
  1978. if cpupkmn(1, 21) = 9 then uet = uet - 1
  1979. if cpupkmn(1, 21) = 10 then uet = uet - 1
  1980. if cpupkmn(1, 21) = 18 then uet = uet - 1
  1981. end sub
  1982.  
  1983. sub ghosteffectiveuserattack
  1984. if cpupkmn(1, 20) = 8 then uet = uet + 1
  1985. if cpupkmn(1, 20) = 14 then uet = uet + 1
  1986. if cpupkmn(1, 20) = 17 then uet = uet - 1
  1987. if cpupkmn(1, 20) = 1 then uet = uet * 0
  1988. if cpupkmn(1, 21) = 8 then uet = uet + 1
  1989. if cpupkmn(1, 21) = 14 then uet = uet + 1
  1990. if cpupkmn(1, 21) = 17 then uet = uet - 1
  1991. if cpupkmn(1, 21) = 1 then uet = uet * 0
  1992. end sub
  1993.  
  1994. sub steeleffectiveuserattack
  1995. if cpupkmn(1, 20) = 6 then uet = uet + 1
  1996. if cpupkmn(1, 20) = 15 then uet = uet + 1
  1997. if cpupkmn(1, 20) = 18 then uet = uet + 1
  1998. if cpupkmn(1, 20) = 9 then uet = uet - 1
  1999. if cpupkmn(1, 20) = 10 then uet = uet - 1
  2000. if cpupkmn(1, 20) = 11 then uet = uet - 1
  2001. if cpupkmn(1, 20) = 13 then uet = uet - 1
  2002. if cpupkmn(1, 21) = 6 then uet = uet + 1
  2003. if cpupkmn(1, 21) = 15 then uet = uet + 1
  2004. if cpupkmn(1, 21) = 18 then uet = uet + 1
  2005. if cpupkmn(1, 21) = 9 then uet = uet - 1
  2006. if cpupkmn(1, 21) = 10 then uet = uet - 1
  2007. if cpupkmn(1, 21) = 11 then uet = uet - 1
  2008. if cpupkmn(1, 21) = 13 then uet = uet - 1
  2009. end sub
  2010.  
  2011. sub fireeffectiveuserattack
  2012. if cpupkmn(1, 20) = 7 then uet = uet + 1
  2013. if cpupkmn(1, 20) = 9 then uet = uet + 1
  2014. if cpupkmn(1, 20) = 12 then uet = uet + 1
  2015. if cpupkmn(1, 20) = 15 then uet = uet + 1
  2016. if cpupkmn(1, 20) = 6 then uet = uet - 1
  2017. if cpupkmn(1, 20) = 10 then uet = uet - 1
  2018. if cpupkmn(1, 20) = 11 then uet = uet - 1
  2019. if cpupkmn(1, 20) = 16 then uet = uet - 1
  2020. if cpupkmn(1, 21) = 7 then uet = uet + 1
  2021. if cpupkmn(1, 21) = 9 then uet = uet + 1
  2022. if cpupkmn(1, 21) = 12 then uet = uet + 1
  2023. if cpupkmn(1, 21) = 15 then uet = uet + 1
  2024. if cpupkmn(1, 21) = 6 then uet = uet - 1
  2025. if cpupkmn(1, 21) = 10 then uet = uet - 1
  2026. if cpupkmn(1, 21) = 11 then uet = uet - 1
  2027. if cpupkmn(1, 21) = 16 then uet = uet - 1
  2028. end sub
  2029.  
  2030. sub watereffectiveuserattack
  2031. if cpupkmn(1, 20) = 5 then uet = uet + 1
  2032. if cpupkmn(1, 20) = 6 then uet = uet + 1
  2033. if cpupkmn(1, 20) = 10 then uet = uet + 1
  2034. if cpupkmn(1, 20) = 11 then uet = uet - 1
  2035. if cpupkmn(1, 20) = 12 then uet = uet - 1
  2036. if cpupkmn(1, 20) = 16 then uet = uet - 1
  2037. if cpupkmn(1, 21) = 5 then uet = uet + 1
  2038. if cpupkmn(1, 21) = 6 then uet = uet + 1
  2039. if cpupkmn(1, 21) = 10 then uet = uet + 1
  2040. if cpupkmn(1, 21) = 11 then uet = uet - 1
  2041. if cpupkmn(1, 21) = 12 then uet = uet - 1
  2042. if cpupkmn(1, 21) = 16 then uet = uet - 1
  2043. end sub
  2044.  
  2045. sub grasseffectiveuserattack
  2046. if cpupkmn(1, 20) = 5 then uet = uet + 1
  2047. if cpupkmn(1, 20) = 6 then uet = uet + 1
  2048. if cpupkmn(1, 20) = 11 then uet = uet + 1
  2049. if cpupkmn(1, 20) = 3 then uet = uet - 1
  2050. if cpupkmn(1, 20) = 4 then uet = uet - 1
  2051. if cpupkmn(1, 20) = 7 then uet = uet - 1
  2052. if cpupkmn(1, 20) = 9 then uet = uet - 1
  2053. if cpupkmn(1, 20) = 10 then uet = uet - 1
  2054. if cpupkmn(1, 20) = 12 then uet = uet - 1
  2055. if cpupkmn(1, 20) = 16 then uet = uet - 1
  2056. if cpupkmn(1, 21) = 5 then uet = uet + 1
  2057. if cpupkmn(1, 21) = 6 then uet = uet + 1
  2058. if cpupkmn(1, 21) = 11 then uet = uet + 1
  2059. if cpupkmn(1, 21) = 3 then uet = uet - 1
  2060. if cpupkmn(1, 21) = 4 then uet = uet - 1
  2061. if cpupkmn(1, 21) = 7 then uet = uet - 1
  2062. if cpupkmn(1, 21) = 9 then uet = uet - 1
  2063. if cpupkmn(1, 21) = 10 then uet = uet - 1
  2064. if cpupkmn(1, 21) = 12 then uet = uet - 1
  2065. if cpupkmn(1, 21) = 16 then uet = uet - 1
  2066. end sub
  2067.  
  2068. sub electriceffectiveuserattack
  2069. if cpupkmn(1, 20) = 3 then uet = uet + 1
  2070. if cpupkmn(1, 20) = 12 then uet = uet + 1
  2071. if cpupkmn(1, 20) = 13 then uet = uet - 1
  2072. if cpupkmn(1, 20) = 14 then uet = uet - 1
  2073. if cpupkmn(1, 20) = 16 then uet = uet - 1
  2074. if cpupkmn(1, 20) = 5 then uet = uet * 0
  2075. if cpupkmn(1, 21) = 3 then uet = uet + 1
  2076. if cpupkmn(1, 21) = 12 then uet = uet + 1
  2077. if cpupkmn(1, 21) = 13 then uet = uet - 1
  2078. if cpupkmn(1, 21) = 14 then uet = uet - 1
  2079. if cpupkmn(1, 21) = 16 then uet = uet - 1
  2080. if cpupkmn(1, 21) = 5 then uet = uet * 0
  2081. end sub
  2082.  
  2083. sub psychiceffectiveuserattack
  2084. if cpupkmn(1, 20) = 2 then uet = uet + 1
  2085. if cpupkmn(1, 20) = 4 then uet = uet + 1
  2086. if cpupkmn(1, 20) = 9 then uet = uet - 1
  2087. if cpupkmn(1, 20) = 14 then uet = uet - 1
  2088. if cpupkmn(1, 20) = 17 then uet = uet * 0
  2089. if cpupkmn(1, 21) = 2 then uet = uet + 1
  2090. if cpupkmn(1, 21) = 4 then uet = uet + 1
  2091. if cpupkmn(1, 21) = 9 then uet = uet - 1
  2092. if cpupkmn(1, 21) = 14 then uet = uet - 1
  2093. if cpupkmn(1, 21) = 17 then uet = uet * 0
  2094. end sub
  2095.  
  2096. sub iceeffectiveuserattack
  2097. if cpupkmn(1, 20) = 3 then uet = uet + 1
  2098. if cpupkmn(1, 20) = 5 then uet = uet + 1
  2099. if cpupkmn(1, 20) = 12 then uet = uet + 1
  2100. if cpupkmn(1, 20) = 16 then uet = uet + 1
  2101. if cpupkmn(1, 20) = 9 then uet = uet - 1
  2102. if cpupkmn(1, 20) = 10 then uet = uet - 1
  2103. if cpupkmn(1, 20) = 11 then uet = uet - 1
  2104. if cpupkmn(1, 20) = 15 then uet = uet - 1
  2105. if cpupkmn(1, 21) = 3 then uet = uet + 1
  2106. if cpupkmn(1, 21) = 5 then uet = uet + 1
  2107. if cpupkmn(1, 21) = 12 then uet = uet + 1
  2108. if cpupkmn(1, 21) = 16 then uet = uet + 1
  2109. if cpupkmn(1, 21) = 9 then uet = uet - 1
  2110. if cpupkmn(1, 21) = 10 then uet = uet - 1
  2111. if cpupkmn(1, 21) = 11 then uet = uet - 1
  2112. if cpupkmn(1, 21) = 15 then uet = uet - 1
  2113. end sub
  2114.  
  2115. sub dragoneffectiveuserattack
  2116. if cpupkmn(1, 20) = 16 then uet = uet + 1
  2117. if cpupkmn(1, 20) = 9 then uet = uet - 1
  2118. if cpupkmn(1, 20) = 18 then uet = uet * 0
  2119. if cpupkmn(1, 21) = 16 then uet = uet + 1
  2120. if cpupkmn(1, 21) = 9 then uet = uet - 1
  2121. if cpupkmn(1, 21) = 18 then uet = uet * 0
  2122. end sub
  2123.  
  2124. sub darkeffectiveuserattack
  2125. if cpupkmn(1, 20) = 8 then uet = uet + 1
  2126. if cpupkmn(1, 20) = 13 then uet = uet + 1
  2127. if cpupkmn(1, 20) = 2 then uet = uet - 1
  2128. if cpupkmn(1, 20) = 17 then uet = uet - 1
  2129. if cpupkmn(1, 20) = 18 then uet = uet - 1
  2130. if cpupkmn(1, 21) = 8 then uet = uet + 1
  2131. if cpupkmn(1, 21) = 13 then uet = uet + 1
  2132. if cpupkmn(1, 21) = 2 then uet = uet - 1
  2133. if cpupkmn(1, 21) = 17 then uet = uet - 1
  2134. if cpupkmn(1, 21) = 18 then uet = uet - 1
  2135. end sub
  2136.  
  2137. sub fairyeffectiveuserattack
  2138. if cpupkmn(1, 20) = 2 then uet = uet + 1
  2139. if cpupkmn(1, 20) = 16 then uet = uet + 1
  2140. if cpupkmn(1, 20) = 17 then uet = uet + 1
  2141. if cpupkmn(1, 20) = 4 then uet = uet - 1
  2142. if cpupkmn(1, 20) = 9 then uet = uet - 1
  2143. if cpupkmn(1, 20) = 10 then uet = uet - 1
  2144. if cpupkmn(1, 21) = 2 then uet = uet + 1
  2145. if cpupkmn(1, 21) = 16 then uet = uet + 1
  2146. if cpupkmn(1, 21) = 17 then uet = uet + 1
  2147. if cpupkmn(1, 21) = 4 then uet = uet - 1
  2148. if cpupkmn(1, 21) = 9 then uet = uet - 1
  2149. if cpupkmn(1, 21) = 10 then uet = uet - 1
  2150. end sub
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement