DialogControls-Objects: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (useGlobalLight and minGlobalLightIntensity)
m (disamb page now)
Tag: Replaced
Line 1: Line 1:
{{SideTOC}}
* [[CT_OBJECT]]
{{Informative|TokenNames common to most controls, such as x, y, w, h, text, idc... can be found [[Arma:_GUI_Configuration#Common_Properties|'''here''']].}}
* [[CT_OBJECT_ZOOM]]
* [[CT_OBJECT_CONTAINER]]
* [[CT_OBJECT_CONT_ANIM]]


==CT_OBJECT=80==
{{Template:Disambig}}
{|class="wikitable" border="1" cellpadding="3" cellspacing="0" |
! colspan="3" bgcolor="#bbbbff" | Properties
|-
! bgcolor="#ddddff" | Name
! bgcolor="#ddddff" | Type
! bgcolor="#ddddff" | Remark
|-
| '''scale'''
| [[Float]]
|
|-
| '''selectionArrow'''
| [[Float]]
| compass object only
|-
| '''direction'''
| array
|
|-
| '''up'''
| array
|
|-
| '''shadow'''
| [[Integer]]
|
|-
| '''model'''
| string
| path to p3d
|-
| '''selectionDate1/2'''
| strings
| watch object only
|-
| '''selectionDay'''
| string
| watch object only
|-
| '''x/y/zBack'''
| [[Float]]
|
|-
| '''inBack'''
| [[Boolean]]
|
|-
| '''enableZoom'''
| [[Boolean]]
|
|-
| '''zoomDuration'''
| [[Float]]
|
|-
| '''scale'''
| [[Float]]
|
|-
| '''useGlobalLight'''
| [[Integer]]
|
|-
| '''minGlobalLightIntensity'''
| [[Integer]]
|
|-
| '''waitForLoad'''
| [[Boolean]]
|
|-
| '''Animations'''
| class
|
|-
| '''Animations'''
| class
| type 80 only
|-
| '''Areas'''
| class
| type 82 only
|-
|}<br clear="all">
 
* '''Example Config:'''
<syntaxhighlight lang=cpp>class MyWatch
{
idd = -1;
class objects
{
class Watch/*: RscObject*/
{
access = 0;
shadow = 0;
idc = 101;
type = 80;
model = "\core\watch\watch.p3d";
selectionDate1 = "date1";
selectionDate2 = "date2";
selectionDay = "day";
x = 0.7;
xBack = 0.7;
y = 0.12;
yBack = 0.12;
z = 0.22;
zBack = 0.22;
inBack = 0;
enableZoom = 0;
direction[] = { 0, 0, 1 };
up[] = { 0, 1, 0 };
zoomDuration = 1;
scale = 0.7;
waitForLoad = 0;
class Animations
{
class WatchHour
{
type = "rotation";
source = "clockHour";
selection = "hodinova";
axis = "osa";
memory = 1;
animPeriod = 0;
angle0 = 0;
angle1 = "rad 360";
};
class WatchMinute
{
type = "rotation";
source = "clockMinute";
selection = "minutova";
axis = "osa";
memory = 1;
animPeriod = 0;
angle0 = 0;
angle1 = "rad 360";
};
class WatchSecond
{
type = "rotation";
source = "clockSecond";
selection = "vterinova";
axis = "osa";
memory = 1;
animPeriod = 0;
angle0 = 0;
angle1 = "rad 360";
};
};
};
};
};</syntaxhighlight>
 
==CT_OBJECT_ZOOM=81==
 
{|class="wikitable" border="1" cellpadding="3" cellspacing="0" |
! colspan="3" bgcolor="#bbbbff" | Properties
|-
! bgcolor="#ddddff" | Name
! bgcolor="#ddddff" | Type
! bgcolor="#ddddff" | Remark
|-
| '''model'''
| string
| path to model
|-
| '''selectionArrow'''
| string
|
|-
| '''position'''
| array
|
|-
| '''direction'''
| array
|
|-
| '''up'''
| array
|
|-
| '''positionBack'''
| array
|
|-
| '''inBack'''
| [[Integer]]
|
|-
| '''enableZoom'''
| [[Boolean]]
|
|-
| '''zoomDuration'''
| [[Float]]
|
|-
|}<br clear="all">
 
* '''Example Config:'''
<syntaxhighlight lang=cpp>class MyCompass
{
idd = -1;
class objects
{
class RscCompass /*: RscObject */
{
idc = -1;
type = 81;
scale = 1;
shadow = 0;
model = "\core\compass\compass.p3d";
selectionArrow = "arrow";
position[] = { 0.026, 0.047, 0.2 };
direction[] = { 0, 1, 1 };
up[] = { 0, 0, -1 };
positionBack[] = { 0.0749, -0.059, 0.315 };
inBack = 1;
enableZoom = 0;
zoomDuration = 0.5;
class Animations
{
class Pointer
{
type = "rotation";
source = "compassPointer";
selection = "kompas";
axis = "osa kompasu";
memory = 1;
animPeriod = 0;
minValue = "rad -180";
maxValue = "rad 180";
angle0 = "rad -180";
angle1 = "rad 180";
};
class Arrow
{
type = "rotation";
source = "compassArrow";
selection = "arrow";
axis = "osa kompasu";
memory = 1;
animPeriod = 0;
minValue = "rad -180";
maxValue = "rad 180";
angle0 = "rad -180";
angle1 = "rad 180";
};
class Cover
{
type = "rotation";
source = "compassCover";
selection = "vicko";
axis = "osa vicka";
memory = 1;
animPeriod = 0;
angle0 = 0;
angle1 = "rad -81";
};
};
};
};
};</syntaxhighlight>
 
==CT_OBJECT_CONTAINER=82==
* '''Example Config:'''
<syntaxhighlight lang="cpp">class MyDrink
{
 
idd = -1;
movingEnable = 0;
enableSimulation = 1;
class Objects
{
class Can
{
onObjectMoved = "systemChat str _this";
idc = -1;
type = 82;
model = "\A3\Structures_F\Items\Food\Can_V3_F.p3d";
scale = 1;
direction[] = {0, -0.35, -0.65};
up[] = {0, 0.65, -0.35};
//position[] = {0,0,0.2}; optional
x = 0.5;
y = 0.5;
z = 0.2;
//positionBack[] = {0,0,1.2}; optional
xBack = 0.5;
yBack = 0.5;
zBack = 1.2;
inBack = 1;
enableZoom = 1;
zoomDuration = 0.001;
class Areas
{
class Something1
{
selection = "Area_1";
// game will expect "Area_1 TL", "Area_1 TR", "Area_1 BL" memory points (Top Left, Top Right, Bottom Left) to be present in memory LOD. Basing on that surface will be created for rendering your controls
 
// Only controls are supported (no object in object)
class Controls
{
};
};
// Multiple areas are supported
class Something2
{
selection = "Area_2";
// game will expect "Area_2 TL", "Area_2 TR", "Area_2 BL" memory points (Top Left, Top Right, Bottom Left) to be present in memory LOD. Basing on that surface will be created for rendering your controls
class Controls
{
};
};
};
};
};
};</syntaxhighlight>
<br>
{{Informative | For an object with selections one can use user texture. For example <tt>"\A3\Misc_F\Helpers\UserTexture1m.p3d"</tt> has selections: <tt>usertexture</tt>, <tt>usertexture TL</tt>,<tt>usertexture TR</tt>, <tt>usertexture BL</tt> }}
{{Important | x, y, z params are x - left/right, y - up/down, z - forward/backward. The same is true for <tt>direction[]</tt> and <tt>up[]</tt>. Direction vector of [0,0,1] means it is facing forward and up vector of [0,1,0] means it is facing up}}
[[Category: Dialogs|Objects]]

Revision as of 14:53, 29 November 2020