346 lines
11 KiB
Plaintext
Executable File
346 lines
11 KiB
Plaintext
Executable File
local vec3 = require "vec3"
|
|
local transf = require "transf"
|
|
function data()
|
|
return {
|
|
boundingInfo = {
|
|
bbMax = {
|
|
13.024568557739, 1.5505640506744, 5.8909320831299,
|
|
},
|
|
bbMin = {
|
|
-12.078281402588, -1.5505640506744, -0.055481970310211,
|
|
},
|
|
|
|
},
|
|
collider = {
|
|
params = {
|
|
|
|
},
|
|
type = "MESH",
|
|
|
|
},
|
|
lods = {
|
|
{
|
|
animations = {
|
|
|
|
},
|
|
children = {
|
|
{
|
|
id = "vehicle/train/rabde_12_12_lod_2_back.grp",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1,
|
|
},
|
|
type = "GROUP",
|
|
|
|
}, {
|
|
id = "vehicle/train/rabde_12_12_lod_2_bogie.grp",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -9.3304004669189, 0, 0, 1,
|
|
},
|
|
type = "GROUP",
|
|
|
|
}, {
|
|
id = "vehicle/train/rabde_12_12_lod_2_bogie.grp",
|
|
transf = {
|
|
-1, 0, 0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 8.5118999481201, 0, 0, 1,
|
|
},
|
|
type = "GROUP",
|
|
|
|
},
|
|
},
|
|
events = {
|
|
open_all_doors = {
|
|
{ name = "open_doors", forward = true },
|
|
},
|
|
close_all_doors = {
|
|
{ name = "open_doors", forward = false },
|
|
},
|
|
open_doors_left = {
|
|
{ name = "open_doors_left", forward = true },
|
|
},
|
|
close_doors_left = {
|
|
{ name = "open_doors_left", forward = false },
|
|
},
|
|
open_doors_right = {
|
|
{ name = "open_doors_right", forward = true },
|
|
},
|
|
close_doors_right = {
|
|
{ name = "open_doors_right", forward = false },
|
|
},
|
|
},
|
|
matConfigs = {
|
|
{
|
|
0, 0, 0,
|
|
},
|
|
},
|
|
static = false,
|
|
visibleFrom = 350,
|
|
visibleTo = 2250,
|
|
|
|
},
|
|
{
|
|
animations = {
|
|
|
|
},
|
|
children = {
|
|
{
|
|
id = "vehicle/train/rabde_12_12_lod_1_back.grp",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1,
|
|
},
|
|
type = "GROUP",
|
|
|
|
}, {
|
|
id = "vehicle/train/rabde_12_12_lod_1_bogie.grp",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -9.3304004669189, 0, 0, 1,
|
|
},
|
|
type = "GROUP",
|
|
|
|
}, {
|
|
id = "vehicle/train/rabde_12_12_lod_1_bogie.grp",
|
|
transf = {
|
|
-1, 0, 0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 8.5118999481201, 0, 0, 1,
|
|
},
|
|
type = "GROUP",
|
|
|
|
},
|
|
},
|
|
events = {
|
|
open_all_doors = {
|
|
{ name = "open_doors", forward = true },
|
|
},
|
|
close_all_doors = {
|
|
{ name = "open_doors", forward = false },
|
|
},
|
|
open_doors_left = {
|
|
{ name = "open_doors_left", forward = true },
|
|
},
|
|
close_doors_left = {
|
|
{ name = "open_doors_left", forward = false },
|
|
},
|
|
open_doors_right = {
|
|
{ name = "open_doors_right", forward = true },
|
|
},
|
|
close_doors_right = {
|
|
{ name = "open_doors_right", forward = false },
|
|
},
|
|
},
|
|
matConfigs = {
|
|
{
|
|
0, 0, 0,
|
|
},
|
|
},
|
|
static = false,
|
|
visibleFrom = 120,
|
|
visibleTo = 350,
|
|
|
|
},
|
|
{
|
|
animations = {
|
|
|
|
},
|
|
children = {
|
|
{
|
|
id = "vehicle/train/rabde_12_12_lod_0_back.grp",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1,
|
|
},
|
|
type = "GROUP",
|
|
|
|
}, {
|
|
id = "vehicle/train/rabde_12_12_lod_0_bogie.grp",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -9.3304004669189, 0, 0, 1,
|
|
},
|
|
type = "GROUP",
|
|
|
|
}, {
|
|
id = "vehicle/train/rabde_12_12_lod_0_bogie.grp",
|
|
transf = {
|
|
-1, 0, 0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 8.5118999481201, 0, 0, 1,
|
|
},
|
|
type = "GROUP",
|
|
|
|
},
|
|
},
|
|
events = {
|
|
open_all_doors = {
|
|
{ name = "open_doors", forward = true },
|
|
},
|
|
close_all_doors = {
|
|
{ name = "open_doors", forward = false },
|
|
},
|
|
open_doors_left = {
|
|
{ name = "open_doors_left", forward = true },
|
|
},
|
|
close_doors_left = {
|
|
{ name = "open_doors_left", forward = false },
|
|
},
|
|
open_doors_right = {
|
|
{ name = "open_doors_right", forward = true },
|
|
},
|
|
close_doors_right = {
|
|
{ name = "open_doors_right", forward = false },
|
|
},
|
|
},
|
|
matConfigs = {
|
|
{
|
|
0, 0, 0,
|
|
},
|
|
},
|
|
static = false,
|
|
visibleFrom = 0,
|
|
visibleTo = 120,
|
|
|
|
},
|
|
},
|
|
metadata = {
|
|
availability = {
|
|
yearFrom = 3000,
|
|
yearTo = 3000,
|
|
|
|
},
|
|
cost = {
|
|
price = -1,
|
|
|
|
},
|
|
maintenance = {
|
|
lifespan = 50,
|
|
runningCosts = -1,
|
|
|
|
},
|
|
railVehicle = {
|
|
configs = {
|
|
{
|
|
axles = {
|
|
"vehicle/train/rabde_12_12_front/lod_2_w1.msh",
|
|
},
|
|
fakeBogies = {
|
|
|
|
},
|
|
|
|
},
|
|
{
|
|
axles = {
|
|
"vehicle/train/rabde_12_12_front/lod_1_w1.msh",
|
|
},
|
|
fakeBogies = {
|
|
|
|
},
|
|
|
|
},
|
|
{
|
|
axles = {
|
|
"vehicle/train/rabde_12_12_front/lod_0_w1.msh",
|
|
},
|
|
fakeBogies = {
|
|
|
|
},
|
|
|
|
},
|
|
},
|
|
engines = {
|
|
{
|
|
power = 815,
|
|
tractiveEffort = 80,
|
|
type = "ELECTRIC",
|
|
|
|
},
|
|
},
|
|
soundSet = {
|
|
horn = "",
|
|
name = "train_electric_modern",
|
|
|
|
},
|
|
topSpeed = 125,
|
|
weight = 60,
|
|
|
|
},
|
|
transportVehicle = {
|
|
capacities = {
|
|
{
|
|
capacity = 144,
|
|
type = "PASSENGERS",
|
|
|
|
},
|
|
},
|
|
carrier = "RAIL",
|
|
loadSpeed = 3,
|
|
seats = {
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(0.2, -0.8, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(20.0, 0.0, 0.0), vec3.new(0.2, -1.2, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(0.2, 0.55, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-20.0, 0.0, 0.0), vec3.new(0.2, 1, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(1.3, 0.8, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(200.0, 0.0, 0.0), vec3.new(1.3, 1.2, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(1.3, -0.55, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-200.0, 0.0, 0.0), vec3.new(1.3, -1, 0.96)), },
|
|
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(1.9, -0.8, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(20.0, 0.0, 0.0), vec3.new(1.9, -1.2, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(1.9, 0.55, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-20.0, 0.0, 0.0), vec3.new(1.9, 1, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(2.9, 0.8, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(200.0, 0.0, 0.0), vec3.new(2.9, 1.2, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(2.9, -0.55, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-200.0, 0.0, 0.0), vec3.new(2.9, -1, 0.96)), },
|
|
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(3.8, -0.8, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(20.0, 0.0, 0.0), vec3.new(3.8, -1.2, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(3.8, 0.55, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-20.0, 0.0, 0.0), vec3.new(3.8, 1, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(4.8, 0.8, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(200.0, 0.0, 0.0), vec3.new(4.8, 1.2, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(4.8, -0.55, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-200.0, 0.0, 0.0), vec3.new(4.8, -1, 0.96)), },
|
|
|
|
|
|
|
|
|
|
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-4.1, -0.8, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(20.0, 0.0, 0.0), vec3.new(-4.1, -1.2, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-4.1, 0.55, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-20.0, 0.0, 0.0), vec3.new(-4.1, 1, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-3.1, 0.8, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(200.0, 0.0, 0.0), vec3.new(-3.1, 1.2, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-3.1, -0.55, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-200.0, 0.0, 0.0), vec3.new(-3.1, -1, 0.96)), },
|
|
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-5.9, -0.8, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(20.0, 0.0, 0.0), vec3.new(-5.9, -1.2, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-5.9, 0.55, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-20.0, 0.0, 0.0), vec3.new(-4.9, 1, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-4.9, 0.8, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(200.0, 0.0, 0.0), vec3.new(-4.9, 1.2, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-4.9, -0.55, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-200.0, 0.0, 0.0), vec3.new(-4.9, -1, 0.96)), },
|
|
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-7.6, -0.8, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(20.0, 0.0, 0.0), vec3.new(-7.6, -1.2, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-7.6, 0.55, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-20.0, 0.0, 0.0), vec3.new(-7.6,1, 1, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-6.6, 0.8, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(200.0, 0.0, 0.0), vec3.new(-6.6, 1.2, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-6.6, -0.55, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-200.0, 0.0, 0.0), vec3.new(-6.6, -1, 0.96)), },
|
|
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-9.4, -0.8, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(20.0, 0.0, 0.0), vec3.new(-9.4, -1.2, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-9.4, 0.55, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-20.0, 0.0, 0.0), vec3.new(-9.3,1, 1, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-8.3, 0.8, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(200.0, 0.0, 0.0), vec3.new(-8.3, 1.2, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-8.3, -0.55, 0.96)), },
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-200.0, 0.0, 0.0), vec3.new(-8.3, -1, 0.96)), },
|
|
|
|
|
|
},
|
|
multipleUnitOnly = true
|
|
},
|
|
|
|
},
|
|
|
|
}
|
|
end
|