Hi Stefano, Comments below,
Regards, Brent. >*********** REPLY SEPARATOR *********** > >On 3/01/2007 at 12:45 AM stine020 wrote: >Hi, thxs for the prompt help (which I already put to good use). > >I have another set of questions if you don't mind: > >4) I have spent many days creating a complex map window but I realize >now that I should have created it as private window instead.. Any way >to change that quickly (maybe hacking some file?) or do I have to go >through a long copy/paste sequence? Edit your buildfile (see http://www.vassalengine.org/wiki/doku.php?id=faq_modules#what_is_the_buildfile_and_how_do_i_edit_it) look for the line for your Map: <VASSAL.build.module.Map ....> and change it to <VASSAL.build.module.PrivateMap ....> >5) I am very confused by when the notation "$variable$" applies and >when just "variable" applies instead; I am setting up global variables >in some units prototype definition and sometimes I have to use the >double dollar notation (for example to set offsets in the "send to >location" commands) and sometimes I have not (for example to declare >conditions under which a trigger should fire); which is the rationale? There are a number of different situations where you can use $variable$ elements. In Property Match Expressions (PME's) (i.e. where you set up "conditionals" for triggers and global key commands) you SOMETIMES use $variable$. PME's are evaluated in two stages: 1. Any $variable$ values are replaced with the current value of variable. Obviously, you use $variable$ for this. 2. The Conditional expressions are evaluated. Each conditional expression is assumed to have a variable name on the left hand side of the operator and an unqoted string on the right hand side, so any variable names on the left hand side should NOT use $variable$ as these would have been replaced with some value in step 1. So variable = value means check if the value of variable is equal to the string "value" variable = $value$ means check oif the value of variable is equal to the value of the property value. In all other case, you ALWAYS use $variable$. NOTE that currently in VASSAL, you almost never use " to quote strings. (This may change in the future). >6) Also, are spaces allowed in new (global or dybamic) variable names >(guess not) and/or in their values? For the latter, do I need to >escape them (like with single or double quotes)? For example, can I >have a Side called United Kingdom and do tests like playerSide != >United Kingdom work? or should I do playerSide != "United Kingdom" >instead? Yes, spaces in property/variable names will generally work and you should not quote them. playerSide!=United Kingdom is correct. >5) If I have a Deck of cards on a board called "Resources" I can >figure out the number of cards it holds by using the global variable >Resources_numCards (or maybe it is $Resources_numCards$) in any other >board or even map (unless there is not another "Resources" deck >somewhere else, in which case I guess the Board/Map/Module sequence >applies), is that correct? Yes. > Any automatic way of figuring out the number of cards of each subtype in the > deck? No. > >6) Is there somewhere a master list of all global variable defined by >any game component (map, board, zone etc) such as CurrentZone, >playerSide etc? I am just painfully figuring them out subscreen by >subscreen (help screen by help screen). http://www.vassalengine.org/wiki/doku.php?id=faq_modules#what_system_properties_are_returned_by_counters is fairly complete. >Thanks again for all help! > >Stefano > ____________________________________________________________ Brent Easton Analyst/Programmer University of Western Sydney Email: [EMAIL PROTECTED]
