CommandReference
CommandReference
99
by Fuzzel
Changelog:
10.7.2:
- add GetInPlayIntensity to the light element
- add Opacity,Color,AddBlend to the primitive element
- add RenderingMode to the globals
10.7.1:
- internal release only
10.7:
- add
GetSerialDevices,OpenSerial,CloseSerial,FlushSerial,SetupSerial,ReadSerial,WriteSer
ial to the globals
- add GetInPlayState,GetInPlayStateBool to the light element
- add VideoCapWidth,VideoCapHeight,VideoCapUpdate to the flasher element
- document missing x,y,z to the target element
- add GetMaterial to the globals (counterpart to UpdateMaterial)
- add UpdateMaterialPhysics and GetMaterialPhysics to the globals
- add ActiveTable to the globals
- document missing ActiveBall global call
- add PullBackandRetract to the plunger element that can be used instead of
PullBack in the KeyDown Sub.
The plunger will move forth and back between the maximum and minimum position,
allowing for a retry, if the desired firing position has been missed.
- add ElasticityFalloff to the wall element
10.6:
- add UpdateMaterial to the globals
- fix potential problems for the light element for Bulb, ImageMode, ShowBulbMesh,
StaticBulbMesh, ShowReflectionOnBall reads
- change Position() of the plunger element to return a float instead of an integer
- add support for non-mechanical/digital Position() plunger call
- add EnableSkirtAnimation to the bumper element
- add GetCustomParam to access custom command line parameters
- add support to read out the current hit threshold if the ball hits a Primitive or
a HitTarget
10.5:
- EOSTorque, EOSTorqueAngle and Scatter of flipper element can now be changed by
script
- document missing DMDColoredPixels and add simple example for DMD access
- add SSRScale to the table element
- extend X and Y of EMReel and textbox elements so that these can be changed by the
script
- add GravityFactor to the gate element
- add UserValue to target and primitive elements
- add BlendDisableLightingFromBelow to target and wall elements
- add RingDropOffset to the bumper element
10.4:
- support reading nudge data from table script, and reading/writing nudge
calibration settings:
NudgeGetCalibration/NudgeSetCalibration, NudgeSensorStatus, NudgeTiltStatus
- add AngVelX/Y/Z and AngMomX/Y/Z and DecalMode to the ball element
- document missing FrontDecal and UserValue for the ball element
- add Scatter to the bumper element
- add BlendDisableLightingFromBelow to the primitive element
- add WindowWidth and WindowHeight to globals
- document missing LoadValue and SaveValue global call
- correct/move some properties/methods from the table element to globals
- add BlendDisableLighting to target,primitive and wall elements
- document missing target and wall element call (DisableLighting)
- extend PlaySound with front_rear_fade to fade between front and rear speakers
10.3.1:
- document missing primitive element call (DisableLighting)
10.3:
- document some missing table element calls (all keys, including the new
LockbarKey(), and UserDirectory())
- document some missing UserValue's and the timer element itself
- add HasHitEvent and Threshold to the ramp element
- add BackfacesEnabled to the primitive element
- add BackglassMode and MusicVolume and ShowFSS to the table element
- remove *FS variants from the table element (now one can use the normal
Inclination,Rotation,etc calls and check the active mode via BackglassMode)
- add Damping to the gate element
- change Friction to Damping (which was actually AntiFriction before, but never
mentioned) for the spinner element (which also changes the input range from 0..100
to 0..1, and is inverse to before, e.g. "1-OldFriction/100")
10.2:
- add GameTime and SystemTime to get the exact time in millisecond resolution
- extend TimerInterval of each element by a special '-1' value which makes it
dependent on the FPS that a user can reach, so the timer is only triggered exactly
once per frame
- add MaterialColor to the globals
- extend PlayMusic with optional volume (0..1) and better document PlaySound
- add Duration and BulbHaloHeight property to the light element
- add PlayAnim,PlayAnimEndless,StopAnim,ContinueAnim & ShowFrame to the primitive
element for animation use
- add EOSTorqueAngle to the flipper element
- fix TimerEnabled and TimerInterval calls for the flasher element
- add Version, VersionMajor/Minor/Revision for the table element
10.1:
- add DefaultBulbIntensityScale to the table element
- fix TimerEnabled and TimerInterval calls for the rubber element
- change RubberThickness,RubberHeight,RubberWidth to take floats instead of just
integers for the rubber element
- add HitHeight property to the rubber element
- rename TorqueDamping to EOSTorque for the flipper element
- add Scatter to the flipper element
- add NormalMap to the primitive element
- add StaticBulbMesh to the light element
- add HasHitEvent and Collidable to the bumper element
- add Dropped/Raised for drop target element
- add RaiseDelay to target element
- change BallTrailStrength,GlobalDifficultyLevel and PlayfieldReflectionStrength to
range 0..100
- add DMD to the textbox and flasher element
GLOBALS
===================================================================================
===========================================================
Variables
---------
*NightDay(int) - 0..100 value set in the UI (by the user) that defines if its night
or day, so that the script can tweak table elements based on that value
*LeftFlipperKey
*RightFlipperKey
*LeftTiltKey
*RightTiltKey
*CenterTiltKey
*PlungerKey
*StartGameKey
*AddCreditKey
*AddCreditKey2
*LeftMagnaSave
*RightMagnaSave
*LockbarKey
Methods
-------
UserDirectory(string)
TABLE
===================================================================================
===========================================================
Variables
---------
BallImage(string)
BallFrontDecal(string) - image of the ball front decal
*BallDecalMode(bool) - switch between using the ball decal as ball logo or ball
'scratches'
ColorGradeImage(String) - the 256x16 LUT texture used for the color grading post
process
Callback
--------
BUMPER
===================================================================================
===========================================================
Variables
---------
*Name(string)
*CapMaterial(string)
*BaseMaterial(string)
*SkirtMaterial(string)
*Radius(float) - default=45.0
*HeightScale (float) - default=90.0
*Orientation(float)
RingDropOffset(float) - An offset to influence the ring animation. The default move
down limit is calculated by (HeightScale*0.5) * Table_Scalez.
The final move down limit is calculated by RingDropOffset +
(HeightScale*0.5)* Table_Scalez.
For example: If the ring is moving too far down you have to
try to set the RingDropOffset to -10.
RingSpeed(float)
*X(float) - X position
*Y(float) - Y position
*Surface(string)
Force(float)
Threshold(float)
*Scatter(float)
TimerEnabled(bool)
TimerInterval(int) - set interval for triggering the timer (1 equals 1000 timer
calls per second, 1000 equals 1 timer call per second, -1 makes it dependent on the
FPS that a user can reach)
UserValue(any) - can store any user defined value for re-use later-on
*CapVisible(bool) - default=true
*BaseVisible(bool) - default=true
*ReflectionEnabled(bool) - default=true
EnableSkirtAnimation(bool) - default=true, en/disables the skirt animation of a
bumper, for example if something external is triggering the bumper (i.e. no ball
contact with the skirt)
HasHitEvent(bool)
Collidable(bool)
Methods
-------
PlayHit() - if called the bumper will play the hit animation without triggering the
actual hit event.
DECAL
===================================================================================
===========================================================
Variables
---------
*Rotation(float)
*Width(float)
*Height(float)
*X(float)
*Y(float)
*Type(DecalType) - 0=Text, 1=Image
*Image(string) - texture name
*Text(string)
*SizingType(SizingType) - 0=AutoSize, 1=AutoWidth, 2=ManualSize
*FontColor(OLE_COLOR)
*Font(IFontDisp)
*HasVerticalText(bool)
*Surface(string)
TEXTBOX
===================================================================================
===========================================================
BackColor(OLE_COLOR)
FontColor(OLE_COLOR)
Text(string)
Font
Name(string)
X(float)
Y(float)
Width(float)
Height(float)
Alignment
IsTransparent
TimerEnabled
TimerInterval(int) - set interval for triggering the timer (1 equals 1000 timer
calls per second, 1000 equals 1 timer call per second, -1 makes it dependent on the
FPS that a user can reach)
UserValue(any) - can store any user defined value for re-use later-on
IntensityScale(float) - scales the color of the textbox
Visible(bool)
DMD(bool) - enable DMD image via script connection
EMREEL
===================================================================================
===========================================================
Variables
---------
*Name(string)
Width(float)
Height(float)
X(float)
Y(float)
Range(float)
*BackColor(OLE_COLOR)
*Image(string) - picture name
Reels(float)
Spacing(float)
IsTransparent(bool)
Sound(string)
Steps(float)
TimerEnabled(bool)
TimerInterval(int) - set interval for triggering the timer (1 equals 1000 timer
calls per second, 1000 equals 1 timer call per second, -1 makes it dependent on the
FPS that a user can reach)
UpdateInterval(int)
UserValue(any) - can store any user defined value for re-use later-on
*UserImageGrid(bool)
ImagesPerGridRow(int)
Visible(bool)
Methods
-------
AddValue(int value)
ResetToZero()
SpinReel(int ReelNumber, int PulseCount)
SetValue(int value)
FLIPPER
===================================================================================
===========================================================
Variables
---------
*X(float)
*Y(float)
*BaseRadius(float)
*EndRadius(float)
*Length(float)
*Height(float)
*StartAngle(float)
*EndAngle(float)
*FlipperRadiusMin(float)
EOSTorque(float) - This value/factor affects the way how long a flipper arm stays
in the up/raised position even when you released the flipper button.
On real pinballs it will take some time until the flipper
solenoid loses it's power until the flipper drops down or is forced to move by a
hitting ball.
The default value is 0.75. For fine tuning you can change that
but not higher than 1 or lower than 0.5 or the result will be totally unrealistic.
EOSTorqueAngle(float) - This configures the range where the EOS Torque will be
applied
*CurrentAngle(float) - only readable
Friction(float) - 0..1
RampUp(float) - Coil ramp up speed. Set to 0 for fastest flipper response.
Elasticity(float)
ElasticityFalloff(float)
Return(float)
Mass(float)
Strength(float)
Scatter(float)
OverridePhysics(int) - overrides the flipper physics settings with pre defined
settings defined under Preferences -> Physics Options.
You can define up to 8 different physics settings for the
table and the flippers. Save them to one of the 8 slots and
by assigning the slot number to this OverridePhysics it
overrides these settings. default=0 (means use table settings)
TimerEnabled(bool)
TimerInterval(int) - set interval for triggering the timer (1 equals 1000 timer
calls per second, 1000 equals 1 timer call per second, -1 makes it dependent on the
FPS that a user can reach)
*Color(OLE_COLOR)
*RubberColor(OLE_COLOR)
*RubberThickness(float)
*Visible(bool)
*Enabled(bool)
*RubberHeight(float)
*RubberWidth(float)
*Surface(string)
UserValue(any) - can store any user defined value for re-use later-on
Methods
-------
RotateToStart()
RotateToEnd()
GATE
===================================================================================
===========================================================
Variables
---------
*Name(string)
*X(float)
*Y(float)
*Length(float)
*Height(float)
*Rotation(float)
TimerEnabled(bool)
TimerInterval(int) - set interval for triggering the timer (1 equals 1000 timer
calls per second, 1000 equals 1 timer call per second, -1 makes it dependent on the
FPS that a user can reach)
Open(bool)
*Material(string)
Elasticity(float)
*Surface(string)
UserValue(any) - can store any user defined value for re-use later-on
*CloseAngle(float)
*OpenAngle(float)
Collidable(bool)
Friction(float) - 0..1
Damping(float) - 0..1
*Visible(bool)
ShowBracket(bool)
CurrentAngle(float) - only readable, it returns the current open angle
GravityFactor(float) - usually between 1..3
Methods
-------
KICKER
===================================================================================
===========================================================
Variables
---------
*Name(string)
*X(float)
*Y(float)
TimerEnabled(bool)
TimerInterval(int) - set interval for triggering the timer (1 equals 1000 timer
calls per second, 1000 equals 1 timer call per second, -1 makes it dependent on the
FPS that a user can reach)
Enabled(bool)
*DrawStyle(KickerType) - 0=Hidden, 1=Hole, 2=Cup, 3=Invisible
*Color(OLE_COLOR)
*Surface(string)
UserValue(any) - can store any user defined value for re-use later-on
Scatter(float)
Fall Through(bool) - if checked the ball will fall through the surface assigned to
the kicker, only if the surface is higher than the playfield
*Legacy(bool) - if checked the kicker will behave as an old VP9 kicker that
means no distraction of the ball if it doesn't hit straight the kicker center
HitAccuracy(float) - defines the accuracy how fast the ball gets caught when
rolling over the kicker center (0.0-1.0)
*HitHeight(float)
*Orientation(float)
*Radius(float)
LastCapturedBall - returns an instance to the last captured ball or the current
captured ball. If no ball was captured before or was destroyed before an error
message will be displayed.
Methods
-------
CreateBall()
CreateSizedBall(float radius)
CreateSizedBallWithMass(float radius, float mass)
DestroyBall(int ballId)
Kick(float angle, float speed, float inclination)
KickXYZ(float angle, float speed, float inclination, float x, float y, float z)
KickZ(float angle, float speed, float inclination, float heightz)
BallCntOver(int)
LIGHT
===================================================================================
===========================================================
Variables
---------
*Name(string)
*X(float)
*Y(float)
*Shape(Shape) - 0=Circle, 1=Custom
Falloff(float)
FalloffPower(float)
State(LightState) - 0=Off, 1=On, 2=Blinking. Note that if Light Sequencer is
running, still returns the 'normal' state
*GetInPlayState(LightState) - 0=Off, 1=On, 2=Blinking. Note that if Light Sequencer
is running, returns the current state set by the Light Sequencer, otherwise the
'normal' state
*GetInPlayStateBool(bool) - 0=Off, 1=On. Note that if Light Sequencer is running,
returns the current state set by the Light Sequencer, otherwise the 'normal' state.
2=Blinking is mapped to the current state the light is actually in (0 or 1)
*GetInPlayIntensity(float) - get the live intensity of the light, including its
live the fading
Color(OLE_COLOR) - 'normal' color
ColorFull(OLE_COLOR) - full brightness color
Intensity(float) - sets the lights brightness/emission
IntensityScale(float) - sets the lights brightness/emission scale, so that one can
fade in/out all affected lights with the same scaling factor
TransmissionScale(float) - sets the light scale for transmission, f.e. through
playfield plastics or transparent ramps that are placed above the bulb light
TimerEnabled(bool)
TimerInterval(int) - set interval for triggering the timer (1 equals 1000 timer
calls per second, 1000 equals 1 timer call per second, -1 makes it dependent on the
FPS that a user can reach)
BlinkPattern(string) - off/on pattern for the light to use while the interval is
going: 1 is ON, 0 is OFF, for example 111000111000101010101
BlinkInterval(int)
*Surface(string)
UserValue(any) - can store any user defined value for re-use later-on
*Image(string)
ImageMode(bool) - if true, passthrough Image (as if it would be fully emissive),
otherwise light image with global lighting using the attached Surface material
DepthBias(float)
FadeSpeedUp(float) - speed to fade into on state
FadeSpeedDown(float) - speed to fade into off state
Bulb(bool)
ShowBulbMesh(bool)
StaticBulbMesh(bool)
ShowReflectionOnBall(bool) - in bulb mode, en/disable the reflection of the bulb on
balls
ScaleBulbMesh(float)
BulbModulateVsAdd(float) - blends between modulating and additive when bulb is
enabled (0..1)
BulbHaloHeight(float) - sets the halo height of a bulb light
Visible(bool)
Methods
-------
Duration(int startState, int durationTime, int endState) - starts a light in
startState and leaves it into that state for the amount of milliseconds defined by
durationTime until the light switches to the endState
e.g.:
light1.Duration 2, 1000,
1 (light starts to blink for 1000ms and then switches to ON)
PLUNGER
===================================================================================
===========================================================
Variables
---------
*AnimFrames(int) - Flat style only: the number of animation frames in the Image;
the image must be arranged with all of the frames lined up horizontally, all the
same size, with the fully forward image in the leftmost cell
*AutoPlunger(bool) - if set, this is a solenoid launcher rather than a traditional
plunger
*Color(OLE_COLOR) - surface color for 3D rendering; used only if no texture is
specified via Image
FireSpeed(float) - speed of firing when Fire() is called or mechanical plunger is
released; controls both animation speed and ball launch strength
*Image(string) - image used as texture for the 3D styles or as animation cell(s)
for the flat style
*MechPlunger(bool) - true if this simulation plunger can be controlled by a
mechanical plunger input device attached to the system; if set, the ParkPosition is
used as the rest position
MechStrength(float) - controls strength of coupling to mechanical plunger position;
using about the same value as FireSpeed usually works best
MomentumXfer(float) - adjustment factor for launch strength; multiplied into final
ball speed calculation on each launch, so 1.0 has no effect, and 2.0 doubles the
strength
*Name(string) - name of the object for scripting references
ParkPosition(float) - distance back from fully forward position of resting position
(as a fraction of the total length); used only if MechPlunger is enabled
*PullSpeed(float) - speed of retraction when Pullback() is called (for pulling via
keyboard interface)
*RingDiam(float) - Custom type only: the diameter of the e-ring in the on-screen
rendering, as a fraction of the Width setting
*RingGap(float) - Custom type only: the distance between the tip and the e-ring in
the on-screen rendering
*RingThickness(float) - Custom type only: the thickness of the e-ring in the on-
screen rendering
*RodDiam(float) - Custom type only: the drawing diameter of the rod as a fraction
of the Width setting
*SpringDiam(float) - Custom type only: the diameter of the spring coil in the on-
screen rendering, as a fraction of the Width setting
*SpringEndLoops(float) - Custom type only: the number of stationary (non-
stretching) "end loops" the spring makes in the on-screen rendering (fractional
values are allowed)
*SpringGauge(float) - Custom type only: the thickness of the spring wire in the on-
screen rendering
*SpringLoops(float) - Custom type only: the number of loops the spring makes around
the rod within the displayed extent (fractional values are allowed, as partial
loops are perfectly sensible)
Stroke(float) - total travel distance; also controls the on-screen length (which is
slightly longer than the travel distance, to accommodate the non-moving parts)
ScatterVelocity(float) - amount of randomness added to ball velocity on firing
*Shape(string) - Custom type only: a list of Distance/Diameter pairs separated by
semicolons specifying the shape of the tip, as a series of circles centered on the
plunger axis
*Surface(string) - object for aligning vertical position of plunger; sits atop
playfield if this is left blank
TimerEnabled(bool) - enable the plunger's script timer
TimerInterval(int) - interval for firing the plunger's script timer
*Type(int) - the visual style of the plunger drawn on-screen
UserValue(any) - can store any user defined value for re-use later-on
*Visible(bool) - true if plunger is visible on-screen
*Width(float) - on-screen width of the plunger on each side of the center-line
(this acts like a radius, so the actual drawing width is twice this value)
*X(float) - x position of center-line of plunger
*Y(float) - y position of back end of plunger
*ZAdjust(float) - moves the on-screen rendering vertically up (positive values) or
down (negative values) from the default position determined by the Surface
alignment
Methods
-------
Variables
---------
*Name(string)
Sides(float) - amount of sides for the old standard primitive
TopVisible(bool) - toggle visibility
TopColor(OLE_COLOR) - topColor of the old standard primitive (only valid if no
image was set)
SideColor(OLE_COLOR) - sideColor of the old standard primitive (only valid if no
image was set)
DrawTexturesInside(bool) - textures the inside of the old standard primitive
Image(string) - texture name
NormalMap(string) - normal map name
X(float) - X position
Y(float) - Y position
Z(float) - Z position
Size_X(float) - X size
Size_Y(float) - Y size
Size_Z(float) - Z size
RotAndTra0(float) or RotX(float) - rotates the primitive around it's X axis
RotAndTra1(float) or RotY(float) - rotates the primitive around it's Y axis
RotAndTra2(float) or RotZ(float) - rotates the primitive around it's Z axis
RotAndTra3(float) or TransX(float) - translates the primitive along it's X axis
RotAndTra4(float) or TransY(float) - translates the primitive along it's Y axis
RotAndTra5(float) or TransZ(float) - translates the primitive along it's Z axis
RotAndTra6(float) or ObjRotX(float) - rotates the X axis of the primitive's local
coordinate system. This is used to orientate the object first, after that RotXYZ
will rotate the object around this rotated coordinate system
RotAndTra7(float) or ObjRotY(float) - rotates the Y axis of the primitive's local
coordinate system. This is used to orientate the object first, after that RotXYZ
will rotate the object around this rotated coordinate system
RotAndTra8(float) or ObjRotZ(float) - rotates the Z axis of the primitive's local
coordinate system. This is used to orientate the object first, after that RotXYZ
will rotate the object around this rotated coordinate system
*EnableStaticRendering(bool) - if set the primitive is only rendered once (like
walls) any dynamic changes later
won't have an effect. This is useful for objects
like posts or static toys, because this won't have an impact of the perfomance
HasHitEvent(bool) - enables the support for a hit event in the script (it's the
same as for walls)
Threshold(float) - hit threshold for firing the hit event
HitThreshold(float) - holds the current hit threshold if a ball has hit the
primitive
Collidable(bool) - enables/disables collision detection, this can be used from
within the script.
Elasticity(float)
ElasticityFalloff(float)
Friction(float) - 0..1
*Scatter(float)
*IsToy(bool) - disables collision handling and all physics preprocessing
completely.
It overwrites the Collidable-flag and can't be used from within the
script.
This option is useful if you have real toys or static primitives
which are never hitable at all
and are just there for the 'looks'.
*ReflectionEnabled(bool) - default=true
DisableLighting(bool)
BlendDisableLighting(float) - 0..1, same as DisableLighting, but can blend between
the two extremes
BlendDisableLightingFromBelow(float) - 0..1, similar to DisableLighting, but will
block light coming from below (e.g. from light elements)
BackfacesEnabled(bool) - default=false, if enabled will also show/render the
backfacing triangles (if a transparent material is used)
UserValue(any) - can store any user defined value for re-use later-on
Opacity(float) - lets you define the blend amount 0..100% (you can use values >100%
though to for example enhance the strength of primitives in additive alpha blending
mode)
Color - defines the color of the element in the editor. If you don't want to
colorize the image set the color to blank white (RGB 255,255,255)
AddBlend(bool) - use additive alpha blending instead of classical alpha blending
(also disable depth buffer writing)
RAMP
===================================================================================
===========================================================
Variables
---------
*Name(string)
HeightBottom(float)
HeightTop(float)
WidthBottom(float)
WidthTop(float)
*Type(RampType) - 0=Flat, 1=4Wire, 2=2Wire, 3=3WireLeft, 4=3WireRight, 5=Wire
Image(string) - texture name
ImageAlignment(RampImageAlignment) - 0=ImageModeWorld, 1=ImageModeWrap
HasWallImage(bool) - apply image to walls
LeftWallHeight(float)
RightWallHeight(float)
UserValue(any) - can store any user defined value for re-use later-on
VisibleLeftWallHeight(float)
VisibleRightWallHeight(float)
Elasticity(float)
HasHitEvent(bool) - enables the support for a hit event in the script (it's the
same as for walls)
Threshold(float) - hit threshold for firing the hit event
Collidable(bool)
Visible(bool)
Friction(float) - 0..1
*Scatter(float)
*ReflectionEnabled(bool) - default=true
SPINNER
===================================================================================
===========================================================
Variables
---------
*Name(string)
*X(float)
*Y(float)
TimerEnabled(bool)
TimerInterval(int) - set interval for triggering the timer (1 equals 1000 timer
calls per second, 1000 equals 1 timer call per second, -1 makes it dependent on the
FPS that a user can reach)
*Length(float)
*Rotation(float)
*Height(float)
Damping(float) - 0..1
Image(string)
*Material(string)
*Surface(float)
UserValue(any) - can store any user defined value for re-use later-on
*ShowBracket(bool)
*AngleMax(float)
*AngleMin(float)
Elasticity(float)
*Visible(bool)
CurrentAngle(float) - only readable
*ReflectionEnabled(bool) - default=true
TRIGGER
===================================================================================
===========================================================
Variables
---------
*Name(string)
*X(float)
*Y(float)
*Radius(float)
TimerEnabled(bool)
TimerInterval(int) - set interval for triggering the timer (1 equals 1000 timer
calls per second, 1000 equals 1 timer call per second, -1 makes it dependent on the
FPS that a user can reach)
*Enabled(bool)
*Visible(bool)
*TriggerShape(Shape) - 0=None, 1=Wire, 2=Star
Surface(string)
UserValue(any) - can store any user defined value for re-use later-on
HitHeight(float)
Rotation(float)
AnimSpeed(float)
WireThickness(float) - This option is only used for wire shape triggers. The
thickness is a factor to scale the wire 0=normal thickness(default). To make it
thicker use values like 0.5, 1, 1.5, 2...
Methods
-------
BallCntOver(int value)
DestroyBall(int ballId)
WALL
===================================================================================
===========================================================
Variables
---------
*Name(string)
TimerEnabled(bool)
TimerInterval(int) - set interval for triggering the timer (1 equals 1000 timer
calls per second, 1000 equals 1 timer call per second, -1 makes it dependent on the
FPS that a user can reach)
*HasHitEvent(bool)
Threshold(float)
*Image(string) - texture name
*SideColor(OLE_COLOR)
*HeightBottom(float)
*HeightTop(float)
*FaceColor(OLE_COLOR)
*CanDrop(bool)
Collideable(bool)
IsBottomSolid(bool)
IsDropped(bool)
*DisplayTexture(bool)
Elasticity(float)
ElasticityFalloff(float)
*SideImage(string)
*Visible(bool)
Disabled(bool)
*SideVisible(bool)
UserValue(any) - can store any user defined value for re-use later-on
*SlingshotColor(OLE_COLOR)
SlingshotThreshold(float)
*SlingshotAnimation(bool)
*FlipbookAnimation(bool)
Friction(float) - 0..1
*Scatter(float)
*ReflectionEnabled(bool) - default=true
DisableLighting(bool)
BlendDisableLighting(float) - 0..1, same as DisableLighting, but can blend between
the two extremes
BlendDisableLightingFromBelow(float) - 0..1, similar to DisableLighting, but will
block light coming from below (e.g. from light elements)
Methods
-------
PlaySlingshotHit() - if the wall has slingshots defined, a call to this function
will play the hit animation without triggering the actual hit event.
FLASHER
===================================================================================
===========================================================
Variables
---------
*Name(string)
TimerEnabled(bool)
TimerInterval(int) - set interval for triggering the timer (1 equals 1000 timer
calls per second, 1000 equals 1 timer call per second, -1 makes it dependent on the
FPS that a user can reach)
ImageA(string) - texture name for image A
ImageB(string) - texture name for image B
Filter(string) - use one of the following filters to blend ImageA > ImageB: 'None',
'Additive', 'Multiply', 'Overlay', 'Screen' (filter names are case sensitive!)
this feature only works if you defined both images
Amount(int) - defines the filter amount how much of ImageB is filtered over
ImageA in percent (0..100, can be set to >100 though)
Mode - 0=ImageModeWorld, 1=ImageModeWrap
*DisplayTexture(bool)
Opacity(int) - lets you define the blend amount 0..100% (you can use values >100%
though to for example enhance the strength of flashers in additive alpha blending
mode)
IntensityScale(float) - sets the flashers brightness/emission scale, so that one
can fade in/out all affected flashers with the same scaling factor
Color - defines the color of the element in the editor. If you don't want to
colorize the image set the color to blank white (RGB 255,255,255)
Visible(bool) - shows/hides the flasher
AddBlend(bool) - use additive alpha blending instead of classical alpha blending
ImageAlignment
ModulateVsAdd(float) - blends between modulating and additive when bulb is enabled
(0..1)
DMD(bool) - enable DMD image via script connection
VideoCapWidth(int) - width of the window content to capture
VideoCapHeight(int) - height of the window content to capture
VideoCapUpdate(string) - uses the window title of the window content to capture,
which is then copied into the flasher texture each time this function is called
UserValue(any) - can store any user defined value for re-use later-on
BALL
===================================================================================
===========================================================
Variables
---------
RUBBER
===================================================================================
===========================================================
Variables
---------
*Name(string)
TimerEnabled(bool)
TimerInterval(int) - set interval for triggering the timer (1 equals 1000 timer
calls per second, 1000 equals 1 timer call per second, -1 makes it dependent on the
FPS that a user can reach)
*HasHitEvent(bool)
*Thickness(int)
*Collidable(bool)
*HitHeight(float) - defines the collision height of a rubber (default is
25.0 midpoint of a standard ball with size 50)
*Material(string)
Visible(bool)
*EnableStaticRendering(bool) - if set the rubber is only rendered once (like walls)
any dynamic changes later
won't have an effect. This is useful for static
rubbers like rubbers on posts.
Image(string) - texture name
Elasticity(float)
ElasticityFalloff(float)
Friction(float) - 0..1
*Scatter(float)
RotX(float) - angle to rotate the whole rubber around the X axis
RotY(float) - angle to rotate the whole rubber around the Y axis
RotZ(float) - angle to rotate the whole rubber around the Z axis
*EnableShowInEditor(bool) - if set one cannot adjust the control points of the
rubber but the
rotation angles are applied to the rubber mesh in the
editor.
*ReflectionEnabled(bool) - default=true
UserValue(any) - can store any user defined value for re-use later-on
TARGET
===================================================================================
===========================================================
Variables
---------
*Name(string)
*X(float)
*Y(float)
*Z(float)
*HasHitEvent(bool) - if set a hit event is fired when the ball hits the
drop/hit target without animation. An additional dropped/raised event
is fired for drop targets after the mesh animation
is over.
*Collidable(bool)
Threshold(float) - hit threshold for firing the hit event
HitThreshold(float) - holds the current hit threshold if a ball has hit
the target
Visible(bool)
*Material(string)
Image(string) - texture name
Elasticity(float)
ElasticityFalloff(float)
Friction(float) - 0..1
*Scatter(float)
*Orientation(float) - angle to rotate the whole target around the Z axis
*ReflectionEnabled(bool) - default=true
DisableLighting(bool)
BlendDisableLighting(float) - 0..1, same as DisableLighting, but can blend between
the two extremes
BlendDisableLightingFromBelow(float) - 0..1, similar to DisableLighting, but will
block light coming from below (e.g. from light elements)
DropSpeed(float) - the speed how fast the drop or hit target will move
RaiseDelay(int) - defines a delay in milliseconds after the dropped
target will start to raise to it's normal position
IsDropped(bool) - can only be used for drop targets if the drop target
is raised or dropped
TimerEnabled(bool) - each target has a build-in timer which can be enabled
by setting this to 1
TimerInterval(int) - set interval for triggering the timer (1 equals 1000
timer calls per second, 1000 equals 1 timer call per second, -1 makes it dependent
on the FPS that a user can reach)
UserValue(any) - can store any user defined value for re-use later-on
TIMER
===================================================================================
===========================================================
Variables
---------
*Name(string)
Enabled(bool)
Interval(int) - set interval for triggering the timer (1 equals 1000 timer calls
per second, 1000 equals 1 timer call per second, -1 makes it dependent on the FPS
that a user can reach)
UserValue(any) - can store any user defined value for re-use later-on