Attribute VB_Name = "modConstants"
'-----------------------------------------------------
' MirageBot Constants Module
' Written by Christopher Nevin (lancergli@gmail.com)
'-----------------------------------------------------

Option Explicit

Public Const LIST_CURR As String = "Channel"
Public Const LIST_BANL As String = "Banned"
Public Const LIST_CLAN As String = "Members"
Public Const LIST_FRND As String = "Friends"
Public Const LIST_DATA As String = "Database"

Public Const vbQuote            As String = """"
Public Const vbNS               As String = vbNullString

Public Const PORTABLE           As Boolean = False
Public Const ASCENCRYPTION_CHAR As String = "¸"
Public Const HEXENCRYPTION_CHAR As String = "×"
Public Const B64ENCRYPTION_CHAR As String = "ß"
Public Const ROTENCRYPTION_CHAR As String = "§"
Public Const XORENCRYPTION_CHAR As String = "¦"
Public Const XORENCRYPTION_KEY  As String = "This is the MirageBot XOR encryption key."
Public Const THEME_DEFAULT      As String = "Ribbon Powder"

'StarCraft Colours
Public Const SCWhite            As Long = vbWhite
Public Const SCGray             As Long = &HA0A0A0
Public Const SCYellow           As Long = &HA5ECF2
Public Const SCRed              As Long = &HA5A5F2
Public Const SCCyan             As Long = &HEFF2A5
Public Const SCGreen            As Long = &HA5F2C9

'Diablo II Colours
Public Const D2White            As Long = SCWhite
Public Const D2Red              As Long = SCRed
Public Const D2Blue             As Long = &HF2C0A5
Public Const D2Green            As Long = SCGreen
Public Const D2Gray             As Long = SCGray
Public Const D2Purple           As Long = &HF2A5E4
Public Const D2Beige            As Long = &HA5DBF2
Public Const D2Beige2           As Long = &H9ACCDF
Public Const D2Orange           As Long = &H65C8F1
Public Const D2Black            As Long = &H4C4C4C
Public Const D2LtYellow         As Long = &HBFFFFE
Public Const D2MdGreen          As Long = &H9ADFA5
Public Const D2DkGreen          As Long = &H7BB284

'Notify Icon
Public Const GWL_USERDATA       As Long = (-21)
Public Const NIM_ADD            As Long = &H0
Public Const NIM_MODIFY         As Long = &H1
Public Const NIM_DELETE         As Long = &H2
Public Const NIF_MESSAGE        As Long = &H1
Public Const NIF_ICON           As Long = &H2
Public Const NIF_TIP            As Long = &H4
Public Const NIF_STATE          As Long = &H8
Public Const NIF_INFO           As Long = &H10
Public Const NIS_ISHIDDEN       As Long = &H1
Public Const NIS_SHAREDICON     As Long = &H2

'Mouse
Public Const WM_CLOSE           As Long = &H10
Public Const WM_SYSCOMMAND      As Long = &H112
Public Const WM_WA_IPC          As Long = &H400
Public Const WM_MOUSEMOVE       As Long = &H200
Public Const WM_LBUTTONDOWN     As Long = &H201
Public Const WM_LBUTTONUP       As Long = &H202
Public Const WM_LBUTTONDBLCLK   As Long = &H203
Public Const WM_RBUTTONDOWN     As Long = &H204
Public Const WM_RBUTTONUP       As Long = &H205
Public Const WM_RBUTTONDBLCLK   As Long = &H206
Public Const WM_MBUTTONDOWN     As Long = &H207
Public Const WM_MBUTTONUP       As Long = &H208
Public Const WM_MBUTTONDBLCLK   As Long = &H209
Public Const WM_USER            As Long = &H400
Public Const WM_USER_SYSTRAY    As Long = WM_USER + 5
Public Const WM_NOTIFY          As Long = &H4E
Public Const WM_MOUSEHOVER      As Long = &H2A1&
Public Const WM_MOUSELEAVE      As Long = &H2A3&
Public Const WM_KEYDOWN         As Long = &H100
Public Const WM_KEYUP           As Long = &H101
Public Const WM_CHAR            As Long = &H102
Public Const WM_COMMAND         As Long = &H111
Public Const MK_LBUTTON         As Long = &H1

'IX86 Architecture
Public Const ARCH_IX86                      As Long = &H49583836

'Size Mode Constants
Public Const SM_CYMENU                      As Long = 15
Public Const SM_CYCAPTION                   As Long = 4
Public Const SM_CXFRAME                     As Long = 32
Public Const SM_CYFRAME                     As Long = 33

'ListView Events (Change ImageList)
Public Const LVM_GETCOUNTPERPAGE            As Long = &H1028
Public Const LVM_HITTEST                    As Long = &H1012
Public Const LVM_SETIMAGELIST               As Long = &H1003
Public Const LVSIL_SMALL                    As Long = &H1

'Battle.Net Packets
Public Const SID_NULL                       As Byte = &H0
Public Const SID_STOPADV                    As Byte = &H2
Public Const SID_SERVERLIST                 As Byte = &H4
Public Const SID_CLIENTID                   As Byte = &H5
Public Const SID_STARTVERSIONING            As Byte = &H6
Public Const SID_REPORTVERSION              As Byte = &H7
Public Const SID_STARTADVEX                 As Byte = &H8
Public Const SID_GETADVLISTEX               As Byte = &H9
Public Const SID_ENTERCHAT                  As Byte = &HA
Public Const SID_GETCHANNELLIST             As Byte = &HB
Public Const SID_JOINCHANNEL                As Byte = &HC
Public Const SID_CHATCOMMAND                As Byte = &HE
Public Const SID_CHATEVENT                  As Byte = &HF
Public Const SID_LEAVECHAT                  As Byte = &H10
Public Const SID_LOCALEINFO                 As Byte = &H12
Public Const SID_FLOODDETECTED              As Byte = &H13
Public Const SID_UDPPINGRESPONSE            As Byte = &H14
Public Const SID_CHECKAD                    As Byte = &H15
Public Const SID_CLICKAD                    As Byte = &H16
Public Const SID_REGISTRY                   As Byte = &H18
Public Const SID_MESSAGEBOX                 As Byte = &H19
Public Const SID_STARTADVEX3                As Byte = &H1C
Public Const SID_LOGONCHALLENGEEX           As Byte = &H1D
Public Const SID_CLIENTID2                  As Byte = &H1E
Public Const SID_LEAVEGAME                  As Byte = &H1F
Public Const SID_DISPLAYAD                  As Byte = &H21
Public Const SID_NOTIFYJOIN                 As Byte = &H22
Public Const SID_PING                       As Byte = &H25
Public Const SID_READUSERDATA               As Byte = &H26
Public Const SID_WRITEUSERDATA              As Byte = &H27
Public Const SID_LOGONCHALLENGE             As Byte = &H28
Public Const SID_LOGONRESPONSE              As Byte = &H29
Public Const SID_CREATEACCOUNT              As Byte = &H2A
Public Const SID_SYSTEMINFO                 As Byte = &H2B
Public Const SID_GAMERESULT                 As Byte = &H2C
Public Const SID_GETICONDATA                As Byte = &H2D
Public Const SID_GETLADDERDATA              As Byte = &H2E
Public Const SID_FINDLADDERUSER             As Byte = &H2F
Public Const SID_CDKEY                      As Byte = &H30
Public Const SID_CHANGEPASSWORD             As Byte = &H31
Public Const SID_CHECKDATAFILE              As Byte = &H32
Public Const SID_GETFILETIME                As Byte = &H33
Public Const SID_QUERYREALMS                As Byte = &H34
Public Const SID_PROFILE                    As Byte = &H35
Public Const SID_CDKEY2                     As Byte = &H36
Public Const SID_LOGONRESPONSE2             As Byte = &H3A
Public Const SID_CHECKDATAFILE2             As Byte = &H3C
Public Const SID_CREATEACCOUNT2             As Byte = &H3D
Public Const SID_LOGONREALMEX               As Byte = &H3E
Public Const SID_STARTVERSIONING2           As Byte = &H3F
Public Const SID_QUERYREALMS2               As Byte = &H40
Public Const SID_QUERYADURL                 As Byte = &H41
Public Const SID_WARCRAFTGENERAL            As Byte = &H44
Public Const SID_NETGAMEPORT                As Byte = &H45
Public Const SID_NEWS_INFO                  As Byte = &H46
Public Const SID_OPTIONALWORK               As Byte = &H4A
Public Const SID_EXTRAWORK                  As Byte = &H4B
Public Const SID_REQUIREDWORK               As Byte = &H4C
Public Const SID_AUTH_INFO                  As Byte = &H50
Public Const SID_AUTH_CHECK                 As Byte = &H51
Public Const SID_AUTH_ACCOUNTCREATE         As Byte = &H52
Public Const SID_AUTH_ACCOUNTLOGON          As Byte = &H53
Public Const SID_AUTH_ACCOUNTLOGONPROOF     As Byte = &H54
Public Const SID_AUTH_ACCOUNTCHANGE         As Byte = &H55
Public Const SID_AUTH_ACCOUNTCHANGEPROOF    As Byte = &H56
Public Const SID_AUTH_ACCOUNTUPGRADE        As Byte = &H57
Public Const SID_AUTH_ACCOUNTUPGRADEPROOF   As Byte = &H58
Public Const SID_SETEMAIL                   As Byte = &H59
Public Const SID_RESETPASSWORD              As Byte = &H5A
Public Const SID_CHANGEEMAIL                As Byte = &H5B
Public Const SID_SWITCHPRODUCT              As Byte = &H5C
Public Const SID_WARDEN                     As Byte = &H5E
Public Const SID_GAMEPLAYERSEARCH           As Byte = &H60
Public Const SID_FRIENDSLIST                As Byte = &H65
Public Const SID_FRIENDSUPDATE              As Byte = &H66
Public Const SID_FRIENDSADD                 As Byte = &H67
Public Const SID_FRIENDSREMOVE              As Byte = &H68
Public Const SID_FRIENDSPOSITION            As Byte = &H69
Public Const SID_CLANFINDCANDIDATES         As Byte = &H70
Public Const SID_CLANINVITEMULTIPLE         As Byte = &H71
Public Const SID_CLANCREATIONINVITATION     As Byte = &H72
Public Const SID_CLANDISBAND                As Byte = &H73
Public Const SID_CLANMAKECHIEFTAIN          As Byte = &H74
Public Const SID_CLANINFO                   As Byte = &H75
Public Const SID_CLANQUITNOTIFY             As Byte = &H76
Public Const SID_CLANINVITATION             As Byte = &H77
Public Const SID_CLANREMOVEMEMBER           As Byte = &H78
Public Const SID_CLANINVITATIONRESPONSE     As Byte = &H79
Public Const SID_CLANRANKCHANGE             As Byte = &H7A
Public Const SID_CLANSETMOTD                As Byte = &H7B
Public Const SID_CLANMOTD                   As Byte = &H7C
Public Const SID_CLANMEMBERLIST             As Byte = &H7D
Public Const SID_CLANMEMBERREMOVED          As Byte = &H7E
Public Const SID_CLANMEMBERSTATUSCHANGE     As Byte = &H7F
Public Const SID_CLANMEMBERRANKCHANGE       As Byte = &H81
Public Const SID_CLANMEMBERINFORMATION      As Byte = &H82

'BNLS/JBLS Packets
Public Const BNLS_NULL                      As Byte = &H0
Public Const BNLS_CDKEY                     As Byte = &H1
Public Const BNLS_LOGONCHALLENGE            As Byte = &H2
Public Const BNLS_LOGONPROOF                As Byte = &H3
Public Const BNLS_CREATEACCOUNT             As Byte = &H4
Public Const BNLS_CHANGECHALLENGE           As Byte = &H5
Public Const BNLS_CHANGEPROOF               As Byte = &H6
Public Const BNLS_UPGRADECHALLENGE          As Byte = &H7
Public Const BNLS_UPGRADEPROOF              As Byte = &H8
Public Const BNLS_VERSIONCHECK              As Byte = &H9
Public Const BNLS_CONFIRMLOGON              As Byte = &HA
Public Const BNLS_HASHDATA                  As Byte = &HB
Public Const BNLS_CDKEY_EX                  As Byte = &HC
Public Const BNLS_CHOOSENLSREVISION         As Byte = &HD
Public Const BNLS_AUTHORIZE                 As Byte = &HE
Public Const BNLS_AUTHORIZEPROOF            As Byte = &HF
Public Const BNLS_REQUESTVERSIONBYTE        As Byte = &H10
Public Const BNLS_VERIFYSERVER              As Byte = &H11
Public Const BNLS_RESERVESERVERSLOTS        As Byte = &H12
Public Const BNLS_SERVERLOGONCHALLENGE      As Byte = &H13
Public Const BNLS_SERVERLOGONPROOF          As Byte = &H14
Public Const BNLS_VERSIONCHECKEX            As Byte = &H18
Public Const BNLS_VERSIONCHECKEX2           As Byte = &H1A

'Chat Event Identifiers
Public Const EID_SHOWUSER                   As Byte = &H1
Public Const EID_JOIN                       As Byte = &H2
Public Const EID_LEAVE                      As Byte = &H3
Public Const EID_WHISPER                    As Byte = &H4
Public Const EID_TALK                       As Byte = &H5
Public Const EID_BROADCAST                  As Byte = &H6
Public Const EID_CHANNEL                    As Byte = &H7
Public Const EID_USERFLAGS                  As Byte = &H9
Public Const EID_WHISPERSENT                As Byte = &HA
Public Const EID_CHANNELFULL                As Byte = &HD
Public Const EID_CHANNELDOESNOTEXIST        As Byte = &HE
Public Const EID_CHANNELRESTRICTED          As Byte = &HF
Public Const EID_INFO                       As Byte = &H12
Public Const EID_ERROR                      As Byte = &H13
Public Const EID_EMOTE                      As Byte = &H17
Public Const EID_MODERATEUSER               As Byte = &HAB

'Channel Flags
Public Const CHANNEL_PUBLIC                 As Long = &H1
Public Const CHANNEL_MODERATED              As Long = &H2
Public Const CHANNEL_RESTRICTED             As Long = &H4
Public Const CHANNEL_SILENT                 As Long = &H8
Public Const CHANNEL_SYSTEM                 As Long = &H10
Public Const CHANNEL_PRODUCTSPECIFIC        As Long = &H20
Public Const CHANNEL_GLOBAL                 As Long = &H1000

'User Flags
Public Const USER_REPRESENTATIVE            As Long = &H1
Public Const USER_OPERATOR                  As Long = &H2
Public Const USER_SPEAKER                   As Long = &H4
Public Const USER_ADMINISTRATOR             As Long = &H8
Public Const USER_NOUDP                     As Long = &H10
Public Const USER_SQUELCHED                 As Long = &H20
Public Const USER_GUEST                     As Long = &H40
Public Const USER_BEEP                      As Long = &H100
Public Const USER_JAILED                    As Long = &H100000
