>*********** 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/
 



Reply via email to