1cb93a386Sopenharmony_ci{ 2cb93a386Sopenharmony_ci "MaxCount": 2000, 3cb93a386Sopenharmony_ci "Drawable": { 4cb93a386Sopenharmony_ci "Type": "SkCircleDrawable", 5cb93a386Sopenharmony_ci "Radius": 1 6cb93a386Sopenharmony_ci }, 7cb93a386Sopenharmony_ci "Code": [ 8cb93a386Sopenharmony_ci "void effectSpawn(inout Effect effect) {", 9cb93a386Sopenharmony_ci " effect.rate = 1000;", 10cb93a386Sopenharmony_ci "}", 11cb93a386Sopenharmony_ci "", 12cb93a386Sopenharmony_ci "void spawn(inout Particle p) {", 13cb93a386Sopenharmony_ci " p.lifetime = mix(1, 3, rand(p.seed));", 14cb93a386Sopenharmony_ci " float a = radians(mix(250, 290, rand(p.seed)));", 15cb93a386Sopenharmony_ci " float s = mix(10, 30, rand(p.seed));", 16cb93a386Sopenharmony_ci " p.vel.x = cos(a) * s;", 17cb93a386Sopenharmony_ci " p.vel.y = sin(a) * s;", 18cb93a386Sopenharmony_ci " p.pos += text(rand(p.seed)).xy;", 19cb93a386Sopenharmony_ci "}", 20cb93a386Sopenharmony_ci "", 21cb93a386Sopenharmony_ci "void update(inout Particle p) {", 22cb93a386Sopenharmony_ci " float4 startColor = float4(1, 0.196, 0.078, 1);", 23cb93a386Sopenharmony_ci " float4 endColor = float4(1, 0.784, 0.078, 1);", 24cb93a386Sopenharmony_ci " p.color = mix(startColor, endColor, p.age);", 25cb93a386Sopenharmony_ci "}", 26cb93a386Sopenharmony_ci "" 27cb93a386Sopenharmony_ci ], 28cb93a386Sopenharmony_ci "Bindings": [ 29cb93a386Sopenharmony_ci { 30cb93a386Sopenharmony_ci "Type": "SkTextBinding", 31cb93a386Sopenharmony_ci "Name": "text", 32cb93a386Sopenharmony_ci "Text": "SKIA", 33cb93a386Sopenharmony_ci "FontSize": 96 34cb93a386Sopenharmony_ci } 35cb93a386Sopenharmony_ci ] 36cb93a386Sopenharmony_ci}