Hi all. I'm in need of a macro (or something else?) that calculates a bunch 
of fields together in an expression. I'm trying to do with plugins like 
calc and playing around with variables and action widgets but nothing seems 
to work. In my last attempt I made a huge button full of actions that 
stored fields in a temp tiddler, with vars that recovered those fields to 
use in other action setfields... It was monstrous and still it didn't work.

I believe I need a macro - actually, probably a javascript one. But I don't 
know where to start; I don't know much about java and making macros in 
general. Can anyone point me to the best path I should follow, or help in 
any way?

The macro should:

from tiddler-1:
get field-a-1, field-a-2, field-b-1, field-b-2, field-n

from both tiddler-a and tiddler-b (which are stored as values in field-a-1 
and field-b-1):
get field-x, so to get field-x-a and field-x-b to keep around for calcs.

these are all fields I manually set up.

then:

multiply field-x-a and field-a-2, and keep the result around (let's say 
var-a)
multiply field-x-b and field-b-2, the same (var-b)

add field-a-2 and field-b-2, to store as field-y in tiddler-1

multiply field-n and field-z, and get var-n

add together var-a, var-b and var-n, and store the result as field-z in 
tiddler-z


this is my last attempt (embed in a button). There's one more small calc, 
but it is just a sum that involves one field, so it's non relevant at the 
moment.
<$action-setfield $tiddler=":$/temp/HPCalc" $field="lev1" 
$value={{!!levello1}}/>
<$action-setfield $tiddler=":$/temp/HPCalc" $field="lev2" 
$value={{!!levello2}}/>
<$action-setfield $tiddler=":$/temp/HPCalc" $field="hd1" $value={{{ 
[title{!!class}get[hd]] }}}/>
<$action-setfield $tiddler=":$/temp/HPCalc" $field="hd2" $value={{{ 
[title{!!class}get[hd]] }}}/>
<$action-setfield $tiddler=":$/temp/HPCalc" $field="conmod" $value={{{ 
[<currentTiddler>get[modcon]] }}}/>

<$vars lev1={{{ [[$:/temp/HPCalc]get[lev1]] }}} lev2={{{ 
[[$:/temp/HPCalc]get[lev2]] }}} hd1={{{ [[$:/temp/HPCalc]get[hd1]] }}} 
hd2={{{ [[$:/temp/HPCalc]get[hd2]] }}}
conmod={{{ [[$:/temp/HPCalc]get[conmod]] }}}>

<$action-setfield $tiddler=":$/temp/HPCalc" $field="hps" $value={{{ 
[<hd1>multiply[2]subtract[2]] }}}/>
<$action-setfield $tiddler=":$/temp/HPCalc" $field="hp1" $value={{{ 
[<lev1>multiply<hd1>] }}}/>
<$action-setfield $tiddler=":$/temp/HPCalc" $field="hp2" $value={{{ 
[<lev2>multiply<hd2>] }}}/>
<$action-setfield $tiddler=":$/temp/HPCalc" $field="lev" $value={{{ 
[<lev1>add<lev2>] }}}/>

<$vars hps={{{ [[$:/temp/HPCalc]get[hps]] }}} hp1={{{ 
[[$:/temp/HPCalc]get[hp1]] }}} hp2={{{ [[$:/temp/HPCalc]get[hp2]] }}} 
lev={{{ [[$:/temp/HPCalc]get[lev]] }}}>

<$action-setfield $tiddler=":$/temp/HPCalc" $field="hpcon" $value={{{ 
[<conmod>multiply<lev>] }}}/>

<$vars hpcon={{{ [title[$:/temp/HPCalc]get[hpcon]] }}}>

<$action-setfield $tiddler=<<currentTiddler>> $field="hitpoints" $value={{{ 
[<hps>add<hp1>add<h2>add<hpcon>] }}}/>
<$action-setfield $tiddler=<<currentTiddler>> $field="level" $value={{{ 
[<lev>] }}}/>

</$vars>
</$vars>
</$vars>

if you played you know what, you know what this is about :P

-- 
You received this message because you are subscribed to the Google Groups 
"TiddlyWiki" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to tiddlywiki+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tiddlywiki/dfe1fa36-3c89-43fc-80e6-002fd47250d2n%40googlegroups.com.

Reply via email to