327 lines
12 KiB
Plaintext
Executable File
327 lines
12 KiB
Plaintext
Executable File
local vec3 = require "vec3"
|
|
local transf = require "transf"
|
|
function data()
|
|
return {
|
|
boundingInfo = {
|
|
bbMax = {
|
|
13.285885810852, 1.4119000434875, 4.0756788253784,
|
|
},
|
|
bbMin = {
|
|
-13.285887718201, -1.411003947258, -0.48102399706841,
|
|
},
|
|
|
|
},
|
|
collider = {
|
|
params = {
|
|
|
|
},
|
|
type = "MESH",
|
|
|
|
},
|
|
lods = {
|
|
|
|
{
|
|
animations = {
|
|
|
|
},
|
|
children = {
|
|
{
|
|
id = "vehicle/waggon/ew_iv/lod_2_body.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/ew_iv/lod_2_d1.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -10.4973, 0, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/ew_iv/lod_2_d2.msh",
|
|
transf = {
|
|
-1, 0, 0, 0, 0, -1, 0, 0, 0, 0, 1, 0, -10.4973, 0, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/ew_iv/lod_2_d1.msh",
|
|
transf = {
|
|
-1, 0, 0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 10.4973, 0, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/ew_iv/lod_2_d2.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 10.4973, 0, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/ew_iv_lod_2_bogie.grp",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -9.2122, 0, 0, 1,
|
|
},
|
|
type = "GROUP",
|
|
|
|
},{
|
|
id = "vehicle/waggon/ew_iv_lod_2_bogie.grp",
|
|
transf = {
|
|
-1, 0, 0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 9.2122, 0, 0, 1,
|
|
},
|
|
type = "GROUP",
|
|
|
|
},
|
|
},
|
|
events = {
|
|
open_all_doors = {
|
|
},
|
|
close_all_doors = {
|
|
},
|
|
open_doors_left = {
|
|
},
|
|
close_doors_left = {
|
|
},
|
|
open_doors_right = {
|
|
},
|
|
close_doors_right = {
|
|
},
|
|
},
|
|
matConfigs = {
|
|
{
|
|
0, 0, 0, 0, 0, 0, 0, 0
|
|
},
|
|
},
|
|
static = false,
|
|
visibleFrom = 400,
|
|
visibleTo = 2010,
|
|
|
|
},
|
|
{
|
|
animations = {
|
|
|
|
},
|
|
children = {
|
|
{
|
|
id = "vehicle/waggon/ew_iv/lod_0_body.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/ew_iv/lod_0_d1.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -10.4973, 0, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/ew_iv/lod_0_d2.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -10.4973, 0, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/ew_iv/lod_0_d1.msh",
|
|
transf = {
|
|
-1, 0, 0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 10.4973, 0, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/ew_iv/lod_0_d2.msh",
|
|
transf = {
|
|
-1, 0, 0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 10.4973, 0, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/ew_iv_lod_0_bogie.grp",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -9.2122, 0, 0, 1,
|
|
},
|
|
type = "GROUP",
|
|
|
|
},{
|
|
id = "vehicle/waggon/ew_iv_lod_0_bogie.grp",
|
|
transf = {
|
|
-1, 0, 0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 9.2122, 0, 0, 1,
|
|
},
|
|
type = "GROUP",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/ew_iv/lod_0_interior.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
},{
|
|
id = "vehicle/waggon/ew_iv/lod_0_logo_body.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
},
|
|
},
|
|
events = {
|
|
open_all_doors = {
|
|
[2] = { name = "opend1", forward = true },
|
|
[3] = { name = "opend2", forward = true },
|
|
[4] = { name = "opend1", forward = true },
|
|
[5] = { name = "opend2", forward = true },
|
|
},
|
|
close_all_doors = {
|
|
[2] = { name = "opend1", forward = false },
|
|
[3] = { name = "opend2", forward = false },
|
|
[4] = { name = "opend1", forward = false },
|
|
[5] = { name = "opend2", forward = false },
|
|
},
|
|
open_doors_left = {
|
|
[4] = { name = "opend1", forward = true },
|
|
[3] = { name = "opend2", forward = true },
|
|
},
|
|
close_doors_left = {
|
|
[4] = { name = "opend1", forward = false },
|
|
[3] = { name = "opend2", forward = false },
|
|
},
|
|
open_doors_right = {
|
|
[2] = { name = "opend1", forward = true },
|
|
[5] = { name = "opend2", forward = true },
|
|
},
|
|
close_doors_right = {
|
|
[2] = { name = "opend1", forward = false },
|
|
[5] = { name = "opend2", forward = false },
|
|
},
|
|
},
|
|
matConfigs = {
|
|
{
|
|
0, 0, 0, 0, 0, 0, 0, 0
|
|
},
|
|
},
|
|
static = false,
|
|
visibleFrom = 0,
|
|
visibleTo = 400,
|
|
|
|
},
|
|
},
|
|
metadata = {
|
|
description = {
|
|
name = _("Einheitswagen IV"),
|
|
description = _("The four axle, twin bogie \"Standard-Coach IV\" was built on the experience with \"Standard-Coach II\" and had an improved interior, and, a first, air-conditioning.")
|
|
},
|
|
railVehicle = {
|
|
topSpeed = 200,
|
|
weight = 42,
|
|
configs = {
|
|
{
|
|
axles = { "vehicle/waggon/ew_iv/lod_2_w1.msh" }
|
|
},
|
|
{
|
|
axles = { "vehicle/waggon/ew_iv/lod_0_w1.msh" }
|
|
}
|
|
},
|
|
soundSet = "waggon_modern"
|
|
},
|
|
transportVehicle = {
|
|
carrier = "RAIL",
|
|
capacities = {
|
|
{ type = "PASSENGERS", capacity = 86 }
|
|
},
|
|
loadSpeed = 2,
|
|
seats = {
|
|
--passangers
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-10, -1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-10, 0.9, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-8.8, 1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-8.8, 0.4, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-8.8, -0.9, 1))},
|
|
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-7.8, -1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-7.8, 0.25, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-7.8, 0.9, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-6.7, 1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-6.7, 0.4, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-6.7, -0.9, 1))},
|
|
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-5.8, -1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-5.8, 0.25, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-5.8, 0.9, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-4.7, 1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-4.7, 0.4, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-4.7, -0.9, 1))},
|
|
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-3.8, -1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-3.8, 0.25, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-3.8, 0.9, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-2.7, 1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-2.7, 0.4, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-2.7, -0.9, 1))},
|
|
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-1.8, -1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-1.8, 0.25, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-1.8, 0.9, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-0.7, 1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-0.7, 0.4, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-0.7, -0.9, 1))},
|
|
|
|
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(6.8, -1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(6.8, 0.25, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(6.8, 0.9, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(7.8, 1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(7.8, 0.4, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(7.8, -0.9, 1))},
|
|
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(4.7, -1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(4.7, 0.25, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(4.7, 0.9, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(5.8, 1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(5.8, 0.4, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(5.8, -0.9, 1))},
|
|
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(2.7, -1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(2.7, 0.5, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(2.7, 0.9, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(3.8, 1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(3.8, 0.4, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(3.8, -0.9, 1))},
|
|
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(0.7, -1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(0.7, 0.25, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(0.7, 0.9, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(1.8, 1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(1.8, 0.4, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(1.8, -0.9, 1))},
|
|
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(8.8, -1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(8.8, 0.9, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(10, 1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(10, 0.4, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(10, -0.9, 1))},
|
|
|
|
|
|
}
|
|
},
|
|
availability = {
|
|
yearFrom = 3000,
|
|
yearTo = 3000
|
|
},
|
|
cost = {
|
|
price = -1
|
|
},
|
|
maintenance = {
|
|
runningCosts = -1,
|
|
lifespan = 40
|
|
}
|
|
},
|
|
|
|
}
|
|
end
|