220 lines
6.0 KiB
Plaintext
Executable File
220 lines
6.0 KiB
Plaintext
Executable File
local vec3 = require "vec3"
|
|
local transf = require "transf"
|
|
|
|
function data()
|
|
return {
|
|
boundingInfo = {
|
|
bbMax = {
|
|
3.4578530788422, 0.98381000757217, 4.8104958534241,
|
|
},
|
|
bbMin = {
|
|
-3.4319260120392, -0.98381000757217, -0.33427900075912,
|
|
},
|
|
|
|
},
|
|
collider = {
|
|
params = {
|
|
|
|
},
|
|
type = "MESH",
|
|
|
|
},
|
|
lods = {
|
|
{
|
|
animations = {
|
|
|
|
},
|
|
children = {
|
|
{
|
|
id = "vehicle/tram/halle/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/tram/halle/lod_0_d1.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 2.881, -0.8389, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/tram/halle/lod_0_d2.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 2.881, 0.8389, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
},{
|
|
id = "vehicle/tram/halle/lod_0_d2.msh",
|
|
transf = {
|
|
-1, 0, 0, 0, 0, -1, 0, 0, 0, 0, 1, 0, -2.881, -0.8389, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/tram/halle/lod_0_d1.msh",
|
|
transf = {
|
|
-1, 0, 0, 0, 0, -1, 0, 0, 0, 0, 1, 0, -2.881, 0.8389, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/tram/halle/lod_0_w1.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0.8475, 0, 0.304, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/tram/halle/lod_0_w1.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -0.8475, 0, 0.304, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/tram/halle/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/asset/lod_0_light_round_white.msh",
|
|
--manual lights
|
|
transf = transf.scaleRotZYXTransl(vec3.new(1.4,1.4,1.4),transf.degToRad( 0.0, 0.0, 0.0), vec3.new( 3.46, 0.0, 3.16)),
|
|
type = "MESH",
|
|
}, {
|
|
id = "vehicle/tram/halle/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 = {
|
|
close_all_doors = {
|
|
[2] = {
|
|
forward = false,
|
|
name = "opend1",
|
|
},
|
|
[3] = {
|
|
forward = false,
|
|
name = "opend2",
|
|
},
|
|
[4] = {
|
|
forward = false,
|
|
name = "opend2",
|
|
},
|
|
[5] = {
|
|
forward = false,
|
|
name = "opend1",
|
|
},
|
|
},
|
|
open_all_doors = {
|
|
[2] = {
|
|
forward = true,
|
|
name = "opend1",
|
|
},
|
|
[3] = {
|
|
forward = true,
|
|
name = "opend2",
|
|
},
|
|
[4] = {
|
|
forward = true,
|
|
name = "opend2",
|
|
},
|
|
[5] = {
|
|
forward = true,
|
|
name = "opend1",
|
|
},
|
|
},
|
|
},
|
|
matConfigs = {
|
|
{
|
|
0, 0, 0,
|
|
0, 0, 0,
|
|
0, 0, 0, 0,
|
|
},
|
|
},
|
|
static = false,
|
|
visibleFrom = 0,
|
|
visibleTo = 1210,
|
|
|
|
},
|
|
},
|
|
metadata = {
|
|
description = {
|
|
name = _("Halle tram"),
|
|
description = _("Twin axle electrical tram with open platforms on both ends, used by the \"Allgemeine Elektricitaets-Gesellschaft Stadtbahn Halle\".")
|
|
},
|
|
railVehicle = {
|
|
configs = {
|
|
{
|
|
axles = { "vehicle/tram/halle/lod_0_w1.msh"},
|
|
|
|
}
|
|
},
|
|
topSpeed = 27,
|
|
weight = 12,
|
|
engines = {
|
|
{ type = "ELECTRIC", power = 50, tractiveEffort = 20 }
|
|
},
|
|
soundSet = "tram_old"
|
|
},
|
|
transportVehicle = {
|
|
carrier = "TRAM",
|
|
capacities = {
|
|
{ type = "PASSENGERS", capacity = 36 }
|
|
},
|
|
loadSpeed = 2,
|
|
|
|
seats = {
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(2.8, -0.1, .64)), crew = true, standing = true},
|
|
-- front
|
|
|
|
{ group = 1, transf = transf.rotZYXTransl(transf.degToRad(-90.0, 0.0, 0.0), vec3.new(0.0, 0.6, 0.45)) },
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(-90.0, 0.0, 0.0), vec3.new(0.5, 0.6, 0.45)) },
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(-90.0, 0.0, 0.0), vec3.new(1.5, 0.6, 0.45)) },
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(-90.0, 0.0, 0.0), vec3.new(1, 0.6, 0.45)) },
|
|
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(-90.0, 0.0, 0.0), vec3.new(-0.5, 0.6, 0.45)) },
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(-90.0, 0.0, 0.0), vec3.new(-1.5, 0.6, 0.45)) },
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(-90.0, 0.0, 0.0), vec3.new(-1, 0.6, 0.45)) },
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(-90.0, 0.0, 0.0), vec3.new(-2, 0.6, 0.45)) },
|
|
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(0.0, -0.6, 0.45)) },
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(0.5, -0.6, 0.45)) },
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(1.5, -0.6, 0.45)) },
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(1, -0.6, 0.45)) },
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(2, -0.6, 0.45)) },
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(-0.5, -0.6, 0.45)) },
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(-1.5, -0.6, 0.45)) },
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(-1, -0.6, 0.45)) },
|
|
|
|
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(-1, -0.68, 0.45)) },
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(-60.0, 0.0, 0.0), vec3.new(-3, -0.3, 0.6)),standing = true },
|
|
|
|
}
|
|
},
|
|
availability = {
|
|
yearFrom = 1887,
|
|
yearTo = 1945
|
|
},
|
|
cost = {
|
|
price = -1
|
|
},
|
|
maintenance = {
|
|
runningCosts = -1,
|
|
lifespan = 30
|
|
}
|
|
},
|
|
|
|
}
|
|
end
|