ralgith Sorcerer
Joined: 13 Jan 2006 Posts: 715
|
Posted: Sat Aug 06, 2011 2:45 pm
#WAIT or #LOOP issue |
Setup:
Character Session Window 1:
Has an automatic practice script that uses #WAIT
Character Session Window 2:
Has an extra package attached to it and 2 other windows, but not to windows 1 above for Combat Macros
Only shared extra package between the two windows is the "Everyone" package
However, while the autoprac script is running, I cannot get any macros to work on windows 2,3,4 (3 & 4 are the same setup as 2 above, and share that combat macros package)
Any ideas?
Autoprac Script (Issue is most likely in the RunPrac alias):
Code: |
<class name="Automatic Practice" id="480">
<alias name="pracon" id="481">
<value>#t+ pscan
#CLASS {Automatic Practice}
#VAR PracStatus "On"
#CLASS 0</value>
</alias>
<alias name="pracoff" id="482">
<value>#t- pscan
#CLASS {Automatic Practice}
#VAR PracStatus "Off"
#CLASS 0</value>
</alias>
<alias name="addprac" id="483">
<value>#IF (%1 = "" | %2 = "") {
#EXEC prachelp
#ABORT 1
}
#CLASS {Automatic Practice}
#IF (%ismember( %1, @PracListSpell)) {
#ECHO This spell is already part of the practice list. Updating the matching spell percentage with percentage listed now and also updating the target.
#VAR PracListMax %replaceitem( %2, %ismember( %1, @PracListSpell), @PracListMax)
#IF (%3) {#VAR PracListTarget %replaceitem( %3, %ismember( %1, @PracListSpell), @PracListTarget)}
} {
#VAR PracListSpell %additem( %1, @PracListSpell)
#VAR PracListMax %additem( %2, @PracListMax)
#IF (%3) {#VAR PracListTarget %additem( %3, @PracListTarget)} {#VAR PracListTarget %additem( "Blank", @PracListTarget)}
}</value>
</alias>
<alias name="nextprac" id="484">
<value>spell = %pop( PracListSpell)
max = %pop( PracListMax)
#IF (%item( @PracListTarget, 1) = "Blank") {
targ = ""
#DELNITEM PracListTarget 1
} {targ = %pop( PracListTarget)}</value>
</alias>
<alias name="prachelp" id="485">
<value>#ECHO %cr
#ECHO {Erian's Automatic Practice Script}
#ECHO {Version: @APvers}
#ECHO {----------------------------------------------------------------------------------------------------}
#ECHO {Please Use This Format: addprac ~ ~ ~[SpellTarget~]}
#ECHO {SpellTarget is only required for combat spells and locate object, identify, or remove curse (use item in inventory).}
#ECHO {Please remember to add prereqs in proper order, BEFORE the higher spells in the chain.}
#ECHO {NOTE: You must encapsulate multi-word spell names in quotes. Example: addprac ~"word of recall~" 90}
#ECHO {Requirements: MudReader Plugin}
#ECHO {Designed for Eternal Darkness MUD ( ed.wolfpaw.net )}
#ECHO {Requirement Exception: You may skip using MudReader Plugin if you manually edit all of the ~#SPEAK into ~#ECHO}
%cr</value>
</alias>
<var name="maxma" id="486">4181</var>
<var name="spell" id="487">cure blindness</var>
<var name="targ" type="Literal" id="488"/>
<var name="max" id="489">83</var>
<var name="APvers" type="String" id="490">3.0.1 Beta</var>
<var name="NonDummyList" type="StringList" id="491">
<value>darkness|plant growth</value>
<json>["darkness","plant growth"]</json>
</var>
<var name="PracName" type="String" id="492">%char</var>
<var name="PracListSpell" type="StringList" id="493">
<value>cure disease|heal|power heal|group heal|restoration|group restoration</value>
<json>["cure disease","heal","power heal","group heal","restoration","group restoration"]</json>
</var>
<var name="PracListMax" type="StringList" id="494">
<value>83|83|83|83|83|83</value>
<json>[83,83,83,83,83,83]</json>
</var>
<var name="PracListTarget" type="StringList" id="495">
<value>Blank|Blank|Blank|Blank|Blank|Blank</value>
<json>["Blank","Blank","Blank","Blank","Blank","Blank"]</json>
</var>
<var name="PracMana" id="496">3831</var>
<var name="PracPrompt" type="Literal" id="497">Yes</var>
<var name="FleeAct" type="String" id="498">flee</var>
<trigger priority="4990" newline="false" prompt="true" id="499">
<pattern>%dhp (%d)m %dmv></pattern>
<value>#CLASS {Automatic Practice}
#VAR PracMana %1
#VAR PracPrompt "Yes"
#CLASS 0</value>
</trigger>
<class name="Run Prac" initdisable="true" id="500">
<alias name="PerformPrac" id="501">
<value>#THREAD "autoprac_zaem" {
#IF (%ismember( @spell, @NonDummyList)) {e} {w}
#T- pscan
#WHILE (%int( %eval( @PracMana * 100 / @maxma)) > 15 && @PracStatus = "On") {
#CLASS {Automatic Practice}
#VAR PracPrompt "No"
#CLASS 0
c '@spell' @targ
#WHILE (@PracPrompt = "No") {
#IF (@PracNoFight) {
#5 @FleeAct east
#CLASS {Automatic Practice}
#VAR PracNoFight {}
#CLASS 0
#EXIT
}
#IF (@PracNoMana) {
#IF (@targ = "dummy") {#5 @FleeAct east} {e}
#CLASS {Automatic Practice}
#VAR PracNoMana {}
#CLASS 0
#EXIT
}
#WAIT 2000
}
}
#IF (%ismember( @spell, @NonDummyList)) {w} {#IF (@targ = "dummy") {#5 @FleeAct east} {e}}
prac @spell
#T+ pscan
}</value>
</alias>
<trigger name="blah" priority="5020" id="502">
<pattern>@spell%s(%d)</pattern>
<value>#IF (%1 = @max) {
#ECHO {@PracName has completed practice on @spell}
#IF (@PracListSpell) {
#ECHO {@PracName moving on to next spell, %item( @PracListSpell, 1)}
nextprac
} {
#ECHO {@PracName has completed all current practice requirements.}
pracoff
}
} {#ECHO {@PracName @spell at %1 percent.}}</value>
</trigger>
<trigger priority="5030" id="503">
<pattern>Impossible! You can't concentrate enough!</pattern>
<value>#CLASS {Automatic Practice}
#VAR PracNoFight 1
#CLASS 0</value>
</trigger>
<trigger priority="5040" id="504">
<pattern>You haven't the energy to cast that spell!</pattern>
<value>#CLASS {Automatic Practice}
#VAR PracNoMana 1
#CLASS 0</value>
</trigger>
<class name="pscan" enabled="false" id="505">
<trigger priority="5060" newline="false" prompt="true" id="506">
<pattern>(%d)hp (%d)m (%d)mv></pattern>
<value>#IF (%2 == @maxma) {PerformPrac}</value>
</trigger>
</class>
</class>
<var name="PracStatus" type="Literal" id="507">On</var>
<var name="PracNoMana" type="String" id="509"/>
</class>
|
|
|