[1] | 1 | //===== eAthena Script ======================================= |
---|
| 2 | //= Socket Enchant |
---|
| 3 | //===== By: ================================================== |
---|
| 4 | //= eAthena dev team |
---|
| 5 | //===== Current Version: ===================================== |
---|
| 6 | //= 1.4 |
---|
| 7 | //===== Compatible With: ===================================== |
---|
| 8 | //= eAthena SVN |
---|
| 9 | //===== Description: ========================================= |
---|
| 10 | //= item loses all element refinement and upgrades but |
---|
| 11 | //= cards too? |
---|
| 12 | //===== Additional Comments: ================================= |
---|
| 13 | //= 0.1a added missing L_No: to 2 funcs [Lupus] |
---|
| 14 | //= 0.1b Removed duplicates [Toms] |
---|
| 15 | //= 0.2 Added missing next;'s [Evera] |
---|
| 16 | //= 0.3 Fixed Zweihander[+] id [Lupus] |
---|
| 17 | //= 1.0 Fixed ingredients check [Lupus] |
---|
| 18 | //= 1.1 Updated to official. [SinSloth] |
---|
| 19 | //= 1.1b Optimized/cleaned [ultramage] |
---|
| 20 | //= 1.2 Fixed some typos and a nasty bug. [SinSloth] |
---|
| 21 | //= 1.3 Fixed a wrong item ID with Sphinx Hat. [SinSloth] |
---|
| 22 | //= 1.4 Corrected NPC names to fall within proper restrictions. [L0ne_W0lf] |
---|
| 23 | //============================================================ |
---|
| 24 | |
---|
| 25 | payon,140,151,5 script Seiyablem 84,{ |
---|
| 26 | |
---|
| 27 | mes "[Seiyablem]"; |
---|
| 28 | mes "I'm an engineer that specializes in adding Slots to normal Weapons and Armor."; |
---|
| 29 | mes "My service fee, the required materials and the chance of success all depend on the specific item I'm working on."; |
---|
| 30 | next; |
---|
| 31 | mes "[Seiyablem]"; |
---|
| 32 | mes "Adding Slots may seem simple, but it's far more complicated than it looks."; |
---|
| 33 | mes "If you're interested in my service, let me know."; |
---|
| 34 | next; |
---|
| 35 | switch( select( "Add Slot to Weapon","Add Slot to Armor","Slot Attempt Info","Cancel" ) ) |
---|
| 36 | { |
---|
| 37 | case 1: |
---|
| 38 | mes "[Seiyablem]"; |
---|
| 39 | mes "You want to add a Slot to a weapon?"; |
---|
| 40 | mes "I categorize weapons by their difficulty in adding a Slot, C Class being easiest and S Class the most difficult."; |
---|
| 41 | mes "Which class would you like to try?"; |
---|
| 42 | set @sockettype,1; |
---|
| 43 | next; |
---|
| 44 | switch( select( "C Class","B Class","A Class","S Class" ) ) |
---|
| 45 | { |
---|
| 46 | case 1: |
---|
| 47 | mes "[Seiyablem]"; |
---|
| 48 | mes "C Class, eh?"; |
---|
| 49 | mes "Now, I can only upgrade certain equipment in that class, so please choose one of the following items, so we can try to add a Slot to it."; |
---|
| 50 | next; |
---|
| 51 | switch( select( "Trident","Rope","Violin","Book of Billows","Book of Mother Earth","Book of the Blazing Sun","Book of Gust of Wind" ) ) |
---|
| 52 | { |
---|
| 53 | case 1: callfunc "Func_Socket",1,1460,1461,40,66,200,1010,10; break; |
---|
| 54 | case 2: callfunc "Func_Socket",1,1950,1951,40,66,200,1010,10; break; |
---|
| 55 | case 3: callfunc "Func_Socket",1,1901,1902,40,66,200,1010,10; break; |
---|
| 56 | case 4: callfunc "Func_Socket",1,1553,1568,40,66,200,1010,10; break; |
---|
| 57 | case 5: callfunc "Func_Socket",1,1554,1569,40,66,200,1010,10; break; |
---|
| 58 | case 6: callfunc "Func_Socket",1,1555,1570,40,66,200,1010,10; break; |
---|
| 59 | case 7: callfunc "Func_Socket",1,1556,1571,40,66,200,1010,10; break; |
---|
| 60 | } |
---|
| 61 | break; |
---|
| 62 | |
---|
| 63 | case 2: |
---|
| 64 | mes "[Seiyablem]"; |
---|
| 65 | mes "B Class?"; |
---|
| 66 | mes "Alright, this is the average equipment category."; |
---|
| 67 | mes "Please choose the weapon to which you'd like me to try to add a Slot."; |
---|
| 68 | next; |
---|
| 69 | switch( select( "Chain","Gladius","Gakkung Bow","Pike","Haedonggum","Lute","Wire","Waghnakh","Arbalest Bow","Orcish Axe","Scimitar","Spike" ) ) |
---|
| 70 | { |
---|
| 71 | case 1: callfunc "Func_Socket",1,1519,1520,40,61,300,1010,10; break; |
---|
| 72 | case 2: callfunc "Func_Socket",2,1219,1220,40,61,300,984,1,999,5; break; |
---|
| 73 | case 3: callfunc "Func_Socket",2,1714,1716,40,61,300,984,2,999,5; break; |
---|
| 74 | case 4: callfunc "Func_Socket",1,1407,1408,40,61,300,1010,10; break; |
---|
| 75 | case 5: callfunc "Func_Socket",2,1123,1128,40,61,300,984,2,999,5; break; |
---|
| 76 | case 6: callfunc "Func_Socket",1,1905,1906,40,61,300,1011,10; break; |
---|
| 77 | case 7: callfunc "Func_Socket",1,1954,1955,40,61,300,1011,10; break; |
---|
| 78 | case 8: callfunc "Func_Socket",1,1801,1802,40,61,300,1010,10; break; |
---|
| 79 | case 9: callfunc "Func_Socket",2,1713,1715,40,61,300,984,2,999,5; break; |
---|
| 80 | case 10: callfunc "Func_Socket",1,1304,1309,40,61,200,984,1; break; |
---|
| 81 | case 11: callfunc "Func_Socket",1,1113,1114,40,61,200,984,1; break; |
---|
| 82 | case 12: callfunc "Func_Socket",1,1523,1538,40,61,300,984,1; break; |
---|
| 83 | } |
---|
| 84 | break; |
---|
| 85 | |
---|
| 86 | case 3: |
---|
| 87 | mes "[Seiyablem]"; |
---|
| 88 | mes "Ooh, A Class."; |
---|
| 89 | mes "This is some high risk territory!"; |
---|
| 90 | mes "Alright, which weapon would you like me to try adding a Slot?"; |
---|
| 91 | next; |
---|
| 92 | switch( select( "Hunter Bow","Survivor's Rod(INT)","Zweihander","Flamberge","Infiltrator","Ballista","Stunner","Berserk","Claymore","Dragon Killer","Katar of Frozen Icicle","Katar of Quaking","Katar of Raging Blaze","Katar of Piercing Wind","Golden Mace","Oriental Lute","Queen's Whip","Phantom Spear","Schweizersabel" ) ) |
---|
| 93 | { |
---|
| 94 | case 1: callfunc "Func_Socket",2,1718,1726,40,61,500,984,2,999,10; break; |
---|
| 95 | case 2: callfunc "Func_Socket",2,1619,1620,40,61,500,984,2,999,10; break; |
---|
| 96 | case 3: callfunc "Func_Socket",2,1168,1171,40,61,800,984,5,999,10; break; |
---|
| 97 | case 4: callfunc "Func_Socket",2,1129,1149,40,61,500,984,2,999,10; break; |
---|
| 98 | case 5: callfunc "Func_Socket",2,1261,1266,40,61,700,984,5,999,10; break; |
---|
| 99 | case 6: callfunc "Func_Socket",2,1722,1727,40,61,500,984,5,999,10; break; |
---|
| 100 | case 7: callfunc "Func_Socket",2,1522,1532,40,61,700,984,2,999,10; break; |
---|
| 101 | case 8: callfunc "Func_Socket",2,1814,1816,40,61,700,984,5,999,10; break; |
---|
| 102 | case 9: callfunc "Func_Socket",2,1163,1172,40,61,700,984,5,999,10; break; |
---|
| 103 | case 10: callfunc "Func_Socket",1,13001,13030,40,61,500,984,2; break; |
---|
| 104 | case 11: callfunc "Func_Socket",1,1256,1275,40,61,500,984,2; break; |
---|
| 105 | case 12: callfunc "Func_Socket",1,1257,1276,40,61,500,984,2; break; |
---|
| 106 | case 13: callfunc "Func_Socket",1,1258,1277,40,61,500,984,2; break; |
---|
| 107 | case 14: callfunc "Func_Socket",1,1259,1278,40,61,500,984,2; break; |
---|
| 108 | case 15: callfunc "Func_Socket",1,1524,1539,40,61,500,984,2; break; |
---|
| 109 | case 16: callfunc "Func_Socket",1,1918,1922,40,61,500,984,2; break; |
---|
| 110 | case 17: callfunc "Func_Socket",1,1970,1976,40,61,500,984,2; break; |
---|
| 111 | case 18: callfunc "Func_Socket",1,1477,1479,40,61,500,984,2; break; |
---|
| 112 | case 19: callfunc "Func_Socket",1,1167,1178,40,61,500,984,2; break; |
---|
| 113 | } |
---|
| 114 | break; |
---|
| 115 | |
---|
| 116 | case 4: |
---|
| 117 | mes "[Seiyablem]"; |
---|
| 118 | mes "Whoa, whoa, whoa..."; |
---|
| 119 | mes "S class? Alright..."; |
---|
| 120 | mes "It'd be a near miracle if I can actually pull this off."; |
---|
| 121 | mes "Okay... Which weapon shall we try adding a Slot to?"; |
---|
| 122 | next; |
---|
| 123 | switch( select( "Gungnir","Poison Knife","Ice Pick","Sucsamad","Ginnungagap","Cutlas","Crescent Scythe","Survivor's Rod(DEX)","Zephyrus","Mailbreaker","Swordbreaker","Assassin Dagger","Grand Cross","Executioner" ) ) |
---|
| 124 | { |
---|
| 125 | case 1: callfunc "Func_Socket",2,1413,1418,40,51,1000,984,5,999,10; break; |
---|
| 126 | case 2: callfunc "Func_Socket",2,1239,13016,40,51,1000,984,5,999,10; break; |
---|
| 127 | case 3: callfunc "Func_Socket",2,1230,13017,40,51,2000,984,5,999,10; break; |
---|
| 128 | case 4: callfunc "Func_Socket",2,1236,13018,40,51,1000,984,5,999,10; break; |
---|
| 129 | case 5: callfunc "Func_Socket",2,13002,13019,40,51,1000,984,5,999,10; break; |
---|
| 130 | case 6: callfunc "Func_Socket",2,1135,13400,40,51,1000,984,5,999,10; break; |
---|
| 131 | case 7: callfunc "Func_Socket",2,1466,1476,40,51,1000,984,5,999,10; break; |
---|
| 132 | case 8: callfunc "Func_Socket",2,1617,1618,40,51,2000,984,5,999,10; break; |
---|
| 133 | case 9: callfunc "Func_Socket",2,1468,1481,40,51,1000,984,5,999,10; break; |
---|
| 134 | case 10: callfunc "Func_Socket",2,1225,13032,40,51,1000,984,5,999,10; break; |
---|
| 135 | case 11: callfunc "Func_Socket",2,1224,13031,40,51,1000,984,5,999,10; break; |
---|
| 136 | case 12: callfunc "Func_Socket",2,1232,13033,40,51,1000,984,5,999,10; break; |
---|
| 137 | case 13: callfunc "Func_Socket",2,1528,1540,40,51,1000,984,5,999,10; break; |
---|
| 138 | case 14: callfunc "Func_Socket",2,1169,1179,40,51,1000,984,5,999,10; break; |
---|
| 139 | } |
---|
| 140 | break; |
---|
| 141 | } |
---|
| 142 | break; |
---|
| 143 | |
---|
| 144 | case 2: |
---|
| 145 | mes "[Seiyablem]"; |
---|
| 146 | mes "Armor, you said?"; |
---|
| 147 | mes "Sure, no problem."; |
---|
| 148 | mes "Armor is divided into 4 different classes, depending on the work difficulty."; |
---|
| 149 | mes "C Class is the easiest one, and S Class he hardest one."; |
---|
| 150 | mes "Which class would you like to try?"; |
---|
| 151 | set @sockettype,2; |
---|
| 152 | next; |
---|
| 153 | switch( select( "C Class","B Class","A Class","S Class" ) ) |
---|
| 154 | { |
---|
| 155 | case 1: |
---|
| 156 | mes "[Seiyablem]"; |
---|
| 157 | mes "C Class Armor, eh?"; |
---|
| 158 | mes "Sounds reasonable."; |
---|
| 159 | mes "Which armor would you like to try adding a Slot?"; |
---|
| 160 | next; |
---|
| 161 | switch( select( "Mantle","Coat","Circlet","Biretta","Sunflower","Ph.D Hat","Big Ribbon","Boys Cap" ) ) |
---|
| 162 | { |
---|
| 163 | case 1: callfunc "Func_Socket",1,2307,2308,40,66,200,999,3; break; |
---|
| 164 | case 2: callfunc "Func_Socket",1,2309,2310,40,66,200,999,3; break; |
---|
| 165 | case 3: callfunc "Func_Socket",1,2232,2233,40,66,200,999,3; break; |
---|
| 166 | case 4: callfunc "Func_Socket",1,2216,2217,40,66,200,999,3; break; |
---|
| 167 | case 5: callfunc "Func_Socket",1,2253,5351,40,66,200,999,3; break; |
---|
| 168 | case 6: callfunc "Func_Socket",1,5012,5347,40,66,200,999,3; break; |
---|
| 169 | case 7: callfunc "Func_Socket",1,2244,5348,40,66,200,999,5; break; |
---|
| 170 | case 8: callfunc "Func_Socket",1,5016,5349,40,66,200,999,5; break; |
---|
| 171 | } |
---|
| 172 | break; |
---|
| 173 | |
---|
| 174 | case 2: |
---|
| 175 | mes "[Seiyablem]"; |
---|
| 176 | mes "You have chosen average B Class."; |
---|
| 177 | mes "So, what kind of armor do you have?"; |
---|
| 178 | next; |
---|
| 179 | switch( select( "Mirror Shield","Chain Mail","Saint Robe","Silk Robe","Boots","Shoes","Muffler","Guard","Buckler","Shield","Bongun Hat","Skull Ring","High Heels" ) ) |
---|
| 180 | { |
---|
| 181 | case 1: callfunc "Func_Socket",1,2107,2108,40,61,250,999,5; break; |
---|
| 182 | case 2: callfunc "Func_Socket",1,2314,2315,40,61,250,999,5; break; |
---|
| 183 | case 3: callfunc "Func_Socket",1,2325,2326,40,61,300,999,5; break; |
---|
| 184 | case 4: callfunc "Func_Socket",1,2321,2322,40,61,300,999,5; break; |
---|
| 185 | case 5: callfunc "Func_Socket",1,2405,2406,40,61,300,999,5; break; |
---|
| 186 | case 6: callfunc "Func_Socket",1,2403,2404,40,61,300,999,5; break; |
---|
| 187 | case 7: callfunc "Func_Socket",1,2503,2504,40,61,300,999,5; break; |
---|
| 188 | case 8: callfunc "Func_Socket",1,2101,2102,40,61,300,999,5; break; |
---|
| 189 | case 9: callfunc "Func_Socket",1,2103,2104,40,61,300,999,5; break; |
---|
| 190 | case 10: callfunc "Func_Socket",1,2105,2106,40,61,250,999,5; break; |
---|
| 191 | case 11: callfunc "Func_Socket",1,5046,5168,40,61,250,999,5; break; |
---|
| 192 | case 12: callfunc "Func_Socket",1,2609,2715,40,61,300,999,5; break; |
---|
| 193 | case 13: callfunc "Func_Socket",1,2409,2432,40,61,300,999,5; break; |
---|
| 194 | } |
---|
| 195 | break; |
---|
| 196 | |
---|
| 197 | case 3: |
---|
| 198 | mes "[Seiyablem]"; |
---|
| 199 | mes "Ooh, A Class."; |
---|
| 200 | mes "This is some high risk territory!"; |
---|
| 201 | mes "Alright, which armor would you like me to try adding a Slot?"; |
---|
| 202 | next; |
---|
| 203 | switch( select( "Gemmed Sallet","Bucket Hat","Memory Book","Tights","Legion Plate Armor","Full Plate","Thief Clothes","Greaves","Coif","Manteau","Helm","Ninja Suit","Orc Helm","Ancient Cape","Monk Hat","Golden Gear","Brooch","Munak Hat","Pirate Bandana","Black Leather Boots" ) ) |
---|
| 204 | { |
---|
| 205 | case 1: callfunc "Func_Socket",1,2230,2231,40,61,400,985,1; break; |
---|
| 206 | case 2: callfunc "Func_Socket",1,5114,5120,40,61,400,985,1; break; |
---|
| 207 | case 3: callfunc "Func_Socket",1,2109,2121,40,61,400,985,1; break; |
---|
| 208 | case 4: callfunc "Func_Socket",1,2330,2331,40,61,400,985,1; break; |
---|
| 209 | case 5: callfunc "Func_Socket",1,2341,2342,40,61,400,985,1; break; |
---|
| 210 | case 6: callfunc "Func_Socket",1,2316,2317,40,61,400,985,1; break; |
---|
| 211 | case 7: callfunc "Func_Socket",1,2335,2336,40,61,400,985,1; break; |
---|
| 212 | case 8: callfunc "Func_Socket",1,2411,2412,40,61,400,985,1; break; |
---|
| 213 | case 9: callfunc "Func_Socket",1,5092,5093,40,61,400,985,1; break; |
---|
| 214 | case 10: callfunc "Func_Socket",1,2505,2506,40,61,400,985,1; break; |
---|
| 215 | case 11: callfunc "Func_Socket",1,2228,2229,40,61,400,985,1; break; |
---|
| 216 | case 12: callfunc "Func_Socket",1,2337,2359,40,61,400,985,1; break; |
---|
| 217 | case 13: callfunc "Func_Socket",1,2299,5157,40,61,400,985,1; break; |
---|
| 218 | case 14: callfunc "Func_Socket",1,2507,2525,40,61,400,985,1; break; |
---|
| 219 | case 15: callfunc "Func_Socket",1,2251,5158,40,61,400,985,1; break; |
---|
| 220 | case 16: callfunc "Func_Socket",1,2246,5159,40,61,400,985,1; break; |
---|
| 221 | case 17: callfunc "Func_Socket",1,2605,2625,40,61,400,985,1; break; |
---|
| 222 | case 18: callfunc "Func_Socket",1,2264,5167,40,61,300,985,1; break; |
---|
| 223 | case 19: callfunc "Func_Socket",1,2287,5350,40,61,500,985,1; break; |
---|
| 224 | case 20: callfunc "Func_Socket",1,2425,2434,40,61,500,985,1; break; |
---|
| 225 | } |
---|
| 226 | break; |
---|
| 227 | |
---|
| 228 | case 4: |
---|
| 229 | mes "[Seiyablem]"; |
---|
| 230 | mes "Um... S Class?"; |
---|
| 231 | mes "You sure about this?"; |
---|
| 232 | mes "Alright... Let me know the Armor to which you'd like to add a Slot, and I'll tell what I need to try it."; |
---|
| 233 | next; |
---|
| 234 | switch( select( "Majestic Goat","Spiky Band","Bone Helm","Corsair","Crown","Tiara","Sphinx Hat","Robe of Cast","Earring","Ring","Bow Thimble","Mage Coat","Holy Robe","Sacred Mission","Undershirt","Pantie" ) ) |
---|
| 235 | { |
---|
| 236 | case 1: callfunc "Func_Socket",1,2256,5160,40,51,2000,985,2; break; |
---|
| 237 | case 2: callfunc "Func_Socket",1,2258,5161,40,51,2000,985,2; break; |
---|
| 238 | case 3: callfunc "Func_Socket",1,5017,5162,40,51,2000,985,2; break; |
---|
| 239 | case 4: callfunc "Func_Socket",1,5019,5163,40,51,2000,985,2; break; |
---|
| 240 | case 5: callfunc "Func_Socket",1,2235,5165,40,51,2000,985,2; break; |
---|
| 241 | case 6: callfunc "Func_Socket",1,2234,5164,40,51,2000,985,2; break; |
---|
| 242 | case 7: callfunc "Func_Socket",1,5053,5166,40,51,1000,985,2; break; |
---|
| 243 | case 8: callfunc "Func_Socket",1,2343,2360,40,51,1000,985,2; break; |
---|
| 244 | case 9: callfunc "Func_Socket",1,2602,2622,40,51,1000,985,2; break; |
---|
| 245 | case 10: callfunc "Func_Socket",1,2601,2621,40,51,1000,985,2; break; |
---|
| 246 | case 11: callfunc "Func_Socket",1,2619,2671,40,51,1000,985,2; break; |
---|
| 247 | case 12: callfunc "Func_Socket",1,2334,2372,40,51,1000,985,1; break; |
---|
| 248 | case 13: callfunc "Func_Socket",1,2327,2373,40,51,1000,985,1; break; |
---|
| 249 | case 14: callfunc "Func_Socket",1,2111,2128,40,51,1000,985,1; break; |
---|
| 250 | case 15: callfunc "Func_Socket",1,2522,2523,40,51,1000,985,1; break; |
---|
| 251 | case 16: callfunc "Func_Socket",1,2339,2371,40,51,1000,985,1; break; |
---|
| 252 | } |
---|
| 253 | break; |
---|
| 254 | } |
---|
| 255 | break; |
---|
| 256 | |
---|
| 257 | case 3: |
---|
| 258 | mes "[Seiyablem]"; |
---|
| 259 | mes "Well, I haven't really refined the art of Slot Addition."; |
---|
| 260 | mes "It's so complicated that I'd be lying if I told you that I knew every factor that affected the process."; |
---|
| 261 | mes "Still, I do notice a few trends..."; |
---|
| 262 | next; |
---|
| 263 | mes "[Seiyablem]"; |
---|
| 264 | mes "In some towns, Slot addition attempts are more successful for equipment with fewer upgrades."; |
---|
| 265 | mes "In other towns, the opposite is true."; |
---|
| 266 | mes "isn't that really peculiar?"; |
---|
| 267 | next; |
---|
| 268 | mes "[Seiyablem]"; |
---|
| 269 | mes "Oh, theres also something really important that you should know."; |
---|
| 270 | mes "If you ask me to add a Slot to something, make sure that you don't have multiples of it in your inventory."; |
---|
| 271 | next; |
---|
| 272 | mes "[Seiyablem]"; |
---|
| 273 | mes "Heres an example: if you have a +7 Manteau and a normal Manteau in your inventory, then I will randomly pick on of them for my Slot Addition attempt."; |
---|
| 274 | mes "Just remember to be careful."; |
---|
| 275 | next; |
---|
| 276 | mes "[Seiyablem]"; |
---|
| 277 | mes "Again, ^FF0000only carry one of the equipment to wich you want me to add a Slot^000000."; |
---|
| 278 | mes "All other equipment with the same name should be placed in your Kafra Storage, got it?"; |
---|
| 279 | close; |
---|
| 280 | |
---|
| 281 | case 4: |
---|
| 282 | mes "[Seiyablem]"; |
---|
| 283 | mes "Take it easy, adventurer."; |
---|
| 284 | mes "If you ever want to try adding a Slot to some of your equipment, come back and let me know."; |
---|
| 285 | mes "Seeya~"; |
---|
| 286 | close; |
---|
| 287 | } |
---|
| 288 | } |
---|
| 289 | |
---|
| 290 | function script Func_Socket { |
---|
| 291 | |
---|
| 292 | mes "[Seiyablem]"; |
---|
| 293 | mes "You want to add a Slot to a " +getitemname(getarg(1))+ "?"; |
---|
| 294 | if (getarg(0) == 1) |
---|
| 295 | { |
---|
| 296 | if(getarg(5) > 999) mes "Alright, please bring me ^FF0000" +getarg(7)+ " " +getitemname(getarg(6))+ "s^000000, and my^FF0000 " +getarg(5) / 1000+",000,000 zeny^000000 service fee."; |
---|
| 297 | else mes "Alright, please bring me ^FF0000" +getarg(7)+ " " +getitemname(getarg(6))+ "s^000000, and my^FF0000 " +getarg(5)+",000 zeny^000000 service fee."; |
---|
| 298 | } |
---|
| 299 | else if (getarg(0) == 2) |
---|
| 300 | { |
---|
| 301 | if(getarg(5) > 999) mes "Alright, please bring me ^FF0000" +getarg(7)+ " " +getitemname(getarg(6))+ "^000000, ^FF0000" +getarg(9)+ " " +getitemname(getarg(8))+ "^000000 and my^FF0000 " +getarg(5) / 1000+",000,000 zeny^000000 service fee."; |
---|
| 302 | else mes "Alright, please bring me ^FF0000" +getarg(7)+ " " +getitemname(getarg(6))+ "^000000, ^FF0000" +getarg(9)+ " " +getitemname(getarg(8))+ "^000000 and my^FF0000 " +getarg(5)+",000 zeny^000000 service fee."; |
---|
| 303 | } |
---|
| 304 | mes "Ah, and don't forget to bring that " +getitemname(getarg(1))+ "!"; |
---|
| 305 | next; |
---|
| 306 | |
---|
| 307 | if(@sockettype == 1) |
---|
| 308 | { |
---|
| 309 | mes "[Seiyablem]"; |
---|
| 310 | mes "I can try to add a slot now if you have the required items and zeny."; |
---|
| 311 | mes "However, you should know that there's a chance that I might fail."; |
---|
| 312 | mes "Therefore, I need to give you a fair warning..."; |
---|
| 313 | next; |
---|
| 314 | mes "[Seiyablem]"; |
---|
| 315 | mes "If this attempt to add a Slot to your Weapon fails, then the ^FF0000Weapon^000000, ^FF0000and any Cards compounded to it will be destroyed^000000."; |
---|
| 316 | mes "Do you still want to try to add a Slot?"; |
---|
| 317 | next; |
---|
| 318 | } |
---|
| 319 | else if(@sockettype == 2) |
---|
| 320 | { |
---|
| 321 | mes "[Seiyablem]"; |
---|
| 322 | mes "If you have all the required materials, my zeny service fee and the Armor, then we can go ahead with the Slot Addition attempt."; |
---|
| 323 | mes "But before that, I must warn you of the risk."; |
---|
| 324 | next; |
---|
| 325 | mes "[Seiyablem]"; |
---|
| 326 | mes "If this attempt to add a Slot to your Armor fails, then the ^FF0000Armor^000000, ^FF0000it's upgrades^000000 ^FF0000and any Cards compounded to it will be destroyed^000000."; |
---|
| 327 | mes "Do you still want to try to add a Slot?"; |
---|
| 328 | next; |
---|
| 329 | } |
---|
| 330 | |
---|
| 331 | if ( select("Attempt Slot Addition","Cancel") == 2 ) |
---|
| 332 | { |
---|
| 333 | mes "[Seiyablem]"; |
---|
| 334 | mes "Need some time to think about it, huh?"; |
---|
| 335 | mes "Alright, I can understand."; |
---|
| 336 | mes "Just remember that life's no fun if you're always playing it safe~"; |
---|
| 337 | close; |
---|
| 338 | } |
---|
| 339 | |
---|
| 340 | switch(getarg(0)) |
---|
| 341 | { |
---|
| 342 | case 1: |
---|
| 343 | if((Zeny < getarg(5)*1000) || (countitem(getarg(6)) < getarg(7)) || (!countitem(getarg(1)))) |
---|
| 344 | { |
---|
| 345 | mes "[Seiyablem]"; |
---|
| 346 | mes "I'd like to go ahead with this Slot Addition attempt, but you're missing a few things."; |
---|
| 347 | mes "You sure that you have the equipment, required materials and the zeny?"; |
---|
| 348 | close; |
---|
| 349 | } |
---|
| 350 | break; |
---|
| 351 | |
---|
| 352 | case 2: |
---|
| 353 | if((Zeny < getarg(5)*1000) || (countitem(getarg(6)) < getarg(7)) || (countitem(getarg(8)) < getarg(9)) || (!countitem(getarg(1)))) |
---|
| 354 | { |
---|
| 355 | mes "[Seiyablem]"; |
---|
| 356 | mes "I'd like to go ahead with this Slot Addition attempt, but you're missing a few things."; |
---|
| 357 | mes "You sure that you have the equipment, required materials and the zeny?"; |
---|
| 358 | close; |
---|
| 359 | } |
---|
| 360 | break; |
---|
| 361 | } |
---|
| 362 | |
---|
| 363 | mes "[Seiyablem]"; |
---|
| 364 | mes "Alright then, let the work begin!"; |
---|
| 365 | mes "You'd better pray for a successful result."; |
---|
| 366 | next; |
---|
| 367 | set .@socketrand,rand(1,100); |
---|
| 368 | if((.@socketrand > getarg(3)) && (.@socketrand < getarg(4))) |
---|
| 369 | { |
---|
| 370 | if(getarg(4) == 51) specialeffect 90; |
---|
| 371 | else specialeffect 83; |
---|
| 372 | mes "[Seiyablem]"; |
---|
| 373 | mes "Great, it seems to be successful."; |
---|
| 374 | mes "It looks pretty well done. Congratulations!"; |
---|
| 375 | delitem getarg(1),1; |
---|
| 376 | delitem getarg(6),getarg(7); |
---|
| 377 | if(getarg(0) == 2) delitem getarg(8),getarg(9); |
---|
| 378 | set Zeny,Zeny - getarg(5)*1000; |
---|
| 379 | getitem getarg(2),1; |
---|
| 380 | next; |
---|
| 381 | mes "[Seiyablem]"; |
---|
| 382 | mes "See you again, buddy!"; |
---|
| 383 | close; |
---|
| 384 | } |
---|
| 385 | else |
---|
| 386 | { |
---|
| 387 | specialeffect 108; |
---|
| 388 | mes "[Seiyablem]"; |
---|
| 389 | mes "Wah! ...I am so sorry, it failed."; |
---|
| 390 | mes "However, I am completely innocent."; |
---|
| 391 | mes "This is your luck, and it is destined by god, okay?"; |
---|
| 392 | mes "Don't be so disappointed, and try next time."; |
---|
| 393 | delitem getarg(1),1; |
---|
| 394 | delitem getarg(6),getarg(7); |
---|
| 395 | if(getarg(0) == 2) delitem getarg(8),getarg(9); |
---|
| 396 | set Zeny,Zeny - getarg(5)*1000; |
---|
| 397 | next; |
---|
| 398 | mes "[Seiyablem]"; |
---|
| 399 | mes "I wish you good luck next time!"; |
---|
| 400 | close; |
---|
| 401 | } |
---|
| 402 | } |
---|
| 403 | |
---|
| 404 | lhz_in02,281,35,5 duplicate(Seiyablem) Seiyablem#lhz 84,0,0 |
---|
| 405 | prt_in,33,70,5 duplicate(Seiyablem) Seiyablem#prt 84,0,0 |
---|
| 406 | morocc,51,41,5 duplicate(Seiyablem) Seiyablem#moc 84,0,0 |
---|
| 407 | |
---|
| 408 | payon,143,143,7 script Young Man#socket 97,{ |
---|
| 409 | |
---|
| 410 | mes "[Young Man]"; |
---|
| 411 | mes "I'm considering becoming a Slotting Engineer."; |
---|
| 412 | mes "It's a new field where you can add Slots to equipment, and it'd be cool if I can work in such a lucrative career."; |
---|
| 413 | next; |
---|
| 414 | mes "[Young Man]"; |
---|
| 415 | mes "There's a huge element of luck involved in successfully adding Slots from what I can understand."; |
---|
| 416 | mes "You fail sometimes, but if you're super lucky, you can add two Slots."; |
---|
| 417 | mes "Crazy. Huh?"; |
---|
| 418 | next; |
---|
| 419 | mes "[Young Man]"; |
---|
| 420 | mes "But don't get too excited."; |
---|
| 421 | mes "Only certain equipment can handle the addition of two extra Slots."; |
---|
| 422 | mes "There's so much more I have to learn before I can even be an apprentice..."; |
---|
| 423 | close; |
---|
| 424 | } |
---|
| 425 | |
---|
| 426 | lhz_in02,269,33,5 duplicate(Young Man#socket) Young Man#lhz 97,0,0 |
---|
| 427 | prt_in,31,57,1 duplicate(Young Man#socket) Young Man#prt 97,0,0 |
---|
| 428 | morocc,60,42,3 duplicate(Young Man#socket) Young Man#moc 97,0,0 |
---|