>*********** REPLY SEPARATOR ***********
>
>On 30/08/2006 at 11:40 AM mirec_delech wrote:
>--- In [email protected], "Brent Easton" <[EMAIL PROTECTED]>
>> I think what you are trying to do is have a counter in each region
>that uses layers to indicates the owner of that region using layers
>automatically. Then at a certain time in the game, you want to click a
>button and have all of the control counters change to match the owner
>of any counter that is currently sitting on top of them. Does that
>sound right?
>
>That's exactly what I (want to) do. :)
>M.
Ok.
Here's one way.
Watch carefully for the different Control sequences used at each level. eg. for
a German Unit
1. Change Control Button sends Ctrl C to Unit
2. Unit sends Ctrl G to Any Control counter in same locaiton
3. Control counter sends Esc R to itself, turning all layers off
4. Control counter sends Alt G to itself, turning German layer on
There are other ways to do this, VASSAL is very flexible, but this should work.
Only one extra trait in the units, all of the complexity is in the Control
counters. You could reverse this, but I like to keep the general purpose units
as lightweight as possible.
Hope this helps,
Brent.
1. Global Key Command Button
Your 'Change Control' button is a Global Key Command that sends Ctrl C to all
Fleets and Armies on the board. If all of your units have a Marker with
Type=Fleet or Type=Army, and your main map is named 'Main' then you would use a
property of
CurrentMap = Main && Type=~Fleet|Army
So, now your Change Control button send Ctrl C to every Fleet and Army on the
board.
2. Individual Fleet and Army Commands
Each Fleet and Army for a given Nationality needs a Global Key Command. Here is
the one for the Germans:
Command Name: (blank)
Keyboard Command: Ctrl C
Global Key Command Ctrl G
Matching Properties: Type=Control&&LocationName=$LocationName$
Restrict Range: No
i.e. When the 'Change Control' Global button is pressed, this counter will send
Ctrl G to all Control counters that are in the same Location as this one.
If you change to use Zones, then you should use
'Type=Control&&CurrentZone=$CurrentZone$' instead.
Each Nationality sends a different Global Key Comamnd, so the Russians would
send Ctrl R instead of Ctrl G.
3. Control counters.
Your control counters have seven seperate layer traits, one for each player.
Each layer is Always Active and has 2 layers. Layer 1 has no counter specified
(or an invisible transparent counter). Layer 2 is the Control display for that
nationality.
All seven Layers have the same command to Reset to level 1 (i.e. show the
invisible marker, or turn off the layer) - Let's say 'Reset Esc R'.
Each of the seven layers has it's own unique 'Increase' command e.g. 'German
Control Alt G', 'Russian Control Alt R'.
Also add a Marker with Type=Control.
Now, each layer needs a matching Trigger Action
Name: German Control
Properties:
Menu Command: German
KeyStroke: Ctrl G
Watch KeyStrokes:
Perform Keystokes: Esc R, Alt G
ie. Whenever this counter a Ctrl G command, issue am Esc R to itself to turn
off all layers, then Issue an Alt G to turn on the German Layer. This ensures
that only the German layer will be on, regardless of what was on before.
The Russian Layer will be the same, but it will watch form Ctrl R and perform
Esc R followed by Alt R.
____________________________________________________________
Brent Easton
Analyst/Programmer
University of Western Sydney
Email: [EMAIL PROTECTED]
Yahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/vassalengine/
<*> To unsubscribe from this group, send an email to:
[EMAIL PROTECTED]
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/