DialogControls-Objects: Difference between revisions
No edit summary |
Killzone Kid (talk | contribs) |
||
Line 79: | Line 79: | ||
|}<br clear="all"> | |}<br clear="all"> | ||
* '''Example:''' | * '''Example:''' | ||
< | <syntaxhighlight lang=cpp> | ||
class | class MyWatch | ||
{ | { | ||
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=== | ===CT_OBJECT_ZOOM=81=== | ||
Line 246: | Line 247: | ||
}; | }; | ||
};</nowiki></code> | };</nowiki></code> | ||
==CT_OBJECT_CONTAINER=82== | ==CT_OBJECT_CONTAINER=82== | ||
* '''Example:''' | * '''Example:''' |
Revision as of 23:49, 30 October 2018
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 | |
direction | array | |
up | array | |
shadow | integer | |
model | string | path to p3d |
selectionDate1/2 | strings | |
selectionDay | string | |
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:
class MyWatch
{
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:
class RscCompass: RscObject
{
idc = -1;
type = 81;
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:
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
{
};
};
};
};
};
};