+
+ if [ -n "$AUDIT_ALPHACHANNELS" ] && [ -n "$ss_map" ]; then
+ getstats "../$ss_map.tga" || getstats "../$ss_map.png" || getstats "../$ss_map.jpg"
+ case "$ss_blendfunc" in
+ *src_alpha*|*blend*)
+ # texture must have alpha
+ if [ x"$ss_alphagen" = x"none" -a $min -eq 255 ]; then
+ echo "(EE) $parsing_shader uses alpha-less texture $ss_map with blendfunc $ss_blendfunc and alphagen $ss_alphagen"; seterror
+ fi
+ ;;
+ add|"gl_one gl_one")
+ # texture must not have alpha (engine bug)
+ if [ x"$ss_alphagen" != x"none" -o $min -lt 255 ]; then
+ echo "(EE) $parsing_shader uses alpha-using texture $ss_map with blendfunc $ss_blendfunc and alphagen $ss_alphagen"; seterror
+ fi
+ ;;
+ *)
+ case "$ss_alphafunc" in
+ g*)
+ # texture must have alpha
+ if [ x"$ss_alphagen" = x"none" -a $min -eq 255 ]; then
+ echo "(EE) $parsing_shader uses alpha-less texture $ss_map with alphafunc $ss_alphafunc and alphagen $ss_alphagen"; seterror
+ fi
+ ;;
+ *)
+ # texture should not have alpha (no bug if not)
+ case "$ss_alphagen" in
+ none)
+ if [ $min -lt 255 ]; then
+ echo "(WW) $parsing_shader uses alpha-using texture $ss_map with blendfunc $ss_blendfunc and alphafunc $ss_alphafunc and alphagen $ss_alphagen"
+ fi
+ ;;
+ *)
+ # alphagen is set, but blendfunc has no use for it
+ echo "(EE) $parsing_shader uses alpha-using texture $ss_map with blendfunc $ss_blendfunc and alphafunc $ss_alphafunc and alphagen $ss_alphagen"; seterror
+ ;;
+ esac
+ ;;
+ esac
+ ;;
+ esac
+ fi