BS1 Limit in 40 lines
From FSG Wiki
[edit]
SHADER Version 1
REMOVETRIGGER CreateShaderElement ON CreateShaderElement SET tmp 0 ON CreateShaderElement FILE OPEN testelements.bs2 ON CreateShaderElement WHILE (tmp <= 255) Loop1 ON CreateShaderElement FILE CLOSE REMOVETRIGGER Loop1 ON Loop1 MESSAGE CLEAR ON Loop1 IF (tmp == 0) <MESSAGE ADDTEXT "Element Clear BlueShader"> ON Loop1 IF (tmp > 0) <MESSAGE ADDTEXT "Element none BlueShader"> ON Loop1 MESSAGE ADDNUMBER tmp ON Loop1 MESSAGE ADDTEXT " 0 " ON Loop1 MESSAGE ADDNUMBER tmp ON Loop1 MESSAGE ADDTEXT " " ON Loop1 MESSAGE ADDNUMBER (255 - tmp) ON Loop1 MESSAGE ADDTEXT " 0 1 1 1 0 Clear 400 TEXT BlueShader" ON Loop1 MESSAGE ADDNUMBER tmp ON Loop1 MESSAGE SAVE ON Loop1 MESSAGE EXEC ON Loop1 SET tmp (tmp + 1) REMOVETRIGGER CreateShaderInteractions ON CreateShaderInteractions SET tmp 0 ON CreateShaderInteractions FILE OPEN testinteraction.bs2 ON CreateShaderInteractions WHILE (tmp <= 255) Loop2 ON CreateShaderInteractions FILE CLOSE REMOVETRIGGER Loop2 ON Loop2 MESSAGE CLEAR ON Loop2 MESSAGE ADDTEXT "Interaction BlueShader" ON Loop2 MESSAGE ADDNUMBER tmp ON Loop2 MESSAGE ADDTEXT " All BlueShader" ON Loop2 MESSAGE ADDNUMBER (tmp + 1) ON Loop2 MESSAGE ADDTEXT " BlueShader" ON Loop2 MESSAGE ADDNUMBER (tmp + 1) ON Loop2 MESSAGE ADDTEXT " 500" ON Loop2 MESSAGE SAVE ON Loop2 MESSAGE EXEC ON Loop2 SET tmp (tmp + 1) EXEC CreateShaderElement EXEC CreateShaderInteractions
[edit]
SHADER version 2
TRIGGER CreateShaderElement {
FOR tmp FROM 0 TO 255 DO {
MESSAGE CLEAR
IF (tmp == 0) <MESSAGE ADDTEXT "Element Clear BlueShader">
IF (tmp > 0) <MESSAGE ADDTEXT "Element none BlueShader">
MESSAGE ADDNUMBER tmp
MESSAGE ADDTEXT " 0 "
MESSAGE ADDNUMBER tmp
MESSAGE ADDTEXT " "
MESSAGE ADDNUMBER (255 - tmp)
MESSAGE ADDTEXT " 0 1 1 1 0 Clear 400 TEXT BlueShader"
MESSAGE ADDNUMBER tmp
MESSAGE SAVE
MESSAGE EXEC
MESSAGE CLEAR
IF (tmp == 0) <MESSAGE ADDTEXT "Element none RedShader">
IF (tmp > 0) <MESSAGE ADDTEXT "Element none RedShader">
MESSAGE ADDNUMBER tmp
MESSAGE ADDTEXT " "
MESSAGE ADDNUMBER (255 - tmp)
MESSAGE ADDTEXT " 0 0 0 1 1 1 0 Clear 400 TEXT RedShader"
MESSAGE ADDNUMBER tmp
MESSAGE SAVE
MESSAGE EXEC
}
}
TRIGGER CreateShaderInteractions {
FOR tmp2 FROM 0 TO 255 DO {
MESSAGE CLEAR
MESSAGE ADDTEXT "Interaction RedShader"
MESSAGE ADDNUMBER tmp2
IF (tmp2 == 255) {
MESSAGE ADDTEXT " All BlueShader0 BlueShader0"
}
IF (tmp2 < 255) {
MESSAGE ADDTEXT " All RedShader"
MESSAGE ADDNUMBER (tmp2 + 1)
MESSAGE ADDTEXT " RedShader"
MESSAGE ADDNUMBER (tmp2 + 1)
}
MESSAGE ADDTEXT " 20%"
MESSAGE SAVE
MESSAGE EXEC
MESSAGE CLEAR
MESSAGE ADDTEXT "Interaction BlueShader"
MESSAGE ADDNUMBER tmp2
IF (tmp2 == 255) {
MESSAGE ADDTEXT " All RedShader0 RedShader0"
}
IF (tmp2 < 255) {
MESSAGE ADDTEXT " All BlueShader"
MESSAGE ADDNUMBER (tmp2 + 1)
MESSAGE ADDTEXT " BlueShader"
MESSAGE ADDNUMBER (tmp2 + 1)
}
MESSAGE ADDTEXT " 20%"
MESSAGE SAVE
MESSAGE EXEC
}
}
EXEC CreateShaderElement
EXEC CreateShaderInteractions
