FMU REC (Tweaked TMU SI with REREC by Never Lose)

show SI and REREC in TMU Player page

  1. // ==UserScript==
  2. // @name FMU REC (Tweaked TMU SI with REREC by Never Lose)
  3. // @namespace https://gf.qytechs.cn/users/3409
  4. // @version 2.0.1
  5.  
  6. // @description show SI and REREC in TMU Player page
  7. // @match *://ultra.trophymanager.com/players*
  8. // @copyright Never Lose
  9. // @require http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js
  10. // ==/UserScript==
  11.  
  12. $ = unsafeWindow.$;
  13.  
  14. $.browser.chrome = /chrom(e|ium)/.test(navigator.userAgent.toLowerCase());
  15.  
  16. var weightR = [[0.653962303361921, 0.330014238020285, 0.562994547223387, 0.891800163983125, 0.871069095865164, 0.454514672470839, 0.555697278549252, 0.42777598627972, 0.338218821750765, 0.134348455965202, 0.796916786677566, 0.048831870932616, 0.116363443378865, 0.282347752982916, 14.866375, 18.95664], //DC
  17. [0.565605120229193, 0.430973382039533, 0.917125432457378, 0.815702528287723, 0.99022325015212, 0.547995876625372, 0.522203232914265, 0.309928898819518, 0.837365352274204, 0.483822472259513, 0.656901420858592, 0.137582588344562, 0.163658117596413, 0.303915447383549, 15.980742, 22.895539], //DL/R
  18. [0.55838825558912, 0.603683502357502, 0.563792314670998, 0.770425088563048, 0.641965853834719, 0.675495235675077, 0.683863478201805, 0.757342915150728, 0.473070797767482, 0.494107823556837, 0.397547163237438, 0.429660916538242, 0.56364174077388, 0.224791093448809, 15.8932675, 23.1801296], //DMC
  19. [0.582074038075056, 0.420032202680124, 0.7887541874616, 0.726221389774063, 0.722972329840151, 0.737617252827595, 0.62234458453736, 0.466946909655194, 0.814382915598981, 0.561877829393632, 0.367446981999576, 0.360623408340649, 0.390057769678583, 0.249517737311268, 15.5835325, 23.2813871], //DML/R
  20. [0.578431939417021, 0.778134685048085, 0.574726322388294, 0.71400292078636, 0.635403391007978, 0.822308254446722, 0.877857040588335, 0.864265671245476, 0.433450219618618, 0.697164252367046, 0.412568516841575, 0.586627586272733, 0.617905053049757, 0.308426814834866, 17.6955092, 26.8420884], //MC
  21. [0.497429376361348, 0.545347364699553, 0.788280917110089, 0.578724574327427, 0.663235306043286, 0.772537143243647, 0.638706135095199, 0.538453108494387, 0.887935381275257, 0.572515970409641, 0.290549550901104, 0.476180499897665, 0.526149424898544, 0.287001645266184, 16.6189141, 23.9940623], //ML/R
  22. [0.656437768926678, 0.617260722143117, 0.656569986958435, 0.63741054520629, 0.55148452726771, 0.922379789905246, 0.790553566121791, 0.999688557334153, 0.426203575603164, 0.778770912265944, 0.652374065121788, 0.662264393455567, 0.73120100926333, 0.274563618133769, 18.1255351, 27.8974544], //OMC
  23. [0.483341947292063, 0.494773052635464, 0.799434804259974, 0.628789194186491, 0.633847969631333, 0.681354437033551, 0.671233869875345, 0.536121458625519, 0.849389745477645, 0.684067723274814, 0.389732973354501, 0.499972692291964, 0.577231818355874, 0.272773352088982, 15.6304867, 24.54323], //OML/R
  24. [0.493917051093473, 0.370423904816088, 0.532148929996192, 0.0629206658586336, 0.0904950078155216, 0.415494774080483, 0.54106107545574, 0.468181146095801, 0.158106484131194, 0.461125738338018, 0.83399612271067, 0.999828328674183, 0.827171977606305, 0.253225855459207, 13.2762119, 19.5088591], //F
  25. [0.5, 0.333, 0.5, 1, 0.5, 1, 0.5, 0.5, 0.333, 0.333, 0.333, , , , 15, 22.3]]; //GK
  26.  
  27. var weightR2 = new Array();
  28.  
  29. for(var x = 0; x < weightR.length; x++){
  30. var arr = new Array();
  31. for(var y = 0; y < weightR[x].length; y++){
  32. arr.push(weightR[x][y]);
  33. }
  34. weightR2.push(arr);
  35. }
  36.  
  37. weightR2.forEach(function(p){
  38. var v1 = p[1];
  39. var v2 = p[2];
  40. var v3 = p[3];
  41. var v4 = p[4];
  42. var v5 = p[5];
  43. var v6 = p[6];
  44. var v7 = p[7];
  45. var v8 = p[8];
  46. var v9 = p[9];
  47. var v10 = p[10];
  48. var v11 = p[11];
  49. var v12 = p[12];
  50. p[1] = v7;
  51. p[2] = v1;
  52. p[3] = v8;
  53. p[4] = v2;
  54. p[5] = v9;
  55. p[6] = v3;
  56. p[7] = v10;
  57. p[8] = v4;
  58. p[9] = v11;
  59. p[10] = v5;
  60. p[11] = v12;
  61. p[12] = v6;
  62. });
  63.  
  64. var weightR3 = [0.5, 1, 0.333, 0.5, 0.5, 1, 0.5, 0.5, 0.333, 0.333, 0.333, 0, 0, 0, 15, 22.3];
  65.  
  66. $(function(){
  67. showSI();
  68. showPlayerSI();
  69. $("#sq").on("click", "table > tbody > tr.header > th:not(.si)", function(){
  70. showSI();
  71. });
  72. $("[id^='filter_']").click(function(){
  73. showSI();
  74. });
  75. function showSI(){
  76. $("#sq th.name, #sq div.name").css("width", "80px");
  77. $("#sq div.position").css("width","55px");
  78. $("#sq th.rec,#sq div.rec").css("width","90px");
  79. $("#sq tr.header").append("<th class='si' style='width:90px;'>SI</th>");
  80. if($.browser.mozilla){
  81. $("#sq > table > tbody > tr:not(.header):not(:has(td.splitter))").each(function(){
  82. var favposition = $(this).find(".favposition").text();
  83. var skills = 0;
  84. $(this).find("div.skill").each(function(){
  85. var skill = parseInt($(this).text());
  86. if(isNaN(skill)){
  87. skill = parseInt($(this).find("img").attr("tooltip"));
  88. }
  89. skills += skill;
  90. });
  91. if(favposition == "Gk"){ skills = parseInt(skills / 11 * 14) }
  92. var newPow = 6.9519770543;
  93. var newDiv = 199873144100.3349484929416253;
  94. var si = parseInt(Math.pow((skills / 5), newPow) / newDiv);
  95. $(this).append("<div style='text-align:center;'>" + si + "</div>");
  96. $(this).append("<td style='text-align:center;'>" + si + "</td>");
  97. });
  98. } else if ($.browser.chrome){
  99. $("#sq > table > tbody > tr:not(.header):not(:has(td.splitter))").each(function(){
  100. var playerId = $(this).find("div.name a").attr("player_link") || 0;
  101. var si = 0;
  102. players_ar.forEach(function(data){
  103. if(data.id == playerId) {
  104. si = data.asi;
  105. return;
  106. }
  107. });
  108. var favposition = $(this).find(".favposition").text();
  109. var recSkills = 0;
  110. var recSkills2 = 0;
  111. var i = 0;
  112.  
  113. $(this).find("div.skill").each(function(){
  114. var skill = parseInt($(this).text());
  115. if(isNaN(skill)){
  116. skill = parseInt($(this).find("img").attr("tooltip"));
  117. }
  118. switch(favposition.toUpperCase()){
  119. case "D C":
  120. recSkills += skill * weightR[0][i];
  121. break;
  122. case "D L":
  123. case "D R":
  124. recSkills += skill * weightR[1][i];
  125. break;
  126. case "DM C":
  127. recSkills += skill * weightR[2][i];
  128. break;
  129. case "DM L":
  130. case "DM R":
  131. recSkills += skill * weightR[3][i];
  132. break;
  133. case "M C":
  134. recSkills += skill * weightR[4][i];
  135. break;
  136. case "M L":
  137. case "M R":
  138. recSkills += skill * weightR[5][i];
  139. break;
  140. case "OM C":
  141. recSkills += skill * weightR[6][i];
  142. break;
  143. case "OM L":
  144. case "OM R":
  145. recSkills += skill * weightR[7][i];
  146. break;
  147. case "F":
  148. recSkills += skill * weightR[8][i];
  149. break;
  150. case "Gk":
  151. recSkills += skill * weightR[9][i];
  152. break;
  153. case "D C, F":
  154. recSkills += skill * weightR[0][i];
  155. recSkills2 += skill * weightR[8][i];
  156. break;
  157. case "D CL":
  158. case "D CR":
  159. recSkills += skill * weightR[0][i];
  160. recSkills2 += skill * weightR[1][i];
  161. break;
  162. case "D LC":
  163. case "D RC":
  164. recSkills += skill * weightR[1][i];
  165. recSkills2 += skill * weightR[0][i];
  166. break;
  167. case "D LR":
  168. case "D RL":
  169. recSkills += skill * weightR[1][i];
  170. recSkills2 += skill * weightR[1][i];
  171. break;
  172. case "D/DM C":
  173. recSkills += skill * weightR[0][i];
  174. recSkills2 += skill * weightR[2][i];
  175. break;
  176. case "D/DM L":
  177. case "D/DM R":
  178. recSkills += skill * weightR[1][i];
  179. recSkills2 += skill * weightR[3][i];
  180. break;
  181. case "D/M L":
  182. case "D/M R":
  183. recSkills += skill * weightR[1][i];
  184. recSkills2 += skill * weightR[5][i];
  185. break;
  186. case "DM/D L":
  187. case "DM/D R":
  188. recSkills += skill * weightR[3][i];
  189. recSkills2 += skill * weightR[1][i];
  190. break;
  191. case "DM LR":
  192. case "DM RL":
  193. recSkills += skill * weightR[3][i];
  194. recSkills2 += skill * weightR[3][i];
  195. break;
  196. case "DM/D C":
  197. recSkills += skill * weightR[2][i];
  198. recSkills2 += skill * weightR[0][i];
  199. break;
  200. case "DM/M C":
  201. recSkills += skill * weightR[2][i];
  202. recSkills2 += skill * weightR[4][i];
  203. break;
  204. case "DM CL":
  205. case "DM CR":
  206. recSkills += skill * weightR[2][i];
  207. recSkills2 += skill * weightR[3][i];
  208. break;
  209. case "DM LC":
  210. case "DM RC":
  211. recSkills += skill * weightR[3][i];
  212. recSkills2 += skill * weightR[2][i];
  213. break;
  214. case "DM/M L":
  215. case "DM/M R":
  216. recSkills += skill * weightR[3][i];
  217. recSkills2 += skill * weightR[5][i];
  218. break;
  219. case "M CL":
  220. case "M CR":
  221. recSkills += skill * weightR[4][i];
  222. recSkills2 += skill * weightR[5][i];
  223. break;
  224. case "M LC":
  225. case "M RC":
  226. recSkills += skill * weightR[5][i];
  227. recSkills2 += skill * weightR[4][i];
  228. break;
  229. case "M LR":
  230. case "M RL":
  231. recSkills += skill * weightR[5][i];
  232. recSkills2 += skill * weightR[5][i];
  233. break;
  234. case "M/OM C":
  235. recSkills += skill * weightR[4][i];
  236. recSkills2 += skill * weightR[6][i];
  237. break;
  238. case "M/OM L":
  239. case "M/OM R":
  240. recSkills += skill * weightR[5][i];
  241. recSkills2 += skill * weightR[7][i];
  242. break;
  243. case "M/DM L":
  244. case "M/DM R":
  245. recSkills += skill * weightR[5][i];
  246. recSkills2 += skill * weightR[3][i];
  247. break;
  248. case "OM CL":
  249. case "OM CR":
  250. recSkills += skill * weightR[6][i];
  251. recSkills2 += skill * weightR[7][i];
  252. break;
  253. case "OM LC":
  254. case "OM RC":
  255. recSkills += skill * weightR[7][i];
  256. recSkills2 += skill * weightR[6][i];
  257. break;
  258. case "OM RL":
  259. case "OM LR":
  260. recSkills += skill * weightR[7][i];
  261. recSkills2 += skill * weightR[7][i];
  262. break;
  263. case "OM C, F":
  264. recSkills += skill * weightR[6][i];
  265. recSkills2 += skill * weightR[8][i];
  266. break;
  267. case "OM L, F":
  268. case "OM R, F":
  269. recSkills += skill * weightR[7][i];
  270. recSkills2 += skill * weightR[8][i];
  271. break;
  272. case "OM/M C":
  273. recSkills += skill * weightR[6][i];
  274. recSkills2 += skill * weightR[4][i];
  275. break;
  276. case "OM/M L":
  277. case "OM/M R":
  278. recSkills += skill * weightR[7][i];
  279. recSkills2 += skill * weightR[5][i];
  280. break;
  281. case "M C, F":
  282. recSkills += skill * weightR[4][i];
  283. recSkills2 += skill * weightR[8][i];
  284. break;
  285. case "M L, F":
  286. case "M R, F":
  287. recSkills += skill * weightR[5][i];
  288. recSkills2 += skill * weightR[8][i];
  289. break;
  290. }
  291. i += 1;
  292. });
  293. if(recSkills == 0){
  294. $(this).append("<div style='text-align:center;'>" + si + "</div>");
  295. $(this).append("<td style='text-align:right;'>" + si + "</td>");
  296. } else {
  297. recSkills /= 5;
  298. if (recSkills2 != 0){
  299. recSkills2 /= 5;
  300. }
  301. switch(favposition.toUpperCase()){
  302. case "D C":
  303. recSkills = (recSkills - weightR[0][14]) / weightR[0][15];
  304. break;
  305. case "D L":
  306. case "D R":
  307. recSkills = (recSkills - weightR[1][14]) / weightR[1][15];
  308. break;
  309. case "DM C":
  310. recSkills = (recSkills - weightR[2][14]) / weightR[2][15];
  311. break;
  312. case "DM L":
  313. case "DM R":
  314. recSkills = (recSkills - weightR[3][14]) / weightR[3][15];
  315. break;
  316. case "M C":
  317. recSkills = (recSkills - weightR[4][14]) / weightR[4][15];
  318. break;
  319. case "M L":
  320. case "M R":
  321. recSkills = (recSkills - weightR[5][14]) / weightR[5][15];
  322. break;
  323. case "OM C":
  324. recSkills = (recSkills - weightR[6][14]) / weightR[6][15];
  325. break;
  326. case "OM L":
  327. case "OM R":
  328. recSkills = (recSkills - weightR[7][14]) / weightR[7][15];
  329. break;
  330. case "F":
  331. recSkills = (recSkills - weightR[8][14]) / weightR[8][15];
  332. break;
  333. case "Gk":
  334. recSkills = recSkills / 11 * 14;
  335. recSkills = (recSkills - weightR[9][14]) / weightR[9][15];
  336. break;
  337. case "D C, F":
  338. recSkills = (recSkills - weightR[0][14]) / weightR[0][15];
  339. recSkills2 = (recSkills2 - weightR[8][14]) / weightR[8][15];
  340. break;
  341. case "D CL":
  342. case "D CR":
  343. recSkills = (recSkills - weightR[0][14]) / weightR[0][15];
  344. recSkills2 = (recSkills2 - weightR[1][14]) / weightR[1][15];
  345. break;
  346. case "D LC":
  347. case "D RC":
  348. recSkills = (recSkills - weightR[1][14]) / weightR[1][15];
  349. recSkills2 = (recSkills2 - weightR[0][14]) / weightR[0][15];
  350. break;
  351. case "D LR":
  352. case "D RL":
  353. recSkills = (recSkills - weightR[1][14]) / weightR[1][15];
  354. recSkills2 = (recSkills2 - weightR[1][14]) / weightR[1][15];
  355. break;
  356. case "D/DM C":
  357. recSkills = (recSkills - weightR[0][14]) / weightR[0][15];
  358. recSkills2 = (recSkills2 - weightR[2][14]) / weightR[2][15];
  359. break;
  360. case "D/DM L":
  361. case "D/DM R":
  362. recSkills = (recSkills - weightR[1][14]) / weightR[1][15];
  363. recSkills2 = (recSkills2 - weightR[3][14]) / weightR[3][15];
  364. break;
  365. case "D/M L":
  366. case "D/M R":
  367. recSkills = (recSkills - weightR[1][14]) / weightR[1][15];
  368. recSkills2 = (recSkills2 - weightR[5][14]) / weightR[5][15];
  369. break;
  370. case "DM/D L":
  371. case "DM/D R":
  372. recSkills = (recSkills - weightR[3][14]) / weightR[3][15];
  373. recSkills2 = (recSkills2 - weightR[1][14]) / weightR[1][15];
  374. break;
  375. case "DM LR":
  376. case "DM RL":
  377. recSkills = (recSkills - weightR[3][14]) / weightR[3][15];
  378. recSkills2 = (recSkills2 - weightR[3][14]) / weightR[3][15];
  379. break;
  380. case "DM/D C":
  381. recSkills = (recSkills - weightR[2][14]) / weightR[2][15];
  382. recSkills2 = (recSkills2 - weightR[0][14]) / weightR[0][15];
  383. break;
  384. case "DM/M C":
  385. recSkills = (recSkills - weightR[2][14]) / weightR[2][15];
  386. recSkills2 = (recSkills2 - weightR[4][14]) / weightR[4][15];
  387. break;
  388. case "DM CL":
  389. case "DM CR":
  390. recSkills = (recSkills - weightR[2][14]) / weightR[2][15];
  391. recSkills2 = (recSkills2 - weightR[3][14]) / weightR[3][15];
  392. break;
  393. case "DM LC":
  394. case "DM RC":
  395. recSkills = (recSkills - weightR[3][14]) / weightR[3][15];
  396. recSkills2 = (recSkills2 - weightR[2][14]) / weightR[2][15];
  397. break;
  398. case "DM/M L":
  399. case "DM/M R":
  400. recSkills = (recSkills - weightR[3][14]) / weightR[3][15];
  401. recSkills2 = (recSkills2 - weightR[5][14]) / weightR[5][15];
  402. break;
  403. case "M CL":
  404. case "M CR":
  405. recSkills = (recSkills - weightR[4][14]) / weightR[4][15];
  406. recSkills2 = (recSkills2 - weightR[5][14]) / weightR[5][15];
  407. break;
  408. case "M LC":
  409. case "M RC":
  410. recSkills = (recSkills - weightR[5][14]) / weightR[5][15];
  411. recSkills2 = (recSkills2 - weightR[4][14]) / weightR[4][15];
  412. break;
  413. case "M LR":
  414. case "M RL":
  415. recSkills = (recSkills - weightR[5][14]) / weightR[5][15];
  416. recSkills2 = (recSkills2 - weightR[5][14]) / weightR[5][15];
  417. break;
  418. case "M/OM C":
  419. recSkills = (recSkills - weightR[4][14]) / weightR[4][15];
  420. recSkills2 = (recSkills2 - weightR[6][14]) / weightR[6][15];
  421. break;
  422. case "M/OM L":
  423. case "M/OM R":
  424. recSkills = (recSkills - weightR[5][14]) / weightR[5][15];
  425. recSkills2 = (recSkills2 - weightR[7][14]) / weightR[7][15];
  426. break;
  427. case "M/DM L":
  428. case "M/DM R":
  429. recSkills = (recSkills - weightR[5][14]) / weightR[5][15];
  430. recSkills2 = (recSkills2 - weightR[3][14]) / weightR[3][15];
  431. break;
  432. case "OM CL":
  433. case "OM CR":
  434. recSkills = (recSkills - weightR[6][14]) / weightR[6][15];
  435. recSkills2 = (recSkills2 - weightR[7][14]) / weightR[7][15];
  436. break;
  437. case "OM LC":
  438. case "OM RC":
  439. recSkills = (recSkills - weightR[7][14]) / weightR[7][15];
  440. recSkills2 = (recSkills2 - weightR[6][14]) / weightR[6][15];
  441. break;
  442. case "OM RL":
  443. case "OM LR":
  444. recSkills = (recSkills - weightR[7][14]) / weightR[7][15];
  445. recSkills2 = (recSkills2 - weightR[7][14]) / weightR[7][15];
  446. break;
  447. case "OM C, F":
  448. recSkills = (recSkills - weightR[6][14]) / weightR[6][15];
  449. recSkills2 = (recSkills2 - weightR[8][14]) / weightR[8][15];
  450. break;
  451. case "OM L, F":
  452. case "OM R, F":
  453. recSkills = (recSkills - weightR[7][14]) / weightR[7][15];
  454. recSkills2 = (recSkills2 - weightR[8][14]) / weightR[8][15];
  455. break;
  456. case "OM/M C":
  457. recSkills = (recSkills - weightR[6][14]) / weightR[6][15];
  458. recSkills2 = (recSkills2 - weightR[4][14]) / weightR[4][15];
  459. break;
  460. case "OM/M L":
  461. case "OM/M R":
  462. recSkills = (recSkills - weightR[7][14]) / weightR[7][15];
  463. recSkills2 = (recSkills2 - weightR[5][14]) / weightR[5][15];
  464. break;
  465. case "M C, F":
  466. recSkills = (recSkills - weightR[4][14]) / weightR[4][15];
  467. recSkills2 = (recSkills2 - weightR[8][14]) / weightR[8][15];
  468. break;
  469. case "M L, F":
  470. case "M R, F":
  471. recSkills = (recSkills - weightR[5][14]) / weightR[5][15];
  472. recSkills2 = (recSkills2 - weightR[8][14]) / weightR[8][15];
  473. break;
  474. }
  475. /*
  476. if (recSkills2 == 0){
  477. $(this).append("<div style='text-align:right;'>" + si + "<br />" + recSkills.toFixed(2).toString() + "</div>");
  478. } else {
  479. $(this).append("<div style='text-align:right;'>" + si + "<br />" + recSkills.toFixed(2).toString() + ", " + recSkills2.toFixed(2).toString() + "</div>");
  480. }
  481. */
  482. if (recSkills2 == 0){
  483. $(this).append("<td style='text-align:right;'>" + si + "<br />" + recSkills.toFixed(2).toString() + "</td>");
  484. } else {
  485. $(this).append("<td style='text-align:right;'>" + si + "<br />(1) " + recSkills.toFixed(2).toString() + "<br />(2) " + recSkills2.toFixed(2).toString() + "</div>");
  486. }
  487. }
  488. });
  489. } else {
  490. alert("sorry, this browser not supported at the moment");
  491. }
  492. };
  493. function showPlayerSI(){
  494. var favposition = $(".favposition").text();
  495. var skills = 0;
  496. var recSkills = 0;
  497. var recSkills2 = 0;
  498. var i = 0;
  499. $("table.skill_table:eq(0) tbody td.align_center").each(function(){
  500. var skill = parseInt($(this).text());
  501. if(isNaN(skill)){
  502. if($(this).find("div").hasClass("icon_gold_star")){
  503. skill = 100;
  504. } else {
  505. skill = 99;
  506. }
  507. }
  508. skills += skill;
  509. switch(favposition){
  510. case "Defender Center":
  511. recSkills += skill * weightR2[0][i];
  512. break;
  513. case "Defender Left":
  514. case "Defender Right":
  515. recSkills += skill * weightR2[1][i];
  516. break;
  517. case "Defensive Midfielder Center":
  518. recSkills += skill * weightR2[2][i];
  519. break;
  520. case "Defensive Midfielder Left":
  521. case "Defensive Midfielder Right":
  522. recSkills += skill * weightR2[3][i];
  523. break;
  524. case "Midfielder Center":
  525. recSkills += skill * weightR2[4][i];
  526. break;
  527. case "Midfielder Left":
  528. case "Midfielder Right":
  529. recSkills += skill * weightR2[5][i];
  530. break;
  531. case "Offensive Midfielder Center":
  532. recSkills += skill * weightR2[6][i];
  533. break;
  534. case "Offensive Midfielder Left":
  535. case "Offensive Midfielder Right":
  536. recSkills += skill * weightR2[7][i];
  537. break;
  538. case "Forward":
  539. recSkills += skill * weightR2[8][i];
  540. break;
  541. case "Goalkeeper":
  542. recSkills += skill * weightR3[i];
  543. break;
  544. case "Defender Center/Forward":
  545. recSkills += skill * weightR2[0][i];
  546. recSkills2 += skill * weightR2[8][i];
  547. break;
  548. case "Defender Center/Left":
  549. case "Defender Center/Right":
  550. recSkills += skill * weightR2[0][i];
  551. recSkills2 += skill * weightR2[1][i];
  552. break;
  553. case "Defender Left/Center":
  554. case "Defender Right/Center":
  555. recSkills += skill * weightR2[1][i];
  556. recSkills2 += skill * weightR2[0][i];
  557. break;
  558. case "Defender Left/Right":
  559. case "Defender Right/Left":
  560. recSkills += skill * weightR2[1][i];
  561. recSkills2 += skill * weightR2[1][i];
  562. break;
  563. case "Defender/Defensive Midfielder Center":
  564. recSkills += skill * weightR2[0][i];
  565. recSkills2 += skill * weightR2[2][i];
  566. break;
  567. case "Defender/Defensive Midfielder Left":
  568. case "Defender/Defensive Midfielder Right":
  569. recSkills += skill * weightR2[1][i];
  570. recSkills2 += skill * weightR2[3][i];
  571. break;
  572. case "Defender/Midfielder Left":
  573. case "Defender/Midfielder Right":
  574. recSkills += skill * weightR2[1][i];
  575. recSkills2 += skill * weightR2[5][i];
  576. break;
  577. case "Defensive Midfielder/Defender Left":
  578. case "Defensive Midfielder/Defender Right":
  579. recSkills += skill * weightR2[3][i];
  580. recSkills2 += skill * weightR2[1][i];
  581. break;
  582. case "Defensive Midfielder Right/Left":
  583. case "Defensive Midfielder Left/Right":
  584. recSkills += skill * weightR2[3][i];
  585. recSkills2 += skill * weightR2[3][i];
  586. break;
  587. case "Defensive Midfielder/Defender Center":
  588. recSkills += skill * weightR2[2][i];
  589. recSkills2 += skill * weightR2[0][i];
  590. break;
  591. case "Defensive Midfielder/Midfielder Center":
  592. recSkills += skill * weightR2[2][i];
  593. recSkills2 += skill * weightR2[4][i];
  594. break;
  595. case "Defensive Midfielder Center/Left":
  596. case "Defensive Midfielder Center/Right":
  597. recSkills += skill * weightR2[2][i];
  598. recSkills2 += skill * weightR2[3][i];
  599. break;
  600. case "Defensive Midfielder Left/Center":
  601. case "Defensive Midfielder Right/Center":
  602. recSkills += skill * weightR2[3][i];
  603. recSkills2 += skill * weightR2[2][i];
  604. break;
  605. case "Defensive Midfielder/Midfielder Left":
  606. case "Defensive Midfielder/Midfielder Right":
  607. recSkills += skill * weightR2[3][i];
  608. recSkills2 += skill * weightR2[5][i];
  609. break;
  610. case "Midfielder/Defensive Midfielder Center":
  611. recSkills += skill * weightR2[4][i];
  612. recSkills2 += skill * weightR2[2][i];
  613. break;
  614. case "Midfielder Center/Left":
  615. case "Midfielder Center/Right":
  616. recSkills += skill * weightR2[4][i];
  617. recSkills2 += skill * weightR2[5][i];
  618. break;
  619. case "Midfielder Left/Center":
  620. case "Midfielder Right/Center":
  621. recSkills += skill * weightR2[5][i];
  622. recSkills2 += skill * weightR2[4][i];
  623. break;
  624. case "Midfielder Left/Right":
  625. case "Midfielder Right/Left":
  626. recSkills += skill * weightR2[5][i];
  627. recSkills2 += skill * weightR2[5][i];
  628. break;
  629. case "Midfielder/Offensive Midfielder Center":
  630. recSkills += skill * weightR2[4][i];
  631. recSkills2 += skill * weightR2[6][i];
  632. break;
  633. case "Midfielder/Offensive Midfielder Left":
  634. case "Midfielder/Offensive Midfielder Right":
  635. recSkills += skill * weightR2[5][i];
  636. recSkills2 += skill * weightR2[7][i];
  637. break;
  638. case "Midfielder/Defensive Midfielder Left":
  639. case "Midfielder/Defensive Midfielder Right":
  640. recSkills += skill * weightR2[5][i];
  641. recSkills2 += skill * weightR2[3][i];
  642. break;
  643. case "Offensive Midfielder Center/Left":
  644. case "Offensive Midfielder Center/Right":
  645. recSkills += skill * weightR2[6][i];
  646. recSkills2 += skill * weightR2[7][i];
  647. break;
  648. case "Offensive Midfielder Left/Center":
  649. case "Offensive Midfielder Right/Center":
  650. recSkills += skill * weightR2[7][i];
  651. recSkills2 += skill * weightR2[6][i];
  652. break;
  653. case "Offensive Midfielder Right/Left":
  654. case "Offensive Midfielder Left/Right":
  655. recSkills += skill * weightR2[7][i];
  656. recSkills2 += skill * weightR2[7][i];
  657. break;
  658. case "Offensive Midfielder Center/Forward":
  659. recSkills += skill * weightR2[6][i];
  660. recSkills2 += skill * weightR2[8][i];
  661. break;
  662. case "Offensive Midfielder Left/Forward":
  663. case "Offensive Midfielder Right/Forward":
  664. recSkills += skill * weightR2[7][i];
  665. recSkills2 += skill * weightR2[8][i];
  666. break;
  667. case "Offensive Midfielder/Midfielder Center":
  668. recSkills += skill * weightR2[6][i];
  669. recSkills2 += skill * weightR2[4][i];
  670. break;
  671. case "Offensive Midfielder/Midfielder Left":
  672. case "Offensive Midfielder/Midfielder Right":
  673. recSkills += skill * weightR2[7][i];
  674. recSkills2 += skill * weightR2[5][i];
  675. break;
  676. case "Midfielder Center/Forward":
  677. recSkills += skill * weightR2[4][i];
  678. recSkills2 += skill * weightR2[8][i];
  679. break;
  680. case "Midfielder Left/Forward":
  681. case "Midfielder Right/Forward":
  682. recSkills += skill * weightR2[5][i];
  683. recSkills2 += skill * weightR2[8][i];
  684. break;
  685. }
  686. i += 1;
  687. });
  688. if(favposition == "Goalkeeper"){
  689. skills = parseInt(skills / 11 * 14);
  690. }
  691. var newPow = 6.9519770543;
  692. var newDiv = 199873144100.3349484929416253;
  693. var si = parseInt(Math.pow((skills / 5), newPow) / newDiv);
  694.  
  695. //var td = $("table.info_table tbody tr:eq(6) td:eq(1)");
  696. var td = $("table.info_table tbody tr:eq(4) td:eq(1)");
  697. td.append(" | " + si);
  698.  
  699. if(recSkills > 0){
  700. recSkills /= 5;
  701. recSkills2 /= 5;
  702. switch(favposition){
  703. case "Defender Center":
  704. recSkills = (recSkills - weightR2[0][14]) / weightR2[0][15];
  705. break;
  706. case "Defender Left":
  707. case "Defender Right":
  708. recSkills = (recSkills - weightR2[1][14]) / weightR2[1][15];
  709. break;
  710. case "Defensive Midfielder Center":
  711. recSkills = (recSkills - weightR2[2][14]) / weightR2[2][15];
  712. break;
  713. case "Defensive Midfielder Left":
  714. case "Defensive Midfielder Right":
  715. recSkills = (recSkills - weightR2[3][14]) / weightR2[3][15];
  716. break;
  717. case "Midfielder Center":
  718. recSkills = (recSkills - weightR2[4][14]) / weightR2[4][15];
  719. break;
  720. case "Midfielder Left":
  721. case "Midfielder Right":
  722. recSkills = (recSkills - weightR2[5][14]) / weightR2[5][15];
  723. break;
  724. case "Offensive Midfielder Center":
  725. recSkills = (recSkills - weightR2[6][14]) / weightR2[6][15];
  726. break;
  727. case "Offensive Midfielder Left":
  728. case "Offensive Midfielder Right":
  729. recSkills = (recSkills - weightR2[7][14]) / weightR2[7][15];
  730. break;
  731. case "Forward":
  732. recSkills = (recSkills - weightR2[8][14]) / weightR2[8][15];
  733. break;
  734. case "Goalkeeper":
  735. recSkills = recSkills / 11 * 14;
  736. recSkills = (recSkills - weightR2[9][14]) / weightR2[9][15];
  737. break;
  738. case "Defender Center/Forward":
  739. recSkills = (recSkills - weightR2[0][14]) / weightR2[0][15];
  740. recSkills2 = (recSkills2 - weightR2[8][14]) / weightR2[8][15];
  741. break;
  742. case "Defender Center/Left":
  743. case "Defender Center/Right":
  744. recSkills = (recSkills - weightR2[0][14]) / weightR2[0][15];
  745. recSkills2 = (recSkills2 - weightR2[1][14]) / weightR2[1][15];
  746. break;
  747. case "Defender Left/Center":
  748. case "Defender Right/Center":
  749. recSkills = (recSkills - weightR2[1][14]) / weightR2[1][15];
  750. recSkills2 = (recSkills2 - weightR2[0][14]) / weightR2[0][15];
  751. break;
  752. case "Defender Left/Right":
  753. case "Defender Right/Left":
  754. recSkills = (recSkills - weightR2[1][14]) / weightR2[1][15];
  755. recSkills2 = (recSkills2 - weightR2[1][14]) / weightR2[1][15];
  756. break;
  757. case "Defender/Defensive Midfielder Center":
  758. recSkills = (recSkills - weightR2[0][14]) / weightR2[0][15];
  759. recSkills2 = (recSkills2 - weightR2[2][14]) / weightR2[2][15];
  760. break;
  761. case "Defender/Defensive Midfielder Left":
  762. case "Defender/Defensive Midfielder Right":
  763. recSkills = (recSkills - weightR2[1][14]) / weightR2[1][15];
  764. recSkills2 = (recSkills2 - weightR2[3][14]) / weightR2[3][15];
  765. break;
  766. case "Defender/Midfielder Left":
  767. case "Defender/Midfielder Right":
  768. recSkills = (recSkills - weightR2[1][14]) / weightR2[1][15];
  769. recSkills2 = (recSkills2 - weightR2[5][14]) / weightR2[5][15];
  770. break;
  771. case "Defensive Midfielder/Defender Left":
  772. case "Defensive Midfielder/Defender Right":
  773. recSkills = (recSkills - weightR2[3][14]) / weightR2[3][15];
  774. recSkills2 = (recSkills2 - weightR2[1][14]) / weightR2[1][15];
  775. break;
  776. case "Defensive Midfielder Left/Right":
  777. case "Defensive Midfielder Right/Left":
  778. recSkills = (recSkills - weightR2[3][14]) / weightR2[3][15];
  779. recSkills2 = (recSkills2 - weightR2[3][14]) / weightR2[3][15];
  780. break;
  781. case "Defensive Midfielder/Defender Center":
  782. recSkills = (recSkills - weightR2[2][14]) / weightR2[2][15];
  783. recSkills2 = (recSkills2 - weightR2[0][14]) / weightR2[0][15];
  784. break;
  785. case "Defensive Midfielder/Midfielder Center":
  786. recSkills = (recSkills - weightR2[2][14]) / weightR2[2][15];
  787. recSkills2 = (recSkills2 - weightR2[4][14]) / weightR2[4][15];
  788. break;
  789. case "Defensive Midfielder Center/Left":
  790. case "Defensive Midfielder Center/Right":
  791. recSkills = (recSkills - weightR2[2][14]) / weightR2[2][15];
  792. recSkills2 = (recSkills2 - weightR2[3][14]) / weightR2[3][15];
  793. break;
  794. case "Defensive Midfielder Left/Center":
  795. case "Defensive Midfielder Right/Center":
  796. recSkills = (recSkills - weightR2[3][14]) / weightR2[3][15];
  797. recSkills2 = (recSkills2 - weightR2[2][14]) / weightR2[2][15];
  798. break;
  799. case "Defensive Midfielder/Midfielder Left":
  800. case "Defensive Midfielder/Midfielder Right":
  801. recSkills = (recSkills - weightR2[3][14]) / weightR2[3][15];
  802. recSkills2 = (recSkills2 - weightR2[5][14]) / weightR2[5][15];
  803. break;
  804. case "Midfielder/Defensive Midfielder Center":
  805. recSkills = (recSkills - weightR2[4][14]) / weightR2[4][15];
  806. recSkills2 = (recSkills2 - weightR2[2][14]) / weightR2[2][15];
  807. break;
  808. case "Midfielder Center/Left":
  809. case "Midfielder Center/Right":
  810. recSkills = (recSkills - weightR2[4][14]) / weightR2[4][15];
  811. recSkills2 = (recSkills2 - weightR2[5][14]) / weightR2[5][15];
  812. break;
  813. case "Midfielder Left/Center":
  814. case "Midfielder Right/Center":
  815. recSkills = (recSkills - weightR2[5][14]) / weightR2[5][15];
  816. recSkills2 = (recSkills2 - weightR2[4][14]) / weightR2[4][15];
  817. break;
  818. case "Midfielder Left/Right":
  819. case "Midfielder Right/Left":
  820. recSkills = (recSkills - weightR2[5][14]) / weightR2[5][15];
  821. recSkills2 = (recSkills2 - weightR2[5][14]) / weightR2[5][15];
  822. break;
  823. case "Midfielder/Offensive Midfielder Center":
  824. recSkills = (recSkills - weightR2[4][14]) / weightR2[4][15];
  825. recSkills2 = (recSkills2 - weightR2[6][14]) / weightR2[6][15];
  826. break;
  827. case "Midfielder/Offensive Midfielder Left":
  828. case "Midfielder/Offensive Midfielder Right":
  829. recSkills = (recSkills - weightR2[5][14]) / weightR2[5][15];
  830. recSkills2 = (recSkills2 - weightR2[7][14]) / weightR2[7][15];
  831. break;
  832. case "Midfielder/Defensive Midfielder Left":
  833. case "Midfielder/Defensive Midfielder Right":
  834. recSkills = (recSkills - weightR2[5][14]) / weightR2[5][15];
  835. recSkills2 = (recSkills2 - weightR2[3][14]) / weightR2[3][15];
  836. break;
  837. case "Offensive Midfielder Center/Left":
  838. case "Offensive Midfielder Center/Right":
  839. recSkills = (recSkills - weightR2[6][14]) / weightR2[6][15];
  840. recSkills2 = (recSkills2 - weightR2[7][14]) / weightR2[7][15];
  841. break;
  842. case "Offensive Midfielder Left/Center":
  843. case "Offensive Midfielder Right/Center":
  844. recSkills = (recSkills - weightR2[7][14]) / weightR2[7][15];
  845. recSkills2 = (recSkills2 - weightR2[6][14]) / weightR2[6][15];
  846. break;
  847. case "Offensive Midfielder Right/Left":
  848. case "Offensive Midfielder Left/Right":
  849. recSkills = (recSkills - weightR2[7][14]) / weightR2[7][15];
  850. recSkills2 = (recSkills2 - weightR2[7][14]) / weightR2[7][15];
  851. break;
  852. case "Offensive Midfielder Center/Forward":
  853. recSkills = (recSkills - weightR2[6][14]) / weightR2[6][15];
  854. recSkills2 = (recSkills2 - weightR2[8][14]) / weightR2[8][15];
  855. break;
  856. case "Offensive Midfielder Left/Forward":
  857. case "Offensive Midfielder Right/Forward":
  858. recSkills = (recSkills - weightR2[7][14]) / weightR2[7][15];
  859. recSkills2 = (recSkills2 - weightR2[8][14]) / weightR2[8][15];
  860. break;
  861. case "Offensive Midfielder/Midfielder Center":
  862. recSkills = (recSkills - weightR2[6][14]) / weightR2[6][15];
  863. recSkills2 = (recSkills2 - weightR2[4][14]) / weightR2[4][15];
  864. break;
  865. case "Offensive Midfielder/Midfielder Left":
  866. case "Offensive Midfielder/Midfielder Right":
  867. recSkills = (recSkills - weightR2[7][14]) / weightR2[7][15];
  868. recSkills2 = (recSkills2 - weightR2[5][14]) / weightR2[5][15];
  869. break;
  870. case "Midfielder Center/Forward":
  871. recSkills = (recSkills - weightR2[4][14]) / weightR2[4][15];
  872. recSkills2 = (recSkills2 - weightR2[8][14]) / weightR2[8][15];
  873. break;
  874. case "Midfielder Left/Forward":
  875. case "Midfielder Right/Forward":
  876. recSkills = (recSkills - weightR2[5][14]) / weightR2[5][15];
  877. recSkills2 = (recSkills2 - weightR2[8][14]) / weightR2[8][15];
  878. break;
  879. }
  880. td.append(" | " + recSkills.toFixed(2).toString());
  881. if(recSkills2 > 0){
  882. td.append(" | " + recSkills2.toFixed(2).toString());
  883. }
  884. }
  885. };
  886. });

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址