- Joined
- Jan 5, 2014
- Messages
- 13
- Reaction score
- 0
- Points
- 1
quick post before i go to bed
im new to this and all charinfo does is crash me so i have no idea what aa's look like and no one has posted that i could find a way to make pulling with range attack easy for me this is 3 days of work here its not that i havent tried
what i am trying to accomplish is my rogue and healing merc kill and not die constantly i have been tweaking the pulling for a long time still gets stuck or pulls and gets stuck merc dies to remedy that kesora im iksar illusion so now i need to aggro these mobs and thats a problem if i cant get it to attack then pull to camp and sometimes he goes into buildings and gets stuck
im new to this and all charinfo does is crash me so i have no idea what aa's look like and no one has posted that i could find a way to make pulling with range attack easy for me this is 3 days of work here its not that i havent tried
what i am trying to accomplish is my rogue and healing merc kill and not die constantly i have been tweaking the pulling for a long time still gets stuck or pulls and gets stuck merc dies to remedy that kesora im iksar illusion so now i need to aggro these mobs and thats a problem if i cant get it to attack then pull to camp and sometimes he goes into buildings and gets stuck
Spoiler:
[Settings]
OptionsCheck=|Pulling|Merc|AA|AutoClickies|Disc|Endurance|
OptionsCheckRaid=AA|AutoClickies|Disc|Endurance|
RestrictedZones=344,202,151,345
UseCamp=TRUE
GMAction=
LootNPCs=TRUE
AuthorizedUsers=
Verbose=FALSE
MyChannel=bc
AnnounceChannel=bc
AnnounceEvents=TRY|CAST_SUCCESS|CAST_IMMUNE|CAST_RESIST
EQBCAnnounceAdds=FALSE
AutoHideNPCCorpses=FALSE
ClearTargetDataAlias=ClearTargetDataAlias
EmergencyAlias=EmergencyAlias
EmergencySkill=EmergencySkill
ImmunityCheck=TRUE
BotVersion=v2.52
[Assist]
AssistType=3
AssistPC=
AssistAt=97
OpeningMove=
AttackRange=150
AttackCommand=/killthis
AttackConditions=
AmIOffTank=FALSE
UseMelee=TRUE
UseArchery=FALSE
ArcheryMaxDistance=200
ArcheryMinDistance=35
SetTargetMessage=Kill_this
BurnModeAlias=BurnModeAlias
[Follow]
FollowMethod=stick|30 healer
FollowCommand=FollowCommand
StopFollowCommand=StopFollowCommand
MoveUpCommand=MoveUpCommand
[Roles]
SetRoles=TRUE
GroupLeader=
GroupMainTank=
GroupMainAssist=
GroupPuller=
GroupXTarget1=Group Assist Target
RaidXTarget1=Raid Assist 1 Target
[ImHit]
ImHitConditions=
[Campfire]
AutoUseCampfire=
SetCampfire=
CampfireName=
CF_Item1=Fellowship Kit:
CF_Item2=Fellowship Lumber Bundle:
[Pulling]
AmIPuller=FALSE
PullRadius=300
PullZRadius=10
PullCastRange=150
AlertListClear=FALSE
AlertListClearTimer=60m
CourseCorrectionTimer=5
ReturnActionTotal=1
ReturnAction1=/alt act ${Me.AltAbility[Cloak of Shadows].ID}
PullConColor=GREY,GREEN,LIGHT BLUE,BLUE,WHITE,YELLOW
PullingMethod=standard
PullingAnnounceCMD=/keypress 1
PullingTotal=1
PullAtMyHPs=95
PullConditions=
PullSkillName1=Vigorious Dagger-Strike Rk. II
PullSkillRequiresLineOfSight1=TRUE
PullSkillDistance1=150
PullSkillSummon1=
PullSkillName2=
PullSkillRequiresLineOfSight2=TRUE
PullSkillDistance2=
PullSkillSummon2=
[AA]
AATotal=7
AAAnnounce=FALSE
AAUse1=TRUE
AASpellName1=Fundament: Third Spire of the Rake
AAUseAtMobPctHP1=99
AAStopAtMobPctHP1=20
AARecast1=1s
AANamedOnly1=FALSE
AAConditions1=${AddCount}>=2
AAUse2=TRUE
AASpellName2=Dirty Fighting
AAUseAtMobPctHP2=99
AAStopAtMobPctHP2=20
AARecast2=10m
AANamedOnly2=TRUE
AAConditions2=
AAUse3=TRUE
AASpellName3=Envenomed Blades
AAUseAtMobPctHP3=99
AAStopAtMobPctHP3=20
AARecast3=1s
AANamedOnly3=FALSE
AAConditions3=(!${Me.Buff[Dirty Fighting].ID})
AAUse4=TRUE
AASpellName4=Rogue's Fury
AAUseAtMobPctHP4=99
AAStopAtMobPctHP4=20
AARecast4=1s
AANamedOnly4=FALSE
AAConditions4=${AddCount}>=4
AAUse5=TRUE
AASpellName5=Tumble
AAUseAtMobPctHP5=99
AAStopAtMobPctHP5=20
AARecast5=1s
AANamedOnly5=FALSE
AAConditions5=${Me.PctHPs}<25
AAUse6=TRUE
AASpellName6=Frenzied Stabbing Discipline
AAUseAtMobPctHP6=96
AAStopAtMobPctHP6=10
AARecast6=1s
AANamedOnly6=TRUE
AAConditions6=
AAUse7=TRUE
AASpellName7=Escape
AAUseAtMobPctHP7=96
AAStopAtMobPctHP7=10
AARecast7=1s
AANamedOnly7=FALSE
AAConditions7=${Me.PctHPs}<10
AAConditions=
[Disc]
DiscTotal=8
DiscUse1=TRUE
DiscName1=Accost Rk. II
DiscNamedOnly1=FALSE
DiscEndCost1=892
DiscRecast1=30s
DiscConditions1=${Target.PctHPs}<94
DiscUse2=TRUE
DiscName2=Jugular Gash Rk. II
DiscNamedOnly2=TRUE
DiscEndCost2=752
DiscRecast2=150s
DiscConditions2=${Target.PctHPs}<91
DiscUse3=TRUE
DiscName3=Simple Mark Rk. II
DiscNamedOnly3=FALSE
DiscEndCost3=672
DiscRecast3=5m
DiscConditions3=${AddCount}>=2
DiscUse4=TRUE
DiscName4=Razor's Edge Discipline
DiscNamedOnly4=FALSE
DiscEndCost4=0
DiscRecast4=8m
DiscConditions4=${AddCount}>=2
DiscUse5=TRUE
DiscName5=Twisted Chance Discipline
DiscNamedOnly5=FALSE
DiscEndCost5=0
DiscRecast5=23m
DiscConditions5=${AddCount}>=3
DiscUse6=TRUE
DiscName6=Nimble Discipline
DiscNamedOnly6=FALSE
DiscEndCost6=0
DiscRecast6=10m
DiscConditions6=${Me.PctHPs}<35
DiscUse7=TRUE
DiscName7=Battery Rk. II
DiscNamedOnly7=FALSE
DiscEndCost7=525
DiscRecast7=30s
DiscConditions7=
DiscUse8=TRUE
DiscName8=Smokescreen Rk. II
DiscNamedOnly8=FALSE
DiscEndCost8=1575
DiscRecast8=30s
DiscConditions8=${AddCount}>=3
[Buff]
BuffXTargets=FALSE
BuffPets=FALSE
AutoInvis=FALSE
AutoBreakInvis=FALSE
BuffConditions=
[ClickyMaintenance]
clickies=0
[Fade]
FadeConditions=
[Snare]
SnareConditions=
[Combat]
CombatFrequency1=AA
CombatFrequency2=Disc
CombatFrequency3=
CombatFrequency4=Merc
CombatFrequency5=Bard|XHeal|HealSingle|HealGroup|HealBalance|HealSelf|HealPet|Disc|MainTankBuff|FightBuff|Lifetap|Stun|AA|Dot|Nuke|Snare|ClickyNuke|Jolt|Rez|ModRod|Mana
StandardCombatOptions=Bard|XHeal|HealSingle|HealGroup|HealBalance|HealSelf|HealPet|Disc|MainTankBuff|FightBuff|Lifetap|Stun|AA|Dot|Nuke|Snare|ClickyNuke|Jolt|Rez|ModRod|Mana|Merc
[Merc]
MercUse=TRUE
UseMerc=TRUE
ManageMerc=TRUE
MercAssistAt=100
MercStanceNormal=Reactive
MercStanceNamed=Reactive
MercStanceOOC=Reactive
[AAtoBuy]
AABuy=FALSE
AABuyChannel=/echo
AABuyAt=15
AABuyMode=Classic
AABuyPageOrder=Class|Archetype|General|Special
LimitedGeneral=
LimitedArchetype=
LimitedClass=
LimitedSpecial=
AACount=0
OptionsCheck=|Pulling|Merc|AA|AutoClickies|Disc|Endurance|
OptionsCheckRaid=AA|AutoClickies|Disc|Endurance|
RestrictedZones=344,202,151,345
UseCamp=TRUE
GMAction=
LootNPCs=TRUE
AuthorizedUsers=
Verbose=FALSE
MyChannel=bc
AnnounceChannel=bc
AnnounceEvents=TRY|CAST_SUCCESS|CAST_IMMUNE|CAST_RESIST
EQBCAnnounceAdds=FALSE
AutoHideNPCCorpses=FALSE
ClearTargetDataAlias=ClearTargetDataAlias
EmergencyAlias=EmergencyAlias
EmergencySkill=EmergencySkill
ImmunityCheck=TRUE
BotVersion=v2.52
[Assist]
AssistType=3
AssistPC=
AssistAt=97
OpeningMove=
AttackRange=150
AttackCommand=/killthis
AttackConditions=
AmIOffTank=FALSE
UseMelee=TRUE
UseArchery=FALSE
ArcheryMaxDistance=200
ArcheryMinDistance=35
SetTargetMessage=Kill_this
BurnModeAlias=BurnModeAlias
[Follow]
FollowMethod=stick|30 healer
FollowCommand=FollowCommand
StopFollowCommand=StopFollowCommand
MoveUpCommand=MoveUpCommand
[Roles]
SetRoles=TRUE
GroupLeader=
GroupMainTank=
GroupMainAssist=
GroupPuller=
GroupXTarget1=Group Assist Target
RaidXTarget1=Raid Assist 1 Target
[ImHit]
ImHitConditions=
[Campfire]
AutoUseCampfire=
SetCampfire=
CampfireName=
CF_Item1=Fellowship Kit:
CF_Item2=Fellowship Lumber Bundle:
[Pulling]
AmIPuller=FALSE
PullRadius=300
PullZRadius=10
PullCastRange=150
AlertListClear=FALSE
AlertListClearTimer=60m
CourseCorrectionTimer=5
ReturnActionTotal=1
ReturnAction1=/alt act ${Me.AltAbility[Cloak of Shadows].ID}
PullConColor=GREY,GREEN,LIGHT BLUE,BLUE,WHITE,YELLOW
PullingMethod=standard
PullingAnnounceCMD=/keypress 1
PullingTotal=1
PullAtMyHPs=95
PullConditions=
PullSkillName1=Vigorious Dagger-Strike Rk. II
PullSkillRequiresLineOfSight1=TRUE
PullSkillDistance1=150
PullSkillSummon1=
PullSkillName2=
PullSkillRequiresLineOfSight2=TRUE
PullSkillDistance2=
PullSkillSummon2=
[AA]
AATotal=7
AAAnnounce=FALSE
AAUse1=TRUE
AASpellName1=Fundament: Third Spire of the Rake
AAUseAtMobPctHP1=99
AAStopAtMobPctHP1=20
AARecast1=1s
AANamedOnly1=FALSE
AAConditions1=${AddCount}>=2
AAUse2=TRUE
AASpellName2=Dirty Fighting
AAUseAtMobPctHP2=99
AAStopAtMobPctHP2=20
AARecast2=10m
AANamedOnly2=TRUE
AAConditions2=
AAUse3=TRUE
AASpellName3=Envenomed Blades
AAUseAtMobPctHP3=99
AAStopAtMobPctHP3=20
AARecast3=1s
AANamedOnly3=FALSE
AAConditions3=(!${Me.Buff[Dirty Fighting].ID})
AAUse4=TRUE
AASpellName4=Rogue's Fury
AAUseAtMobPctHP4=99
AAStopAtMobPctHP4=20
AARecast4=1s
AANamedOnly4=FALSE
AAConditions4=${AddCount}>=4
AAUse5=TRUE
AASpellName5=Tumble
AAUseAtMobPctHP5=99
AAStopAtMobPctHP5=20
AARecast5=1s
AANamedOnly5=FALSE
AAConditions5=${Me.PctHPs}<25
AAUse6=TRUE
AASpellName6=Frenzied Stabbing Discipline
AAUseAtMobPctHP6=96
AAStopAtMobPctHP6=10
AARecast6=1s
AANamedOnly6=TRUE
AAConditions6=
AAUse7=TRUE
AASpellName7=Escape
AAUseAtMobPctHP7=96
AAStopAtMobPctHP7=10
AARecast7=1s
AANamedOnly7=FALSE
AAConditions7=${Me.PctHPs}<10
AAConditions=
[Disc]
DiscTotal=8
DiscUse1=TRUE
DiscName1=Accost Rk. II
DiscNamedOnly1=FALSE
DiscEndCost1=892
DiscRecast1=30s
DiscConditions1=${Target.PctHPs}<94
DiscUse2=TRUE
DiscName2=Jugular Gash Rk. II
DiscNamedOnly2=TRUE
DiscEndCost2=752
DiscRecast2=150s
DiscConditions2=${Target.PctHPs}<91
DiscUse3=TRUE
DiscName3=Simple Mark Rk. II
DiscNamedOnly3=FALSE
DiscEndCost3=672
DiscRecast3=5m
DiscConditions3=${AddCount}>=2
DiscUse4=TRUE
DiscName4=Razor's Edge Discipline
DiscNamedOnly4=FALSE
DiscEndCost4=0
DiscRecast4=8m
DiscConditions4=${AddCount}>=2
DiscUse5=TRUE
DiscName5=Twisted Chance Discipline
DiscNamedOnly5=FALSE
DiscEndCost5=0
DiscRecast5=23m
DiscConditions5=${AddCount}>=3
DiscUse6=TRUE
DiscName6=Nimble Discipline
DiscNamedOnly6=FALSE
DiscEndCost6=0
DiscRecast6=10m
DiscConditions6=${Me.PctHPs}<35
DiscUse7=TRUE
DiscName7=Battery Rk. II
DiscNamedOnly7=FALSE
DiscEndCost7=525
DiscRecast7=30s
DiscConditions7=
DiscUse8=TRUE
DiscName8=Smokescreen Rk. II
DiscNamedOnly8=FALSE
DiscEndCost8=1575
DiscRecast8=30s
DiscConditions8=${AddCount}>=3
[Buff]
BuffXTargets=FALSE
BuffPets=FALSE
AutoInvis=FALSE
AutoBreakInvis=FALSE
BuffConditions=
[ClickyMaintenance]
clickies=0
[Fade]
FadeConditions=
[Snare]
SnareConditions=
[Combat]
CombatFrequency1=AA
CombatFrequency2=Disc
CombatFrequency3=
CombatFrequency4=Merc
CombatFrequency5=Bard|XHeal|HealSingle|HealGroup|HealBalance|HealSelf|HealPet|Disc|MainTankBuff|FightBuff|Lifetap|Stun|AA|Dot|Nuke|Snare|ClickyNuke|Jolt|Rez|ModRod|Mana
StandardCombatOptions=Bard|XHeal|HealSingle|HealGroup|HealBalance|HealSelf|HealPet|Disc|MainTankBuff|FightBuff|Lifetap|Stun|AA|Dot|Nuke|Snare|ClickyNuke|Jolt|Rez|ModRod|Mana|Merc
[Merc]
MercUse=TRUE
UseMerc=TRUE
ManageMerc=TRUE
MercAssistAt=100
MercStanceNormal=Reactive
MercStanceNamed=Reactive
MercStanceOOC=Reactive
[AAtoBuy]
AABuy=FALSE
AABuyChannel=/echo
AABuyAt=15
AABuyMode=Classic
AABuyPageOrder=Class|Archetype|General|Special
LimitedGeneral=
LimitedArchetype=
LimitedClass=
LimitedSpecial=
AACount=0
Spoiler:
[01/09/2014 23:22:38] Rogue - [AA] AASpellName2= is missing or not filled out correctly
[01/09/2014 23:22:38] Rogue - [AA] AAUseAtMobPctHP2= is missing or not filled out correctly
[01/09/2014 23:22:38] Rogue - [AA] AAStopAtMobPctHP2= is missing or not filled out correctly
[01/09/2014 23:22:38] Rogue - [AA] AARecast2= is missing or not filled out correctly
[01/09/2014 23:22:38] Rogue - [AA] AANamedOnly2= is missing or not filled out correctly
[01/09/2014 23:22:40] Rogue - ClickyNukeTotal=0 -- You wont use this section, consider removing section from [Settings] OptionsCheck=
[01/09/2014 23:57:31] Rogue - [AA] AASpellName2= is missing or not filled out correctly
[01/09/2014 23:57:31] Rogue - [AA] AAUseAtMobPctHP2= is missing or not filled out correctly
[01/09/2014 23:57:31] Rogue - [AA] AAStopAtMobPctHP2= is missing or not filled out correctly
[01/09/2014 23:57:31] Rogue - [AA] AARecast2= is missing or not filled out correctly
[01/09/2014 23:57:31] Rogue - [AA] AANamedOnly2= is missing or not filled out correctly
[01/10/2014 00:01:03] Rogue - [AA] AARecast2= is missing or not filled out correctly
[01/10/2014 00:01:03] Rogue - [AA] AASpellName3= is missing or not filled out correctly
[01/10/2014 00:01:03] Rogue - [AA] AAUseAtMobPctHP3= is missing or not filled out correctly
[01/10/2014 00:01:03] Rogue - [AA] AAStopAtMobPctHP3= is missing or not filled out correctly
[01/10/2014 00:01:03] Rogue - [AA] AANamedOnly3= is missing or not filled out correctly
[01/10/2014 00:06:26] Rogue - DoCommand - Couldn't parse '/bc Kill_this 23281'
[01/10/2014 00:14:27] Rogue - DoCommand - Couldn't parse '/bc Kill_this 22439'
[01/10/2014 00:16:51] Rogue - DoCommand - Couldn't parse '/bc Kill_this 22437'
[01/10/2014 00:17:16] Rogue - DoCommand - Couldn't parse '/bc Kill_this 22142'
[01/10/2014 00:18:26] Rogue - DoCommand - Couldn't parse '/bc Kill_this 22309'
[01/10/2014 00:20:01] Rogue - DoCommand - Couldn't parse '/bc Kill_this 22424'
[01/10/2014 00:20:23] Rogue - DoCommand - Couldn't parse '/bc Kill_this 22428'
[01/10/2014 00:21:06] Rogue - DoCommand - Couldn't parse '/bc Kill_this 22432'
[01/10/2014 00:21:37] Rogue - DoCommand - Couldn't parse '/bc Kill_this 23207'
[01/10/2014 00:23:20] Rogue - DoCommand - Couldn't parse '/bc Kill_this 21048'
[01/10/2014 00:40:58] Rogue - DoCommand - Couldn't parse '/bc Kill_this 23425'
[01/10/2014 00:42:50] Rogue - DoCommand - Couldn't parse '/bc Kill_this 22416'
[01/10/2014 00:47:51] Rogue - DoCommand - Couldn't parse '/bc Kill_this 23423'
[01/09/2014 23:22:38] Rogue - [AA] AAUseAtMobPctHP2= is missing or not filled out correctly
[01/09/2014 23:22:38] Rogue - [AA] AAStopAtMobPctHP2= is missing or not filled out correctly
[01/09/2014 23:22:38] Rogue - [AA] AARecast2= is missing or not filled out correctly
[01/09/2014 23:22:38] Rogue - [AA] AANamedOnly2= is missing or not filled out correctly
[01/09/2014 23:22:40] Rogue - ClickyNukeTotal=0 -- You wont use this section, consider removing section from [Settings] OptionsCheck=
[01/09/2014 23:57:31] Rogue - [AA] AASpellName2= is missing or not filled out correctly
[01/09/2014 23:57:31] Rogue - [AA] AAUseAtMobPctHP2= is missing or not filled out correctly
[01/09/2014 23:57:31] Rogue - [AA] AAStopAtMobPctHP2= is missing or not filled out correctly
[01/09/2014 23:57:31] Rogue - [AA] AARecast2= is missing or not filled out correctly
[01/09/2014 23:57:31] Rogue - [AA] AANamedOnly2= is missing or not filled out correctly
[01/10/2014 00:01:03] Rogue - [AA] AARecast2= is missing or not filled out correctly
[01/10/2014 00:01:03] Rogue - [AA] AASpellName3= is missing or not filled out correctly
[01/10/2014 00:01:03] Rogue - [AA] AAUseAtMobPctHP3= is missing or not filled out correctly
[01/10/2014 00:01:03] Rogue - [AA] AAStopAtMobPctHP3= is missing or not filled out correctly
[01/10/2014 00:01:03] Rogue - [AA] AANamedOnly3= is missing or not filled out correctly
[01/10/2014 00:06:26] Rogue - DoCommand - Couldn't parse '/bc Kill_this 23281'
[01/10/2014 00:14:27] Rogue - DoCommand - Couldn't parse '/bc Kill_this 22439'
[01/10/2014 00:16:51] Rogue - DoCommand - Couldn't parse '/bc Kill_this 22437'
[01/10/2014 00:17:16] Rogue - DoCommand - Couldn't parse '/bc Kill_this 22142'
[01/10/2014 00:18:26] Rogue - DoCommand - Couldn't parse '/bc Kill_this 22309'
[01/10/2014 00:20:01] Rogue - DoCommand - Couldn't parse '/bc Kill_this 22424'
[01/10/2014 00:20:23] Rogue - DoCommand - Couldn't parse '/bc Kill_this 22428'
[01/10/2014 00:21:06] Rogue - DoCommand - Couldn't parse '/bc Kill_this 22432'
[01/10/2014 00:21:37] Rogue - DoCommand - Couldn't parse '/bc Kill_this 23207'
[01/10/2014 00:23:20] Rogue - DoCommand - Couldn't parse '/bc Kill_this 21048'
[01/10/2014 00:40:58] Rogue - DoCommand - Couldn't parse '/bc Kill_this 23425'
[01/10/2014 00:42:50] Rogue - DoCommand - Couldn't parse '/bc Kill_this 22416'
[01/10/2014 00:47:51] Rogue - DoCommand - Couldn't parse '/bc Kill_this 23423'
Spoiler:
| ==============================================================================================|
| |
| |
| USAGE: /macro CharInfo |
| |
| Description: |
| Output a characters spell, equipments, aa, disc info to ${Me.Level}_${Me.Class}.ini |
| ==============================================================================================|
#turbo 50
#define MyIni ${Me.Level}_${Me.Class}.ini
#event AATimer "[ #1#: #2# ] (Reuse Time: #3#)#*#"
Sub main
/echo Loading character spell, item, AA, disc info to MyIni
/declare aaEventTimer timer outer 0s
/ini "MyIni" "Character Information" "Class" "${Me.Class.Name}"
/ini "MyIni" "Character Information" "Level" "${Me.Level}"
| Get memmed spells
/if (${Me.CurrentMana}) /call GetSpells 1 ${Me.Level} TRUE FALSE
| Get book spells for previous 10 levels
/if (${Me.CurrentMana}) /call GetSpells ${Math.Calc[${Me.Level} - 10]} ${Me.Level} FALSE TRUE
| Get Equipment (all equipped and inventory only with clicky effect)
/call GetEquipment1
/call GetEquipment2
/if (${Select[${Me.Class.ShortName},BER,BRD,BST,MNK,ROG,PAL,SHD,WAR,RNG]}) /call GetCombatDiscs
| The following section uses /aa list timers to get activated aas only
/varset aaEventTimer 8s
/aa List timers
:aaLoop
/doevents
/if (${aaEventTimer}) /goto :aaLoop
/return
Sub GetSpells(int lowLevel, int highLevel, bool memmedSpells, bool bookSpells)
|TargetType
|grouping
|Skill
|CounterType, if counter
|slot1-12 info
|SpellType
|ResistType
/declare i int local
/declare gem int local
/declare sLoop int local 0
/declare sName string local
/if (!${Defined[lowLevel]}) {
/declare lowLevel int local 1
/varcalc lowlevel ${Me.Level}-10
/declare highLevel int local ${Me.Level}
/declare memmedSpells bool local TRUE
}
/if (!${Defined[highLevel]}) {
/declare highLevel int local ${Me.Level}
}
/if (!${Defined[memmedSpells]}) {
/declare memmedSpells bool local TRUE
}
/if (!${Defined[bookSpells]}) {
/declare bookSpells bool local TRUE
}
/if (${memmedSpells}) {
/for sLoop 1 to 12
/varset sName ${Me.Gem[${sLoop}]}
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_Name" "${sName}"
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_ID" "${Me.Gem[${sLoop}].ID}"
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_Level" "${Spell[${sName}].Level}"
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_Gem" "gem${sLoop}"
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_TargetType" "${Spell[${sName}].TargetType}"
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_SpellType" "${Spell[${sName}].SpellType}"
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_ResistType" "${Spell[${sName}].ResistType}"
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_Skill" "${Spell[${sName}].Skill}"
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_SPA" "${Spell[${sName}].SPA}"
/for i 1 to 12 {
/if (${Spell[${Me.Gem[${sLoop}].ID}].Slot[${i}].Length}) /ini "MyIni" "Memmed Spells" "Spell${sLoop}_Slot[${i}]" "${Spell[${Me.Gem[${sLoop}].ID}].Slot[${i}]}"
/if (${Spell[${Me.Gem[${sLoop}].ID}].Slot[${i}].Length} && ${Spell[${Me.Gem[${sLoop}].ID}].Slot[${i}].Find[UnknownEffect]}) /call SpecialSpell "${Me.Gem[${sLoop}].ID}" "${i}" "${sLoop}"
}
/next i
/next sLoop
}
/if (${bookSpells}) {
/for sLoop 1 to 720
/varset sName ${Me.Book[${sLoop}]}
/if (${sName.NotEqual[NULL]} && ${Spell[${sName}].Level} >= ${lowLevel} && ${Spell[${sName}].Level} <= ${highLevel}) {
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_Name" "${sName}"
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_ID" "${Me.Book[${sLoop}].ID}"
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_Level" "${Spell[${Me.Book[${sLoop}].ID}].Level}"
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_TargetType" "${Spell[${Me.Book[${sLoop}].ID}].TargetType}"
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_SpellType" "${Spell[${Me.Book[${sLoop}].ID}].SpellType}"
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_ResistType" "${Spell[${Me.Book[${sLoop}].ID}].ResistType}"
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_Skill" "${Spell[${Me.Book[${sLoop}].ID}].Skill}"
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_SPA" "${Spell[${Me.Book[${sLoop}].ID}].SPA}"
/for i 1 to 12 {
/if (${Spell[${Me.Book[${sLoop}].ID}].Slot[${i}].Length}) /ini "MyIni" "Memmed Spells" "Spell${sLoop}_Slot[${i}]" "${Spell[${Me.Book[${sLoop}].ID}].Slot[${i}]}"
/if (${Spell[${Me.Book[${sLoop}].ID}].Slot[${i}].Length} && ${Spell[${Me.Book[${sLoop}].ID}].Slot[${i}].Find[UnknownEffect]}) /call SpecialSpell "${Me.Book[${sLoop}].ID}" "${i}" "${sLoop}"
}
/next i
}
/next sLoop
}
/return
Sub SpecialSpell(int spell_id,int slot_num, int sloop)
/if (${Spell[${spell_id}].Slot[${slot_num}].Find[280]}) /ini "MyIni" "Memmed Spells" "Spell${sloop}_Slot[${slot_num}]" "Increase Pet Chance to Flurry by (${Spell[${spell_id}].Base[${slot_num}]})"
/if (${Spell[${spell_id}].Slot[${slot_num}].Find[305]}) /ini "MyIni" "Memmed Spells" "Spell${sloop}_Slot[${slot_num}]" "Mitigate Damage Shield (${Spell[${spell_id}].Base[${slot_num}]})"
/if (${Spell[${spell_id}].Slot[${slot_num}].Find[348]}) /ini "MyIni" "Memmed Spells" "Spell${sloop}_Slot[${slot_num}]" "Limit: Minimum Mana Cost (${Spell[${spell_id}].Base[${slot_num}]})"
/if (${Spell[${spell_id}].Slot[${slot_num}].Find[351]}) /ini "MyIni" "Memmed Spells" "Spell${sloop}_Slot[${slot_num}]" "Summons Aura: Spell.Field4 not defined by mq2"
/if (${Spell[${spell_id}].Slot[${slot_num}].Find[364]}) /ini "MyIni" "Memmed Spells" "Spell${sloop}_Slot[${slot_num}]" "Increase Chance to Triple Attack by (${Spell[${spell_id}].Base[${slot_num}]})"
/if (${Spell[${spell_id}].Slot[${slot_num}].Find[428]}) /ini "MyIni" "Memmed Spells" "Spell${sloop}_Slot[${slot_num}]" "Skill Limit: ${Spell[${spell_id}].Base[${slot_num}]}"
/if (${Spell[${spell_id}].Slot[${slot_num}].Find[429]}) /ini "MyIni" "Memmed Spells" "Spell${sloop}_Slot[${slot_num}]" "Add proc: '${Spell[${Spell[${spell_id}].Base[${slot_num}]}]}' id: ${Spell[${spell_id}].Base[${slot_num}]}"
/return
Sub GetEquipment1
/declare eLoop int outer
/declare sName string local
| ------------------- Equipped Gear -------------------
/for eLoop 0 to 22
/if (${InvSlot[${eLoop}].Item.Name.NotEqual[NULL]}) {
/varset sName ${InvSlot[${eLoop}].Item.Spell.Name}
/if (${sName.NotEqual[NULL]} && ${InvSlot[${eLoop}].Item.EffectType.Find[Click]}) {
/ini "MyIni" "Equipped Items" "Item${eLoop}_Name" "${InvSlot[${eLoop}].Item.Name}"
/ini "MyIni" "Equipped Items" "Item${eLoop}_Spell" "${sName}"
/ini "MyIni" "Equipped Items" "Item${eLoop}_EffectType" "${InvSlot[${eLoop}].Item.EffectType}"
/ini "MyIni" "Equipped Items" "Item${eLoop}_Gem" "item"
}
}
/next eLoop
| ------------------- Primary Inventory Slots -------------------
/for eLoop 23 to 32
/if (${InvSlot[${eLoop}].Item.Name.NotEqual[NULL]}) {
/varset sName ${InvSlot[${eLoop}].Item.Spell.Name}
/if (${sName.NotEqual[NULL]} && ${InvSlot[${eLoop}].Item.EffectType.Find[Click]}) {
/ini "MyIni" "Inventory Items" "Item${eLoop}_Name" "${InvSlot[${eLoop}].Item.Name}"
/ini "MyIni" "Inventory Items" "Item${eLoop}_Spell" "${sName}"
/ini "MyIni" "Equipped Items" "Item${eLoop}_EffectType" "${InvSlot[${eLoop}].Item.EffectType}"
/ini "MyIni" "Inventory Items" "Item${eLoop}_Gem" "item"
} else /if (${InvSlot[${eLoop}].Item.Container}) {
/ini "MyIni" "Inventory Items" "Item${eLoop}" "${InvSlot[${eLoop}].Item.Container} slot container"
}
}
/next eLoop
/return
Sub GetEquipment2
/declare iSlots int outer
/declare iName int outer
/declare iItemNum int local 1
/for iSlots 1 to 32
/if (${InvSlot[${iSlots}].Item.Container}>0) {
/for iName 1 to ${InvSlot[${iSlots}].Item.Container}
/if (${Me.Inventory[${iSlots}].Item[${iName}].ID} && ${Me.Inventory[${iSlots}].Item[${iName}].Spell.ID} && ${Me.Inventory[${iSlots}].Item[${iName}].CastTime} && ${Me.Inventory[${iSlots}].Item[${iName}].WornSlots} && ${Me.Level}>=${Me.Inventory[${iSlots}].Item[${iName}].RequiredLevel} && ${Me.Inventory[${iSlots}].Item[${iName}].Class[${Me.Class}].Name.Equal[${Me.Class}]} && ${Spell[${Me.Inventory[${iSlots}].Item[${iName}].Spell}].Duration}>50) {
/ini "MyIni" "Items" "Item${iItemNum}_Name" "${Me.Inventory[${iSlots}].Item[${iName}].Name}"
/ini "MyIni" "Items" "Item${iItemNum}_Spell" "${Me.Inventory[${iSlots}].Item[${iName}].Spell}"
/ini "MyIni" "Items" "Item${iItemNum}_EffectType" "${Me.Inventory[${iSlots}].Item[${iName}].EffectType}"
/ini "MyIni" "Items" "Item${iItemNum}_Gem" "item"
/varcalc iItemNum ${iItemNum}+1
}
/next iName
}
/next iSlots
/return
Sub GetCombatDiscs
/declare i int local
/declare cLoop int local
/declare sName string local
| ------------------- Combat Disciplines -------------------
penCombatSkills
/if (!${Window[CombatSkillSelectWnd].Open}) /squelch /windowstate CombatSkillSelectWnd Open
/delay 5s ${Window[CombatSkillSelectWnd].Open}
/if (!${Window[CombatSkillSelectWnd].Open}) /goto penCombatSkills
/for cLoop 1 to 200
/if (${Window[CombatSkillSelectWnd].Child[CSSW_SkillSelectorList].List[${cLoop}].Length}) {
/varset sName ${Window[CombatSkillSelectWnd].Child[CSSW_SkillSelectorList].List[${cLoop}]}
/ini "MyIni" "Discs" "Disc${cLoop}_Name" "${Window[CombatSkillSelectWnd].Child[CSSW_SkillSelectorList].List[${cLoop},1]}"
/ini "MyIni" "Discs" "Disc${cLoop}_Level" "${Window[CombatSkillSelectWnd].Child[CSSW_SkillSelectorList].List[${cLoop},2]}"
/ini "MyIni" "Discs" "Disc${cLoop}_Cost" "${Window[CombatSkillSelectWnd].Child[CSSW_SkillSelectorList].List[${cLoop},3]}"
/ini "MyIni" "Discs" "Disc${cLoop}_Upkeep" "${Window[CombatSkillSelectWnd].Child[CSSW_SkillSelectorList].List[${cLoop},4]}"
/ini "MyIni" "Discs" "Disc${cLoop}_Target" "${Window[CombatSkillSelectWnd].Child[CSSW_SkillSelectorList].List[${cLoop},5]}"
/ini "MyIni" "Discs" "Disc${cLoop}_TargetType" "${Spell[${Window[CombatSkillSelectWnd].Child[CSSW_SkillSelectorList].List[${cLoop},1]}].TargetType}"
/ini "MyIni" "Discs" "Disc${cLoop}_Duration" "${Window[CombatSkillSelectWnd].Child[CSSW_SkillSelectorList].List[${cLoop},6]}"
/ini "MyIni" "Discs" "Disc${cLoop}_Reuse" "${Window[CombatSkillSelectWnd].Child[CSSW_SkillSelectorList].List[${cLoop},7]}"
/ini "MyIni" "Discs" "Disc${cLoop}_DurationSeconds" "${Spell[${sName}].Duration.TotalSeconds}s"
/ini "MyIni" "Discs" "Disc${cLoop}_Gem" "disc"
/for i 1 to 12 {
/if (${Spell[${Window[CombatSkillSelectWnd].Child[CSSW_SkillSelectorList].List[${cLoop},1]}].Slot[${i}].Length}) /ini "MyIni" "Discs" "Disc${cLoop}_Slot[${i}]" "${Spell[${Window[CombatSkillSelectWnd].Child[CSSW_SkillSelectorList].List[${cLoop},1]}].Slot[${i}]}"
}
/next i
/next cLoop
}
:closeCombatSkills
/if (${Window[CombatSkillSelectWnd].Open}) /squelch /windowstate CombatSkillSelectWnd close
/delay 5s !${Window[CombatSkillSelectWnd].Open}
/if (${Window[CombatSkillSelectWnd].Open}) /goto :closeCombatSkills
/return
Sub Event_AATimer(line, string aaNumber, string aaName, string aaReuseTime)
|MyReuseTime
|Type
|Description
|Spell
|Slot1-12
/declare i int local
/if (!${Defined[aaloop]}) /declare aaloop int outer 1
/declare sName string local
/varset sName ${aaName}
/ini "MyIni" "AAs" "AA${aaloop}_Name" "${sName}"
/ini "MyIni" "AAs" "AA${aaloop}_Number" "${aaNumber}"
/ini "MyIni" "AAs" "AA${aaloop}_Type" "${Me.AltAbility[${sName}].Type}"
/ini "MyIni" "AAs" "AA${aaloop}_MyReuseTime" "${Me.AltAbility[${sName}].MyReuseTime}"
/ini "MyIni" "AAs" "AA${aaloop}_Spell" "${Me.AltAbility[${sName}].Spell}"
/ini "MyIni" "AAs" "AA${aaloop}_Spell_ID" "${Me.AltAbility[${sName}].Spell.ID}"
/ini "MyIni" "AAs" "AA${aaloop}_Rank" "${Me.AltAbility[${sName}]}"
/ini "MyIni" "AAs" "AA${aaloop}_MaxRank" "${Me.AltAbility[${sName}].MaxRank}"
/ini "MyIni" "AAs" "AA${aaloop}_Gem" "alt"
/for i 1 to 12 {
/if (${Spell[${Me.AltAbility[${sName}].Spell.ID}].Slot[${i}].Length}) /ini "MyIni" "AAs" "AA${aaloop}_Slot[${i}]" "${Spell[${Me.AltAbility[${sName}].Spell.ID}].Slot[${i}]}"
}
/next i
/ini "MyIni" "AAs" "AA${aaloop}_Description" "${Me.AltAbility[${sName}].Description}"
/varcalc aaloop ${aaloop}+1
/varset aaEventTimer 5s
/return
| |
| |
| USAGE: /macro CharInfo |
| |
| Description: |
| Output a characters spell, equipments, aa, disc info to ${Me.Level}_${Me.Class}.ini |
| ==============================================================================================|
#turbo 50
#define MyIni ${Me.Level}_${Me.Class}.ini
#event AATimer "[ #1#: #2# ] (Reuse Time: #3#)#*#"
Sub main
/echo Loading character spell, item, AA, disc info to MyIni
/declare aaEventTimer timer outer 0s
/ini "MyIni" "Character Information" "Class" "${Me.Class.Name}"
/ini "MyIni" "Character Information" "Level" "${Me.Level}"
| Get memmed spells
/if (${Me.CurrentMana}) /call GetSpells 1 ${Me.Level} TRUE FALSE
| Get book spells for previous 10 levels
/if (${Me.CurrentMana}) /call GetSpells ${Math.Calc[${Me.Level} - 10]} ${Me.Level} FALSE TRUE
| Get Equipment (all equipped and inventory only with clicky effect)
/call GetEquipment1
/call GetEquipment2
/if (${Select[${Me.Class.ShortName},BER,BRD,BST,MNK,ROG,PAL,SHD,WAR,RNG]}) /call GetCombatDiscs
| The following section uses /aa list timers to get activated aas only
/varset aaEventTimer 8s
/aa List timers
:aaLoop
/doevents
/if (${aaEventTimer}) /goto :aaLoop
/return
Sub GetSpells(int lowLevel, int highLevel, bool memmedSpells, bool bookSpells)
|TargetType
|grouping
|Skill
|CounterType, if counter
|slot1-12 info
|SpellType
|ResistType
/declare i int local
/declare gem int local
/declare sLoop int local 0
/declare sName string local
/if (!${Defined[lowLevel]}) {
/declare lowLevel int local 1
/varcalc lowlevel ${Me.Level}-10
/declare highLevel int local ${Me.Level}
/declare memmedSpells bool local TRUE
}
/if (!${Defined[highLevel]}) {
/declare highLevel int local ${Me.Level}
}
/if (!${Defined[memmedSpells]}) {
/declare memmedSpells bool local TRUE
}
/if (!${Defined[bookSpells]}) {
/declare bookSpells bool local TRUE
}
/if (${memmedSpells}) {
/for sLoop 1 to 12
/varset sName ${Me.Gem[${sLoop}]}
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_Name" "${sName}"
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_ID" "${Me.Gem[${sLoop}].ID}"
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_Level" "${Spell[${sName}].Level}"
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_Gem" "gem${sLoop}"
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_TargetType" "${Spell[${sName}].TargetType}"
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_SpellType" "${Spell[${sName}].SpellType}"
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_ResistType" "${Spell[${sName}].ResistType}"
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_Skill" "${Spell[${sName}].Skill}"
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_SPA" "${Spell[${sName}].SPA}"
/for i 1 to 12 {
/if (${Spell[${Me.Gem[${sLoop}].ID}].Slot[${i}].Length}) /ini "MyIni" "Memmed Spells" "Spell${sLoop}_Slot[${i}]" "${Spell[${Me.Gem[${sLoop}].ID}].Slot[${i}]}"
/if (${Spell[${Me.Gem[${sLoop}].ID}].Slot[${i}].Length} && ${Spell[${Me.Gem[${sLoop}].ID}].Slot[${i}].Find[UnknownEffect]}) /call SpecialSpell "${Me.Gem[${sLoop}].ID}" "${i}" "${sLoop}"
}
/next i
/next sLoop
}
/if (${bookSpells}) {
/for sLoop 1 to 720
/varset sName ${Me.Book[${sLoop}]}
/if (${sName.NotEqual[NULL]} && ${Spell[${sName}].Level} >= ${lowLevel} && ${Spell[${sName}].Level} <= ${highLevel}) {
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_Name" "${sName}"
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_ID" "${Me.Book[${sLoop}].ID}"
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_Level" "${Spell[${Me.Book[${sLoop}].ID}].Level}"
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_TargetType" "${Spell[${Me.Book[${sLoop}].ID}].TargetType}"
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_SpellType" "${Spell[${Me.Book[${sLoop}].ID}].SpellType}"
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_ResistType" "${Spell[${Me.Book[${sLoop}].ID}].ResistType}"
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_Skill" "${Spell[${Me.Book[${sLoop}].ID}].Skill}"
/ini "MyIni" "Memmed Spells" "Spell${sLoop}_SPA" "${Spell[${Me.Book[${sLoop}].ID}].SPA}"
/for i 1 to 12 {
/if (${Spell[${Me.Book[${sLoop}].ID}].Slot[${i}].Length}) /ini "MyIni" "Memmed Spells" "Spell${sLoop}_Slot[${i}]" "${Spell[${Me.Book[${sLoop}].ID}].Slot[${i}]}"
/if (${Spell[${Me.Book[${sLoop}].ID}].Slot[${i}].Length} && ${Spell[${Me.Book[${sLoop}].ID}].Slot[${i}].Find[UnknownEffect]}) /call SpecialSpell "${Me.Book[${sLoop}].ID}" "${i}" "${sLoop}"
}
/next i
}
/next sLoop
}
/return
Sub SpecialSpell(int spell_id,int slot_num, int sloop)
/if (${Spell[${spell_id}].Slot[${slot_num}].Find[280]}) /ini "MyIni" "Memmed Spells" "Spell${sloop}_Slot[${slot_num}]" "Increase Pet Chance to Flurry by (${Spell[${spell_id}].Base[${slot_num}]})"
/if (${Spell[${spell_id}].Slot[${slot_num}].Find[305]}) /ini "MyIni" "Memmed Spells" "Spell${sloop}_Slot[${slot_num}]" "Mitigate Damage Shield (${Spell[${spell_id}].Base[${slot_num}]})"
/if (${Spell[${spell_id}].Slot[${slot_num}].Find[348]}) /ini "MyIni" "Memmed Spells" "Spell${sloop}_Slot[${slot_num}]" "Limit: Minimum Mana Cost (${Spell[${spell_id}].Base[${slot_num}]})"
/if (${Spell[${spell_id}].Slot[${slot_num}].Find[351]}) /ini "MyIni" "Memmed Spells" "Spell${sloop}_Slot[${slot_num}]" "Summons Aura: Spell.Field4 not defined by mq2"
/if (${Spell[${spell_id}].Slot[${slot_num}].Find[364]}) /ini "MyIni" "Memmed Spells" "Spell${sloop}_Slot[${slot_num}]" "Increase Chance to Triple Attack by (${Spell[${spell_id}].Base[${slot_num}]})"
/if (${Spell[${spell_id}].Slot[${slot_num}].Find[428]}) /ini "MyIni" "Memmed Spells" "Spell${sloop}_Slot[${slot_num}]" "Skill Limit: ${Spell[${spell_id}].Base[${slot_num}]}"
/if (${Spell[${spell_id}].Slot[${slot_num}].Find[429]}) /ini "MyIni" "Memmed Spells" "Spell${sloop}_Slot[${slot_num}]" "Add proc: '${Spell[${Spell[${spell_id}].Base[${slot_num}]}]}' id: ${Spell[${spell_id}].Base[${slot_num}]}"
/return
Sub GetEquipment1
/declare eLoop int outer
/declare sName string local
| ------------------- Equipped Gear -------------------
/for eLoop 0 to 22
/if (${InvSlot[${eLoop}].Item.Name.NotEqual[NULL]}) {
/varset sName ${InvSlot[${eLoop}].Item.Spell.Name}
/if (${sName.NotEqual[NULL]} && ${InvSlot[${eLoop}].Item.EffectType.Find[Click]}) {
/ini "MyIni" "Equipped Items" "Item${eLoop}_Name" "${InvSlot[${eLoop}].Item.Name}"
/ini "MyIni" "Equipped Items" "Item${eLoop}_Spell" "${sName}"
/ini "MyIni" "Equipped Items" "Item${eLoop}_EffectType" "${InvSlot[${eLoop}].Item.EffectType}"
/ini "MyIni" "Equipped Items" "Item${eLoop}_Gem" "item"
}
}
/next eLoop
| ------------------- Primary Inventory Slots -------------------
/for eLoop 23 to 32
/if (${InvSlot[${eLoop}].Item.Name.NotEqual[NULL]}) {
/varset sName ${InvSlot[${eLoop}].Item.Spell.Name}
/if (${sName.NotEqual[NULL]} && ${InvSlot[${eLoop}].Item.EffectType.Find[Click]}) {
/ini "MyIni" "Inventory Items" "Item${eLoop}_Name" "${InvSlot[${eLoop}].Item.Name}"
/ini "MyIni" "Inventory Items" "Item${eLoop}_Spell" "${sName}"
/ini "MyIni" "Equipped Items" "Item${eLoop}_EffectType" "${InvSlot[${eLoop}].Item.EffectType}"
/ini "MyIni" "Inventory Items" "Item${eLoop}_Gem" "item"
} else /if (${InvSlot[${eLoop}].Item.Container}) {
/ini "MyIni" "Inventory Items" "Item${eLoop}" "${InvSlot[${eLoop}].Item.Container} slot container"
}
}
/next eLoop
/return
Sub GetEquipment2
/declare iSlots int outer
/declare iName int outer
/declare iItemNum int local 1
/for iSlots 1 to 32
/if (${InvSlot[${iSlots}].Item.Container}>0) {
/for iName 1 to ${InvSlot[${iSlots}].Item.Container}
/if (${Me.Inventory[${iSlots}].Item[${iName}].ID} && ${Me.Inventory[${iSlots}].Item[${iName}].Spell.ID} && ${Me.Inventory[${iSlots}].Item[${iName}].CastTime} && ${Me.Inventory[${iSlots}].Item[${iName}].WornSlots} && ${Me.Level}>=${Me.Inventory[${iSlots}].Item[${iName}].RequiredLevel} && ${Me.Inventory[${iSlots}].Item[${iName}].Class[${Me.Class}].Name.Equal[${Me.Class}]} && ${Spell[${Me.Inventory[${iSlots}].Item[${iName}].Spell}].Duration}>50) {
/ini "MyIni" "Items" "Item${iItemNum}_Name" "${Me.Inventory[${iSlots}].Item[${iName}].Name}"
/ini "MyIni" "Items" "Item${iItemNum}_Spell" "${Me.Inventory[${iSlots}].Item[${iName}].Spell}"
/ini "MyIni" "Items" "Item${iItemNum}_EffectType" "${Me.Inventory[${iSlots}].Item[${iName}].EffectType}"
/ini "MyIni" "Items" "Item${iItemNum}_Gem" "item"
/varcalc iItemNum ${iItemNum}+1
}
/next iName
}
/next iSlots
/return
Sub GetCombatDiscs
/declare i int local
/declare cLoop int local
/declare sName string local
| ------------------- Combat Disciplines -------------------
penCombatSkills
/if (!${Window[CombatSkillSelectWnd].Open}) /squelch /windowstate CombatSkillSelectWnd Open
/delay 5s ${Window[CombatSkillSelectWnd].Open}
/if (!${Window[CombatSkillSelectWnd].Open}) /goto penCombatSkills
/for cLoop 1 to 200
/if (${Window[CombatSkillSelectWnd].Child[CSSW_SkillSelectorList].List[${cLoop}].Length}) {
/varset sName ${Window[CombatSkillSelectWnd].Child[CSSW_SkillSelectorList].List[${cLoop}]}
/ini "MyIni" "Discs" "Disc${cLoop}_Name" "${Window[CombatSkillSelectWnd].Child[CSSW_SkillSelectorList].List[${cLoop},1]}"
/ini "MyIni" "Discs" "Disc${cLoop}_Level" "${Window[CombatSkillSelectWnd].Child[CSSW_SkillSelectorList].List[${cLoop},2]}"
/ini "MyIni" "Discs" "Disc${cLoop}_Cost" "${Window[CombatSkillSelectWnd].Child[CSSW_SkillSelectorList].List[${cLoop},3]}"
/ini "MyIni" "Discs" "Disc${cLoop}_Upkeep" "${Window[CombatSkillSelectWnd].Child[CSSW_SkillSelectorList].List[${cLoop},4]}"
/ini "MyIni" "Discs" "Disc${cLoop}_Target" "${Window[CombatSkillSelectWnd].Child[CSSW_SkillSelectorList].List[${cLoop},5]}"
/ini "MyIni" "Discs" "Disc${cLoop}_TargetType" "${Spell[${Window[CombatSkillSelectWnd].Child[CSSW_SkillSelectorList].List[${cLoop},1]}].TargetType}"
/ini "MyIni" "Discs" "Disc${cLoop}_Duration" "${Window[CombatSkillSelectWnd].Child[CSSW_SkillSelectorList].List[${cLoop},6]}"
/ini "MyIni" "Discs" "Disc${cLoop}_Reuse" "${Window[CombatSkillSelectWnd].Child[CSSW_SkillSelectorList].List[${cLoop},7]}"
/ini "MyIni" "Discs" "Disc${cLoop}_DurationSeconds" "${Spell[${sName}].Duration.TotalSeconds}s"
/ini "MyIni" "Discs" "Disc${cLoop}_Gem" "disc"
/for i 1 to 12 {
/if (${Spell[${Window[CombatSkillSelectWnd].Child[CSSW_SkillSelectorList].List[${cLoop},1]}].Slot[${i}].Length}) /ini "MyIni" "Discs" "Disc${cLoop}_Slot[${i}]" "${Spell[${Window[CombatSkillSelectWnd].Child[CSSW_SkillSelectorList].List[${cLoop},1]}].Slot[${i}]}"
}
/next i
/next cLoop
}
:closeCombatSkills
/if (${Window[CombatSkillSelectWnd].Open}) /squelch /windowstate CombatSkillSelectWnd close
/delay 5s !${Window[CombatSkillSelectWnd].Open}
/if (${Window[CombatSkillSelectWnd].Open}) /goto :closeCombatSkills
/return
Sub Event_AATimer(line, string aaNumber, string aaName, string aaReuseTime)
|MyReuseTime
|Type
|Description
|Spell
|Slot1-12
/declare i int local
/if (!${Defined[aaloop]}) /declare aaloop int outer 1
/declare sName string local
/varset sName ${aaName}
/ini "MyIni" "AAs" "AA${aaloop}_Name" "${sName}"
/ini "MyIni" "AAs" "AA${aaloop}_Number" "${aaNumber}"
/ini "MyIni" "AAs" "AA${aaloop}_Type" "${Me.AltAbility[${sName}].Type}"
/ini "MyIni" "AAs" "AA${aaloop}_MyReuseTime" "${Me.AltAbility[${sName}].MyReuseTime}"
/ini "MyIni" "AAs" "AA${aaloop}_Spell" "${Me.AltAbility[${sName}].Spell}"
/ini "MyIni" "AAs" "AA${aaloop}_Spell_ID" "${Me.AltAbility[${sName}].Spell.ID}"
/ini "MyIni" "AAs" "AA${aaloop}_Rank" "${Me.AltAbility[${sName}]}"
/ini "MyIni" "AAs" "AA${aaloop}_MaxRank" "${Me.AltAbility[${sName}].MaxRank}"
/ini "MyIni" "AAs" "AA${aaloop}_Gem" "alt"
/for i 1 to 12 {
/if (${Spell[${Me.AltAbility[${sName}].Spell.ID}].Slot[${i}].Length}) /ini "MyIni" "AAs" "AA${aaloop}_Slot[${i}]" "${Spell[${Me.AltAbility[${sName}].Spell.ID}].Slot[${i}]}"
}
/next i
/ini "MyIni" "AAs" "AA${aaloop}_Description" "${Me.AltAbility[${sName}].Description}"
/varcalc aaloop ${aaloop}+1
/varset aaEventTimer 5s
/return