surface fire param float frame 1 local color layer_color 0 0 0 local color surface_color 0 0 0 local color surface_opac 0 0 0 local color layer_opac 0 0 0 local float width 0 local float cutoff 0 local float fade 0 local float f 0 local float turb 0 local float maxfreq 0 local float flame 0 local float ss 0 local float tt 0 local color red 0 0 0 local color orange 0 0 0 local color yellow 0 0 0 local color hot 0 0 0 initcode 0 return code pushif 16 popf maxfreq pushiv 1 0.3 0.1 popc red pushiv 0.95 0.7 0.05 popc orange pushiv 0.95 0.95 0.1 popc yellow pushiv 1 1 0.8 popc hot pushif 0 cset surface_color pushif 0 cset surface_opac pushif 0.01 mulF frame pushif 5 mulF s addff popf ss pushif 0.1 mulF frame addF t popf tt pushif 1e-07 pushf dv pushf tt Dvf mulff pushf du pushf tt Duf mulff abs addff fmax pushif 1e-07 pushf dv pushf ss Dvf mulff pushf du pushf ss Duf mulff abs addff fmax fmax popf width return_area pushf maxfreq pushif 0 pushf width pushif 0.5 divff fclamp popf cutoff pushif 0 popf turb pushif 1 popf f label 0 pushf cutoff pushif 0.5 mulff pushf f lt ifz 2 pushf f pushif 1 pushif 2 pushf f mulF tt pushf f mulF ss noiseff mulff subff abs divff addF turb popf turb label 1 pushif 2 mulF f popf f jump 0 label 2 pushif 1 pushif 0 pushf cutoff pushf f subF cutoff divff pushif 2 mulff fclamp popf fade pushf f pushif 1 pushif 2 pushf f mulF tt pushf f mulF ss noiseff mulff subff abs divff mulF fade addF turb popf turb pushif 0.5 mulF turb popf turb pushif 1 pushif 0 pushf turb subF t fclamp popf flame pushf flame cset layer_opac pushc hot pushc hot pushc yellow pushc orange pushc red pushc red pushc red pushc red pushf flame pushif 8 colorspline popc layer_color pushc layer_opac mulC layer_color pushc layer_opac pushif 1 ftoc subcc mulC surface_color addcc popc surface_color pushc layer_opac mulC surface_opac pushc layer_opac addC surface_opac subcc popc surface_opac cpCC surface_opac Oi cpCC surface_color Ci return