Code: Select all
||-- XPTracker.mac
|-- by Kambic
|-- Version 1.0.1
|-- August 10th, 2004
|----------------------------------------------------
|-- Macro will track the immediate experience gained after each gain, as well as keep a running total
#event SoloExp "You gain experience#*#"
#event GroupExp "You gain party experience#*#"
#event RaidExp "You gained raid experience#*#"
#event GroupLeaderExp "You gain group leadership experience#*#"
#event RaidLeaderExp "You gain raid leadership experience#*#"
#event LeveUp "#*#Welcome to Level#*#"
#event LevelDown "#*#You have LOST#*#"
Sub Main
/echo Beginning XPTracker...
/declare StandardSoloOldExp float outer
/declare StandardSoloNewExp float outer
/declare StandardSoloGainedExp float outer
/declare TotalStandardSoloGainedExp float outer
/declare StandardGroupOldExp float outer
/declare StandardGroupNewExp float outer
/declare StandardGroupGainedExp float outer
/declare TotalStandardGroupGainedExp float outer
/declare StandardRaidOldExp float outer
/declare StandardRaidNewExp float outer
/declare StandardRaidGainedExp float outer
/declare TotalStandardRaidGainedExp float outer
/declare TotalStandardAbsoluteGainedExp float outer
/declare AAOldExp float outer
/declare AANewExp float outer
/declare AAGainedExp float outer
/declare TotalAAGainedExp float outer
/declare GroupLeaderOldExp float outer
/declare GroupLeaderNewExp float outer
/declare GroupLeaderGainedExp float outer
/declare TotalGroupLeaderGainedExp float outer
/declare RaidLeaderOldExp float outer
/declare RaidLeaderNewExp float outer
/declare RaidLeaderGainedExp float outer
/declare TotalRaidLeaderGainedExp float outer
/varset StandardSoloOldExp ${Me.PctExp}
/varset StandardSoloNewExp 0
/varset StandardSoloGainedExp 0
/varset StandardGroupOldExp ${Me.PctExp}
/varset StandardGroupNewExp 0
/varset StandardGroupGainedExp 0
/varset StandardRaidOldExp ${Me.PctExp}
/varset StandardRaidNewExp 0
/varset StandardRaidGainedExp 0
/varset TotalStandardAbsoluteGainedExp 0
/varset AAOldExp ${Me.PctAAExp}
/varset AANewExp 0
/varset AAGainedExp 0
/varset GroupLeaderOldExp ${Me.PctGroupLeaderExp}
/varset GroupLeaderNewExp 0
/varset GroupLeaderGainedExp 0
/varset RaidLeaderOldExp ${Me.PctGroupLeaderExp}
/varset RaidLeaderNewExp 0
/varset RaidLeaderGainedExp 0
:loopy
/doevents
/goto :loopy
/return
Sub CheckAAChange
/varset AANewExp ${Me.PctAAExp}
/if (${AANewExp}!=${AAOldExp}) {
/call CalculateAAExpChange
/echo AA Gained: ${AAGainedExp} || AA Total: ${TotalAAGainedExp}
}
/return
Sub CalculateStandardSoloExpChange
/varset StandardSoloNewExp ${Me.PctExp}
/varcalc StandardSoloGainedExp (${StandardSoloNewExp}-${StandardSoloOldExp})
/varcalc TotalStandardSoloGainedExp (${TotalStandardSoloGainedExp}+${StandardSoloGainedExp})
/varset StandardSoloOldExp ${Me.PctExp}
/call CheckAAChange
/return
Sub CalculateStandardGroupExpChange
/varset StandardGroupNewExp ${Me.PctExp}
/varcalc StandardGroupGainedExp (${StandardGroupNewExp}-${StandardGroupOldExp})
/varcalc TotalStandardGroupGainedExp (${TotalStandardGroupGainedExp}+${StandardGroupGainedExp})
/varset StandardGroupOldExp ${Me.PctExp}
/call CheckAAChange
/return
Sub CalculateStandardRaidExpChange
/varset StandardRaidNewExp ${Me.PctExp}
/varcalc StandardRaidGainedExp (${StandardRaidNewExp}-${StandardRaidOldExp})
/varcalc TotalStandardRaidGainedExp (${TotalStandardRaidGainedExp}+${StandardRaidGainedExp})
/varset StandardRaidOldExp ${Me.PctExp}
/call CheckAAChange
/return
Sub CalculateAAExpChange
/varcalc AAGainedExp (${AANewExp}-${AAOldExp})
/varcalc TotalAAGainedExp (${TotalAAGainedExp}+${AAGainedExp})
/varset AAOldExp ${Me.PctAAExp}
/return
Sub CalculateGroupLeaderExpChange
/varset GroupLeaderNewExp ${Me.PctGroupLeaderExp}
/varcalc GroupLeaderGainedExp (${GroupLeaderNewExp}-${GroupLeaderOldExp})
/varcalc TotalGroupLeaderGainedExp (${TotalGroupLeaderGainedExp}+${GroupLeaderGainedExp})
/varset GroupLeaderOldExp ${Me.PctGroupLeaderExp}
/return
Sub CalculateRaidLeaderExpChange
/varset RaidLeaderNewExp ${Me.PctRaidLeaderExp}
/varcalc RaidLeaderGainedExp (${RaidLeaderNewExp}-${RaidLeaderOldExp})
/varcalc TotalRaidLeaderGainedExp (${TotalRaidLeaderGainedExp}+${RaidLeaderGainedExp})
/varset RaidLeaderOldExp ${Me.PctRaidLeaderExp}
/return
Sub AddSoloGroupRaidStandardExp
/varcalc TotalStandardAbsoluteGainedExp
(${TotalStandardSoloGainedExp}+${TotalStandardGroupGainedExp}+${TotalStandardRaidGainedExp})
/return
Sub Event_SoloExp
/call CalculateStandardSoloExpChange
/call AddSoloGroupRaidStandardExp
/echo XP Gained: ${StandardSoloGainedExp} || XP Total: ${TotalStandardAbsoluteGainedExp}
/echo ***********************************
/return
Sub Event_GroupExp
/call CalculateStandardGroupExpChange
/call AddSoloGroupRaidStandardExp
/echo XP Gained: ${StandardGroupGainedExp} || XP Total: ${TotalStandardAbsoluteGainedExp}
/echo ***********************************
/return
Sub Event_RaidExp
/call CalculateStandardRaidExpChange
/call AddSoloGroupRaidStandardExp
/echo XP Gained: ${StandardRaidGainedExp} || XP Total: ${TotalStandardAbsoluteGainedExp}
/echo ***********************************
/return
Sub Event_GroupLeaderExp
/call CalculateGroupLeaderExpChange
/echo GL Gained: ${GroupLeaderGainedExp} || GL Total: ${TotalGroupLeaderGainedExp}
/return
Sub Event_RaidLeaderExp
/call CalculateRaidLeaderExpChange
/echo RL Gained: ${RaidLeaderGainedExp} || RL Total: ${TotalRaidLeaderGainedExp}
/return
Sub Event_LevelUp
/varset TotalStandardGainedExp (${TotalStandardGainedExp}+100)
/return
Sub Event_LevelDown
/varset TotalStandardGainedExp (${TotalStandardGainedExp}-100)
/return Code: Select all
/echo XP Gained: ${StandardGroupGainedExp} || XP Total: ${TotalStandardAbsoluteGainedExp}
/echo *********************************** or something, sorry ill repost the error in a while, i just went ld..... I've been trying to fix it for a while and I can't figure out how. Can someone please post the fixed code...
Thanks!


