All in one spellbar or Combat Ability Screenshots Added

Forum for posting custom UIs, portions of UIs, and HUD stuff using MQ's enhancements.

Moderator: MacroQuest Developers

User avatar
Choakster
the antichrist
Posts: 124
Joined: Sat Aug 23, 2003 1:16 pm

Continued

Post by Choakster » Sat Apr 03, 2004 10:18 pm

Code: Select all

<Ui2DAnimation item="A_CombatButton3Pressed">
    <Cycle>true</Cycle>
    <Frames>
      <Texture>window_pieces06.tga</Texture>
      <Location>
        <X>80</X>
        <Y>80</Y>
      </Location>
      <Size>
        <CX>40</CX>
        <CY>40</CY>
      </Size>
      <Hotspot>
        <X>0</X>
        <Y>0</Y>
      </Hotspot>
      <Duration>1000</Duration>
    </Frames>
  </Ui2DAnimation>
  <Ui2DAnimation item="A_CombatButton3Flyby">
    <Cycle>true</Cycle>
    <Frames>
      <Texture>window_pieces06.tga</Texture>
      <Location>
        <X>40</X>
        <Y>80</Y>
      </Location>
      <Size>
        <CX>40</CX>
        <CY>40</CY>
      </Size>
      <Hotspot>
        <X>0</X>
        <Y>0</Y>
      </Hotspot>
      <Duration>1000</Duration>
    </Frames>
  </Ui2DAnimation>
  <Ui2DAnimation item="A_CombatButton3PressedFlyby">
    <Cycle>true</Cycle>
    <Frames>
      <Texture>window_pieces06.tga</Texture>
      <Location>
        <X>120</X>
        <Y>80</Y>
      </Location>
      <Size>
        <CX>40</CX>
        <CY>40</CY>
      </Size>
      <Hotspot>
        <X>0</X>
        <Y>0</Y>
      </Hotspot>
      <Duration>1000</Duration>
    </Frames>
  </Ui2DAnimation>
  <Ui2DAnimation item="A_CombatButton3Disabled">
    <Cycle>true</Cycle>
    <Frames>
      <Texture>window_pieces06.tga</Texture>
      <Location>
        <X>160</X>
        <Y>80</Y>
      </Location>
      <Size>
        <CX>40</CX>
        <CY>40</CY>
      </Size>
      <Hotspot>
        <X>0</X>
        <Y>0</Y>
      </Hotspot>
      <Duration>1000</Duration>
    </Frames>
  </Ui2DAnimation>
  <Ui2DAnimation item="A_CombatButton4Normal">
    <Cycle>true</Cycle>
    <Frames>
      <Texture>window_pieces06.tga</Texture>
      <Location>
        <X>0</X>
        <Y>120</Y>
      </Location>
      <Size>
        <CX>40</CX>
        <CY>40</CY>
      </Size>
      <Hotspot>
        <X>0</X>
        <Y>0</Y>
      </Hotspot>
      <Duration>1000</Duration>
    </Frames>
  </Ui2DAnimation>
  <Ui2DAnimation item="A_CombatButton4Pressed">
    <Cycle>true</Cycle>
    <Frames>
      <Texture>window_pieces06.tga</Texture>
      <Location>
        <X>80</X>
        <Y>120</Y>
      </Location>
      <Size>
        <CX>40</CX>
        <CY>40</CY>
      </Size>
      <Hotspot>
        <X>0</X>
        <Y>0</Y>
      </Hotspot>
      <Duration>1000</Duration>
    </Frames>
  </Ui2DAnimation>
  <Ui2DAnimation item="A_CombatButton4Flyby">
    <Cycle>true</Cycle>
    <Frames>
      <Texture>window_pieces06.tga</Texture>
      <Location>
        <X>40</X>
        <Y>120</Y>
      </Location>
      <Size>
        <CX>40</CX>
        <CY>40</CY>
      </Size>
      <Hotspot>
        <X>0</X>
        <Y>0</Y>
      </Hotspot>
      <Duration>1000</Duration>
    </Frames>
  </Ui2DAnimation>
  <Ui2DAnimation item="A_CombatButton4PressedFlyby">
    <Cycle>true</Cycle>
    <Frames>
      <Texture>window_pieces06.tga</Texture>
      <Location>
        <X>120</X>
        <Y>120</Y>
      </Location>
      <Size>
        <CX>40</CX>
        <CY>40</CY>
      </Size>
      <Hotspot>
        <X>0</X>
        <Y>0</Y>
      </Hotspot>
      <Duration>1000</Duration>
    </Frames>
  </Ui2DAnimation>
  <Ui2DAnimation item="A_CombatButton4Disabled">
    <Cycle>true</Cycle>
    <Frames>
      <Texture>window_pieces06.tga</Texture>
      <Location>
        <X>160</X>
        <Y>120</Y>
      </Location>
      <Size>
        <CX>40</CX>
        <CY>40</CY>
      </Size>
      <Hotspot>
        <X>0</X>
        <Y>0</Y>
      </Hotspot>
      <Duration>1000</Duration>
    </Frames>
  </Ui2DAnimation>
  <Ui2DAnimation item="A_CombatButton5Normal">
    <Cycle>true</Cycle>
    <Frames>
      <Texture>window_pieces06.tga</Texture>
      <Location>
        <X>0</X>
        <Y>160</Y>
      </Location>
      <Size>
        <CX>40</CX>
        <CY>40</CY>
      </Size>
      <Hotspot>
        <X>0</X>
        <Y>0</Y>
      </Hotspot>
      <Duration>1000</Duration>
    </Frames>
  </Ui2DAnimation>
  <Ui2DAnimation item="A_CombatButton5Pressed">
    <Cycle>true</Cycle>
    <Frames>
      <Texture>window_pieces06.tga</Texture>
      <Location>
        <X>80</X>
        <Y>160</Y>
      </Location>
      <Size>
        <CX>40</CX>
        <CY>40</CY>
      </Size>
      <Hotspot>
        <X>0</X>
        <Y>0</Y>
      </Hotspot>
      <Duration>1000</Duration>
    </Frames>
  </Ui2DAnimation>
  <Ui2DAnimation item="A_CombatButton5Flyby">
    <Cycle>true</Cycle>
    <Frames>
      <Texture>window_pieces06.tga</Texture>
      <Location>
        <X>40</X>
        <Y>160</Y>
      </Location>
      <Size>
        <CX>40</CX>
        <CY>40</CY>
      </Size>
      <Hotspot>
        <X>0</X>
        <Y>0</Y>
      </Hotspot>
      <Duration>1000</Duration>
    </Frames>
  </Ui2DAnimation>
  <Ui2DAnimation item="A_CombatButton5PressedFlyby">
    <Cycle>true</Cycle>
    <Frames>
      <Texture>window_pieces06.tga</Texture>
      <Location>
        <X>120</X>
        <Y>160</Y>
      </Location>
      <Size>
        <CX>40</CX>
        <CY>40</CY>
      </Size>
      <Hotspot>
        <X>0</X>
        <Y>0</Y>
      </Hotspot>
      <Duration>1000</Duration>
    </Frames>
  </Ui2DAnimation>
  <Ui2DAnimation item="A_CombatButton5Disabled">
    <Cycle>true</Cycle>
    <Frames>
      <Texture>window_pieces06.tga</Texture>
      <Location>
        <X>160</X>
        <Y>160</Y>
      </Location>
      <Size>
        <CX>40</CX>
        <CY>40</CY>
      </Size>
      <Hotspot>
        <X>0</X>
        <Y>0</Y>
      </Hotspot>
      <Duration>1000</Duration>
    </Frames>
  </Ui2DAnimation>
  <Ui2DAnimation item="A_CombatButton6Normal">
    <Cycle>true</Cycle>
    <Frames>
      <Texture>window_pieces06.tga</Texture>
      <Location>
        <X>0</X>
        <Y>200</Y>
      </Location>
      <Size>
        <CX>40</CX>
        <CY>40</CY>
      </Size>
      <Hotspot>
        <X>0</X>
        <Y>0</Y>
      </Hotspot>
      <Duration>1000</Duration>
    </Frames>
  </Ui2DAnimation>
  <Ui2DAnimation item="A_CombatButton6Pressed">
    <Cycle>true</Cycle>
    <Frames>
      <Texture>window_pieces06.tga</Texture>
      <Location>
        <X>80</X>
        <Y>200</Y>
      </Location>
      <Size>
        <CX>40</CX>
        <CY>40</CY>
      </Size>
      <Hotspot>
        <X>0</X>
        <Y>0</Y>
      </Hotspot>
      <Duration>1000</Duration>
    </Frames>
  </Ui2DAnimation>
  <Ui2DAnimation item="A_CombatButton6Flyby">
    <Cycle>true</Cycle>
    <Frames>
      <Texture>window_pieces06.tga</Texture>
      <Location>
        <X>40</X>
        <Y>200</Y>
      </Location>
      <Size>
        <CX>40</CX>
        <CY>40</CY>
      </Size>
      <Hotspot>
        <X>0</X>
        <Y>0</Y>
      </Hotspot>
      <Duration>1000</Duration>
    </Frames>
  </Ui2DAnimation>
  <Ui2DAnimation item="A_CombatButton6PressedFlyby">
    <Cycle>true</Cycle>
    <Frames>
      <Texture>window_pieces06.tga</Texture>
      <Location>
        <X>120</X>
        <Y>200</Y>
      </Location>
      <Size>
        <CX>40</CX>
        <CY>40</CY>
      </Size>
      <Hotspot>
        <X>0</X>
        <Y>0</Y>
      </Hotspot>
      <Duration>1000</Duration>
    </Frames>
  </Ui2DAnimation>
  <Ui2DAnimation item="A_CombatButton6Disabled">
    <Cycle>true</Cycle>
    <Frames>
      <Texture>window_pieces06.tga</Texture>
      <Location>
        <X>160</X>
        <Y>200</Y>
      </Location>
      <Size>
        <CX>40</CX>
        <CY>40</CY>
      </Size>
      <Hotspot>
        <X>0</X>
        <Y>0</Y>
      </Hotspot>
      <Duration>1000</Duration>
    </Frames>
  </Ui2DAnimation>
  <Ui2DAnimation item="A_CombatButton7Normal">
    <Cycle>true</Cycle>
    <Frames>
      <Texture>window_pieces07.tga</Texture>
      <Location>
        <X>0</X>
        <Y>0</Y>
      </Location>
      <Size>
        <CX>40</CX>
        <CY>40</CY>
      </Size>
      <Hotspot>
        <X>0</X>
        <Y>0</Y>
      </Hotspot>
      <Duration>1000</Duration>
    </Frames>
  </Ui2DAnimation>
  <Ui2DAnimation item="A_CombatButton7Pressed">
    <Cycle>true</Cycle>
    <Frames>
      <Texture>window_pieces07.tga</Texture>
      <Location>
        <X>80</X>
        <Y>0</Y>
      </Location>
      <Size>
        <CX>40</CX>
        <CY>40</CY>
      </Size>
      <Hotspot>
        <X>0</X>
        <Y>0</Y>
      </Hotspot>
      <Duration>1000</Duration>
    </Frames>
  </Ui2DAnimation>
  <Ui2DAnimation item="A_CombatButton7Flyby">
    <Cycle>true</Cycle>
    <Frames>
      <Texture>window_pieces07.tga</Texture>
      <Location>
        <X>40</X>
        <Y>0</Y>
      </Location>
      <Size>
        <CX>40</CX>
        <CY>40</CY>
      </Size>
      <Hotspot>
        <X>0</X>
        <Y>0</Y>
      </Hotspot>
      <Duration>1000</Duration>
    </Frames>
  </Ui2DAnimation>
  <Ui2DAnimation item="A_CombatButton7PressedFlyby">
    <Cycle>true</Cycle>
    <Frames>
      <Texture>window_pieces07.tga</Texture>
      <Location>
        <X>120</X>
        <Y>0</Y>
      </Location>
      <Size>
        <CX>40</CX>
        <CY>40</CY>
      </Size>
      <Hotspot>
        <X>0</X>
        <Y>0</Y>
      </Hotspot>
      <Duration>1000</Duration>
    </Frames>
  </Ui2DAnimation>
  <Ui2DAnimation item="A_CombatButton7Disabled">
    <Cycle>true</Cycle>
    <Frames>
      <Texture>window_pieces07.tga</Texture>
      <Location>
        <X>160</X>
        <Y>0</Y>
      </Location>
      <Size>
        <CX>40</CX>
        <CY>40</CY>
      </Size>
      <Hotspot>
        <X>0</X>
        <Y>0</Y>
      </Hotspot>
      <Duration>1000</Duration>
    </Frames>
  </Ui2DAnimation>
  <Ui2DAnimation item="A_CombatButton8Normal">
    <Cycle>true</Cycle>
    <Frames>
      <Texture>window_pieces07.tga</Texture>
      <Location>
        <X>0</X>
        <Y>40</Y>
      </Location>
      <Size>
        <CX>40</CX>
        <CY>40</CY>
      </Size>
      <Hotspot>
        <X>0</X>
        <Y>0</Y>
      </Hotspot>
      <Duration>1000</Duration>
    </Frames>
  </Ui2DAnimation>
  <Ui2DAnimation item="A_CombatButton8Pressed">
    <Cycle>true</Cycle>
    <Frames>
      <Texture>window_pieces07.tga</Texture>
      <Location>
        <X>80</X>
        <Y>40</Y>
      </Location>
      <Size>
        <CX>40</CX>
        <CY>40</CY>
      </Size>
      <Hotspot>
        <X>0</X>
        <Y>0</Y>
      </Hotspot>
      <Duration>1000</Duration>
    </Frames>
  </Ui2DAnimation>
  <Ui2DAnimation item="A_CombatButton8Flyby">
    <Cycle>true</Cycle>
    <Frames>
      <Texture>window_pieces07.tga</Texture>
      <Location>
        <X>40</X>
        <Y>40</Y>
      </Location>
      <Size>
        <CX>40</CX>
        <CY>40</CY>
      </Size>
      <Hotspot>
        <X>0</X>
        <Y>0</Y>
      </Hotspot>
      <Duration>1000</Duration>
    </Frames>
  </Ui2DAnimation>
  <Ui2DAnimation item="A_CombatButton8PressedFlyby">
    <Cycle>true</Cycle>
    <Frames>
      <Texture>window_pieces07.tga</Texture>
      <Location>
        <X>120</X>
        <Y>40</Y>
      </Location>
      <Size>
        <CX>40</CX>
        <CY>40</CY>
      </Size>
      <Hotspot>
        <X>0</X>
        <Y>0</Y>
      </Hotspot>
      <Duration>1000</Duration>
    </Frames>
  </Ui2DAnimation>
  <Ui2DAnimation item="A_CombatButton8Disabled">
    <Cycle>true</Cycle>
    <Frames>
      <Texture>window_pieces07.tga</Texture>
      <Location>
        <X>160</X>
        <Y>40</Y>
      </Location>
      <Size>
        <CX>40</CX>
        <CY>40</CY>
      </Size>
      <Hotspot>
        <X>0</X>
        <Y>0</Y>
      </Hotspot>
      <Duration>1000</Duration>
    </Frames>
  </Ui2DAnimation>
  <Button item="CAW_Button1">
    <ScreenID>CAW_Button1</ScreenID>
    <Font>1</Font>
    <RelativePosition>true</RelativePosition>
    <Location>
      <X>1</X>
      <Y>19</Y>
    </Location>
    <Size>
      <CX>20</CX>
      <CY>20</CY>
    </Size>
    <Text>1</Text>
    <TextColor>
      <R>255</R>
      <G>255</G>
      <B>0</B>
    </TextColor>
    <DecalSize>
      <CX>20</CX>
      <CY>20</CY>
    </DecalSize>
    <ButtonDrawTemplate>
      <Normal>A_CombatButton1Normal</Normal>
      <Pressed>A_CombatButton1Pressed</Pressed>
      <Flyby>A_CombatButton1Flyby</Flyby>
      <Disabled>A_CombatButton1Disabled</Disabled>
      <PressedFlyby>A_CombatButton1PressedFlyby</PressedFlyby>
    </ButtonDrawTemplate>
  </Button>
  <Button item="CAW_Button2">
    <ScreenID>CAW_Button2</ScreenID>
    <Font>1</Font>
    <RelativePosition>true</RelativePosition>
    <Location>
      <X>21</X>
      <Y>19</Y>
    </Location>
    <Size>
      <CX>20</CX>
      <CY>20</CY>
    </Size>
    <Text>2</Text>
    <TextColor>
      <R>255</R>
      <G>255</G>
      <B>0</B>
    </TextColor>
    <DecalSize>
      <CX>20</CX>
      <CY>20</CY>
    </DecalSize>
    <ButtonDrawTemplate>
      <Normal>A_CombatButton2Normal</Normal>
      <Pressed>A_CombatButton2Pressed</Pressed>
      <Flyby>A_CombatButton2Flyby</Flyby>
      <Disabled>A_CombatButton2Disabled</Disabled>
      <PressedFlyby>A_CombatButton2PressedFlyby</PressedFlyby>
    </ButtonDrawTemplate>
  </Button>
  <Button item="CAW_Button3">
    <ScreenID>CAW_Button3</ScreenID>
    <Font>1</Font>
    <RelativePosition>true</RelativePosition>
    <Location>
      <X>41</X>
      <Y>19</Y>
    </Location>
    <Size>
      <CX>20</CX>
      <CY>20</CY>
    </Size>
    <Text>3</Text>
    <TextColor>
      <R>255</R>
      <G>255</G>
      <B>0</B>
    </TextColor>
    <DecalSize>
      <CX>20</CX>
      <CY>20</CY>
    </DecalSize>
    <ButtonDrawTemplate>
      <Normal>A_CombatButton3Normal</Normal>
      <Pressed>A_CombatButton3Pressed</Pressed>
      <Flyby>A_CombatButton3Flyby</Flyby>
      <Disabled>A_CombatButton3Disabled</Disabled>
      <PressedFlyby>A_CombatButton3PressedFlyby</PressedFlyby>
    </ButtonDrawTemplate>
  </Button>
  <Button item="CAW_Button4">
    <ScreenID>CAW_Button4</ScreenID>
    <Font>1</Font>
    <RelativePosition>true</RelativePosition>
    <Location>
      <X>61</X>
      <Y>19</Y>
    </Location>
    <Size>
      <CX>20</CX>
      <CY>20</CY>
    </Size>
    <Text>4</Text>
    <TextColor>
      <R>255</R>
      <G>255</G>
      <B>0</B>
    </TextColor>
    <DecalSize>
      <CX>20</CX>
      <CY>20</CY>
    </DecalSize>
    <ButtonDrawTemplate>
      <Normal>A_CombatButton4Normal</Normal>
      <Pressed>A_CombatButton4Pressed</Pressed>
      <Flyby>A_CombatButton4Flyby</Flyby>
      <Disabled>A_CombatButton4Disabled</Disabled>
      <PressedFlyby>A_CombatButton4PressedFlyby</PressedFlyby>
    </ButtonDrawTemplate>
  </Button>
  <Button item="CAW_Button5">
    <ScreenID>CAW_Button5</ScreenID>
    <Font>1</Font>
    <RelativePosition>true</RelativePosition>
    <Location>
      <X>81</X>
      <Y>19</Y>
    </Location>
    <Size>
      <CX>20</CX>
      <CY>20</CY>
    </Size>
    <Text>5</Text>
    <TextColor>
      <R>255</R>
      <G>255</G>
      <B>0</B>
    </TextColor>
    <DecalSize>
      <CX>20</CX>
      <CY>20</CY>
    </DecalSize>
    <ButtonDrawTemplate>
      <Normal>A_CombatButton5Normal</Normal>
      <Pressed>A_CombatButton5Pressed</Pressed>
      <Flyby>A_CombatButton5Flyby</Flyby>
      <Disabled>A_CombatButton5Disabled</Disabled>
      <PressedFlyby>A_CombatButton5PressedFlyby</PressedFlyby>
    </ButtonDrawTemplate>
  </Button>
  <Button item="CAW_Button6">
    <ScreenID>CAW_Button6</ScreenID>
    <Font>1</Font>
    <RelativePosition>true</RelativePosition>
    <Location>
      <X>101</X>
      <Y>19</Y>
    </Location>
    <Size>
      <CX>20</CX>
      <CY>20</CY>
    </Size>
    <Text>6</Text>
    <TextColor>
      <R>255</R>
      <G>255</G>
      <B>0</B>
    </TextColor>
    <DecalSize>
      <CX>20</CX>
      <CY>20</CY>
    </DecalSize>
    <ButtonDrawTemplate>
      <Normal>A_CombatButton6Normal</Normal>
      <Pressed>A_CombatButton6Pressed</Pressed>
      <Flyby>A_CombatButton6Flyby</Flyby>
      <Disabled>A_CombatButton6Disabled</Disabled>
      <PressedFlyby>A_CombatButton6PressedFlyby</PressedFlyby>
    </ButtonDrawTemplate>
  </Button>
  <Button item="CAW_Button7">
    <ScreenID>CAW_Button7</ScreenID>
    <Font>1</Font>
    <RelativePosition>true</RelativePosition>
    <Location>
      <X>121</X>
      <Y>19</Y>
    </Location>
    <Size>
      <CX>20</CX>
      <CY>20</CY>
    </Size>
    <Text>7</Text>
    <TextColor>
      <R>255</R>
      <G>255</G>
      <B>0</B>
    </TextColor>
    <DecalSize>
      <CX>20</CX>
      <CY>20</CY>
    </DecalSize>
    <ButtonDrawTemplate>
      <Normal>A_CombatButton7Normal</Normal>
      <Pressed>A_CombatButton7Pressed</Pressed>
      <Flyby>A_CombatButton7Flyby</Flyby>
      <Disabled>A_CombatButton7Disabled</Disabled>
      <PressedFlyby>A_CombatButton7PressedFlyby</PressedFlyby>
    </ButtonDrawTemplate>
  </Button>
  <Button item="CAW_Button8">
    <ScreenID>CAW_Button8</ScreenID>
    <Font>1</Font>
    <RelativePosition>true</RelativePosition>
    <Location>
      <X>141</X>
      <Y>19</Y>
    </Location>
    <Size>
      <CX>20</CX>
      <CY>20</CY>
    </Size>
    <Text>8</Text>
    <TextColor>
      <R>255</R>
      <G>255</G>
      <B>0</B>
    </TextColor>
    <DecalSize>
      <CX>20</CX>
      <CY>20</CY>
    </DecalSize>
    <ButtonDrawTemplate>
      <Normal>A_CombatButton8Normal</Normal>
      <Pressed>A_CombatButton8Pressed</Pressed>
      <Flyby>A_CombatButton8Flyby</Flyby>
      <Disabled>A_CombatButton8Disabled</Disabled>
      <PressedFlyby>A_CombatButton8PressedFlyby</PressedFlyby>
    </ButtonDrawTemplate>
  </Button>
  <Button item="CAW_CombatEffectButton">
    <ScreenID>CAW_CombatEffectButton</ScreenID>
    <RelativePosition>true</RelativePosition>
    <Location>
      <X>1</X>
      <Y>1</Y>
    </Location>
    <Size>
      <CX>15</CX>
      <CY>15</CY>
    </Size>
    <Style_VScroll>false</Style_VScroll>
    <Style_HScroll>false</Style_HScroll>
    <Style_Transparent>false</Style_Transparent>
    <TooltipReference>Left-click to remove this effect</TooltipReference>
    <Style_Checkbox>false</Style_Checkbox>
    <ButtonDrawTemplate>
      <Normal>BlueIconBackground</Normal>
      <NormalDecal>BuffIcons</NormalDecal>
    </ButtonDrawTemplate>
    <DecalOffset>
      <X>0</X>
      <Y>0</Y>
    </DecalOffset>
    <DecalSize>
      <CX>15</CX>
      <CY>15</CY>
    </DecalSize>
  </Button>
  <Label item="CAW_CombatEffectLabel">
    <ScreenID>CAW_CombatEffectLabel</ScreenID>
    <RelativePosition>true</RelativePosition>
    <Location>
      <X>21</X>
      <Y>2</Y>
    </Location>
    <Size>
      <CX>129</CX>
      <CY>13</CY>
    </Size>
    <Text>No Effect</Text>
    <TextColor>
      <R>255</R>
      <G>255</G>
      <B>0</B>
    </TextColor>
    <NoWrap>true</NoWrap>
    <AlignCenter>false</AlignCenter>
    <AlignRight>false</AlignRight>
    <Font>2</Font>
  </Label>
  <Gauge item="CAW_CombatEffectTimeRemainingGauge">
    <ScreenID>CAW_CombatEffectTimeRemainingGauge</ScreenID>
    <RelativePosition>true</RelativePosition>
    <Location>
      <X>173</X>
      <Y>4</Y>
    </Location>
    <Size>
      <CX>116</CX>
      <CY>8</CY>
    </Size>
    <GaugeOffsetY>0</GaugeOffsetY>
    <Style_VScroll>false</Style_VScroll>
    <Style_HScroll>false</Style_HScroll>
    <Style_Transparent>false</Style_Transparent>
    <FillTint>
      <R>128</R>
      <G>128</G>
      <B>128</B>
    </FillTint>
    <LinesFillTint>
      <R>0</R>
      <G>0</G>
      <B>0</B>
    </LinesFillTint>
    <DrawLinesFill>false</DrawLinesFill>
    <EQType>26</EQType>
    <GaugeDrawTemplate>
      <Background>A_GaugeBackground</Background>
      <Fill>A_GaugeFill</Fill>
      <Lines>A_GaugeLines</Lines>
      <LinesFill>A_GaugeLinesFill</LinesFill>
      <EndCapLeft>A_GaugeEndCapLeft</EndCapLeft>
      <EndCapRight>A_GaugeEndCapRight</EndCapRight>
    </GaugeDrawTemplate>
  </Gauge>
  <Button item="CAW_OpenCombatSkillSelectWnd">
    <ScreenID>CAW_OpenCombatSkillSelectWnd</ScreenID>
    <RelativePosition>true</RelativePosition>
    <Location>
      <X>151</X>
      <Y>2</Y>
    </Location>
    <Size>
      <CX>15</CX>
      <CY>15</CY>
    </Size>
    <Text>S</Text>
    <TooltipReference>Open up a window with detailed information on all of your known combat skills.</TooltipReference>
    <TextColor>
      <R>255</R>
      <G>255</G>
      <B>0</B>
    </TextColor>
    <ButtonDrawTemplate>
      <Normal>A_BtnNormal</Normal>
      <Pressed>A_BtnPressed</Pressed>
      <Flyby>A_BtnFlyby</Flyby>
      <Disabled>A_BtnDisabled</Disabled>
      <PressedFlyby>A_BtnPressedFlyby</PressedFlyby>
    </ButtonDrawTemplate>
    <Font>1</Font>
  </Button>
  <Screen item="CombatAbilityWnd">
    <ScreenID />
    <Font>2</Font>
    <RelativePosition>false</RelativePosition>
    <Location>
      <X>50</X>
      <Y>50</Y>
    </Location>
    <Size>
      <CX>300</CX>
      <CY>120</CY>
    </Size>
    <Text>Combat Abilities</Text>
    <Style_VScroll>false</Style_VScroll>
    <Style_HScroll>false</Style_HScroll>
    <Style_Transparent>false</Style_Transparent>
    <DrawTemplate>WDT_Rounded</DrawTemplate>
    <Style_Titlebar>False</Style_Titlebar>
    <Style_Closebox>False</Style_Closebox>
    <Style_Minimizebox>False</Style_Minimizebox>
    <Style_Border>False</Style_Border>
    <Style_Sizable>True</Style_Sizable>
    <Pieces>CAW_CombatEffectTimeRemainingGauge</Pieces>
    <Pieces>CAW_CombatEffectButton</Pieces>
    <Pieces>CAW_CombatEffectLabel</Pieces>
    <Pieces>CAW_OpenCombatSkillSelectWnd</Pieces>
    <Pieces>CAW_Button1</Pieces>
    <Pieces>CAW_Button2</Pieces>
    <Pieces>CAW_Button3</Pieces>
    <Pieces>CAW_Button4</Pieces>
    <Pieces>CAW_Button5</Pieces>
    <Pieces>CAW_Button6</Pieces>
    <Pieces>CAW_Button7</Pieces>
    <Pieces>CAW_Button8</Pieces>
    <Pieces>CATarget Hit Points</Pieces>
    <Pieces>CAPlayer Hit Points</Pieces>
    <Pieces>CAPlayer Stamina</Pieces>
    <Pieces>CAPlayer Experience</Pieces>
    <Pieces>CAPlayer Alternate Experience</Pieces>
    <Pieces>CAHPRegen</Pieces>
    <Pieces>CAHPCurrent</Pieces>
    <Pieces>CAHPMax</Pieces>
    <Pieces>CAYLabel</Pieces>
    <Pieces>CAXLabel</Pieces>
    <Pieces>CATarget Guild</Pieces>
    <Pieces>CATarget  Class</Pieces>
    <Pieces>CATarget X Coordinates</Pieces>
    <Pieces>CATarget Y Coordinates</Pieces>
    <Pieces>CATargetLevell</Pieces>
    <Pieces>CAPlayerHPPercent</Pieces>
    <Pieces>CAPlayerHPPercent</Pieces>
    <Pieces>CAPLayerAAXPPercent</Pieces>
    <Pieces>CARange</Pieces>
    <Pieces>CAPrimary</Pieces>
    <Pieces>CASecondary</Pieces>
    <Pieces>CAPLayerXPPercent</Pieces>
    <Pieces>CAPlayer Stamina Percent</Pieces>
  </Screen>
