344 lines
13 KiB
Plaintext
Executable File
344 lines
13 KiB
Plaintext
Executable File
local vec3 = require "vec3"
|
|
local transf = require "transf"
|
|
|
|
function data()
|
|
return {
|
|
boundingInfo = {
|
|
bbMax = {
|
|
6.7440481185913, 1.4809349775314, 3.9359591007233,
|
|
},
|
|
bbMin = {
|
|
-6.7440481185913, -1.4809349775314, -0.49137100577354,
|
|
},
|
|
|
|
},
|
|
collider = {
|
|
params = {
|
|
|
|
},
|
|
type = "MESH",
|
|
|
|
},
|
|
lods = {
|
|
|
|
{
|
|
animations = {
|
|
|
|
},
|
|
children = {
|
|
{
|
|
id = "vehicle/waggon/donnerbuechse/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/donnerbuechse/lod_2_door1.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -5.3282, -0.4003, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/donnerbuechse/lod_2_door2.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 5.3873, 0.4003, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/donnerbuechse/lod_2_w1.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -4.0776, 0, 0.4702, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/donnerbuechse/lod_2_w1.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 4.0776, 0, 0.4702, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
},
|
|
},
|
|
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, 0, 0,
|
|
},
|
|
},
|
|
static = false,
|
|
visibleFrom = 400,
|
|
visibleTo = 1350,
|
|
|
|
}, {
|
|
animations = {
|
|
|
|
},
|
|
children = {
|
|
{
|
|
id = "vehicle/waggon/donnerbuechse/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/donnerbuechse/lod_0_door1.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -5.3282, -0.4003, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/donnerbuechse/lod_0_door2.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 5.3873, 0.4003, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/donnerbuechse/lod_0_door3.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -6.1203, -0.9306, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/donnerbuechse/lod_0_door4.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -6.1465, 0.9306, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/donnerbuechse/lod_0_door3.msh",
|
|
transf = {
|
|
-1, 0, 0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 6.2653, -0.9306, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/donnerbuechse/lod_0_door4.msh",
|
|
transf = {
|
|
-1, 0, 0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 6.2653, 0.9306, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/donnerbuechse/lod_0_w1.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -4.0776, 0, 0.4702, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/donnerbuechse/lod_0_w1.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 4.0776, 0, 0.4702, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/donnerbuechse/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/donnerbuechse/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 = "opend3", forward = true },
|
|
[5] = { name = "opend4", forward = true },
|
|
[6] = { name = "opend3inv", forward = true },
|
|
[7] = { name = "opend4inv", forward = true },
|
|
},
|
|
close_all_doors = {
|
|
[2] = { name = "opend1", forward = false },
|
|
[3] = { name = "opend2", forward = false },
|
|
[4] = { name = "opend3", forward = false },
|
|
[5] = { name = "opend4", forward = false },
|
|
[6] = { name = "opend3inv", forward = false },
|
|
[7] = { name = "opend4inv", forward = false },
|
|
},
|
|
open_doors_left = {
|
|
[2] = { name = "opend1", forward = true },
|
|
[3] = { name = "opend2", forward = true },
|
|
[5] = { name = "opend4", forward = true },
|
|
[7] = { name = "opend4inv", forward = true },
|
|
},
|
|
close_doors_left = {
|
|
[2] = { name = "opend1", forward = false },
|
|
[3] = { name = "opend2", forward = false },
|
|
[5] = { name = "opend4", forward = false },
|
|
[7] = { name = "opend4inv", forward = false },
|
|
},
|
|
open_doors_right = {
|
|
[2] = { name = "opend1", forward = true },
|
|
[3] = { name = "opend2", forward = true },
|
|
[4] = { name = "opend3", forward = true },
|
|
[6] = { name = "opend3inv", forward = true },
|
|
},
|
|
close_doors_right = {
|
|
[2] = { name = "opend1", forward = false },
|
|
[3] = { name = "opend2", forward = false },
|
|
[4] = { name = "opend3", forward = false },
|
|
[6] = { name = "opend3inv", forward = false },
|
|
},
|
|
},
|
|
matConfigs = {
|
|
{
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
},
|
|
},
|
|
static = false,
|
|
visibleFrom = 0,
|
|
visibleTo = 400,
|
|
|
|
},
|
|
},
|
|
metadata = {
|
|
description = {
|
|
name = _("Donnerbüchse"),
|
|
description = _("Four-wheeled, standard, open coach made entirely of iron and steel. The lack of damping caused loud rumbling, hence the name \"Thunderbox\".")
|
|
},
|
|
railVehicle = {
|
|
topSpeed = 100,
|
|
weight = 20,
|
|
configs = {
|
|
{
|
|
axles = {
|
|
"vehicle/waggon/donnerbuechse/lod_2_w1.msh",
|
|
"vehicle/waggon/donnerbuechse/lod_2_w1.msh"
|
|
}
|
|
},
|
|
{
|
|
axles = {
|
|
"vehicle/waggon/donnerbuechse/lod_0_w1.msh",
|
|
"vehicle/waggon/donnerbuechse/lod_0_w1.msh"
|
|
}
|
|
}
|
|
},
|
|
soundSet = "waggon_old"
|
|
},
|
|
transportVehicle = {
|
|
capacities = {
|
|
{ type = "PASSENGERS", capacity = 66 }
|
|
},
|
|
carrier = "RAIL",
|
|
loadSpeed = 2,
|
|
seats = {
|
|
--passangers
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-5, -1.1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-5, -0.65, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-5, 1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-5, 0.45, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-4, 1.1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-4, 0.65, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-4, -1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-4, -0.45, 1))},
|
|
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-3.7, -1.1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-3.7, -0.65, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-3.7, 1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-3.7, 0.45, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-2.7, 1.1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-2.7, 0.65, 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.45, 1))},
|
|
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-2.5, -1.1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-2.5, -0.65, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-2.5, 1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-2.5, 0.45, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-1.5, 1.1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-1.5, 0.65, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-1.5, -1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(-1.5, -0.45, 1))},
|
|
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-1.2, -1.1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-1.2, -0.65, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-1.2, 1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(-1.2, 0.45, 1))},
|
|
|
|
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(0.2, -1.1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(0.2, -0.65, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(0.2, 1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(0.2, 0.45, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(1.2, 1.1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(1.2, 0.65, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(1.2, -1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(1.2, -0.45, 1))},
|
|
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(1.5, -1.1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(1.5, -0.65, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(1.5, 1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(1.5, 0.45, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(2.5, 1.1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(2.5, 0.65, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(2.5, -1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(2.5, -0.45, 1))},
|
|
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(2.7, -1.1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(2.7, -0.65, 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.45, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(3.7, 1.1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(3.7, 0.65, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(3.7, -1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(3.7, -0.45, 1))},
|
|
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(4, -1.1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(4, -0.65, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(4, 1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(4, 0.45, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(5, 1.1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(5, 0.65, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(5, -1, 1))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(5, -0.45, 1))},
|
|
|
|
}
|
|
},
|
|
availability = {
|
|
yearFrom = 3000,
|
|
yearTo = 3000
|
|
},
|
|
cost = {
|
|
price = -1
|
|
},
|
|
maintenance = {
|
|
runningCosts = -1,
|
|
lifespan = 30
|
|
}
|
|
},
|
|
|
|
}
|
|
end
|