So I’ve been messing with this for a long time to no avail. This is my silly little generator I made and I just can’t get this to work.

I am currently using an example marking to make this work until I can figure it out.

Essentially what I’m looking for is how can I make it so that “redtonemarking1” will only be visible/possible if “redBase” is currently on screen/selected.

Is there something I’m missing? Is it not possible? Thank you in advance.

  • VioneTM
    link
    English
    3
    edit-2
    3 months ago

    Hello, you can check the changes here: https://perchance.org/vgs5qtexr3

    First, you don’t need to have multiple layers per color. You can just have one layer, on the generator its called base, then under it, is the images per color, then you can use Perchance’s dynamic odds to select the correct image.

    output
      [x = base.evaluateItem] [imageLayerCombiner(data)] ^[clicked == "lion"] // selects the base, then uses it for the selections.
    
    data
      ...
      layers
        ...
        base // base layer
          filter = [baseFilters.evaluateItem]
          https://i.imgur.com/B6nOqdc.png^[x == 'blank'] //blank
          https://i.imgur.com/4sFFKFS.png^[x == 'brownpinkBase']
          https://i.imgur.com/xxCVLzl.png^[x == 'redBase']
          https://i.imgur.com/IstBWcB.png^[x == 'blueBase']
          https://i.imgur.com/JIPN8jR.png^[x == 'lavendarBase']
          https://i.imgur.com/ZFlZfFp.png^[x == 'gingerBase']
          https://i.imgur.com/fpAEPbi.png^[x == 'goldBase']
    ...
    base // a separate list to select the base.
      blank
      redBase
      blueBase
      brownpinkBase
      lavendarBase
      gingerBase
      goldBase
    
    baseFilters // List of filter per base, selected with the dynamic odds.
      hue-rotate({0-40}deg) saturate({0-100}%) brightness({50-150}%)^[x == 'brownpinkBase']
      hue-rotate({0-10}deg) saturate({50-120}%) brightness({50-150}%)^[x == 'redBase']
      hue-rotate({0-35}deg) saturate({50-120}%) brightness({50-130}%)^[x == 'blueBase']
      hue-rotate({0-50}deg) saturate({50-120}%) brightness({50-130}%)^[x == 'lavendarBase']
      hue-rotate({0-20}deg) saturate({50-100}%) brightness({50-100}%)^[x == 'gingerBase']
      hue-rotate({0-10}deg) saturate({50-120}%) brightness({50-110}%)^[x == 'goldBase']
    
    • @RancidWineOP
      link
      English
      23 months ago

      Thank you so much! I super appreciate the time and help! I can’t wait to add more and keep going now that you’ve made it so much simpler and organized!

    • @RancidWineOP
      link
      English
      13 months ago

      I actually just noticed that it is printing out text on the actual generator. Is there a way to avoid this happening but still get my intended results?

      • @wthit56
        link
        English
        43 months ago

        I notice the code has [x = base.evaluateItem] which will naturally output base.evaluateItem, which is what you are seeing. You can avoid this to also give it what to output after a comma: [x = base.evaluateItem, ""] Or you could even combine the block with the next block like this: [x = base.evaluateItem, imageLayerCombiner(data)] so that it will set the variable and output just the layer thingy.