User Tools

Site Tools


xg:colored_xg_sector_lighting_example

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
xg:colored_xg_sector_lighting_example [2017-03-22 07:10] skyjakexg:colored_xg_sector_lighting_example [2017-03-22 07:10] (current) – [Randomly flickering yellow light] skyjake
Line 1: Line 1:
 +====== XG sector lighting examples ======
 +
 +
 +A [[xg:sector_type|XG sector type]] can be used to define different colored lights/tints within a sector.
 +
 +
 +===== About XG value functions =====
 +
 +
 +To begin with this will look somewhat complicated until you learn what the various symbols in a [[xg:function_script|function script]] mean (these symbols and more are described in detail on the [[xg:sector_type|Sector Types]] page).
 +
 +We suggest you start off with the simpler stuff (such as the //Bright Green// example further down) and then move on from there.
 +
 +The basic concept is that all sector lighting effects are NOT static even if they appear to be. For example even a sector with a non-animated blue tint is infact animated but the user doesn't see this animation. From the engines point of view it is animating //blue → blue → blue...// all the user sees is //blue//.
 +
 +The animation of the light is described using what is called a //function// - a series of symbols which are interpreted by the engine one by one like a script, except that **only one symbol is interpreted per tic**.
 +
 +
 +===== Bright green =====
 +
 +
 +This will give the sector a green tint which is defined within (Green fn). You can mix and match (Red, Green and Blue fn) for mixed colors and results.
 +
 +<code>   Sector Type {
 +     ID = 5010
 +     Comment = "Green sector light"
 +     Red fn = "a"
 +     Green fn = "z"
 +     Blue fn = "a"
 +   }
 +</code>
 +
 +===== Red, slowly fading in/out =====
 +
 +
 +This creates a slow fading in/out red light (looped) in sectors with the **9006** special. The Blue function is linked directly to the Green function (Blue fn = "=g") so it is the same as having written "a >az<" for the Blue function.
 +Both **Green fn min tics** and **Green fn max tics** equal //35// meaning that it takes 35 tics (one second) to do a full cycle (from > to < in the function script) and that no random timing occurs.
 +
 +<code>   Sector Type { ID = 9006
 +     Comment = "Slow fading Red light"
 +     Green fn = "a >az<"
 +     Green fn min tics = 35
 +     Green fn max tics = 35
 +     Blue fn = "=g"
 +   }
 +</code>
 +
 +==== Function script meaning ("a >az<") ====
 +
 +
 +Begin at //a// (0). Set the loop start postion //>//. Fade to //a// (0). Fade to //z// (255). Set the loop end position //<//. When the script reaches the end loop postion //<// it loops back to the start loop position //>//.
 +
 +
 +===== Slowly fading: blue → red → yellow =====
 +
 +
 +This creates a slow fading Blue to Red to Yellow (looped) light in sectors with the **9005** special. It takes 70 tics (two seconds) for each function script to do a full cycle and because the min max values are all the same no randomness occurs.
 +
 +<code>   Sector Type { ID = 9005
 +     Comment = "Slow fading Blue > Red > Yellow light"
 +     Red fn = "a >azz<"
 +     Red fn min tics = 70
 +     Red fn max tics = 70
 +     Green fn = "a >aaz<"
 +     Green fn min tics = 70
 +     Green fn max tics = 70
 +     Blue fn ="a >zaa<"
 +     Blue fn min tics = 70
 +     Blue fn max tics = 70
 +   }
 +</code>
 +
 +==== Function script meaning ("a >azz<") ====
 +
 +Begin at //a// (0). Set the loop start postion //>//. Fade to //a// (0). Fade to //z// (255). Fade to //z// (255). Set the loop end position //<//. When the script reaches the end loop postion //<// it loops back to the start loop position //>//.
 +
 +
 +===== Randomly flickering yellow light =====
 +
 +<code>   Sector Type { ID = 9004
 +     Comment = "Randomly Flickering Yellow light"
 +     Red fn = "a >tz?32A<"
 +     Red fn min tics = 70
 +     Red fn max tics = 70
 +     Green fn = "m >mz<"
 +     Green fn min tics = 70
 +     Green fn max tics = 70
 +     Blue fn = "=r"
 +   }
 +</code>
 +
 +===== See also =====
 +
 +  *  [[xg:function_script|XG function script]]
 +
 +
  
xg/colored_xg_sector_lighting_example.txt · Last modified: 2017-03-22 07:10 by skyjake