</XML>

User avatar
Choakster
the antichrist
Posts: 124
Joined: Sat Aug 23, 2003 1:16 pm

Sorry

Post by Choakster » Sat Apr 03, 2004 10:20 pm

Sorry about havin to do 2 posts but this XML was a bit large and wouldnt fit on one post

Jsut copy the code from the first post paste it in notepad or word pad and then copy the rest from the 2nd post and paste it underneath the previous ..

Features

- Has Target level guild location
- Info for player HP XP AAXP and Fatigue (as opposed to the caster spell bar wich had mana)
-Added Primary Secondary and Range slots to this as well for faster weopons swithcing.


Possible futer add in to this will be Str Dex and Agi labels.

PLease provide feedback so I can insure people are getting what they want ..
Last edited by Choakster on Sun Apr 04, 2004 9:27 pm, edited 1 time in total.

User avatar
Choakster
the antichrist
Posts: 124
Joined: Sat Aug 23, 2003 1:16 pm

Screenshots

Post by Choakster » Sun Apr 04, 2004 4:22 pm

Spellbar window


Combat ability window
Last edited by Choakster on Thu Sep 16, 2004 11:56 pm, edited 1 time in total.

llama
orc pawn
orc pawn
Posts: 20
Joined: Mon Dec 29, 2003 8:13 am

