existence_dev92

Untitled

Jun 25th, 2020
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.54 KB | None | 0 0
  1. /*
  2. storage.cpp - function storage_additem
  3. static int storage_additem(struct map_session_data* sd, struct s_storage *stor, struct item *it, int amount);
  4.  
  5. variable
  6. sd->premiumStorage.stor_id : number of storage, should match with storage configured at inter_server.yml
  7. */
  8.  
  9. prontera,150,150,0 script Deposit Headgear 112,{
  10. mes .@npc_name$ = "[^0080FF"+ strnpcinfo(1) +"^000000]";
  11. mes F_Hi() +" "+ strcharinfo(0);
  12. mes "Do you need something ?";
  13. .@s = select("~ Deposit Headgear:~ Adv Book:~ Just Passing By.");
  14. clear;
  15. mes .@npc_name$;
  16. switch (.@s)
  17. {
  18. case 1: break;
  19. case 2:
  20. .@size = getdepositdata();
  21. if (!.@size)
  22. {
  23. mes "no data found";
  24. close;
  25. }
  26. for (.@i = 0; .@i < .@size; .@i++)
  27. {
  28. .@j = .@type[.@i];
  29. if (.Param[.@j] == 2)
  30. .@str$ = sprintf(.Bonus$[.@j], .@val1[.@i], .@val2[.@i]);
  31. else if (.Param[.@j] == 1)
  32. .@str$ = sprintf(.Bonus$[.@j], .@val1[.@i]);
  33. else
  34. .@str = "Undefined - "+ .@j +" "+ .@val1[.@i] +" "+ .@val2[.@i];
  35. mes .@str$;
  36. }
  37. close;
  38. case 3:
  39. mes "Alright, "+ F_Bye();
  40. close;
  41.  
  42. }
  43. mes "Only Headgear can be put inside.";
  44. mes "if deposit bonus is not activated after you put the headgear inside, try to re equip your gear.";
  45. close2;
  46. openstorage2 1, STOR_MODE_GET|STOR_MODE_PUT;
  47. end;
  48.  
  49. OnInit:
  50. .stor = 1;
  51.  
  52. function Add;
  53.  
  54. freeloop(1);
  55.  
  56. Add(SP_STR, 1, "STR +%d");
  57. Add(SP_AGI, 1, "AGI +%d");
  58. Add(SP_VIT, 1, "VIT +%d");
  59. Add(SP_INT, 1, "INT +%d");
  60. Add(SP_DEX, 1, "DEX +%d");
  61. Add(SP_LUK, 1, "LUK +%d");
  62. Add(SP_ATK1, 1, "ATK +%d");
  63. Add(SP_ATK2, 1, "ATK2 +%d");
  64. Add(SP_BASE_ATK, 1, "BASE ATK +%d");
  65. Add(SP_DEF1, 1, "DEF1 +%d");
  66. Add(SP_DEF2, 1, "DEF2 +%d");
  67. Add(SP_MDEF1, 1, "MDEF1 +%d");
  68. Add(SP_MDEF2, 1, "MDEF2 +%d");
  69. Add(SP_HIT, 1, "HIT +%d");
  70. Add(SP_FLEE1, 1, "FLEE1 +%d");
  71. Add(SP_FLEE2, 1, "FLEE2 +%d");
  72. Add(SP_CRITICAL, 1, "CRITICAL +%d");
  73. Add(SP_ATKELE, 1, "ATK ELE +%d");
  74. Add(SP_DEFELE, 1, "DEF ELE +%d");
  75. Add(SP_MAXHP, 1, "MAX HP +%d");
  76. Add(SP_MAXSP, 1, "MAX SP +%d");
  77. Add(SP_MAXHPRATE, 1, "MAX HP RATE +%d");
  78. Add(SP_MAXSPRATE, 1, "MAX SP RATE +%d");
  79. Add(SP_SPRATE, 1, "SP CONSUMPTION RATE +%d");
  80. Add(SP_ATTACKRANGE, 1, "ATK RANGE +%d");
  81. Add(SP_SPEED_RATE, 1, "SPEED RATE +%d");
  82. Add(SP_SPEED_ADDRATE, 1, "DEF1 +%d");
  83. Add(SP_ASPD, 1, "DEF1 +%d");
  84. Add(SP_ASPD_FIX, 1, "DEF1 +%d");
  85. Add(SP_ASPD_RATE, 1, "DEF1 +%d");
  86. Add(SP_HP_RECOV_RATE, 1, "DEF1 +%d");
  87. Add(SP_SP_RECOV_RATE, 1, "DEF1 +%d");
  88. Add(SP_CRITICAL_DEF, 1, "DEF1 +%d");
  89. Add(SP_NEAR_ATK_DEF, 1, "DEF1 +%d");
  90. Add(SP_LONG_ATK_DEF, 1, "DEF1 +%d");
  91. Add(SP_DOUBLE_RATE, 1, "DEF1 +%d");
  92. Add(SP_DOUBLE_ADD_RATE, 1, "DEF1 +%d");
  93. Add(SP_MATK_RATE, 1, "DEF1 +%d");
  94. Add(SP_IGNORE_DEF_ELE, 1, "DEF1 +%d");
  95. Add(SP_IGNORE_DEF_RACE, 1, "DEF1 +%d");
  96. Add(SP_IGNORE_DEF_CLASS, 1, "DEF1 +%d");
  97. Add(SP_ATK_RATE, 1, "DEF1 +%d");
  98. Add(SP_MAGIC_ATK_DEF, 1, "DEF1 +%d");
  99. Add(SP_MISC_ATK_DEF, 1, "DEF1 +%d");
  100. Add(SP_IGNORE_MDEF_ELE, 1, "DEF1 +%d");
  101. Add(SP_IGNORE_MDEF_RACE, 1, "DEF1 +%d");
  102. Add(SP_PERFECT_HIT_RATE, 1, "DEF1 +%d");
  103. Add(SP_PERFECT_HIT_ADD_RATE, 1, "DEF1 +%d");
  104. Add(SP_CRITICAL_RATE, 1, "DEF1 +%d");
  105. Add(SP_DEF_RATIO_ATK_ELE, 1, "DEF1 +%d");
  106. Add(SP_DEF_RATIO_ATK_RACE, 1, "DEF1 +%d");
  107. Add(SP_DEF_RATIO_ATK_CLASS, 1, "DEF1 +%d");
  108. Add(SP_HIT_RATE, 1, "DEF1 +%d");
  109. Add(SP_FLEE_RATE, 1, "DEF1 +%d");
  110. Add(SP_FLEE2_RATE, 1, "DEF1 +%d");
  111. Add(SP_DEF_RATE, 1, "DEF1 +%d");
  112. Add(SP_DEF2_RATE, 1, "DEF1 +%d");
  113. Add(SP_MDEF_RATE, 1, "DEF1 +%d");
  114. Add(SP_MDEF2_RATE, 1, "DEF1 +%d");
  115. Add(SP_RESTART_FULL_RECOVER, 1, "DEF1 +%d");
  116. Add(SP_NO_CASTCANCEL, 1, "DEF1 +%d");
  117. Add(SP_NO_CASTCANCEL2, 1, "DEF1 +%d");
  118. Add(SP_NO_SIZEFIX, 1, "DEF1 +%d");
  119. Add(SP_NO_MAGIC_DAMAGE, 1, "DEF1 +%d");
  120. Add(SP_NO_WEAPON_DAMAGE, 1, "DEF1 +%d");
  121. Add(SP_NO_MISC_DAMAGE, 1, "DEF1 +%d");
  122. Add(SP_NO_GEMSTONE, 1, "DEF1 +%d");
  123. Add(SP_INTRAVISION, 1, "DEF1 +%d");
  124. Add(SP_NO_KNOCKBACK, 1, "DEF1 +%d");
  125. Add(SP_SPLASH_RANGE, 1, "DEF1 +%d");
  126. Add(SP_SPLASH_ADD_RANGE, 1, "DEF1 +%d");
  127. Add(SP_SHORT_WEAPON_DAMAGE_RETURN, 1, "DEF1 +%d");
  128. Add(SP_LONG_WEAPON_DAMAGE_RETURN, 1, "DEF1 +%d");
  129. Add(SP_MAGIC_DAMAGE_RETURN, 1, "DEF1 +%d");
  130. Add(SP_ALL_STATS, 1, "DEF1 +%d");
  131. Add(SP_AGI_VIT, 1, "DEF1 +%d");
  132. Add(SP_AGI_DEX_STR, 1, "DEF1 +%d");
  133. Add(SP_PERFECT_HIDE, 1, "DEF1 +%d");
  134. Add(SP_UNBREAKABLE, 1, "DEF1 +%d");
  135. Add(SP_UNBREAKABLE_WEAPON, 1, "DEF1 +%d");
  136. Add(SP_UNBREAKABLE_ARMOR, 1, "DEF1 +%d");
  137. Add(SP_UNBREAKABLE_HELM, 1, "DEF1 +%d");
  138. Add(SP_UNBREAKABLE_SHIELD, 1, "DEF1 +%d");
  139. Add(SP_UNBREAKABLE_GARMENT, 1, "DEF1 +%d");
  140. Add(SP_UNBREAKABLE_SHOES, 1, "DEF1 +%d");
  141. Add(SP_CLASSCHANGE, 1, "DEF1 +%d");
  142. Add(SP_LONG_ATK_RATE, 1, "DEF1 +%d");
  143. Add(SP_BREAK_WEAPON_RATE, 1, "DEF1 +%d");
  144. Add(SP_BREAK_ARMOR_RATE, 1, "DEF1 +%d");
  145. Add(SP_ADD_STEAL_RATE, 1, "DEF1 +%d");
  146. Add(SP_DELAYRATE, 1, "DEF1 +%d");
  147. Add(SP_CRIT_ATK_RATE, 1, "DEF1 +%d");
  148. Add(SP_NO_REGEN, 1, "DEF1 +%d");
  149. Add(SP_UNSTRIPABLE_WEAPON, 1, "DEF1 +%d");
  150. Add(SP_UNSTRIPABLE, 1, "DEF1 +%d");
  151. Add(SP_UNSTRIPABLE_ARMOR, 1, "DEF1 +%d");
  152. Add(SP_UNSTRIPABLE_HELM, 1, "DEF1 +%d");
  153. Add(SP_UNSTRIPABLE_SHIELD, 1, "DEF1 +%d");
  154. Add(SP_HP_DRAIN_VALUE, 1, "DEF1 +%d");
  155. Add(SP_SP_DRAIN_VALUE, 1, "DEF1 +%d");
  156. Add(SP_SP_GAIN_VALUE, 1, "DEF1 +%d");
  157. Add(SP_HP_GAIN_VALUE, 1, "DEF1 +%d");
  158. Add(SP_LONG_SP_GAIN_VALUE, 1, "DEF1 +%d");
  159. Add(SP_LONG_HP_GAIN_VALUE, 1, "DEF1 +%d");
  160. Add(SP_MAGIC_SP_GAIN_VALUE, 1, "DEF1 +%d");
  161. Add(SP_MAGIC_HP_GAIN_VALUE, 1, "DEF1 +%d");
  162. Add(SP_ADD_HEAL_RATE, 1, "DEF1 +%d");
  163. Add(SP_ADD_HEAL2_RATE, 1, "DEF1 +%d");
  164. Add(SP_ADD_ITEM_HEAL_RATE, 1, "DEF1 +%d");
  165. Add(SP_EMATK, 1, "DEF1 +%d");
  166. Add(SP_ADD_VARIABLECAST, 1, "DEF1 +%d");
  167. Add(SP_FIXCASTRATE, 1, "DEF1 +%d");
  168. Add(SP_ADD_FIXEDCAST, 1, "DEF1 +%d");
  169. Add(SP_CASTRATE, 1, "DEF1 +%d");
  170. Add(SP_VARCASTRATE, 1, "DEF1 +%d");
  171. Add(SP_ADD_FIXEDCAST, 1, "DEF1 +%d");
  172. Add(SP_FIXCASTRATE, 1, "DEF1 +%d");
  173. Add(SP_VARCASTRATE, 1, "DEF1 +%d");
  174. Add(SP_CASTRATE, 1, "DEF1 +%d");
  175. Add(SP_ADDMAXWEIGHT, 1, "DEF1 +%d");
  176. Add(SP_ABSORB_DMG_MAXHP, 1, "DEF1 +%d");
  177. Add(SP_CRITICAL_RANGEATK, 1, "DEF1 +%d");
  178. Add(SP_WEAPON_ATK_RATE, 1, "DEF1 +%d");
  179. Add(SP_WEAPON_MATK_RATE, 1, "DEF1 +%d");
  180. Add(SP_NO_MADO_FUEL, 1, "DEF1 +%d");
  181. Add(SP_NO_WALK_DELAY, 1, "DEF1 +%d");
  182.  
  183. freeloop(0);
  184. end;
  185.  
  186. function Add {
  187. .@idx = getarg(0, -1);
  188. .@arg = getarg(1, -1);
  189. .@str$ = getarg(2, "");
  190. if (.@str$ == "" || .@idx == -1 || .@arg == -1)
  191. {
  192. debugmes sprintf("%s : invalid data %d, %d, %s", strnpcinfo(1), .@idx, .@arg, .@str$);
  193. return;
  194. }
  195. .Param[.@idx] = .@arg;
  196. .Bonus$[.@idx] = .@str$;
  197. return;
  198. }
  199.  
  200. }
Add Comment
Please, Sign In to add comment