[messages] [Module Design] how to count property of cards in player window / hand

rrvs spideratj at aol.com
Mon May 29 16:30:52 CEST 2017


Hi, I threw a similar version of this out in an earlier post, so I'll
repost it... maybe it'll work as an alternative for you.  I'm not sure
it actually works as is though (I used some $$ short-cuts), so if you
try it and it's broken, you can let me know.  I'd make a copy of your
module beforehand, so you can quickly revert back to your current
version if it's not working for you (nothing like having to undo or redo
stuff when you code yourself into a dead-end).

You'd have your four global properties: P1Z, P2Z, P3Z, P4Z, as you
stated. Then you'd use use "end movement" map level GKCs to tally those
properties onto and off the player boards, rather than any right-click
actions (so remove all right-click tallying actions, as you don't want
them tallying twice).  You can have separate key commands for these map
level GKCs, or all the same, I don't think it really matters as long as
you list the relevant ones in the trigger actions below.  Let's assume
all your maps have the same one though: MapGKC (so MapGKC is the 'ends
movement' gkc property for any map in your module, just to be clear on
that: main map, player hand, whatever).

The arrival trigger action would have a matching property of:
CurrentMap=~P1|P2|P3|P4&&Oldmap!=$CurrentMap$
It would watch for MapGKC, and then increment by 1 the global property
trait named: $CurrentMap$Z.

The primary removal trigger action would have a matching property of:
CurrentMap!=$OldMap$&&OldMap=~P1|P2|P3|P4
It would watch for MapGKC, and then increment by -1 the global property
trait named: $OldMap$Z.

Seems like that would work for either a right-click or manual discards
(and by any player), but I could easily be wrong.  Anyway, you're
welcome to let me know of any problems.  Good luck either way!

_______________________________________________
Read this topic online here:
http://www.vassalengine.org/forum/viewtopic.php?p=53708#p53708


More information about the messages mailing list