Post by llama » Sun Apr 04, 2004 4:41 pm

Good work, very good work...

May I ask what you are using to see the ui without loading EQ ?

User avatar
Choakster
the antichrist
Posts: 124
Joined: Sat Aug 23, 2003 1:16 pm

Im using

Post by Choakster » Sun Apr 04, 2004 4:53 pm

After I create the basic layout scheme I open it up in sidl

THen double click on the higlighted screen box like above .. As far as the screen capture Im using paint shop pro ..
Last edited by Choakster on Thu Sep 16, 2004 11:56 pm, edited 1 time in total.

Eat_the_meek
orc pawn
orc pawn
Posts: 11
Joined: Sat Feb 07, 2004 9:03 pm

Post by Eat_the_meek » Mon Apr 05, 2004 4:28 pm

What program is that a screen shot of?

Rand
a lesser mummy
a lesser mummy
Posts: 44
Joined: Sun Jun 08, 2003 8:37 am

Post by Rand » Mon Apr 05, 2004 7:45 pm


User avatar
Choakster
the antichrist
Posts: 124
Joined: Sat Aug 23, 2003 1:16 pm

SidlWidl

Post by Choakster » Mon Apr 05, 2004 8:32 pm

The screenshot is from sidlwidl if you download it make sure you get the updated EQtoolbox Template, unless you know how to make yer own templates . I personally only use sidl to view and make small tweaks as it is a real buggy program ..

