{{tag>dragonscript behavior}} [[:start|Start Page]] >> [[main|DragonScript Scripting Language]] >> [[abstractions#behavior_elementsquick_and_easy_development|Behavior Elements: Quick and Easy Development]] >> **ECBehaviorLightDimmer** * [[behaviors_use_cases|Behaviors Explained: By Use-Case]] * [[behaviors_a_to_z|Behaviors Explained: From A to Z]] ====== ECBehaviorLightDimmer ====== Behavior element behavior adding dimming support to [[behavior_light|ECBehaviorLight]]. This behavior modifies the light parameters of [[behavior_light|ECBehaviorLight]] instances present in the element to make lights gently raise and lower intensity when (de)activated. To use this behavior add first an [[behavior_light|ECBehaviorLight]]. Adding ECBehaviorLightDimmer will then register itself as listener to the [[behavior_light|ECBehaviorLight]] and also set it to use custom light handling. ====== Instance Counts ====== This behavior can be used multiple times on an element to affect different lights. Use the behavior identifier to tell them apart. ====== Element Class Properties ====== Element class properties have the prefix ''lightDimmer.'' or ''lightDimmer({id}).'' if id is not empty. ===== timeRaise ===== Set time in seconds required to raise light intensity to full brightness. * Full name: ''lightDimmer.timeRaise'' or ''lightDimmer({id}).timeRaise'' * Type: float * Default Value: 1 * Restriction: At least 0 * Example (*.deeclass) 0.5 ===== timeLower ===== Set time in seconds required to lower light intensity to 0 intensity. * Full name: ''lightDimmer.timeLower'' or ''lightDimmer({id}).timeLower'' * Type: float * Default Value: 1 * Restriction: At least 0 * Example (*.deeclass) 0.5 ====== Events ====== This behavior has no events. ====== Required Behaviors ====== * [[behavior_light|ECBehaviorLight]]: Light to manipulate. ====== Optional Behaviors ====== This behavior does not support optional behaviors. ====== Persistency ====== This behavior does support element class to be persistable (setPersistable). ====== API Documentation ====== #@LinkApiDocDEDS2_HTML~classDragengine_1_1Scenery_1_1ECBehaviorLightDimmer.html,ECBehaviorLightDimmer~@#. Since DragonScript Module Version ''1.0'' ====== Use Cases ====== * Change light switch on and off to gradually fade in and out. ====== Element Class Example ====== This example defines an element which contains a light with dimming support. class MyElement extends BehaviorElementClass public var ECBehaviorLight light public var ECBehaviorLightDimmer lightDimmer func new() light = ECBehaviorLight.new(this, null) lightDimmer = ECBehaviorLightDimmer.new(this, light) lightDimmer.getTimeRaise().setValue(2) lightDimmer.getTimeLower().setValue(0.5) end end ====== Behavior Factory ====== Using element class supporting adding behaviors the behavior can be added like this: second 1.5 ====== Live Examples ====== * [[https://github.com/LordOfDragons/deexamples|DEExamples Repository]]