Macro works on the campaign frame and not the global frame

Thoughts, Help, Feature Requests, Bug Reports, Developing code for...

Moderators: dorpond, trevor, Azhrei

Forum rules
PLEASE don't post images of your entire desktop, attach entire campaign files when only a single file is needed, or generally act in some other anti-social behavior. :)
Post Reply
Zandel
Giant
Posts: 133
Joined: Thu May 13, 2010 1:52 pm

Macro works on the campaign frame and not the global frame

Post by Zandel »

So weird problem, I think its really a Java issue so I am not sure if posting here will do any good, but here goes. I have a few macros that work great in the campaign panel but when I try to copy them to the Global panel I get the error below. I usually copy the macros to the global and change them to g: for DM versions. Any idea why a macro would work fine in one frame and not the other? I run 1.3 Build 91 and use a stack size of 8.

Thanks

Code: Select all

java.lang.IllegalArgumentException: Value too long: [h:status = input(
"Choice|Acrobatics,BeastRiding,Dance,EscapeArtist,Flight,LockPicking,LongJumping,Prestidigitation,Running,Stealth,Swimming|Which Dexterity skill do you want to roll?|List|SELECT=0")]
[h:abort(status)]
 
[switch(Choice),code:
case 0:
	{ [h:UnskilledState=0]
	[h:StymiedState=0]
	[h:RollType=0]
	[h:UTest=state.Unskilled]
	[h:STest=state.Stymied]

	<!--Test for Skilled or Unskilled->

	[h:Test1=AcrobaticsAdds]
	[h,If(Test1>0):AddsTest=0;AddsTest=1]
	[h,If(UTest==0):Ustate=0;Ustate=1]

	[h,If(AddsTest+Ustate==0):UnskilledState=0;UnskilledState=1]
	<!--Test for Stymied->
	[h,If(STest==0):StymiedState=0;StymiedState=2]

	<!--Choose Roll Type->

	[h:RollType=UnskilledState+StymiedState]

	[h,switch(RollType),code:
	case 0:
	{
	[h:Output="Normal Skilled Roll"]
	[h,macro("NormalSkillRoll@Lib:Token"):""]
	[h:total=macro.return]
	};
	case 1:
	{
	[h:Output="UnSkilled Roll"]
	[h,macro("UnSkilledRoll@Lib:Token"):""]
	[h:total=macro.return]
	};
	case 2:
	{
	[h:Output="Stymied Roll"]
	[t:total=roll(1,20)]
	};
	case 3:
	{
	[h:Output="Stymied And UnSkilled Roll"]
	[t:total=roll(1,20)]
	};
	]
	[t:Output]
	<br>
	Your roll is
	[t:total]
	<br>
	[h:TempTotal = total]
	For a bonus of
	[h: Bonus = table("BonusTable", total)]
	[h:TempBonus=Bonus]
	[t: Bonus]
	<br>
	And a total Acrobatics Value of
	[t:AcrobaticsValue+Bonus]
	[h:LastUsedSkill="Acrobatics"]
	[h:LastUsedSkillValue=AcrobaticsValue+Bonus]};
case 1:
	{[h:UnskilledState=0]
	[h:StymiedState=0]
	[h:RollType=0]
	[h:UTest=state.Unskilled]
	[h:STest=state.Stymied]

	<!--Test for Skilled or Unskilled->

	[h:Test1=BeastRidingAdds]
	[h,If(Test1>0):AddsTest=0;AddsTest=1]
	[h,If(UTest==0):Ustate=0;Ustate=1]

	[h,If(AddsTest+Ustate==0):UnskilledState=0;UnskilledState=1]
	<!--Test for Stymied->
	[h,If(STest==0):StymiedState=0;StymiedState=2]

	<!--Choose Roll Type->

	[h:RollType=UnskilledState+StymiedState]

	[h,switch(RollType),code:
	case 0:
	{
	[h:Output="Normal Skilled Roll"]
	[h,macro("NormalSkillRoll@Lib:Token"):""]
	[h:total=macro.return]
	};
	case 1:
	{
	[h:Output="UnSkilled Roll"]
	[h,macro("UnSkilledRoll@Lib:Token"):""]
	[h:total=macro.return]
	};
	case 2:
	{
	[h:Output="Stymied Roll"]
	[t:total=roll(1,20)]
	};
	case 3:
	{
	[h:Output="Stymied And UnSkilled Roll"]
	[t:total=roll(1,20)]
	};
	]
	[t:Output]
	<br>
	Your roll is
	[t:total]
	<br>
	[h:TempTotal = total]
	For a bonus of
	[h: Bonus = table("BonusTable", total)]
	[h:TempBonus=Bonus]
	[t: Bonus]
	<br>
	And a total BeastRiding Value of
	[t:BeastRidingValue+Bonus]
	[h:LastUsedSkill="BeastRiding"]
	[h:LastUsedSkillValue=BeastRidingValue+Bonus]};
case 2: 
	{[h:UnskilledState=0]
	[h:StymiedState=0]
	[h:RollType=0]
	[h:UTest=state.Unskilled]
	[h:STest=state.Stymied]

	<!--Test for Skilled or Unskilled->

	[h:Test1=DanceAdds]
	[h,If(Test1>0):AddsTest=0;AddsTest=1]
	[h,If(UTest==0):Ustate=0;Ustate=1]

	[h,If(AddsTest+Ustate==0):UnskilledState=0;UnskilledState=1]
	<!--Test for Stymied->
	[h,If(STest==0):StymiedState=0;StymiedState=2]

	<!--Choose Roll Type->

	[h:RollType=UnskilledState+StymiedState]

	[h,switch(RollType),code:
	case 0:
	{
	[h:Output="Normal Skilled Roll"]
	[h,macro("NormalSkillRoll@Lib:Token"):""]
	[h:total=macro.return]
	};
	case 1:
	{
	[h:Output="UnSkilled Roll"]
	[h,macro("UnSkilledRoll@Lib:Token"):""]
	[h:total=macro.return]
	};
	case 2:
	{
	[h:Output="Stymied Roll"]
	[t:total=roll(1,20)]
	};
	case 3:
	{
	[h:Output="Stymied And UnSkilled Roll"]
	[t:total=roll(1,20)]
	};
	]
	[t:Output]
	<br>
	Your roll is
	[t:total]
	<br>
	[h:TempTotal = total]
	For a bonus of
	[h: Bonus = table("BonusTable", total)]
	[h:TempBonus=Bonus]
	[t: Bonus]
	<br>
	And a total Dance Value of
	[t:DanceValue+Bonus]
	[h:LastUsedSkill="Dance"]
	[h:LastUsedSkillValue=DanceValue+Bonus]};
case 3:
	{[h:UnskilledState=0]
	[h:StymiedState=0]
	[h:RollType=0]
	[h:UTest=state.Unskilled]
	[h:STest=state.Stymied]

	<!--Test for Skilled or Unskilled->

	[h:Test1=EscapeArtistAdds]
	[h,If(Test1>0):AddsTest=0;AddsTest=1]
	[h,If(UTest==0):Ustate=0;Ustate=1]

	[h,If(AddsTest+Ustate==0):UnskilledState=0;UnskilledState=1]
	<!--Test for Stymied->
	[h,If(STest==0):StymiedState=0;StymiedState=2]

	<!--Choose Roll Type->

	[h:RollType=UnskilledState+StymiedState]

	[h,switch(RollType),code:
	case 0:
	{
	[h:Output="Normal Skilled Roll"]
	[h,macro("NormalSkillRoll@Lib:Token"):""]
	[h:total=macro.return]
	};
	case 1:
	{
	[h:Output="UnSkilled Roll"]
	[h,macro("UnSkilledRoll@Lib:Token"):""]
	[h:total=macro.return]
	};
	case 2:
	{
	[h:Output="Stymied Roll"]
	[t:total=roll(1,20)]
	};
	case 3:
	{
	[h:Output="Stymied And UnSkilled Roll"]
	[t:total=roll(1,20)]
	};
	]
	[t:Output]
	<br>
	Your roll is
	[t:total]
	<br>
	[h:TempTotal = total]
	For a bonus of
	[h: Bonus = table("BonusTable", total)]
	[h:TempBonus=Bonus]
	[t: Bonus]
	<br>
	And a total EscapeArtist Value of
	[t:EscapeArtistValue+Bonus]
	[h:LastUsedSkill="EscapeArtist"]
	[h:LastUsedSkillValue=EscapeArtistValue+Bonus]};
case 4:
	{[h:UnskilledState=0]
	[h:StymiedState=0]
	[h:RollType=0]
	[h:UTest=state.Unskilled]
	[h:STest=state.Stymied]

	<!--Test for Skilled or Unskilled->

	[h:Test1=FlightAdds]
	[h,If(Test1>0):AddsTest=0;AddsTest=1]
	[h,If(UTest==0):Ustate=0;Ustate=1]

	[h,If(AddsTest+Ustate==0):UnskilledState=0;UnskilledState=1]
	<!--Test for Stymied->
	[h,If(STest==0):StymiedState=0;StymiedState=2]

	<!--Choose Roll Type->

	[h:RollType=UnskilledState+StymiedState]

	[h,switch(RollType),code:
	case 0:
	{
	[h:Output="Normal Skilled Roll"]
	[h,macro("NormalSkillRoll@Lib:Token"):""]
	[h:total=macro.return]
	};
	case 1:
	{
	[h:Output="UnSkilled Roll"]
	[h,macro("UnSkilledRoll@Lib:Token"):""]
	[h:total=macro.return]
	};
	case 2:
	{
	[h:Output="Stymied Roll"]
	[t:total=roll(1,20)]
	};
	case 3:
	{
	[h:Output="Stymied And UnSkilled Roll"]
	[t:total=roll(1,20)]
	};
	]
	[t:Output]
	<br>
	Your roll is
	[t:total]
	<br>
	[h:TempTotal = total]
	For a bonus of
	[h: Bonus = table("BonusTable", total)]
	[h:TempBonus=Bonus]
	[t: Bonus]
	<br>
	And a total Flight Value of
	[t:FlightValue+Bonus]
	[h:LastUsedSkill="Flight"]
	[h:LastUsedSkillValue=FlightValue+Bonus]};
case 5:
	{ [h:UnskilledState=0]
	[h:StymiedState=0]
	[h:RollType=0]
	[h:UTest=state.Unskilled]
	[h:STest=state.Stymied]

	<!--Test for Skilled or Unskilled->

	[h:Test1=LockPickingAdds]
	[h,If(Test1>0):AddsTest=0;AddsTest=1]
	[h,If(UTest==0):Ustate=0;Ustate=1]

	[h,If(AddsTest+Ustate==0):UnskilledState=0;UnskilledState=1]
	<!--Test for Stymied->
	[h,If(STest==0):StymiedState=0;StymiedState=2]

	<!--Choose Roll Type->

	[h:RollType=UnskilledState+StymiedState]

	[h,switch(RollType),code:
	case 0:
	{
	[h:Output="Normal Skilled Roll"]
	[h,macro("NormalSkillRoll@Lib:Token"):""]
	[h:total=macro.return]
	};
	case 1:
	{
	[h:Output="UnSkilled Roll"]
	[h,macro("UnSkilledRoll@Lib:Token"):""]
	[h:total=macro.return]
	};
	case 2:
	{
	[h:Output="Stymied Roll"]
	[t:total=roll(1,20)]
	};
	case 3:
	{
	[h:Output="Stymied And UnSkilled Roll"]
	[t:total=roll(1,20)]
	};
	]
	[t:Output]
	<br>
	Your roll is
	[t:total]
	<br>
	[h:TempTotal = total]
	For a bonus of
	[h: Bonus = table("BonusTable", total)]
	[h:TempBonus=Bonus]
	[t: Bonus]
	<br>
	And a total LockPicking Value of
	[t:LockPickingValue+Bonus]
	[h:LastUsedSkill="LockPicking"]
	[h:LastUsedSkillValue=LockPickingValue+Bonus]};
case 6:
	{[h:UnskilledState=0]
	[h:StymiedState=0]
	[h:RollType=0]
	[h:UTest=state.Unskilled]
	[h:STest=state.Stymied]

	<!--Test for Skilled or Unskilled->

	[h:Test1=LongJumpingAdds]
	[h,If(Test1>0):AddsTest=0;AddsTest=1]
	[h,If(UTest==0):Ustate=0;Ustate=1]

	[h,If(AddsTest+Ustate==0):UnskilledState=0;UnskilledState=1]
	<!--Test for Stymied->
	[h,If(STest==0):StymiedState=0;StymiedState=2]

	<!--Choose Roll Type->

	[h:RollType=UnskilledState+StymiedState]

	[h,switch(RollType),code:
	case 0:
	{
	[h:Output="Normal Skilled Roll"]
	[h,macro("NormalSkillRoll@Lib:Token"):""]
	[h:total=macro.return]
	};
	case 1:
	{
	[h:Output="UnSkilled Roll"]
	[h,macro("UnSkilledRoll@Lib:Token"):""]
	[h:total=macro.return]
	};
	case 2:
	{
	[h:Output="Stymied Roll"]
	[t:total=roll(1,20)]
	};
	case 3:
	{
	[h:Output="Stymied And UnSkilled Roll"]
	[t:total=roll(1,20)]
	};
	]
	[t:Output]
	<br>
	Your roll is
	[t:total]
	<br>
	[h:TempTotal = total]
	For a bonus of
	[h: Bonus = table("BonusTable", total)]
	[h:TempBonus=Bonus]
	[t: Bonus]
	<br>
	And a total LongJumping Value of
	[t:LongJumpingValue+Bonus]
	[h:LastUsedSkill="LongJumping"]
	[h:LastUsedSkillValue=LongJumpingValue+Bonus]};
case 7:
	{[h:UnskilledState=0]
	[h:StymiedState=0]
	[h:RollType=0]
	[h:UTest=state.Unskilled]
	[h:STest=state.Stymied]

	<!--Test for Skilled or Unskilled->

	[h:Test1=PrestidigitationAdds]
	[h,If(Test1>0):AddsTest=0;AddsTest=1]
	[h,If(UTest==0):Ustate=0;Ustate=1]

	[h,If(AddsTest+Ustate==0):UnskilledState=0;UnskilledState=1]
	<!--Test for Stymied->
	[h,If(STest==0):StymiedState=0;StymiedState=2]

	<!--Choose Roll Type->

	[h:RollType=UnskilledState+StymiedState]

	[h,switch(RollType),code:
	case 0:
	{
	[h:Output="Normal Skilled Roll"]
	[h,macro("NormalSkillRoll@Lib:Token"):""]
	[h:total=macro.return]
	};
	case 1:
	{
	[h:Output="UnSkilled Roll"]
	[h,macro("UnSkilledRoll@Lib:Token"):""]
	[h:total=macro.return]
	};
	case 2:
	{
	[h:Output="Stymied Roll"]
	[t:total=roll(1,20)]
	};
	case 3:
	{
	[h:Output="Stymied And UnSkilled Roll"]
	[t:total=roll(1,20)]
	};
	]
	[t:Output]
	<br>
	Your roll is
	[t:total]
	<br>
	[h:TempTotal = total]
	For a bonus of
	[h: Bonus = table("BonusTable", total)]
	[h:TempBonus=Bonus]
	[t: Bonus]
	<br>
	And a total Prestidigitation Value of
	[t:PrestidigitationValue+Bonus]
	[h:LastUsedSkill="Prestidigitation"]
	[h:LastUsedSkillValue=PrestidigitationValue+Bonus]};
case 8:
	{[h:UnskilledState=0]
	[h:StymiedState=0]
	[h:RollType=0]
	[h:UTest=state.Unskilled]
	[h:STest=state.Stymied]

	<!--Test for Skilled or Unskilled->

	[h:Test1=RunningAdds]
	[h,If(Test1>0):AddsTest=0;AddsTest=1]
	[h,If(UTest==0):Ustate=0;Ustate=1]

	[h,If(AddsTest+Ustate==0):UnskilledState=0;UnskilledState=1]
	<!--Test for Stymied->
	[h,If(STest==0):StymiedState=0;StymiedState=2]

	<!--Choose Roll Type->

	[h:RollType=UnskilledState+StymiedState]

	[h,switch(RollType),code:
	case 0:
	{
	[h:Output="Normal Skilled Roll"]
	[h,macro("NormalSkillRoll@Lib:Token"):""]
	[h:total=macro.return]
	};
	case 1:
	{
	[h:Output="UnSkilled Roll"]
	[h,macro("UnSkilledRoll@Lib:Token"):""]
	[h:total=macro.return]
	};
	case 2:
	{
	[h:Output="Stymied Roll"]
	[t:total=roll(1,20)]
	};
	case 3:
	{
	[h:Output="Stymied And UnSkilled Roll"]
	[t:total=roll(1,20)]
	};
	]
	[t:Output]
	<br>
	Your roll is
	[t:total]
	<br>
	[h:TempTotal = total]
	For a bonus of
	[h: Bonus = table("BonusTable", total)]
	[h:TempBonus=Bonus]
	[t: Bonus]
	<br>
	And a total Running Value of
	[t:RunningValue+Bonus]
	[h:LastUsedSkill="Running"]
	[h:LastUsedSkillValue=RunningValue+Bonus]};
case 9:
	{[h:UnskilledState=0]
	[h:StymiedState=0]
	[h:RollType=0]
	[h:UTest=state.Unskilled]
	[h:STest=state.Stymied]

	<!--Test for Skilled or Unskilled->

	[h:Test1=StealthAdds]
	[h,If(Test1>0):AddsTest=0;AddsTest=1]
	[h,If(UTest==0):Ustate=0;Ustate=1]

	[h,If(AddsTest+Ustate==0):UnskilledState=0;UnskilledState=1]
	<!--Test for Stymied->
	[h,If(STest==0):StymiedState=0;StymiedState=2]

	<!--Choose Roll Type->

	[h:RollType=UnskilledState+StymiedState]

	[h,switch(RollType),code:
	case 0:
	{
	[h:Output="Normal Skilled Roll"]
	[h,macro("NormalSkillRoll@Lib:Token"):""]
	[h:total=macro.return]
	};
	case 1:
	{
	[h:Output="UnSkilled Roll"]
	[h,macro("UnSkilledRoll@Lib:Token"):""]
	[h:total=macro.return]
	};
	case 2:
	{
	[h:Output="Stymied Roll"]
	[t:total=roll(1,20)]
	};
	case 3:
	{
	[h:Output="Stymied And UnSkilled Roll"]
	[t:total=roll(1,20)]
	};
	]
	[t:Output]
	<br>
	Your roll is
	[t:total]
	<br>
	[h:TempTotal = total]
	For a bonus of
	[h: Bonus = table("BonusTable", total)]
	[h:TempBonus=Bonus]
	[t: Bonus]
	<br>
	And a total Stealth Value of
	[t:StealthValue+Bonus]
	[h:LastUsedSkill="Stealth"]
	[h:LastUsedSkillValue=StealthValue+Bonus]};
case 10:
	{[h:UnskilledState=0]
	[h:StymiedState=0]
	[h:RollType=0]
	[h:UTest=state.Unskilled]
	[h:STest=state.Stymied]

	<!--Test for Skilled or Unskilled->

	[h:Test1=SwimmingAdds]
	[h,If(Test1>0):AddsTest=0;AddsTest=1]
	[h,If(UTest==0):Ustate=0;Ustate=1]

	[h,If(AddsTest+Ustate==0):UnskilledState=0;UnskilledState=1]
	<!--Test for Stymied->
	[h,If(STest==0):StymiedState=0;StymiedState=2]

	<!--Choose Roll Type->

	[h:RollType=UnskilledState+StymiedState]

	[h,switch(RollType),code:
	case 0:
	{
	[h:Output="Normal Skilled Roll"]
	[h,macro("NormalSkillRoll@Lib:Token"):""]
	[h:total=macro.return]
	};
	case 1:
	{
	[h:Output="UnSkilled Roll"]
	[h,macro("UnSkilledRoll@Lib:Token"):""]
	[h:total=macro.return]
	};
	case 2:
	{
	[h:Output="Stymied Roll"]
	[t:total=roll(1,20)]
	};
	case 3:
	{
	[h:Output="Stymied And UnSkilled Roll"]
	[t:total=roll(1,20)]
	};
	]
	[t:Output]
	<br>
	Your roll is
	[t:total]
	<br>
	[h:TempTotal = total]
	For a bonus of
	[h: Bonus = table("BonusTable", total)]
	[h:TempBonus=Bonus]
	[t: Bonus]
	<br>
	And a total Swimming Value of
	[t:SwimmingValue+Bonus]
	[h:LastUsedSkill="Swimming"]
	[h:LastUsedSkillValue=SwimmingValue+Bonus]};
default:{invalid input}]



	at java.util.prefs.AbstractPreferences.put(Unknown Source)
	at net.rptools.maptool.client.ui.macrobuttons.buttons.MacroButtonPrefs.savePreferences(MacroButtonPrefs.java:70)
	at net.rptools.maptool.model.MacroButtonProperties.save(MacroButtonProperties.java:302)
	at net.rptools.maptool.client.ui.MacroButtonDialog.save(MacroButtonDialog.java:229)
	at net.rptools.maptool.client.ui.MacroButtonDialog.access$0(MacroButtonDialog.java:202)
	at net.rptools.maptool.client.ui.MacroButtonDialog$1.actionPerformed(MacroButtonDialog.java:113)
	at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
	at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
	at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
	at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
	at java.awt.Component.processMouseEvent(Unknown Source)
	at javax.swing.JComponent.processMouseEvent(Unknown Source)
	at java.awt.Component.processEvent(Unknown Source)
	at java.awt.Container.processEvent(Unknown Source)
	at java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Window.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.awt.EventQueue.access$500(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	at net.rptools.maptool.client.swing.MapToolEventQueue.dispatchEvent(MapToolEventQueue.java:36)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.awt.WaitDispatchSupport$2.run(Unknown Source)
	at java.awt.WaitDispatchSupport$4.run(Unknown Source)
	at java.awt.WaitDispatchSupport$4.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.awt.WaitDispatchSupport.enter(Unknown Source)
	at java.awt.Dialog.show(Unknown Source)
	at java.awt.Component.show(Unknown Source)
	at java.awt.Component.setVisible(Unknown Source)
	at java.awt.Window.setVisible(Unknown Source)
	at java.awt.Dialog.setVisible(Unknown Source)
	at net.rptools.maptool.client.ui.MacroButtonDialog.show(MacroButtonDialog.java:188)
	at net.rptools.maptool.client.ui.macrobuttons.buttons.MacroButtonPopupMenu$EditButtonAction.actionPerformed(MacroButtonPopupMenu.java:149)
	at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
	at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
	at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
	at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
	at javax.swing.AbstractButton.doClick(Unknown Source)
	at de.muntjak.tinylookandfeel.TinyMenuItemUI.doClick(Unknown Source)
	at de.muntjak.tinylookandfeel.TinyMenuItemUI$MouseInputHandler.mouseReleased(Unknown Source)
	at java.awt.Component.processMouseEvent(Unknown Source)
	at javax.swing.JComponent.processMouseEvent(Unknown Source)
	at java.awt.Component.processEvent(Unknown Source)
	at java.awt.Container.processEvent(Unknown Source)
	at java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Window.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.awt.EventQueue.access$500(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	at net.rptools.maptool.client.swing.MapToolEventQueue.dispatchEvent(MapToolEventQueue.java:36)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.run(Unknown Source)

User avatar
wolph42
Winter Wolph
Posts: 9999
Joined: Fri Mar 20, 2009 5:40 am
Location: Netherlands
Contact:

Re: Macro works on the campaign frame and not the global fra

Post by wolph42 »

stack of 8 is ridiculously high. Lower it to 4. (although its unlikely that its the cause of this issue). Global macros are stored in the REGISTRY !! I can all but imagine what kind of crap this will generate when used improperly. Hence I never use global!! (if not only because I have 5 different devices I can use).

As for a solution. You could try:

Code: Select all

[skillList    = "Acrobatics,BeastRiding,Dance,EscapeArtist,Flight,LockPicking,LongJumping,Prestidigitation,Running,Stealth,Swimming"]
[h:abort(input(
    "Choice|"+skillList+"|Which Dexterity skill do you want to roll?|List|SELECT=0"
))]
 
 

Zandel
Giant
Posts: 133
Joined: Thu May 13, 2010 1:52 pm

Re: Macro works on the campaign frame and not the global fra

Post by Zandel »

Wow, I didn't know that. So if I delete the global macros does it remove them from the registry? Or am I mucking up my registry with every set and they never go away? How do you manage GM macros (I.E. hidden rolls) vs player macros? I play Torg and I need a ton of buttons. Duplicating them all in the campaign frame would be very unwieldy. Thank you for your response.

User avatar
wolph42
Winter Wolph
Posts: 9999
Joined: Fri Mar 20, 2009 5:40 am
Location: Netherlands
Contact:

Re: Macro works on the campaign frame and not the global fra

Post by wolph42 »

Not an expert in this, but I would expect them to be removed from reg. as for where... The only obvious place is the campaign panel. The only alternative to that is putting them on a token, but that would require them to drag the token along to different maps. Another method would be to use a form...but that's tricky in itself...

User avatar
Full Bleed
Demigod
Posts: 4736
Joined: Sun Feb 25, 2007 11:53 am
Location: FL

Re: Macro works on the campaign frame and not the global fra

Post by Full Bleed »

wolph42 wrote:The only obvious place is the campaign panel.
The only alternative to that is putting them on a token, but that would require them to drag the token along to different maps.
I use a combination of both of these. I have a "GM" token that has the macros that I use most. And when I open up a new map, I make a copy of the GM token and place it there.

I also use the campaign panel for macros that tend to be more universal or obscure. So if a player needs something I can often drag what they need from there to their tokens. But I do keep the campaign panel macros hidden from players. I don't think they need another window to manage. Heck, I've actually moved away from players even needing a selection or impersonation window open after they launch their character sheet.
Maptool is the Millennium Falcon of VTT's -- "She may not look like much, but she's got it where it counts."

Post Reply

Return to “MapTool”