TacoBob
decaying skeleton
decaying skeleton
Posts: 1
Joined: Fri Apr 09, 2004 11:48 am

Post by TacoBob » Fri Apr 09, 2004 12:06 pm

I am so lost, I know zero about coding, be it mq2, xml or anything else, but what I do know is that I have the latest Apr 7th patch, have cleaned and done a batch rebuild all compile of mq2 and everything works great, except when I try to get this going.
I have tried both the combat window and the spellcast window, they show up as the look here, however, the information is not what it should be. Under the target name where class and guild should be I get ${Target.Class} and ${Target.Guild}, X and Y cordinates are ${Target.X} and ${Target.Y}, and you guess it, beside my HP and Mana reads ${Me. in all 3 fields for both HP and Mana.
I Perfer to use the combat window over the spell casting window, but neither are working.
Yes Mq is running and is helping me work on my Evok skill as I write this.
On a side note about customization of this, I am unsure what the X Y cordinates look like, but does it list the relitive position to the target and range? could anybody mod this easily to do so if it does not? I would be more useful to me than just giving me the X Y loc of my target
Looks great, just wish I coulg get it running :( any help would be greatly appreciated.

User avatar
Choakster
the antichrist
Posts: 124
Joined: Sat Aug 23, 2003 1:16 pm

Taco

Post by Choakster » Sat Apr 10, 2004 9:13 am

To fix your problem with the labels not showing
Go to your MQ2 Directory find the MQ2main folder inside it theres a File called
MQ2main.h
Change the line

Code: Select all

#define USEMQ2PARMS
//#define USEMQ2DATATYPES 
to

Code: Select all

#define USEMQ2DATATYPES  
then recompile. The apr 9 source for MQ2 as well as the previous do not use the MQ2data struct as the default and are still default to the parms wich is why you have to delete the parms statement the statement that defines Parms and Un comment the one that says eqdata if that makes any sense to ya . Wich is why you see all that text .. or just copy the code below open note or wordpad paste it and save it as MQ2Main.h the place the file in your MQ2 main Directory make sure it overwrites the old one then jsut recompile MQ2 ..

Code: Select all

/*****************************************************************************
    MQ2Main.dll: MacroQuest2's extension DLL for EverQuest
    Copyright (C) 2002-2003 Plazmic, 2003-2004 Lax

    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License, version 2, as published by
    the Free Software Foundation.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.
******************************************************************************/

#define VersionString "Spring 2004 Edition"
#define DebugHeader "[MQ2]"
#define LoadedString "MQ2 Loaded."
#define ToUnloadString "MQ2 Unloading..."
#define UnloadedString "MQ2 Unloaded."

#define WIN32_LEAN_AND_MEAN
#define _WIN32_WINNT 0x510
#define DIRECTINPUT_VERSION 0x800

// uncomment this line to turn off the single-line benchmark macro
// #define DISABLE_BENCHMARKS

// Windows Header Files:
#include <windows.h>
#include <stdio.h>
#include <stdlib.h>
#include "..\Dxsdk81\include\dinput.h"
#include <time.h>
#include <io.h>
#include <fcntl.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <winsock.h>
#include <math.h>
#include <map>
#include <string>
#include <algorithm>
using namespace std;
#include "..\Detours\inc\detours.h" 
#include "eqgame.h"

#ifdef EQLIB_EXPORTS
#define EQLIB_API extern "C" __declspec(dllexport)
#define EQLIB_VAR extern "C" __declspec(dllexport)
#define EQLIB_OBJECT __declspec(dllexport)
#else
#define EQLIB_API extern "C" __declspec(dllimport)
#define EQLIB_VAR extern "C" __declspec(dllimport)
#define EQLIB_OBJECT __declspec(dllimport)
#endif

#ifdef MQ2PLUGIN
#define FromPlugin 1
#else
#define FromPlugin 0
#endif

#define USEMQ2DATATYPES


// reroute malloc/free
EQLIB_API VOID *MQ2Malloc(size_t size);
EQLIB_API VOID MQ2Free(VOID *memblock);
/*
#ifdef MQ2PLUGIN
#define malloc(x) MQ2Malloc(x)
#define free(x) MQ2Free(x)
#else
#ifdef DEBUG_ALLOC
#define malloc(x) MQ2Malloc(x)
#define free(x) MQ2Free(x)
#endif
#endif
*/
#ifdef DEBUG_ALLOC
extern DWORD CountMallocs;
extern DWORD CountFrees;
#endif

#define REVERSE_DETOUR(function,offset) __declspec(naked) function\
{\
	__asm{mov eax, offset};\
	__asm{jmp eax};\
}

#define REVERSE_VIRTUAL_DETOUR(function,offset) __declspec(naked) function\
{\
	__asm{mov eax, [ecx]};\
	__asm{lea eax, [eax+offset]};\
	__asm{mov eax, [eax]};\
	__asm{jmp eax};\
}

#define PreserveRegisters(code) \
{\
	__asm {push eax};\
	__asm {push ebx};\
	__asm {push ecx};\
	__asm {push edx};\
	__asm {push esi};\
	__asm {push edi};\
	code;\
	__asm {pop edi};\
	__asm {pop esi};\
	__asm {pop edx};\
	__asm {pop ecx};\
	__asm {pop ebx};\
	__asm {pop eax};\
}

#define SetWndNotification(thisclass) \
{\
	int (thisclass::*pfWndNotification)(CXWnd *pWnd, unsigned int Message, void *unknown)=WndNotification;\
	SetvfTable(32,*(DWORD*)&pfWndNotification);\
}

#define EasyClassDetour(offset,detourclass,detourname,returntype,parameters,trampolinename)\
{\
	returntype (detourclass::*pfDetour)parameters = detourclass::detourname; \
	returntype (detourclass::*pfTrampoline)parameters = detourclass::trampolinename; \
	AddDetour((DWORD)offset,*(PBYTE*)&pfDetour,*(PBYTE*)&pfTrampoline);\
}

#define EasyDetour(offset,detourname,returntype,parameters,trampolinename)\
{\
	returntype (*pfDetour)parameters = detourname; \
	returntype (*pfTrampoline)parameters = trampolinename; \
	AddDetour((DWORD)offset,*(PBYTE*)&pfDetour,*(PBYTE*)&pfTrampoline);\
}

#ifndef DOUBLE
typedef double DOUBLE;
#endif
#ifndef THIS_
#define THIS_                   INTERFACE FAR* This,
#endif

#ifdef DEBUG_TRY
#define DebugTry(x) DebugSpew("Trying %s",#x);x;DebugSpew("%s complete",#x)
#else
#define DebugTry(x) x
#endif

#define MakeLower(yourstring) transform (yourstring.begin(),yourstring.end(), yourstring.begin(), tolower);

#define MAX_VARNAME 64
#define MAX_STRING            2048


#include "EQData.h"
#include "EQUIStructs.h"
#include "EQClasses.h"

#include "MQ2Prototypes.h"
#include "MQ2Internal.h"
#include "MQ2Globals.h"



/* BENCHMARKING */
#ifdef DISABLE_BENCHMARKS
#define Benchmark(BMHandle,code) code
#else
#define Benchmark(BMHandle,code) {EnterMQ2Benchmark(BMHandle);code;ExitMQ2Benchmark(BMHandle);}
#endif
EQLIB_API VOID ShutdownMQ2Benchmarks();
EQLIB_API VOID InitializeMQ2Benchmarks();
EQLIB_API BOOL GetMQ2Benchmark(DWORD BMHandle, MQBENCH &Dest);
EQLIB_API VOID ExitMQ2Benchmark(DWORD BMHandle);
EQLIB_API VOID EnterMQ2Benchmark(DWORD BMHandle);
EQLIB_API VOID RemoveMQ2Benchmark(DWORD BMHandle);
EQLIB_API DWORD AddMQ2Benchmark(PCHAR Name);

/* SPAWN HANDLING */
EQLIB_API VOID InitializeMQ2Spawns();
EQLIB_API VOID ShutdownMQ2Spawns();
EQLIB_API VOID ProcessPendingGroundItems();
EQLIB_API VOID UpdateMQ2SpawnSort();

/* WINDOWS */
EQLIB_API VOID InitializeMQ2Windows();
EQLIB_API VOID ShutdownMQ2Windows();
EQLIB_API void RemoveXMLFile(const char *filename);
EQLIB_API void AddXMLFile(const char *filename);
EQLIB_API bool SendWndNotification(PCHAR WindowName, PCHAR ScreenID, DWORD Notification, VOID *Data=0);
EQLIB_API void AddWindow(char *WindowName, CXWnd **ppWindow);
EQLIB_API void RemoveWindow(char *WindowName);
EQLIB_API CXWnd *FindMQ2Window(PCHAR Name);

/* CHAT HOOK */
EQLIB_API VOID InitializeChatHook();
EQLIB_API VOID ShutdownChatHook();

/* DETOURING API */
EQLIB_API VOID InitializeMQ2Detours();
EQLIB_API VOID ShutdownMQ2Detours();
EQLIB_API BOOL AddDetour(DWORD address, PBYTE pfDetour=0, PBYTE pfTrampoline=0, DWORD Count=20);
EQLIB_API VOID RemoveDetour(DWORD address);

/* PLUGIN HANDLING */
EQLIB_API VOID InitializeMQ2Plugins();
EQLIB_API DWORD LoadMQ2Plugin(const PCHAR pszFilename);
EQLIB_API BOOL UnloadMQ2Plugin(const PCHAR pszFilename);
EQLIB_API VOID UnloadMQ2Plugins();
EQLIB_API VOID ShutdownMQ2Plugins();
EQLIB_API VOID WriteChatColor(PCHAR Line, DWORD Color=USERCOLOR_DEFAULT, DWORD Filter=0);
EQLIB_API VOID PulsePlugins();
EQLIB_API VOID PluginsZoned();
EQLIB_API BOOL PluginsIncomingChat(PCHAR Line, DWORD Color);
EQLIB_API VOID RewriteMQ2Plugins(VOID);
EQLIB_API VOID PluginsCleanUI();
EQLIB_API VOID PluginsReloadUI();
EQLIB_API VOID PluginsSetGameState(DWORD GameState);
EQLIB_API VOID PluginsDrawHUD();
EQLIB_API VOID PluginsAddSpawn(PSPAWNINFO pNewSpawn);
EQLIB_API VOID PluginsRemoveSpawn(PSPAWNINFO pSpawn);
EQLIB_API VOID PluginsAddGroundItem(PGROUNDITEM pNewGroundItem);
EQLIB_API VOID PluginsRemoveGroundItem(PGROUNDITEM pGroundItem);

/* DIRECT INPUT */
EQLIB_API VOID InitializeMQ2DInput();
EQLIB_API VOID ShutdownMQ2DInput();

/* CLEAN UI */
EQLIB_API VOID InitializeDisplayHook();
EQLIB_API VOID ShutdownDisplayHook();

/* COMMAND HANDLING */
EQLIB_API VOID InitializeMQ2Commands();
EQLIB_API VOID ShutdownMQ2Commands();
EQLIB_API VOID AddCommand(PCHAR Command, fEQCommand Function, BOOL EQ=0, BOOL Parse=1, BOOL InGame=0);
EQLIB_API VOID AddParm(PCHAR Name, fMQParm Function);
EQLIB_API VOID RemoveParm(PCHAR Name);
EQLIB_API VOID AddAlias(PCHAR ShortCommand, PCHAR LongCommand);
EQLIB_API BOOL RemoveAlias(PCHAR ShortCommand);
EQLIB_API BOOL RemoveCommand(PCHAR Command);
EQLIB_API VOID DoTimedCommands();
EQLIB_API VOID TimedCommand(PCHAR Command, DWORD msDelay);

/* MACRO COMMANDS */
EQLIB_API VOID DumpStack                           (PSPAWNINFO,PCHAR);
EQLIB_API VOID EndMacro                            (PSPAWNINFO,PCHAR);
EQLIB_API VOID Echo									(PSPAWNINFO,PCHAR);



/* MACRO PARSING */
#define PMP_ERROR_BADPARM 10000
EQLIB_API PCHAR ParseMacroParameter(PSPAWNINFO pChar, PCHAR szOriginal);
EQLIB_API VOID GracefullyEndBadMacro(PSPAWNINFO pChar, PMACROBLOCK pBadLine, PCHAR szFormat, ...);
EQLIB_API VOID FailIf(PSPAWNINFO pChar, PCHAR szCommand, PMACROBLOCK pStartLine, BOOL All=FALSE);
EQLIB_API VOID InitializeParser();
EQLIB_API VOID ShutdownParser();

EQLIB_API VOID InitializeMQ2DataTypes();
EQLIB_API VOID ShutdownMQ2DataTypes();
EQLIB_API VOID InitializeMQ2Data();
EQLIB_API VOID ShutdownMQ2Data();
EQLIB_API BOOL ParseMacroData(PCHAR szOriginal);
EQLIB_API BOOL ParseMacroVariables(PCHAR szOriginal);
EQLIB_API BOOL AddMQ2Data(PCHAR szName, fMQData Function);
EQLIB_API BOOL RemoveMQ2Data(PCHAR szName);

/* MOUSE */
EQLIB_API BOOL IsMouseWaiting(VOID);
EQLIB_API BOOL IsMouseWaitingForButton();

/* KEY BINDS */
EQLIB_API VOID InitializeMQ2KeyBinds();
EQLIB_API VOID ShutdownMQ2KeyBinds();
EQLIB_API BOOL PressMQ2KeyBind(PCHAR name, BOOL Hold);
EQLIB_API BOOL SetMQ2KeyBind(PCHAR name, BOOL Alternate, KeyCombo &Combo);
EQLIB_API BOOL AddMQ2KeyBind(PCHAR name, fMQExecuteCmd Function);
EQLIB_API BOOL RemoveMQ2KeyBind(PCHAR name);
EQLIB_API BOOL GetMQ2KeyBind(PCHAR name, BOOL Alt, KeyCombo &Combo);
EQLIB_API BOOL DumpBinds(PCHAR Filename);

/* PULSING */
EQLIB_API VOID InitializeMQ2Pulse();
EQLIB_API VOID ShutdownMQ2Pulse();

/* UTILITIES */
EQLIB_API VOID DebugSpew(PCHAR szFormat, ...);
EQLIB_API VOID DebugSpewAlways(PCHAR szFormat, ...);
EQLIB_API VOID DebugSpewNoFile(PCHAR szFormat, ...);
EQLIB_API PSTR GetNextArg(PCSTR szLine, DWORD dwNumber = 1, BOOL CSV = FALSE, CHAR Separator = 0);
EQLIB_API PSTR GetArg(PSTR szDest, PCSTR szSrc, DWORD dwNumber, BOOL LeaveQuotes = FALSE, BOOL ToParen = FALSE, BOOL CSV = FALSE, CHAR Separator = 0, BOOL AnyNonAlphaNum = FALSE);
EQLIB_API VOID AddCustomEvent(PEVENTLIST pEList, PCHAR szLine);
EQLIB_API PCHAR GetFuncParamName(PCHAR szMacroLine, DWORD ParamNum, PCHAR szParamName);
EQLIB_API FLOAT DistanceToSpawn(PSPAWNINFO pChar, PSPAWNINFO pSpawn);
EQLIB_API PCHAR GetEQPath(PCHAR szBuffer);
#define DoCommand(pspawninfo,commandtoexecute) HideDoCommand(pspawninfo,commandtoexecute,FromPlugin)
EQLIB_API VOID HideDoCommand(PSPAWNINFO pChar, PCHAR szLine, BOOL delayed);
EQLIB_API VOID AppendCXStr(PCXSTR *cxstr, PCHAR text); 
EQLIB_API VOID SetCXStr(PCXSTR *cxstr, PCHAR text); 
EQLIB_API VOID GetCXStr(PCXSTR pCXStr, PCHAR szBuffer, DWORD maxlen=MAX_STRING);
EQLIB_API DWORD MQToSTML(PCHAR in, PCHAR out, DWORD maxlen=MAX_STRING, DWORD ColorOverride=0xFFFFFF);
EQLIB_API VOID StripMQChat(PCHAR in, PCHAR out);
EQLIB_API VOID STMLToPlainText(PCHAR in, PCHAR out);
EQLIB_API PCHAR GetSubFromLine(PMACROBLOCK pLine, PCHAR szSub);
EQLIB_API PCHAR GetFilenameFromFullPath(PCHAR Filename);
EQLIB_API BOOL CompareTimes(PCHAR RealTime, PCHAR ExpectedTime);
EQLIB_API VOID AddFilter(PCHAR szFilter, DWORD Length, PBOOL pEnabled);
EQLIB_API VOID DefaultFilters(VOID);
EQLIB_API PCHAR ConvertHotkeyNameToKeyName(PCHAR szName);
EQLIB_API VOID CheckChatForEvent(PCHAR szMsg);
EQLIB_API VOID ConvertItemTags(CXStr &cxstr, BOOL Tag=TRUE);
EQLIB_API BOOL ParseKeyCombo(PCHAR text, KeyCombo &Dest);
EQLIB_API PCHAR DescribeKeyCombo(KeyCombo &Combo, PCHAR szDest);

EQLIB_API int FindMappableCommand(const char *name);

EQLIB_API PCHAR GetSpellNameByID(DWORD dwSpellID);
EQLIB_API PSPELL GetSpellByName(PCHAR szName);
#include "MQ2Inlines.h"
#include "MQ2DataTypes.h"

EQLIB_API PMACROBLOCK AddMacroLine(PCHAR szLine);
EQLIB_API PCHAR GetLightForSpawn(PSPAWNINFO pSpawn);
EQLIB_API DWORD GetSpellDuration(PSPELL pSpell, PSPAWNINFO pSpawn);
EQLIB_API DWORD GetDeityTeamByID(DWORD DeityID);
EQLIB_API DWORD ConColor(PSPAWNINFO pSpawn);
EQLIB_API PCHAR GetGuildByID(DWORD GuildID);
EQLIB_API DWORD GetGuildIDByName(PCHAR szGuild);
EQLIB_API PCONTENTS GetEnviroContainer();
EQLIB_API PEQCONTAINERWINDOW FindContainerForContents(PCONTENTS pContents);
EQLIB_API FLOAT FindSpeed(PSPAWNINFO pSpawn);
EQLIB_API VOID GetItemLinkHash(PCONTENTS Item, PCHAR Buffer);
EQLIB_API VOID GetItemLink(PCONTENTS Item, PCHAR Buffer);
EQLIB_API VOID SendEQMessage(DWORD PacketType, PVOID pData, DWORD Length);
EQLIB_API PCHAR GetLoginName();
EQLIB_API FLOAT DistanceToPoint(PSPAWNINFO pSpawn, FLOAT xLoc, FLOAT yLoc);
EQLIB_API PCHAR ShowSpellSlotInfo(PSPELL pSpell, PCHAR szBuffer);
EQLIB_API VOID SlotValueCalculate(PCHAR szBuff, PSPELL pSpell, int i, double mp);
EQLIB_API PCHAR GetSpellEffectName(DWORD EffectID, PCHAR szBuffer);
EQLIB_API VOID GetGameDate(int* Month, int* Day, int* Year);
EQLIB_API VOID GetGameTime(int* Hour, int* Minute, int* Night);

/* USERVARS */
EQLIB_API VOID FreeVarStrings(PVARSTRINGS pVarStrings);
EQLIB_API VOID FreeVarArrays();
EQLIB_API VOID FreeTimers();
EQLIB_API PTIMER GetTimer(PCHAR szName, BOOL Create = FALSE);
EQLIB_API PCHAR GetEventStr(PEVENTSTACK pEvent, PCHAR szName, BOOL Create = FALSE);
EQLIB_API PCHAR GetMacroStr(PCHAR szName, BOOL Create = FALSE);
EQLIB_API PCHAR GetLocalStr(PCHAR szName, BOOL Create = FALSE);
EQLIB_API PCHAR GetStackStr(PCHAR szName, BOOL Create = FALSE);
EQLIB_API PVARARRAYS GetArray(PCHAR szName, BOOL Create = FALSE);
EQLIB_API PCHAR GetArrayStr(PVARARRAYS pArray, DWORD Id1, DWORD Id2=0, BOOL Create = FALSE);
EQLIB_API VOID GetVariable(PCHAR szVar, PCHAR *szResult, PTIMER *pTimer);
EQLIB_API VOID DropTimers(VOID);
EQLIB_API BOOL SearchVariables(PCHAR szVar,PCHAR szOutput,PVARSTRINGS pVarStrings);
EQLIB_API BOOL SearchTimers(PCHAR szVar,PCHAR szOutput);
EQLIB_API BOOL SearchArrays(PCHAR szVar,PCHAR szOutput);
EQLIB_API VOID CheckVariableRecursion(PCHAR szVar);
EQLIB_API BOOL IsVariableDefined(PCHAR szVar);

EQLIB_API BOOL LoadCfgFile(PCHAR Filename, BOOL Delayed=FromPlugin);
EQLIB_API PCHAR GetFriendlyNameForGroundItem(PGROUNDITEM pItem, PCHAR szName);
EQLIB_API VOID ClearSearchSpawn(PSEARCHSPAWN pSearchSpawn);
EQLIB_API PSPAWNINFO SearchThroughSpawns(PSEARCHSPAWN pSearchSpawn, PSPAWNINFO pChar);
EQLIB_API BOOL SpawnMatchesSearch(PSEARCHSPAWN pSearchSpawn, PSPAWNINFO pChar, PSPAWNINFO pSpawn);
EQLIB_API PCHAR ParseSearchSpawnArgs(PCHAR szArg, PCHAR szRest, PSEARCHSPAWN pSearchSpawn);
EQLIB_API VOID ParseSearchSpawn(PCHAR Buffer, PSEARCHSPAWN pSearchSpawn);
EQLIB_API PCHAR FormatSearchSpawn(PCHAR Buffer, PSEARCHSPAWN pSearchSpawn);
EQLIB_API BOOL IsPCNear(PSPAWNINFO pSpawn, FLOAT Radius);
EQLIB_API BOOL IsInGroup(PSPAWNINFO pSpawn);
EQLIB_API BOOL IsAlert(PSPAWNINFO pChar, PSPAWNINFO pSpawn, DWORD List);

EQLIB_API VOID        OverwriteTable          (DWORD Address);
EQLIB_API DWORD       Include                 (PCHAR szFile);
EQLIB_API PCHAR       GetFullZone             (DWORD ZoneID);
EQLIB_API DWORD       GetZoneID               (PCHAR ZoneShortName);
EQLIB_API PCHAR       GetShortZone            (DWORD ZoneID);
EQLIB_API PCHAR       CleanupName             (PCHAR szName, BOOL Article = TRUE);
EQLIB_API VOID        SwapSWho                (PSWHOSORT pSWho1, PSWHOSORT pSWho2);
EQLIB_API VOID        SortSWho                (PSWHOSORT pSWhoSort, DWORD SpawnCount, DWORD SortBy = 0);
EQLIB_API VOID        SuperWhoFindPets        (PSPAWNINFO pChar, WORD SpawnID);
EQLIB_API VOID        SuperWhoDisplay         (PSPAWNINFO pChar, PSEARCHSPAWN pFilter, PSPAWNINFO psTarget, WORD Padding = 0, DWORD Color = 0);
EQLIB_API FLOAT       DistanceToSpawn3D       (PSPAWNINFO pChar, PSPAWNINFO pSpawn);
EQLIB_API FLOAT       EstimatedDistanceToSpawn(PSPAWNINFO pChar, PSPAWNINFO pSpawn);
EQLIB_API PMACROBLOCK AddMacroLine            (PCHAR szLine);
EQLIB_API VOID        GracefullyEndBadMacro   (PSPAWNINFO pChar, PMACROBLOCK pBadLine, PCHAR szFormat, ...);
EQLIB_API PSPAWNINFO  GetClosestAlert         (PSPAWNINFO pChar,DWORD List, DWORD* pdwCount);
EQLIB_API VOID        FreeAlertList           (PALERTLIST pAlertList);
EQLIB_API DWORD WINAPI InsertCommands         (LPVOID lpParameter);
EQLIB_API VOID        UpdateMonitoredSpawns   (VOID);
EQLIB_API PCHAR       GetModel                (PSPAWNINFO pSpawn, DWORD Slot);
EQLIB_API PSPAWNINFO  GetPet                  (DWORD OwnerID);
EQLIB_API BOOL        IfCompare               (PCHAR szCond);



/* PARMS */

EQLIB_API DWORD parmGetLastFindSlot					(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmCursor							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmItem								(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmEquip								(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmGroup								(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmTarget							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmSpawn							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmSearchSpawn					(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmChar							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmHeading						(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmID								(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmMouse							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmChar							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmSpell							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmReturn							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmZone							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmFind							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmAlert							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmGM								(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmCombat							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmFreeInv						(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmDistance						(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmRand							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmGetLastError					(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmLastTell						(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmLastCommand					(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmInvPanel						(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmIf								(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmIfN							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmMerchantName					(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmMerchantXXX					(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmCorpse							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmRunning						(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmTime							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmDate							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmPack							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmArg							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmLeft							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmMid							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmRight							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmInstr							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmStrLen							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmUcase							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmLcase							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmSpawnName						(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmCount							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmCalc							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmSpellItem						(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmInt							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmAbs							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmSin							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmCos							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmTan							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmAsin							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmAcos							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmAtan							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmDoor							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmGround							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmHex							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmDec							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmNot							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmIni							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmMerchant						(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmFinditemBank					(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmFinditem						(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmEQPath							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmMacroPath						(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmMQPath							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmLogPath						(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmSqrt							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmDefined						(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmEnvOpen						(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmGiveWnd						(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmSelectedItem					(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmServerName						(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmLoginName						(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmGameState						(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmMacro                  (PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmEvent                  (PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmBanker						(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API DWORD parmPet							(PCHAR, PCHAR, PSPAWNINFO);
EQLIB_API BOOL Calculate(PCHAR szFormula, DOUBLE& Dest);

/* DATA ITEMS */
EQLIB_API BOOL dataSpawn(PCHAR szIndex, MQ2TYPEVAR &Ret);
EQLIB_API BOOL dataTarget(PCHAR szIndex, MQ2TYPEVAR &Ret);
EQLIB_API BOOL dataCharacter(PCHAR szIndex, MQ2TYPEVAR &Ret);
EQLIB_API BOOL dataSpell(PCHAR szIndex, MQ2TYPEVAR &Ret);
EQLIB_API BOOL dataSwitch(PCHAR szIndex, MQ2TYPEVAR &Ret);
EQLIB_API BOOL dataGroundItem(PCHAR szIndex, MQ2TYPEVAR &Ret);
EQLIB_API BOOL dataMerchant(PCHAR szIndex, MQ2TYPEVAR &Ret);
EQLIB_API BOOL dataWindow(PCHAR szIndex, MQ2TYPEVAR &Ret);
EQLIB_API BOOL dataMacro(PCHAR szIndex, MQ2TYPEVAR &Ret);
EQLIB_API BOOL dataMacroQuest(PCHAR szIndex, MQ2TYPEVAR &Ret);
EQLIB_API BOOL dataMath(PCHAR szIndex, MQ2TYPEVAR &Ret);
EQLIB_API BOOL dataZone(PCHAR szIndex, MQ2TYPEVAR &Ret);
EQLIB_API BOOL dataGroup(PCHAR szIndex, MQ2TYPEVAR &Ret);
EQLIB_API BOOL dataString(PCHAR szIndex, MQ2TYPEVAR &Ret);
EQLIB_API BOOL dataInt(PCHAR szIndex, MQ2TYPEVAR &Ret);
EQLIB_API BOOL dataBool(PCHAR szIndex, MQ2TYPEVAR &Ret);
EQLIB_API BOOL dataFloat(PCHAR szIndex, MQ2TYPEVAR &Ret);
EQLIB_API BOOL dataCorpse(PCHAR szIndex, MQ2TYPEVAR &Ret);
EQLIB_API BOOL dataIf(PCHAR szIndex, MQ2TYPEVAR &Ret);
EQLIB_API BOOL dataCursor(PCHAR szIndex, MQ2TYPEVAR &Ret);
EQLIB_API BOOL dataNearestSpawn(PCHAR szIndex, MQ2TYPEVAR &Ret);
EQLIB_API BOOL dataGameTime(PCHAR szIndex, MQ2TYPEVAR &Ret);
EQLIB_API BOOL dataTime(PCHAR szIndex, MQ2TYPEVAR &Ret);
EQLIB_API BOOL dataIni(PCHAR szIndex, MQ2TYPEVAR &Ret);
EQLIB_API BOOL dataHeading(PCHAR szIndex, MQ2TYPEVAR &Ret);
EQLIB_API BOOL dataDefined(PCHAR szIndex, MQ2TYPEVAR &Ret);
EQLIB_API BOOL dataLastSpawn(PCHAR szIndex, MQ2TYPEVAR &Ret);

/* COMMANDS */
EQLIB_VAR VOID DeleteVarCmd(PSPAWNINFO pChar, PCHAR szLine);
EQLIB_API VOID NewIf(PSPAWNINFO pChar, PCHAR szLine);
EQLIB_API VOID DoTimedCmd(PSPAWNINFO pChar, PCHAR szLine);
EQLIB_API VOID DoShiftCmd(PSPAWNINFO pChar, PCHAR szLine);
EQLIB_API VOID DoCtrlCmd(PSPAWNINFO pChar, PCHAR szLine);
EQLIB_API VOID DoAltCmd(PSPAWNINFO pChar, PCHAR szLine);
EQLIB_API VOID DoCommandCmd(PSPAWNINFO pChar, PCHAR szLine);
EQLIB_API VOID SquelchCommand(PSPAWNINFO pChar, PCHAR szLine);
EQLIB_API VOID DumpBindsCommand(PSPAWNINFO pChar, PCHAR szLine);
EQLIB_API VOID LoadCfgCommand(PSPAWNINFO pChar, PCHAR szLine);
EQLIB_API VOID do_ranged(PSPAWNINFO pChar, PCHAR szLine);
EQLIB_API VOID DoMappable(PSPAWNINFO pChar, PCHAR szLine);
EQLIB_API VOID MQ2KeyBindCommand(PSPAWNINFO pChar, PCHAR szLine);
EQLIB_API VOID MultilineCommand(PSPAWNINFO pChar, PCHAR szLine);
EQLIB_API VOID Alert                               (PSPAWNINFO,PCHAR);
EQLIB_API VOID Alias                               (PSPAWNINFO,PCHAR);
EQLIB_API VOID BankList                            (PSPAWNINFO,PCHAR);
EQLIB_API VOID Breakin                             (PSPAWNINFO,PCHAR);
EQLIB_API VOID BuyItem                             (PSPAWNINFO,PCHAR);
EQLIB_API VOID Call                                (PSPAWNINFO,PCHAR);
EQLIB_API VOID CharInfo                            (PSPAWNINFO,PCHAR);
EQLIB_API VOID Cast                                (PSPAWNINFO,PCHAR);
EQLIB_API VOID Cleanup                             (PSPAWNINFO,PCHAR);
EQLIB_API VOID Click                               (PSPAWNINFO,PCHAR);
EQLIB_API VOID DebugSpewFile                       (PSPAWNINFO,PCHAR);
EQLIB_API VOID DeclareVar                          (PSPAWNINFO,PCHAR);
EQLIB_API VOID Delay                               (PSPAWNINFO,PCHAR);
EQLIB_API VOID EQDestroyHeldItemOrMoney				(PSPAWNINFO,PCHAR);
EQLIB_API VOID DisplayLoginName						(PSPAWNINFO,PCHAR);
EQLIB_API VOID DoAbility                           (PSPAWNINFO,PCHAR);
EQLIB_API VOID DoEvents                            (PSPAWNINFO,PCHAR);
EQLIB_API VOID DoSocial                           (PSPAWNINFO,PCHAR);
EQLIB_API VOID Doors                               (PSPAWNINFO,PCHAR);
EQLIB_API VOID DoorTarget                          (PSPAWNINFO,PCHAR);
EQLIB_API VOID DumpStack                           (PSPAWNINFO,PCHAR);
EQLIB_API VOID Echo                                (PSPAWNINFO,PCHAR);
EQLIB_API VOID EditMacro                           (PSPAWNINFO,PCHAR);
EQLIB_API VOID EndMacro                            (PSPAWNINFO,PCHAR);
EQLIB_API VOID Exec                                (PSPAWNINFO,PCHAR); 
EQLIB_API VOID Face                                (PSPAWNINFO,PCHAR);
EQLIB_API VOID Filter                              (PSPAWNINFO,PCHAR);
EQLIB_API VOID FindItem                            (PSPAWNINFO,PCHAR);
EQLIB_API VOID For                                 (PSPAWNINFO,PCHAR);
EQLIB_API VOID Goto                                (PSPAWNINFO,PCHAR);
EQLIB_API VOID Help                                (PSPAWNINFO,PCHAR);
EQLIB_API VOID Hotkey                              (PSPAWNINFO,PCHAR);
EQLIB_API VOID Identify                            (PSPAWNINFO,PCHAR);
EQLIB_API VOID If                                  (PSPAWNINFO,PCHAR);
EQLIB_API VOID IniOutput                           (PSPAWNINFO,PCHAR);
EQLIB_API VOID Items                               (PSPAWNINFO,PCHAR);
EQLIB_API VOID ItemTarget                          (PSPAWNINFO,PCHAR);
EQLIB_API VOID KeepKeys                            (PSPAWNINFO,PCHAR);
EQLIB_API VOID WindowState							(PSPAWNINFO,PCHAR);
EQLIB_API VOID ListMacros                          (PSPAWNINFO,PCHAR);
EQLIB_API VOID LoadSpells                          (PSPAWNINFO,PCHAR);
EQLIB_API VOID Location                            (PSPAWNINFO,PCHAR);
EQLIB_API VOID Look                                (PSPAWNINFO,PCHAR);
EQLIB_API VOID Macro                               (PSPAWNINFO,PCHAR);
EQLIB_API VOID MacroBeep                           (PSPAWNINFO,PCHAR);
EQLIB_API VOID MacroLog                            (PSPAWNINFO,PCHAR);
EQLIB_API VOID MacroPause                          (PSPAWNINFO,PCHAR);
EQLIB_API VOID MemSpell                            (PSPAWNINFO,PCHAR);
EQLIB_API VOID MouseTo                             (PSPAWNINFO,PCHAR);
EQLIB_API VOID MQMsgBox                            (PSPAWNINFO,PCHAR);
EQLIB_API VOID MyVarAdd                            (PSPAWNINFO,PCHAR);
EQLIB_API VOID MyVarAnd                            (PSPAWNINFO,PCHAR);
EQLIB_API VOID MyVarCat                            (PSPAWNINFO,PCHAR);
EQLIB_API VOID MyVarOr                             (PSPAWNINFO,PCHAR);
EQLIB_API VOID MyVarSub                            (PSPAWNINFO,PCHAR);
EQLIB_API VOID Next                                (PSPAWNINFO,PCHAR);
EQLIB_API VOID PluginCommand						(PSPAWNINFO pChar, PCHAR szLine);
EQLIB_API VOID Press                               (PSPAWNINFO,PCHAR);
EQLIB_API VOID Return                              (PSPAWNINFO,PCHAR);
EQLIB_API VOID SelectItem                          (PSPAWNINFO,PCHAR);
EQLIB_API VOID SellItem                            (PSPAWNINFO,PCHAR);
EQLIB_API VOID SendKey                             (PSPAWNINFO,PCHAR);
EQLIB_API VOID SetAutoRun                          (PSPAWNINFO,PCHAR);
EQLIB_API VOID SetError                            (PSPAWNINFO,PCHAR);
EQLIB_API VOID Skills                              (PSPAWNINFO,PCHAR);
EQLIB_API VOID SuperWho                            (PSPAWNINFO,PCHAR);
EQLIB_API VOID SuperWhoTarget                      (PSPAWNINFO,PCHAR);
EQLIB_API VOID SWhoFilter							(PSPAWNINFO,PCHAR);
EQLIB_API VOID Target                              (PSPAWNINFO,PCHAR);
EQLIB_API VOID Unload                              (PSPAWNINFO,PCHAR);
EQLIB_API VOID UpdateItemInfo                      (PSPAWNINFO,PCHAR);
EQLIB_API VOID VarCalc                             (PSPAWNINFO,PCHAR);
EQLIB_API VOID VarLShift                           (PSPAWNINFO,PCHAR);
EQLIB_API VOID VarRShift                           (PSPAWNINFO,PCHAR);
EQLIB_API VOID VarSet                              (PSPAWNINFO,PCHAR);
EQLIB_API VOID Where                               (PSPAWNINFO,PCHAR);
EQLIB_API VOID ZapVars                             (PSPAWNINFO,PCHAR);
EQLIB_API VOID PopupText                           (PSPAWNINFO,PCHAR);
void DisplayOverlayText(PCHAR szText, DWORD dwColor, DWORD dwTransparency, DWORD msFadeIn, DWORD msFadeOut, DWORD msHold);
// OTHER SHIT

#define LIGHT_COUNT     13
#define MAX_COMBINES    52
#define MAX_ITEMTYPES   53

#define GAMESTATE_CHARSELECT    1
#define GAMESTATE_SOMETHING     4
#define GAMESTATE_INGAME        5
#define GAMESTATE_PRECHARSELECT 6
#define GAMESTATE_LOGGINGIN     253
#define GAMESTATE_UNLOADING     255

#define XWM_LCLICK				1
#define XWM_LMOUSEUP			2
#define XWM_RCLICK				3
#define XWM_HITENTER			6
#define XWM_CLOSE				10
#define XWM_NEWVALUE	        14
#define XWM_UNKNOWN				19
#define XWM_MOUSEOVER			21
#define XWM_HISTORY				22
#define XWM_LCLICKHOLD			23

#define XKF_SHIFT				1
#define XKF_CTRL				2
#define XKF_LALT				4
#define XKF_RALT				8

#define MAX_ITEM4xx			416

#define MAX_WEAPONS		0x000000ff

#define MQ2AUTH(z) EQLIB_API VOID z(DWORD x);
#include "MQ2Auth0.h"

To answer your question about relative postion to target, yes thats a very simple mod I can do for ya. I cant promise you how fast ill have it done becuase I work a shit load but i have the next few days off and Ill try and get it added along with a screenshot for ya ..

User avatar
Choakster
the antichrist
Posts: 124
Joined: Sat Aug 23, 2003 1:16 pm

New location

Post by Choakster » Wed May 26, 2004 9:35 pm

Thses mods can now be downloaded at

http://ever-realm.com/links/macromods.htm

or go to http://Ever-Realm.com

and click on teh downloads link and then go to MACROMODS..
Ill be updating versions without the buttons and adding other mods there as well for download ..

Thanks again ..
.
.
.
.
.
http://Ever-Realm.com