Module parser

Module parser 

Source
Expand description

Parser implementation for .milk files.

FunctionsΒ§

default_shape_code πŸ”’
Build a default ShapeCode for index N. Mirrors default_wave_code.
default_wave_code πŸ”’
Build a default WaveCode for index N. Used when wavecode_N_* or wave_N_* lines reference a wave that hasn’t been seen yet β€” both code paths must agree on defaults.
is_indexed_block πŸ”’
Returns true if line starts with <prefix><digit>_ β€” i.e., an indexed block like wave_0_per_frame1=... or shape_3_init1=.... Used to distinguish from scalar param names like wave_r=... that share the wave_ prefix.
parse_equation_line πŸ”’
Parse equation line (e.g., β€œper_frame_1=wave_r = 0.5;”)
parse_milk_preset
Parse a complete .milk preset file.
parse_parameter πŸ”’
Parse a parameter and store it in PresetParameters
parse_psversion_line πŸ”’
Parse PS version line
parse_shader_line πŸ”’
Parse shader line (e.g., β€œwarp_1=`shader_body”)
parse_shape_equation_line πŸ”’
Parse a custom-shape equation line: shape_N_per_frameM=expr β†’ per_frame_equations shape_N_initM=expr β†’ per_frame_init_equations
parse_shapecode_line πŸ”’
Parse shapecode line
parse_version_line πŸ”’
Parse version line (e.g., β€œMILKDROP_PRESET_VERSION=201”)
parse_wave_equation_line πŸ”’
Parse a custom-wave equation line: wave_N_per_frameM=expr β†’ per_frame_equations wave_N_per_pointM=expr β†’ per_point_equations wave_N_initM=expr β†’ per_frame_init_equations
parse_wavecode_line πŸ”’
Parse wavecode line