1
0

showstats.inc 9.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242
  1. ShowStats(playerid, targetid, bool:bPrint = false)
  2. {
  3. new line1[144], line2[144], line3[144], line4[144], line5[144], line6[144], line7[144], line8[144], line9[144], line10[144], line11[144], line12[144];
  4. // Business
  5. new btext[40];
  6. new biz = PlayerInfo[targetid][pBizKey];
  7. if(biz != -1) format(btext, sizeof(btext), "%s (%d)", BizInfo[biz][bName], biz);
  8. else btext = "None";
  9. // Gender
  10. new atext[8];
  11. if(PlayerInfo[targetid][pSex] == 1) atext = "Male";
  12. else if(PlayerInfo[targetid][pSex] == 2) atext = "Female";
  13. else atext = "Unknown";
  14. // Level cost
  15. new nxtlevel = PlayerInfo[targetid][pLevel] +1;
  16. new costlevel = nxtlevel * levelcost;
  17. new expamount = nxtlevel * levelexp;
  18. //Job name & Level
  19. new jtext[20];
  20. new jlevel;
  21. if(PlayerInfo[targetid][pJob] == 1)
  22. {
  23. jtext = "Detective";
  24. new level = PlayerInfo[targetid][pDetSkill];
  25. if(level >= 0 && level <= 49) jlevel = 1;
  26. else if(level >= 50 && level <= 99) jlevel = 2;
  27. else if(level >= 100 && level <= 199) jlevel = 3;
  28. else if(level >= 200 && level <= 399) jlevel = 4;
  29. else if(level >= 400) jlevel = 5;
  30. }
  31. else if(PlayerInfo[targetid][pJob] == 2)
  32. {
  33. jtext = "Lawyer";
  34. new level = PlayerInfo[targetid][pLawSkill];
  35. if(level >= 0 && level <= 49) jlevel = 1;
  36. else if(level >= 50 && level <= 99) jlevel = 2;
  37. else if(level >= 100 && level <= 199) jlevel = 3;
  38. else if(level >= 200 && level <= 399) jlevel = 4;
  39. else if(level >= 400) jlevel = 5;
  40. }
  41. else if(PlayerInfo[targetid][pJob] == 4)
  42. {
  43. jtext = "Drug Dealer";
  44. new level = PlayerInfo[targetid][pDrugsSkill];
  45. if(level >= 0 && level <= 49) jlevel = 1;
  46. else if(level >= 50 && level <= 99) jlevel = 2;
  47. else if(level >= 100 && level <= 199) jlevel = 3;
  48. else if(level >= 200 && level <= 399) jlevel = 4;
  49. else if(level >= 400) jlevel = 5;
  50. }
  51. else if(PlayerInfo[targetid][pJob] == 5)
  52. {
  53. jtext = "Product Dealer";
  54. jlevel = 1;
  55. }
  56. else if(PlayerInfo[targetid][pJob] == 7)
  57. {
  58. jtext = "Mechanic";
  59. new level = PlayerInfo[targetid][pMechSkill];
  60. if(level >= 0 && level <= 49) jlevel = 1;
  61. else if(level >= 50 && level <= 99) jlevel = 2;
  62. else if(level >= 100 && level <= 199) jlevel = 3;
  63. else if(level >= 200 && level <= 399) jlevel = 4;
  64. else if(level >= 400) jlevel = 5;
  65. }
  66. else if(PlayerInfo[targetid][pJob] == 8)
  67. {
  68. jtext = "Bodyguard";
  69. jlevel = 1;
  70. }
  71. else if(PlayerInfo[targetid][pJob] == 9)
  72. {
  73. jtext = "Arms Dealer";
  74. new level = PlayerInfo[targetid][pArmsSkill];
  75. if(level >= 0 && level <= 49) jlevel = 1;
  76. else if(level >= 50 && level <= 99) jlevel = 2;
  77. else if(level >= 100 && level <= 199) jlevel = 3;
  78. else if(level >= 200 && level <= 399) jlevel = 4;
  79. else if(level >= 400) jlevel = 5;
  80. }
  81. else if(PlayerInfo[targetid][pJob] == 12)
  82. {
  83. jtext = "Boxer";
  84. jlevel = 1;
  85. }
  86. else if(PlayerInfo[targetid][pJob] == 14)
  87. {
  88. jtext = "Taxi Driver";
  89. jlevel = 1;
  90. }
  91. else if(PlayerInfo[targetid][pJob] == 17)
  92. {
  93. jtext = "Drug Smuggler";
  94. new level = PlayerInfo[targetid][pSmugglerSkill];
  95. if(level >= 0 && level <= 19) jlevel = 1;
  96. else if(level >= 20 && level <= 39) jlevel = 2;
  97. else if(level >= 40 && level <= 59) jlevel = 3;
  98. else if(level >= 60 && level <= 119) jlevel = 4;
  99. else if(level >= 120) jlevel = 5;
  100. }
  101. else if(PlayerInfo[targetid][pJob] == 19)
  102. {
  103. jtext = "Waste Collector";
  104. new level = PlayerInfo[targetid][pWasteSkill];
  105. if(level >= 0 && level <= 49) jlevel = 1;
  106. else if(level >= 50 && level <= 99) jlevel = 2;
  107. else if(level >= 100 && level <= 199) level = 3;
  108. else if(level >= 200 && level <= 399) jlevel = 4;
  109. else if(level >= 400) jlevel = 5;
  110. }
  111. else if(PlayerInfo[targetid][pJob] == 21)
  112. {
  113. jtext = "Pizza Deliver";
  114. jlevel = GetPlayerPizzaLevel(playerid);
  115. }
  116. else
  117. {
  118. jtext = "None";
  119. jlevel = 0;
  120. }
  121. // VIP
  122. new vip[20];
  123. if(PlayerInfo[targetid][pDonateRank] == 0) vip = "None";
  124. else if(PlayerInfo[targetid][pDonateRank] == 1) vip = "Bronze";
  125. else if(PlayerInfo[targetid][pDonateRank] == 2) vip = "Silver";
  126. else if(PlayerInfo[targetid][pDonateRank] == 3) vip = "Gold";
  127. // House
  128. new htext[40]; // House
  129. if(PlayerInfo[targetid][pHouseID] != 0)
  130. {
  131. new location[MAX_ZONE_NAME];
  132. Get2DZone(location, MAX_ZONE_NAME, HouseInfo[PlayerInfo[targetid][pHouseID]][hOutsideX], HouseInfo[PlayerInfo[targetid][pHouseID]][hOutsideY], HouseInfo[PlayerInfo[targetid][pHouseID]][hOutsideZ]);
  133. format(htext, sizeof(htext), "%d %s", PlayerInfo[targetid][pHouseID], location);
  134. }
  135. else htext = "None";
  136. // Inventory
  137. new rod[20];
  138. switch(PlayerInfo[targetid][pFishRod])
  139. {
  140. case 0:
  141. rod = "None";
  142. case 1:
  143. rod = "Old Rod";
  144. case 2:
  145. rod = "Beginners Rod";
  146. case 3:
  147. rod = "Fishermans Rod";
  148. case 4:
  149. rod = "Elite Rod";
  150. }
  151. new bait[20];
  152. switch(PlayerInfo[targetid][pBait])
  153. {
  154. case 0:
  155. bait = "None";
  156. case 1:
  157. bait = "Weak Bait";
  158. case 2:
  159. bait = "Regular Bait";
  160. case 3:
  161. bait = "Strong Bait";
  162. case 4:
  163. bait = "Elite Bait";
  164. }
  165. new baita = PlayerInfo[targetid][pBaitAmount];
  166. if(baita == 0)
  167. {
  168. bait = "None";
  169. }
  170. new line[20];
  171. switch(PlayerInfo[targetid][pLine])
  172. {
  173. case 0:
  174. line = "None";
  175. case 1:
  176. line = "Regular Line";
  177. }
  178. new groupname[24], grouprank[24];
  179. if(PlayerInfo[targetid][pGroup] == GROUP_S9 || PlayerInfo[playerid][pGroup] == GROUP_S9) {
  180. groupname = "None";
  181. grouprank = "None";
  182. } else {
  183. groupname = GetPlayerGroupName(targetid);
  184. grouprank = GetPlayerGroupRankName(targetid);
  185. }
  186. //Formatting information into strings
  187. //phone check
  188. if(PlayerInfo[targetid][pPnumber] == 0) format(line1, sizeof(line1), "[Account] {B4B5B7}ID:[%d] Name:[%s] Sex:[%s] Level:[%d] Respect:[%d/%d] Phone:[None]", PlayerInfo[targetid][pID], PlayerName(targetid), atext, PlayerInfo[targetid][pLevel], PlayerInfo[targetid][pExp], expamount);
  189. else format(line1, sizeof(line1), "[Account] {B4B5B7}ID:[%d] Name:[%s] Sex:[%s] Level:[%d] Respect:[%d/%d] Phone:[%d]", PlayerInfo[targetid][pID], PlayerName(targetid), atext, PlayerInfo[targetid][pLevel], PlayerInfo[targetid][pExp], expamount, PlayerInfo[targetid][pPnumber]);
  190. format(line2, sizeof(line2), "[Details] {B4B5B7}Money:[$%s] Bank:[$%s] Next Level Cost:[$%s] Job:[%s] Job Level:[%d]", AddThousandsSeparators(PlayerInfo[targetid][pCash]), AddThousandsSeparators(PlayerInfo[targetid][pAccount]), AddThousandsSeparators(costlevel), jtext, jlevel);
  191. format(line3, sizeof(line3), "[Details] {BFC0C2}Married To:[%s] Affiliation:[%s] Rank:[%s (%d)] Group:[%s] Group Rank:[%s (%d)]", PlayerInfo[targetid][pMarriedTo], GetPlayerAffiliationName(targetid), GetPlayerRank(targetid), PlayerInfo[targetid][pRank], groupname, grouprank, PlayerInfo[targetid][pGroupRank]);
  192. format(line4, sizeof(line4), "[Upgrades] {BFC0C2}Upgrade Points:[%d] Armor Upgrade:[%d] Health Upgrade:[%d] VIP:[%s] Gear Tickets[%d]",PlayerInfo[targetid][gPupgrade],PlayerInfo[targetid][pSHealth],PlayerInfo[targetid][pSHP], vip, PlayerInfo[targetid][gTicket]);
  193. format(line5, sizeof(line5), "[Property] {CBCCCE}House:[%s] Business:[%s]", htext, btext);
  194. format(line6, sizeof(line6), "[Records] {D8D8D8}Playing Hours:[%d] Kills:[%d] Deaths:[%d]", PlayerInfo[targetid][pConnectTime], PlayerInfo[targetid][pKills], PlayerInfo[targetid][pDeaths]);
  195. format(line7, sizeof(line7), "[Records] {D8D8D8}Biggest Fish:[%d]", PlayerInfo[targetid][pBiggestFish]);
  196. format(line8, sizeof(line8), "[Inventory] {CBCCCE}Materials:[%d] Packages:[%d] Crates:[%d] Seeds:[%d] Products:[%d]", PlayerInfo[targetid][pMats], Packages[targetid], Crates[targetid], PlayerInfo[targetid][pPotSeeds], PlayerInfo[targetid][pProducts]);
  197. format(line9, sizeof(line9), "[Inventory] {D8D8D8}Ropes:[%d] Blindfolds:[%d] Cigars:[%d] Sprunk:[%d] Spraycan:[%d] Screw Driver:[%d] Deck of Cards:[%d] WTc:[%d]", PlayerInfo[targetid][pRope], PlayerInfo[targetid][pBlindfolds], PlayerInfo[targetid][pCigars], PlayerInfo[targetid][pSprunk], PlayerInfo[targetid][pSpraycan], PlayerInfo[targetid][pScrew], PlayerInfo[targetid][pDeck], PlayerInfo[targetid][pWTc]);
  198. format(line10, sizeof(line10), "[Inventory] {D8D8D8}Fishing Rod:[%s] Bait:[%s] Bait Left:[%d] Fishing Line:[%s] Boombox:[%d] Box of Matches: [%d] Jerry Can: [%d]", rod, bait, baita, line, PlayerInfo[targetid][pStereo], PlayerInfo[targetid][pMatches], PlayerInfo[targetid][pJerrycan]);
  199. format(line11, sizeof(line11), "[Admin Info] {E3E3E3}Vehicle 1 ID:[%d] Vehicle 1 TID:[%d] Vehicle 2 ID:[%d] Vehicle 2 TID:[%d]", 0, 0, 0, 0);
  200. format(line12, sizeof(line12), "[Admin Info] {E3E3E3}Int:[%d] VW:[%d] Warnings:[%d] JailTime:[%d] Tikis:[%d] Skin:[%d]", GetPlayerInterior(targetid), GetPlayerVirtualWorld(targetid), PlayerInfo[targetid][pWarns], PlayerInfo[targetid][pJailTime], PlayerInfo[targetid][pTikis], GetPlayerSkin(targetid));
  201. if(bPrint)
  202. {
  203. SendClientMessage(playerid, 0x007BD0FF, line1);
  204. SendClientMessage(playerid, 0x007BD0FF, line2);
  205. SendClientMessage(playerid, 0x007BD0FF, line3);
  206. SendClientMessage(playerid, 0x007BD0FF, line4);
  207. SendClientMessage(playerid, 0x007BD0FF, line5);
  208. SendClientMessage(playerid, 0x007BD0FF, line6);
  209. SendClientMessage(playerid, 0x007BD0FF, line7);
  210. SendClientMessage(playerid, 0x007BD0FF, line8);
  211. SendClientMessage(playerid, 0x007BD0FF, line9);
  212. SendClientMessage(playerid, 0x007BD0FF, line10);
  213. if(PlayerInfo[playerid][pAdmin] >= 2)
  214. {
  215. SendClientMessage(playerid, 0x007BD0FF, line11);
  216. SendClientMessage(playerid, 0x007BD0FF, line12);
  217. }
  218. }
  219. else
  220. {
  221. new mstring[1536];
  222. if(PlayerInfo[playerid][pAdmin] <= 1) format(mstring, sizeof(mstring), "{007BD0}%s\n{007BD0}%s\n{007BD0}%s\n{007BD0}%s\n{007BD0}%s\n{007BD0}%s\n{007BD0}%s\n{007BD0}%s\n{007BD0}%s\n{007BD0}%s", line1, line2, line3, line4, line5, line6, line7, line8, line9, line10);
  223. else format(mstring, sizeof(mstring), "{007BD0}%s\n{007BD0}%s\n{007BD0}%s\n{007BD0}%s\n{007BD0}%s\n{007BD0}%s\n{007BD0}%s\n{007BD0}%s\n{007BD0}%s\n{007BD0}%s\n{007BD0}%s\n{007BD0}%s", line1, line2, line3, line4, line5, line6, line7, line8, line9, line10, line11, line12);
  224. new titlestr[64];
  225. format(titlestr, sizeof(titlestr), "{007BD0}Account Details: {B4B5B7}%s", PlayerName(targetid));
  226. ShowPlayerDialog(playerid, DIALOG_STATS, DIALOG_STYLE_MSGBOX, titlestr, mstring, "Done", "Print");
  227. }
  228. return 1;
  229. }