Quickchain.mac
From CLUMP
Jump to navigationJump to search
Description[edit]
- Noivad's chain macro. Automatically equips chain and chains closest exile. Also has ability to specify exile to chain?
Dependencies[edit]
- Key used to chain fallen exiles/critters is assigned in Default (aka Alternate Default).
Usage[edit]
- Save text from code section into a file called quickchain.mac to your /clanlord/data/macros folder.
Noteworthy Techniques[edit]
- Automatically equips chain and saves favorite item to re-equip later.
Credits[edit]
- Noivad.
Code[edit]
//------------------------------------------------ // quickchain.mac //------------------------------------------------ // Noivad's v3.1 9-18-06 // Debug helpers Chmee, Xenos, Zaerion // NOTE: right-click is not used for actions, instead see AlternateDefault for key assignment of click-action. // Use: right-cick on self: equips (weapon_of_choice) // right-click on fallen exile: chains fallen // right-click on chain exile: pulls exile // right-click on standing exile: pulls exile + re-equips weapon* // right-click on ground: equips (weapon of choice) // Edit weapon_of_choice text to match your favorite weapon. // *If you are chaining and you right-click the ground or a standing or chained // exile exile within 15 seconds after your last chain, the weapon will not be // re-equiped to avoid accidental dechaining. set quickc 0 set chainlock 0 set chaintype "chain" //begin chain macros //The QuickChain // f5 call flybychain -- Moved to AlternateDefault to prevent conflicts if redefined there. flybychain { if @my.right_item != chaintype setglobal rsaveitem @my.right_item "/equip " chaintype "\r" end if pause 1 "/use \r" setglobal chainlock + 15 if debug == 1 msg "chainlock: " chainlock end if call chaincountdown } click-action { $any_click if @click.simple_name == @my.simple_name "/select " @my.simple_name "\r" if debug == 1 message "clickplayer" @click.simple_name message "*It's you!" end if if chainlock < 1 if @my.right_item != weapon_of_choice "/equip " weapon_of_choice "\r" if weapon_of_choice == "caduceus" "/equip cad\r" else if weapon_of_choice == "merc" "/equip merc\r" else if weapon_of_choice == "moonstone" "/equip moonstone\r" "/use 3\r" call burster end if end if end if else if @click.simple_name == "" if debug == 1 message "clickplayer:" @click.simple_name message "*Ground detected." end if if chainlock < 1 if @my.right_item != weapon_of_choice "/equip " weapon_of_choice "\r" else if debug == 1 message "*Weapon of choice: " weapon of choice message "*To change Weapon of choice, Edit quickchain.txt" message "*line 15: 'set weapon_of_choice' <weapon name>'" end if end if end if else if @click.simple_name != "" "/select "@click.simple_name "\r" setglobal quickc 1 if debug == 1 // pause 1 message "*Exile detected!" message ":clickplayer:" @clickplayer end if call quickchain else if debug == 1 message "*Macro Error in click-action section of quickchain.mac" end if end if } quickchain { if quickc == 1 if @my.right_item != "chain" setglobal rsaveitem @my.right_item "/equip " chaintype "\r" pause 1 end if "/use " @selplayer.simple_name "\r" pause 1 if @env.textlog < "You start dragging" setglobal chainlock + 15 setglobal quickc 0 call chaincountdown else if @env.textlog < "You must specify a fallen exile." goto pullexile else if @env.textlog < "is already on a chain." goto pullexile else if @env.textLog < "There is no target for your chain." goto pullexile else if @env.textlog < "You cannot drag sleeping exiles." goto pullexile else if @env.textlog < "You are still fatigued" setglobal chainlock + 9 setglobal quickc 0 call chaincountdown else if @env.textlog < "is too far away for you to reach." if chainlock < 1 if weapon_of_choice == "caduceus" "/equip cad\r" "/use " @selplayer.simple_name "\r" else if weapon_of_choice == "merc" "/equip merc\r" "/use " @selplayer.simple_name "\r" end if end if else message "*No known textlog event found." goto msgend end if label pullexile // pause 1 "/pull " @selplayer.simple_name "\r" if chainlock < 1 "/equip " rsaveitem "\r" else message "•Chaining Limiter is on! Unable to equip " rsaveitem " for " chainlock " seconds." end if label msgend if debug == 1 message "*QuiC End Reached" setglobal quickc 0 end if } chaincountdown { set fps 4 set seconds chainlock set frames 1 set frames * seconds set frames * fps if debug == 1 message "*frames:" frames "seconds:" seconds message "fps " fps message loop start end if label chaindelay if frames > 0 set frames - 4 setglobal chainlock - 1 pause fps goto chaindelay else goto end end if label end if debug == 1 message "*CCD End reached" end if } "testqchain" { setglobal chainlock + 10 message "chainlock" chainlock }
Revisions[edit]
- 20080129-inu: Posted. Needs to be reviewed as control-click of Noivad's original changed to click-action and called from AlternateDefault#Code key assignment by click2.