{
  "name": "Ghost",
  "dimension": "text",
  "slot": "action_bar",
  "width": 256,
  "height": 128,
  "textBaseline": 128,
  "placement": {
    "x": 0,
    "y": 0
  },
  "shapes": [],
  "texts": [],
  "heads": [],
  "images": [],
  "bars": [],
  "triggers": [],
  "effect": {
    "glsl": "vec2 ghostAt(float t, float x) {\n    return vec2(sin(t * 2.4 + x * 0.12) * 2.5, cos(t * 1.9 + x * 0.1) * 1.2);\n}\nvec4 effect(Fx f) {\n    vec4 col = vec4(0.0);\n    for (int i = 3; i >= 1; i--) {\n        float a = G(f.p - ghostAt(f.t - float(i) * 0.09, f.o.x)) * (0.42 - float(i) * 0.1);\n        col = over(vec4(0.55, 0.85, 1.0, a), col);\n    }\n    return over(vec4(0.9, 1.0, 1.0, G(f.p - ghostAt(f.t, f.o.x)) * 0.92), col);\n}\n",
    "pad": [
      3,
      2,
      4,
      2
    ],
    "prompt": "",
    "preset": "haunted",
    "sample": "Boo..."
  }
}