Advertisement
Guest User

Untitled

a guest
Jan 22nd, 2019
51
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 10.60 KB | None | 0 0
  1.  
  2. int GetItemHardnessFromMaterial(object oItem)
  3. {
  4. // fill the variables
  5. object oPC = OBJECT_SELF;
  6. int iSubType;
  7. int nValue;
  8.  
  9. //Get the first itemproperty on the item
  10. itemproperty ipLoop=GetFirstItemProperty(oItem);
  11.  
  12. //Loop for as long as the ipLoop variable is valid
  13. while (GetIsItemPropertyValid(ipLoop))
  14. {
  15. //If ipLoop is Material property, go on
  16. if (GetItemPropertyType(ipLoop)== ITEM_PROPERTY_MATERIAL)
  17. {
  18. iSubType = GetItemPropertyCostTableValue(ipLoop);
  19. // We define the hardness of the item based on its quality and material
  20. switch (iSubType)
  21. {
  22. case 0:
  23. // Unknown
  24. break;
  25. case 1:
  26. nValue = 20;
  27. // Adamantine ...
  28. break;
  29. case 2:
  30. nValue = 5;
  31. // Brass ...
  32. break;
  33. case 3:
  34. nValue = 8;
  35. // Bronze ...
  36. break;
  37. case 4:
  38. nValue = 15;
  39. // Carbon ...
  40. break;
  41. case 5:
  42. nValue = 10;
  43. // Cold Iron ...
  44. break;
  45. case 6:
  46. nValue = 4;
  47. // Copper ...
  48. break;
  49. case 7:
  50. nValue = 12;
  51. // Darksteel ...
  52. break;
  53. case 8:
  54. nValue = 7;
  55. // Gold ...
  56. break;
  57. case 9:
  58. nValue = 10;
  59. // Iron ...
  60. break;
  61. case 10:
  62. nValue = 3;
  63. // Lead ...
  64. break;
  65. case 11:
  66. nValue = 0;
  67. // Mithral ...
  68. break;
  69. case 12:
  70. nValue = 0;
  71. // Platinum ...
  72. break;
  73. case 13:
  74. nValue = 0;
  75. // Silver ...
  76. break;
  77. case 14:
  78. nValue = 0;
  79. // Silver_Alchemical ...
  80. break;
  81. case 15:
  82. nValue = 0;
  83. // Steel ...
  84. break;
  85. case 16:
  86. nValue = 0;
  87. // Bone ...
  88. break;
  89. case 17:
  90. nValue = 0;
  91. // Hide ...
  92. break;
  93. case 18:
  94. nValue = 0;
  95. // Hide_Salamander ...
  96. break;
  97. case 19:
  98. nValue = 0;
  99. // Hide_Umber_Hulk ...
  100. break;
  101. case 20:
  102. nValue = 0;
  103. // Hide_Wyvern ...
  104. break;
  105. case 21:
  106. nValue = 0;
  107. // Hide_Dragon_Black ...
  108. break;
  109. case 22:
  110. nValue = 0;
  111. // Hide_Dragon_Blue ...
  112. break;
  113. case 23:
  114. nValue = 0;
  115. // Hide_Dragon_Brass ...
  116. break;
  117. case 24:
  118. nValue = 0;
  119. // Hide_Dragon_Bronze ...
  120. break;
  121. case 25:
  122. nValue = 0;
  123. // Hide_Dragon_Copper ...
  124. break;
  125. case 26:
  126. nValue = 0;
  127. // Hide_Dragon_Gold ...
  128. break;
  129. case 27:
  130. nValue = 0;
  131. // Hide_Dragon_Green ...
  132. break;
  133. case 28:
  134. nValue = 0;
  135. // Hide_Dragon_Red ...
  136. break;
  137. case 29:
  138. nValue = 0;
  139. // Hide_Dragon_Silver ...
  140. break;
  141. case 30:
  142. nValue = 0;
  143. // Hide_Dragon_White ...
  144. break;
  145. case 31:
  146. nValue = 0;
  147. // Leather ...
  148. break;
  149. case 32:
  150. nValue = 0;
  151. // Scale ...
  152. break;
  153. case 33:
  154. nValue = 0;
  155. // Cloth ...
  156. break;
  157. case 34:
  158. nValue = 0;
  159. // Cotton ...
  160. break;
  161. case 35:
  162. nValue = 0;
  163. // Silk ...
  164. break;
  165. case 36:
  166. nValue = 0;
  167. // Wool ...
  168. break;
  169. case 37:
  170. nValue = 0;
  171. // Wood ...
  172. break;
  173. case 38:
  174. nValue = 0;
  175. // Wood_Ironwood ...
  176. break;
  177. case 39:
  178. nValue = 0;
  179. // Wood_Duskwood ...
  180. break;
  181. case 40:
  182. nValue = 0;
  183. // Wood_Darkwood_Zalantar ...
  184. break;
  185. case 41:
  186. nValue = 0;
  187. // Wood_Ash ...
  188. break;
  189. case 42:
  190. nValue = 0;
  191. // Wood_Yew ...
  192. break;
  193. case 43:
  194. nValue = 0;
  195. // Wood_Oak ...
  196. break;
  197. case 44:
  198. nValue = 0;
  199. // Wood_Pine ...
  200. break;
  201. case 45:
  202. nValue = 0;
  203. // Wood_Cedar ...
  204. break;
  205. case 46:
  206. nValue = 0;
  207. // Elemental ...
  208. break;
  209. case 47:
  210. nValue = 0;
  211. // Elemental_Air ...
  212. break;
  213. case 48:
  214. nValue = 0;
  215. // Elemental_Earth ...
  216. break;
  217. case 49:
  218. nValue = 0;
  219. // Elemental_Fire ...
  220. break;
  221. case 50:
  222. nValue = 0;
  223. // Elemental_Water ...
  224. break;
  225. case 51:
  226. nValue = 0;
  227. // Gem ...
  228. break;
  229. case 52:
  230. nValue = 0;
  231. // Gem_Alexandrite ...
  232. break;
  233. case 53:
  234. nValue = 0;
  235. // Gem_Amethyst ...
  236. break;
  237. case 54:
  238. nValue = 0;
  239. // Gem_Aventurine ...
  240. break;
  241. case 55:
  242. nValue = 0;
  243. // Gem_Beljuril ...
  244. break;
  245. case 56:
  246. nValue = 0;
  247. // Gem_Bloodstone ...
  248. break;
  249. case 57:
  250. nValue = 0;
  251. // Gem_Blue_Diamond ...
  252. break;
  253. case 58:
  254. nValue = 0;
  255. // Gem_Canary_Diamond ...
  256. break;
  257. case 59:
  258. nValue = 0;
  259. // Gem_Diamond ...
  260. break;
  261. case 60:
  262. nValue = 0;
  263. // Gem_Emerald ...
  264. break;
  265. case 61:
  266. nValue = 0;
  267. // Gem_Fire_Agate ...
  268. break;
  269. case 62:
  270. nValue = 0;
  271. // Gem_Fire_Opal ...
  272. break;
  273. case 63:
  274. nValue = 0;
  275. // Gem_Flourspar ...
  276. break;
  277. case 64:
  278. nValue = 0;
  279. // Gem_Garnet ...
  280. break;
  281. case 65:
  282. nValue = 0;
  283. // Gem_Greenstone ...
  284. break;
  285. case 66:
  286. nValue = 0;
  287. // Gem_Jacinth ...
  288. break;
  289. case 67:
  290. nValue = 0;
  291. // Gem_Kings_Tear ...
  292. break;
  293. case 68:
  294. nValue = 0;
  295. // Gem_Malachite ...
  296. break;
  297. case 69:
  298. nValue = 0;
  299. // Gem_Obsidian ...
  300. break;
  301. case 70:
  302. nValue = 0;
  303. // Gem_Phenalope ...
  304. break;
  305. case 71:
  306. nValue = 0;
  307. // Gem_Rogue_Stone ...
  308. break;
  309. case 72:
  310. nValue = 0;
  311. // Gem_Ruby ...
  312. break;
  313. case 73:
  314. nValue = 0;
  315. // Gem_Sapphire ...
  316. break;
  317. case 74:
  318. nValue = 0;
  319. // Gem_Star_Sapphire ...
  320. break;
  321. case 75:
  322. nValue = 0;
  323. // Gem_Topaz ...
  324. break;
  325. case 76:
  326. nValue = 0;
  327. // Gem_Crystal_Deep ...
  328. break;
  329. case 77:
  330. nValue = 0;
  331. // Gem_Crystal_Mundane ...
  332. }
  333. return nValue;
  334. }
  335. //Next itemproperty on the list...
  336. ipLoop=GetNextItemProperty(oItem);
  337. }
  338. return FALSE;
  339. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement