DialogControls-Objects: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (visual tweaks)
Line 1: Line 1:
'''TokenNames common to most controls, such as x,y,w,h,text,idc... are not listed here. '''
{{SideTOC}}
{{Informative|TokenNames common to most controls, such as x, y, w, h, text, idc... are not listed here.}}


==CT_OBJECT=80==
==CT_OBJECT=80==
{| border="1" cellpadding="3" cellspacing="0" |
{|class="wikitable" border="1" cellpadding="3" cellspacing="0" |
! colspan="3" bgcolor="#bbbbff" | Properties
! colspan="3" bgcolor="#bbbbff" | Properties
|-
|-
Line 78: Line 79:
|-
|-
|}<br clear="all">
|}<br clear="all">
* '''Example:'''
 
<syntaxhighlight lang=cpp>
* '''Example Config:'''
class MyWatch
<syntaxhighlight lang=cpp>class MyWatch
{
{
idd = -1;
idd = -1;
Line 147: Line 148:
};
};
};</syntaxhighlight>
};</syntaxhighlight>
===CT_OBJECT_ZOOM=81===


{| border="1" cellpadding="3" cellspacing="0" |
==CT_OBJECT_ZOOM=81==
 
{|class="wikitable" border="1" cellpadding="3" cellspacing="0" |
! colspan="3" bgcolor="#bbbbff" | Properties
! colspan="3" bgcolor="#bbbbff" | Properties
|-
|-
Line 193: Line 195:
|-
|-
|}<br clear="all">
|}<br clear="all">
* '''Example:'''
 
<syntaxhighlight lang=cpp>
* '''Example Config:'''
class MyCompass
<syntaxhighlight lang=cpp>class MyCompass
{
{
idd = -1;
idd = -1;
Line 257: Line 259:
};
};
};
};
};
};</syntaxhighlight>
</syntaxhighlight>


==CT_OBJECT_CONTAINER=82==
==CT_OBJECT_CONTAINER=82==
* '''Example:'''
* '''Example Config:'''
<syntaxhighlight lang="cpp">class MyDrink
<syntaxhighlight lang="cpp">class MyDrink
{
{

Revision as of 19:28, 18 February 2020

Template:SideTOC

TokenNames common to most controls, such as x, y, w, h, text, idc... are not listed here.

CT_OBJECT=80

Properties
Name Type 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
waitForLoad boolean
Animations class
Animations class type 80 only
Areas class type 82 only


  • Example Config:
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";
				};
			};
		};
	};
};

CT_OBJECT_ZOOM=81

Properties
Name Type Remark
model string path to model
selectionArrow string
position array
direction array
up array
positionBack array
inBack integer
enableZoom boolean
zoomDuration float


  • Example Config:
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";
				};
			};
		};
	};
};

CT_OBJECT_CONTAINER=82

  • Example Config:
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
					{
					};
				};
			};
		};
	};
};


For an object with selections one can use user texture. For example "\A3\Misc_F\Helpers\UserTexture1m.p3d" has selections: usertexture, usertexture TL,usertexture TR, usertexture BL
x, y, z params are x - left/right, y - up/down, z - forward/backward. The same is true for direction[] and up[]. Direction vector of [0,0,1] means it is facing forward and up vector of [0,1,0] means it is facing up