Можно указать от куда брать дополнительные инги, если их недостаточно, но можно и ковать в мп и брать самому дополнительные инги.
Обязательно указать в скрипте надо вид армора (plate, ring, chain), потом ли просто фулл, или ещё + щит, и количество (%amt), сколько надо таких сделать.
если вы поставили так:
set %armor plate; plate, ring, chain set %part full+shield set %amt 2 ; amountи у вас в сумке уже 1 какойто плейт шлем, скрипт сделает ещё 1, потом пойдёт делать остальные части армора.
На здоровье:
set %armor plate ; plate, ring, chain set %part full+shield ; full - full %armor ; full+shield - full %armor with shield set %amt 2 ; amount set %bag UMSGKMD; where are additional ings [not optional] set %maxWeight #str * 34 / 10; Your maximal weight. ; =========================================================== ; == Want more? ====== [email protected] ================ ; =========================================================== display ok Target on Ings! set #targcurs 1 while #targcurs = 1 wait 1 finditem #ltargetid set %color #findcol set %resc RMK scanjournal deletejournal finditem %resc C_ , #backpackid if #findcnt > 1 { event sysmessage There are more then one kind of ingots in your pack! finditem %bag if #findcnt = 0 2 event sysmessage Please drop unnecessary ingots and restart script. halt repeat { finditem %resc C_ , #backpackid exevent drag #findid #findstack exevent dropc %bag wait 35 finditem %resc C_ , #backpackid } until #findcnt = 0 } set %eat 0 set %to 0 set %shield #false set %full #false if %part = full || %part = full+shield set %full #true if %full { if %armor = plate { if %part = full+shield set %shield #true set %to 6 } if %armor = chain { if %part = full+shield set %shield #true set %to 3 } if %armor = ring { if %part = full+shield set %shield #true set %to 5 } set %part 0 } make: set %fail 0 set %first #true if %full set %part %part + 1 gosub resc repeat { finditem %resc C_ , #backpackid if #findstack < %for1item gosub take finditem %resc C_ , #backpackid set #lobjectid #findid event macro 17 0 finditem %type C_ , #backpackid while #contkind <> UCHB && #contsize <> 565_374 wait 1 if %first { if %part = 7 2 click 262 288 wait 10 if %part <> 7 { if %armor = chain click 258 241 if %armor = ring click 258 219 wait 10 } if %part = 1 && %armor <> chain 2 click 258 264 wait 10 click %x %y wait 10 click 311 455 set %first #false } else click 489 453 event sysmessage ` gosub scan finditem %type C_ , #backpackid if #weight > %maxWeight { display ok Your backpack is full! $ + Script is paused. pause } } until #findcnt >= %amt if %part = %to { if %shield 3 set %part 7 set %full #false goto make } if %full && %part < %to goto make display ok Forging complete! halt sub scan set %j #jindex set %lag #scnt + 25 _scan: scanjournal %j if hungry in #journal && #scnt > %eat { gosub eat return } if world_save_has_been in #sysmsg { event sysmessage World Save wait.. wait 15s } if you_put in #journal return if you_fail in #journal || you_have_failed in #journal { set %fail %fail + 1 if %fail >= 3 { wait 10s set %fail 0 } return } if you_can't_make_it in #journal || you_need in #journal || #scnt > %lag return if #jindex > %j set %j %j + 1 goto _scan return sub take finditem %bag if #findcnt = 0 3 display ok Out of ingots. Get more and hit play! pause return event sysmessage Taking ingots... set %inBagBefore #findstack set #lobjectid %bag event macro 17 0 while #contid <> %bag wait 1 repeat { finditem %resc C_ , %bag if #findcol <> %color ignoreitem #findid finditem %resc C_ , %bag } until #findcol = %color set %it #findid set %amount %maxWeight - #weight exevent drag %it %amount exevent dropc #backpackid wait 10 repeat finditem %it C_ , #backpackid until #findstack > %inBagBefore return sub eat event sysmessage Eat, eat, eat! set %lobjct #lobjectid finditem ZBM C_ , #backpackid set #lobjectid #findid event macro 17 0 wait 10 finditem GND C_ , #backpackid set #lobjectid #findid event macro 17 0 wait 10 event macro 17 0 wait 2s set #lobjectid %lobjct set %eat #scnt + 360 return sub resc if %part = 1 { if %armor = plate 3 set %x 428 set %y 295 set %type OSH if %armor = ring 3 set %x 312 set %y 221 set %type CSH if %armor = chain 3 set %x 312 set %y 224 set %type DPH set %for1item 15 } if %part = 2 { if %armor = plate 4 set %x 426 set %y 294 set %type LSH set %for1item 20 if %armor = ring 4 set %x 548 set %y 229 set %type IMH set %for1item 16 if %armor = chain 4 set %x 427 set %y 224 set %type APH set %for1item 22 } if %part = 3 { if %armor = chain 4 set %x 548 set %y 226 set %for1item 25 set %type ZOH if %armor = ring 4 set %x 313 set %y 296 set %type WLH set %for1item 18 if %armor = plate 4 set %x 550 set %y 295 set %type HSH set %for1item 25 } if %part = 4 { if %armor = ring 4 set %x 427 set %y 226 set %type YLH set %for1item 14 if %armor = plate 4 set %x 546 set %y 229 set %type MSH set %for1item 18 } if %part = 5 { if %armor = ring 4 set %type BMH set %x 314 set %y 226 set %for1item 10 if %armor = plate 4 set %x 426 set %y 225 set %type ISH set %for1item 12 } if %part = 6 4 set %x 312 set %y 225 set %type NSH set %for1item 10 if %part = 7 { if %armor = plate 4 set %x 549 set %y 225 set %for1item 18 set %type CIK if %armor = ring 4 set %x 314 set %y 295 set %type AIK set %for1item 16 if %armor = chain 4 set %x 427 set %y 225 set %type NIK set %for1item 16 } return