Close
Page 1 of 2 1 2 LastLast
Showing results 1 to 10 of 18

Hybrid View

  1. #1

    Default Hotkeynet region click script help.

    I am trying to get this squared away. Here is what I have but when Scroll Lock is on you can't use left click anywhere or for anything but clicking that region.

    Code:
    //================================================================
    // SAMPLE SCRIPT FOR TWO WOW'S ON ONE PC
    //
    // Instructions: Copy this entire script (all the blue writing
    // on gray background including comments). Save it in a file.
    // Load it into HotkeyNet.
    //
    // Toggle the scroll lock key to turn hotkeys off and on. (You
    // can change this if you want, just like you can change
    // everything else with HotkeyNet.)
    //
    // Requires HotkeyNet build 147 or higher.
    //
    // For more info, go to www.hotkeynet.com
    //================================================================
    
    //-----------------------------------------------------------
    // PRESS CTRL R TO RENAME WOW'S IF YOU LAUNCH THEM MANUALLY
    //-----------------------------------------------------------
    <Hotkey ScrollLockOn Ctrl R>
        <SendPC local>
            <RenameWin "World of Warcraft" WoW1>
            <RenameWin "World of Warcraft" WoW2>
            <RenameWin "World of Warcraft" WoW3>
            <RenameWin "World of Warcraft" WoW4>
            <RenameWin "World of Warcraft" WoW5>
    
    //-----------------------------------------------------------
    // SUBROUTINE TO Position Windows for 5 boxing.
    //-----------------------------------------------------------
    <Command ResizeAndPosition>
    <SendPC Local>
    <SendWin %1%>
      <SetWinSize 1680 1050>
      <SetWinPos 0 0>
          <SendWinM %2%>
              <SetWinSize 840 525>
              <SetWinPos 1680 0>     
          <SendWinM %3%>
              <SetWinSize 840 525>
              <SetWinPos 1680 525>     
          <SendWinM %4%>
              <SetWinSize 840 525>
              <SetWinPos 2520 0>     
         <SendWinM %5%>
               <SetWinSize 840 525>
               <SetWinPos 2520 525> 
    
    
    
    //-----------------------------------------------------------
    // SUBROUTINE TO LAUNCH AND RENAME A COPY OF WOW.
    //-----------------------------------------------------------
    <Command LaunchAndRename>
          <SendPC %1%>
          <Run %2%>
          <RenameTargetWin %3%>
          <RemoveWinFrame>
    
    //-----------------------------------------------------------
    // HOTKEY TO LAUNCH AND RENAME BOTH WOW'S.
    //-----------------------------------------------------------
    <Hotkey ScrollLockOn Alt Ctrl L>
    <LaunchAndRename Local "d:\WoW5\WoW.exe"WoW5>
    <LaunchAndRename Local "d:\WoW4\WoW.exe"WoW4>
    <LaunchAndRename Local "d:\WoW3\WoW.exe"WoW3>
    <LaunchAndRename Local "d:\WoW2\WoW.exe"WoW2>
    <LaunchAndRename Local "d:\WoW1\WoW.exe"WoW1>
    
    
    <ResizeAndPosition WoW1 WoW2 WoW3 WoW4 WoW5> 
    
    //-----------------------------------------------------------
    // DEFINE MAIL LABELS FOR SENDING KEY STROKES
    //-----------------------------------------------------------
    <Label w1 Local SendWinM WoW1>
    <Label w2 Local SendWinM WoW2>
    <Label w3 Local SendWinM WoW3>
    <Label w4 Local SendWinM WoW4>
    <Label w5 Local SendWinM WoW5>
    
    //----------------------------------------------------------------
    //Window Switching
    //----------------------------------------------------------------
    <Hotkey F8>
      <ResizeAndPosition WoW1 WoW2 WoW3 WoW4 WoW5>
      <SendLabel w1, w2, w3, w4, w5>
        <Key F8>
    
    <Hotkey F9>
      <ResizeAndPosition WoW2 WoW1 WoW3 WoW4 WoW5>
      <SendLabel w1, w2, w3, w4, w5>
        <Key F9>
    
    <Hotkey F10>
      <ResizeAndPosition WoW3 WoW2 WoW1 WoW4 WoW5>
      <SendLabel w1, w2, w3, w4, w5>
        <Key F10>
    
    <Hotkey F11>
      <ResizeAndPosition WoW4 WoW2 WoW3 WoW1 WoW5>
      <SendLabel w1, w2, w3, w4, w5>
      <Key F11>
    
    <Hotkey F12>
      <ResizeAndPosition WoW5 WoW2 WoW3 WoW4 WoW1>
      <SendLabel w1, w2, w3, w4, w5>
        <Key F12>
    
    //--healing by click-----
    <Hotkey ScrollLockOn LButton>
    
    <If MouseIsOverWindowRect WoW5 0 291 146 48>
    <SendLabel w3>
    <Key Numpad1>
    
    //-----------------------------------------------------------
    // DEFINE HOTKEYS FOR ALL KEY COMBINATIONS THAT WILL GET
    // SENT TO BOTH WOWS. ADD MORE KEY COMBO'S IF YOU WANT.
    //-----------------------------------------------------------
    <Hotkey ScrollLockOn A-Z, 0-9, F1-F7, Plus, Minus, Numpad1-Numpad9>
    <SendLabel w1, w2, w3, w4, w5>
    <Key %Trigger%>
    
    //-----------------------------------------------------------
    // DEFINE MOVEMENT KEYS THAT WILL GET SENT TO BOTH WOW'S.
    // ADD MORE KEYS IF YOU WANT.
    //-----------------------------------------------------------
    <MovementHotkey ScrollLockOn up, down, left, right>
    <SendLabel w1, w2, w3, w4, w5>
    <Key %Trigger%>
    
    //-----------------------------------------------------------
    // BROADCAST MOUSE CLICKS. HOLD DOWN OEM3 (ON U.S. KEYBOARDS,
    // THAT'S THE SQUIGGLE KEY IN UPPPER LEFT CORNER) WHEN YOU
    // WANT TO BROADCAST.
    //-----------------------------------------------------------
    <UseKeyAsModifier Oem3>
    
    <Hotkey ScrollLockOn Oem3 LButton, MButton, RButton, Button4, Button5>
       <SendLabel w1, w2, w3, w4, w5>
          <ClickMouse %TriggerMainKey%>
    Thanks for any help.

  2. #2

    Default

    you could try the following code for the left click:
    Code:
    <Hotkey ScrollLockOn LButton>
       <If MouseIsOverWindowRect WoW5 0 291 146 48>
            <SendLabel w3>
                   <Key Numpad1>
       <Else>
          <SendFocusWin>
             <ClickMouse LButton Down Screen>
             
    <HotkeyUp ScrollLockOn LButton>
       <If MouseIsNotOverWindowRect WoW5 0 291 146 48>
          <SendFocusWin>
             <ClickMouse LButton Up Screen>
    OLIPCS - ordinary life is pretty complex stuff
    ----------------------------------------------------------------
    Pala, Priest, Druid, Hunter, Mage
    Focusless Targetless Leaderless - Wiki
    HotKeyNet - Guide

  3. #3

    Default

    I think you are missing a PassThrough there. Something like:

    Code:
    <Hotkey LButton>
       <If ActiveWinIs wow5>                    
          <PassThrough>
       <EndIf>
       <If MouseIsOverWindowRect wow5 0 291 146 48>
          <SendLabel w3>
             <Key Numpad1>
       <EndIf>

  4. #4

    Default

    You would think <PassThrough> could be used that way but it can't.

    No matter where you write <PassThrough> in a hotkey definition, it always executes before anything else in the hotkey including <If>.

    Therefore, PassThrough is not subject to If and the above hotkey executes like this:

    Code:
    <Hotkey LButton>
       <PassThrough>
       <If MouseIsOverWindowRect wow5 0 291 146 48>
          <SendLabel w3>
             <Key Numpad1>
       <EndIf>
    If you want the trigger to pass through conditionally, you have to emulate that behavior with <SendFocusWin> like Olipcs did.

    Edit: The reason for this strange behavior is that PassThrough must be executed by the keyboard hook almost instantaneously, but <If> and everything else in the hotkey definition may not get evaluted for many seconds depending on how many hotkey definitions are buffered. This will probably be handled in a more intuitive way in HotkeyNet 2.
    Last edited by Freddie : 09-07-2009 at 07:26 PM
    �Author of HotkeyNet and Mojo

  5. #5

    Default

    Well did my first real testing of this in ZF last night worked ok I'm having mouse problems now. What happens is sometimes when I'm clicking on mains(WoW5) or a slaves screen the pointer jumps back to the center of the mains screen and hadn't clicked anything. Below is my script(thanks again for the help) I see one thing I;m going to try and move when I get home and thats :
    Code:
    //--healing by click-----
    <Hotkey ScrollLockOn LButton>
       <If MouseIsOverWindowRect WoW5 88 299 125 58>
         <SendLabel w3>
           <Key Numpad1>
    
       <Else>
          <SendFocusWin>
             <ClickMouse LButton Down Screen>
             
    <HotkeyUp ScrollLockOn LButton>
       <If MouseIsNotOverWindowRect WoW5 88 299 125 58>
          <SendFocusWin>
             <ClickMouse LButton Up Screen>
    
    
       <If MouseIsOverWindowRect WoW5 88 367 125 58>
         <SendLabel w3>
           <Key Numpad2>
    
       <Else>
          <SendFocusWin>
             <ClickMouse LButton Down Screen>
             
    
       <If MouseIsNotOverWindowRect WoW5 88 367 125 58>
          <SendFocusWin>
             <ClickMouse LButton Up Screen>
    To:
    Code:
    //--healing by click-----
    <Hotkey ScrollLockOn LButton>
       <If MouseIsOverWindowRect WoW5 88 299 125 58>
         <SendLabel w3>
           <Key Numpad1>
    
       <Else>
          <SendFocusWin>
             <ClickMouse LButton Down Screen>
    
    
       <If MouseIsOverWindowRect WoW5 88 367 125 58>
         <SendLabel w3>
           <Key Numpad2>
    
       <Else>
          <SendFocusWin>
             <ClickMouse LButton Down Screen>
    
       <If MouseIsOverWindowRect WoW5 88 433 125 58>
         <SendLabel w3>
           <Key Numpad3>
    
       <Else>
          <SendFocusWin>
             <ClickMouse LButton Down Screen>
    
       <If MouseIsOverWindowRect WoW5 88 499 125 58>
         <SendLabel w3>
           <Key Numpad4>
    
       <Else>
          <SendFocusWin>
             <ClickMouse LButton Down Screen>
             
    <HotkeyUp ScrollLockOn LButton>
       <If MouseIsNotOverWindowRect WoW5 88 299 125 58>
          <SendFocusWin>
             <ClickMouse LButton Up Screen>
             
    
       <If MouseIsNotOverWindowRect WoW5 88 367 125 58>
          <SendFocusWin>
             <ClickMouse LButton Up Screen>
    
    
       <If MouseIsNotOverWindowRect WoW5 88 433 125 58>
          <SendFocusWin>
             <ClickMouse LButton Up Screen>
    
             
    
       <If MouseIsNotOverWindowRect WoW5 88 499 125 58>
          <SendFocusWin>
             <ClickMouse LButton Up Screen>
    But if this is just a "deal with" issue(which from how well everything else works with this program when its not an uneducated operator I don't see) then thanks for the heads up and saving me the time chasing my tail.

  6. #6

    Default

    Not sure if you have to but I believe you want <Else IF yada yada after your first if statement.

    Here's what I use maybe it can give you some idea's or whatever. I do use a ftl setup so doesnt matter which screen im on. If i hit the spot on any the screen it will heal or whatever i have it set on.

    Code:
    //--------------------------------------------------------------
    //Leftclick Mouse over healing
    //--------------------------------------------------------------
    
    <Hotkey LButton>
    
        //------------------------------------------------------
        // Bore
        // -----------------------------------------------------
            //    /cast [mod:LCtrl,target=Bore] lesser healing wave
            //    /cast [mod:LShift,target=Bore] healing wave
            //    /cast [mod:LAlt,target=Bore] Riptide
            //    /cast [target=Bore] Chain Heal
        //------------------------------------------------------
        // Top half of unit frame
        //------------------------------------------------------
    
        <If MouseIsOverWindowRect WoW1 768 1049 74 68>
            <SendLabel w2>
                <Key LShift G>
        <Else If MouseIsOverWindowRect WoW2 768 1049 74 68>
            <SendLabel w2>
                <Key LShift G>
        <Else If MouseIsOverWindowRect WoW3 768 1049 74 68>
            <SendLabel w2>
                <Key LShift G>
        <Else If MouseIsOverWindowRect WoW4 768 1049 74 68>
            <SendLabel w2>
                <Key LShift G>
        <Else If MouseIsOverWindowRect WoW5 768 1049 74 68>
            <SendLabel w2>
                <Key LShift G>
    
        //------------------------------------------------------
        // Bottom half of unit frame
        //------------------------------------------------------
        
        <Else If MouseIsOverWindowRect WoW1 768 1134 74 66>
            <SendLabel w2>
                <Key G>
        <Else If MouseIsOverWindowRect WoW2 768 1134 74 66>
            <SendLabel w2>
                <Key G>
        <Else If MouseIsOverWindowRect WoW3 768 1134 74 66>
            <SendLabel w2>
                <Key G>
        <Else If MouseIsOverWindowRect WoW4 768 1134 74 66>
            <SendLabel w2>
                <Key G>
        <Else If MouseIsOverWindowRect WoW5 768 1134 74 66>
            <SendLabel w2>
                <Key G>
    
        //------------------------------------------------------
        //Sedi
        //    /cast [mod:LCtrl,target=Sedi] lesser healing wave
            //    /cast [mod:LShift,target=Sedi] healing wave
            //    /cast [mod:LAlt,target=Sedi] Riptide
            //    /cast [target=Sedi] Chain Heal
            //------------------------------------------------------
        // Top half of unit frame
        //------------------------------------------------------
    
        <Else If MouseIsOverWindowRect WoW1 846 1049 74 68>
            <SendLabel w2>
                <Key LShift T>
        <Else If MouseIsOverWindowRect WoW2 846 1049 74 68>
            <SendLabel w2>
                <Key LShift T>
        <Else If MouseIsOverWindowRect WoW3 846 1049 74 68>
            <SendLabel w2>
                <Key LShift T>
        <Else If MouseIsOverWindowRect WoW4 846 1049 74 68>
            <SendLabel w2>
                <Key LShift T>
        <Else If MouseIsOverWindowRect WoW5 846 1049 74 68>
            <SendLabel w2>
                <Key LShift T>
    
        //------------------------------------------------------
        // Bottom half of unit frame
        //------------------------------------------------------
        
        <Else If MouseIsOverWindowRect WoW1 846 1134 74 66>
            <SendLabel w2>
                <Key T>
        <Else If MouseIsOverWindowRect WoW2 846 1134 74 66>
            <SendLabel w2>
                <Key T>
        <Else If MouseIsOverWindowRect WoW3 846 1134 74 66>
            <SendLabel w2>
                <Key T>
        <Else If MouseIsOverWindowRect WoW4 846 1134 74 66>
            <SendLabel w2>
                <Key T>
        <Else If MouseIsOverWindowRect WoW5 846 1134 74 66>
            <SendLabel w2>
                <Key T>
    Thats for 2 of my characters. I have a block like that for each one. For left, right, and middle click.
    Then at the end of each click I have the normal mouse use. I do have my unit frames vertical so I use above the name for one thing and below for another.
    Code:
    <Else> //--Defaults mouse to normal when you dont click a predetermined cordinate
            <SendFocusWin>
                <ClickMouse Down %Trigger%> //--Use to allow mouse look with left click
    <HotkeyUp LButton> //--Use to release left click when mouse looking
        <SendFocusWin>
            <ClickMouse Up %Trigger%>

  7. #7

    Default

    Ok thanks Rahven I will update mine and give it a try and give mine more depth never thought of using some of the stuff you did.

  8. #8

    Default

    In addition to what Rahven said, templates can come in handy here. When you follow his advice, you can shorten the amount of typing with templates:

    Code:
    <Hotkey ScrollLockOn LButton>
       <ApplyTemplate IfTemplate WoW5 88 299 125 58 w3 Numpad1>
       <ApplyTemplate ElseIfTemplate WoW5 88 367 125 58 w3 Numpad2>
       <ApplyTemplate ElseIfTemplate WoW5 88 433 125 58  w3 Numpad3>
       ... etc. ....
       <Else
          <SendFocusWin>
             <ClickMouse down %Trigger%>
    You also have to write the templates. I'll leave that as an exercise for the reader!
    �Author of HotkeyNet and Mojo

  9. #9

    Default

    I really do need to figure out templates someday cause he's right the way I did it was a TON of typing lol.

  10. #10

    Default

    So let me see...

    Code:
    <Template If>
      <If MouseIsOverWindowRect %1% %2%>
          <SendLabel %3%>
             <Key %4%>
    <EndTemplate>
    <Template Else>
      <If MouseIsOverWindowRect %1% %2%>
          <SendLabel %3%>
             <Key %4%>
    <EndTemplate>
    
    <Hotkey ScrollLockOn LButton>
       <ApplyTemplate If "WoW5" "88 299 125 58" "w3" "Numpad1">
       <ApplyTemplate ElseIf "WoW5" "88 367 125 58" "w3" "Numpad2">
       <ApplyTemplate ElseIf "WoW5" "88 433 125 58"  "w3" "Numpad3">
       <Else>
          <SendFocusWin>
             <ClickMouse down %Trigger%>
    I'm was really confused about the hole: %(number)% and what that is for seeing this helped some I think. Question also is the " " need to signify whats in the %% or is it just there location in the string? Also is this script language like that of like C++ or is this all in its own? I ask so that I might be able to pick up a How-To-For-Dummies book to get more info on stuff be for I ask.


    I found what I think is right here Rahven
    http://www.hotkeynet.com/phpBB3/view...emplates#p6944 (holy crap what a set-up)
    Man-O-Man everytime I see an example of someones set-up and script I wish I had the knowledge to see what they have in the script... And "they" say Multi-Boxxing is easy....
    Thanks again All

Posting Rules

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •