property sNum
property bevel
property red, green, blue
property strength
property rad
property speed -- how fast light moves
property delay -- how much delay before and after pass
property x -- light coordinates
property spriteHeight, spriteWidth -- dimensions of sprite
on getBehaviorDescription me
return "Creates a static bevel and then constantly changes the light coordinates."
end
on getPropertyDescriptionList me
set list = [:]
addProp list, #speed, [#comment: "Speed:", #format: #integer, #default: 5, #range: [#max: 25, #min:0]]
addProp list, #delay, [#comment: "Delay:", #format: #integer, #default: 250, #range: [#max: 10000, #min:100]]
addProp list, #bevel, [#comment: "Bevel:", #format: #integer, #default: 5, #range: [#max: 25, #min:0]]
addProp list, #red, [#comment: "Red:", #format: #integer, #default: 255, #range: [#max: 255, #min:0]]
addProp list, #green, [#comment: "Green:", #format: #integer, #default: 255, #range: [#max: 255, #min:0]]
addProp list, #blue, [#comment: "Blue:", #format: #integer, #default: 255, #range: [#max: 255, #min:0]]
addProp list, #strength, [#comment: "Strength:", #format: #integer, #default: 0, #range: [#max: 255, #min:0]]
addProp list, #rad, [#comment: "Radius:", #format: #integer, #default: 100, #range: [#max: 255, #min:0]]
return list
end
-- apply the bevel effect
on beginSprite me
set sNum = the spriteNum of me
set spriteWidth = the width of sprite sNum
set spriteHeight = the height of sprite sNum
set x = -spriteWidth/2-delay
bevel(sprite sNum, [#animMode: #static, #bevel: bevel, #red: red, #green: green, #blue: blue, #strength: strength, #radius: rad, #lightLocY: 0])
end
-- update light location if needed
on setLight me
set x = x + speed
if (x > spriteWidth/2+delay) then set x = -spriteWidth/2-delay
bevel(sprite sNum, [#lightLocX: integer(x)])
end
on enterFrame me
setLight(me)
end
|