View Single Post
Senior Member
Volunteer Data File Contributor
Join Date: Nov 2009
Posts: 1,450

Old December 31st, 2019, 11:28 AM
Ah, this actually isn't using any gizmos at the moment. On the tab_basic page, the player can choose a background. One of the backgrounds allow them to pick a skill specialty associated with the Mechanics skill, so it bootstraps a pick of the following, which has the Skill.SkMech tag added to it:

  name="Bonus Specialty"
  description="Adds the selected specialty.">
  <fieldval field="usrCandid2" value="component.Specialty"/>
  <tag group="Hide" tag="Special"/>
  <tag group="ChooseSrc2" tag="Thing"/>
  <eval index="1" phase="PreTraits" priority="900">
    <before name="Calc trtFinal"/><![CDATA[
    ~build the candidate expression out of our specialty tags
    var specs as string
    specs = tagids[Specialty.?, " | "]
    var skills as string
    skills = tagids[Skill.?, " | "]

    var combined as string
    if (tagis[Skill.?] <> 0) then
      if (tagis[Specialty.?] <> 0) then
        combined = skills & " | " & specs
        combined = skills
      combined = specs

    field[usrCandid2].text &= " & (" & combined & ")"
When listing the various bonuses I display the chooser table excerpted above if if the usrCandid2 field is filled out (which it actually has a condition in there, which was originally how I was trying to make this work).

So the idea is that the "fRPlusSp" bootstrapped onto the Mechanic background has the Skill.skMech tag, as do the specialties such as "Jury-Rig", and I thought I could use <needtag> to tie them together. Or would it make more sense to set up a candidatepick and maybe a candidatefield to instead do the picking? When I looked into that, it seemed kind of complicated, particularly since I really only need the field value (which I can grab from usrCandid2) and the candidatepick seemed almost like adding a gizmo to it.

That said, I've also realized that I've done this before, and similarly had issues where the Background gets changed, and the hero retains the Specialty pick. I vaguely remember there being a way to ensure such picks get deleted when the base object is, but
Duggan is offline   #3 Reply With Quote