474 lines
16 KiB
Plaintext
Executable File
474 lines
16 KiB
Plaintext
Executable File
local vec3 = require "vec3"
|
|
local transf = require "transf"
|
|
function data()
|
|
return {
|
|
boundingInfo = {
|
|
bbMax = {
|
|
5.826176071167, 1.4250220060349, 3.7648839950562,
|
|
},
|
|
bbMin = {
|
|
-5.826176071167, -1.4250220060349, -0.55456000566483,
|
|
},
|
|
|
|
},
|
|
collider = {
|
|
params = {
|
|
|
|
},
|
|
type = "MESH",
|
|
|
|
},
|
|
lods = {
|
|
{
|
|
animations = {
|
|
|
|
},
|
|
children = {
|
|
{
|
|
id = "vehicle/waggon/3axes_person/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/3axes_person/lod_2_d1.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 4.4398, 0.3328, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/3axes_person/lod_2_d1.msh",
|
|
transf = {
|
|
-1, 0, 0, 0, 0, -1, 0, 0, 0, 0, 1, 0, -4.4398, -0.3328, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/3axes_person/lod_2_w1.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0.5068, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/3axes_person/lod_2_w1.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 3.9806, 0, 0.5068, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/3axes_person/lod_2_w1.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -3.9806, 0, 0.5068, 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,
|
|
},
|
|
},
|
|
static = false,
|
|
visibleFrom = 450,
|
|
visibleTo = 1250,
|
|
|
|
},
|
|
{
|
|
animations = {
|
|
|
|
},
|
|
children = {
|
|
{
|
|
id = "vehicle/waggon/3axes_person/3axes_person_lod_1_body.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/3axes_person/3axes_person_lod_1_d1.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 4.4398, 0.3328, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/3axes_person/3axes_person_lod_1_d1.msh",
|
|
transf = {
|
|
-1, 0, 0, 0, 0, -1, 0, 0, 0, 0, 1, 0, -4.4398, -0.3328, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/3axes_person/3axes_person_lod_1_d3.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 5.2806, -0.9389, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/3axes_person/3axes_person_lod_1_d4.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 5.2806, 0.9389, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/3axes_person/3axes_person_lod_1_d3.msh",
|
|
transf = {
|
|
-1, 0, 0, 0, 0, -1, 0, 0, 0, 0, 1, 0, -5.2806, 0.9389, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/3axes_person/3axes_person_lod_1_d4.msh",
|
|
transf = {
|
|
-1, 0, 0, 0, 0, -1, 0, 0, 0, 0, 1, 0, -5.2806, -0.9389, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/3axes_person/3axes_person_lod_1_w3.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0.5068, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/3axes_person/3axes_person_lod_1_w3.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 3.9806, 0, 0.5068, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/3axes_person/3axes_person_lod_1_w3.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -3.9806, 0, 0.5068, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
},
|
|
},
|
|
events = {
|
|
open_all_doors = {
|
|
[2] = { name = "opend1", forward = true },
|
|
[3] = { name = "opend1", forward = true },
|
|
[4] = { name = "opend3", forward = true },
|
|
[5] = { name = "opend4", forward = true },
|
|
[6] = { name = "opend3", forward = true },
|
|
[7] = { name = "opend4", forward = true },
|
|
},
|
|
close_all_doors = {
|
|
[2] = { name = "opend1", forward = false },
|
|
[3] = { name = "opend1", forward = false },
|
|
[4] = { name = "opend3", forward = false },
|
|
[5] = { name = "opend4", forward = false },
|
|
[6] = { name = "opend3", forward = false },
|
|
[7] = { name = "opend4", forward = false },
|
|
},
|
|
open_doors_left = {
|
|
[2] = { name = "opend1", forward = true },
|
|
[3] = { name = "opend1", forward = true },
|
|
[5] = { name = "opend4", forward = true },
|
|
[6] = { name = "opend3", forward = true },
|
|
},
|
|
close_doors_left = {
|
|
[2] = { name = "opend1", forward = false },
|
|
[3] = { name = "opend1", forward = false },
|
|
[5] = { name = "opend4", forward = false },
|
|
[6] = { name = "opend3", forward = false },
|
|
},
|
|
open_doors_right = {
|
|
[2] = { name = "opend1", forward = true },
|
|
[3] = { name = "opend1", forward = true },
|
|
[4] = { name = "opend3", forward = true },
|
|
[7] = { name = "opend4", forward = true },
|
|
},
|
|
close_doors_right = {
|
|
[2] = { name = "opend1", forward = false },
|
|
[3] = { name = "opend1", forward = false },
|
|
[4] = { name = "opend3", forward = false },
|
|
[7] = { name = "opend4", forward = false },
|
|
},
|
|
},
|
|
matConfigs = {
|
|
{
|
|
0, 0, 0, 0, 0,
|
|
0, 0, 0, 0, 0,
|
|
},
|
|
},
|
|
static = false,
|
|
visibleFrom = 80,
|
|
visibleTo = 450,
|
|
|
|
},
|
|
{
|
|
animations = {
|
|
|
|
},
|
|
children = {
|
|
{
|
|
id = "vehicle/waggon/3axes_person/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/3axes_person/lod_0_d1.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 4.4398, 0.3328, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/3axes_person/lod_0_d1.msh",
|
|
transf = {
|
|
-1, 0, 0, 0, 0, -1, 0, 0, 0, 0, 1, 0, -4.4398, -0.3328, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/3axes_person/lod_0_d3.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 5.2806, -0.9389, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/3axes_person/lod_0_d3.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 5.2806, 0.9389, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/3axes_person/lod_0_d3.msh",
|
|
transf = {
|
|
-1, 0, 0, 0, 0, -1, 0, 0, 0, 0, 1, 0, -5.2806, 0.9389, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/3axes_person/lod_0_d3.msh",
|
|
transf = {
|
|
-1, 0, 0, 0, 0, -1, 0, 0, 0, 0, 1, 0, -5.2806, -0.9389, 0, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/3axes_person/lod_0_w1.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0.5068, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/3axes_person/lod_0_w1.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 3.9806, 0, 0.5068, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/3axes_person/lod_0_w1.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -3.9806, 0, 0.5068, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/waggon/3axes_person/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/3axes_person/lod_0_logos.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 = "opend1", forward = true },
|
|
[4] = { name = "opend3", forward = true },
|
|
[5] = { name = "opend4", forward = true },
|
|
[6] = { name = "opend3", forward = true },
|
|
[7] = { name = "opend4", forward = true },
|
|
},
|
|
close_all_doors = {
|
|
[2] = { name = "opend1", forward = false },
|
|
[3] = { name = "opend1", forward = false },
|
|
[4] = { name = "opend3", forward = false },
|
|
[5] = { name = "opend4", forward = false },
|
|
[6] = { name = "opend3", forward = false },
|
|
[7] = { name = "opend4", forward = false },
|
|
},
|
|
open_doors_left = {
|
|
[2] = { name = "opend1", forward = true },
|
|
[3] = { name = "opend1", forward = true },
|
|
[5] = { name = "opend4", forward = true },
|
|
[6] = { name = "opend3", forward = true },
|
|
},
|
|
close_doors_left = {
|
|
[2] = { name = "opend1", forward = false },
|
|
[3] = { name = "opend1", forward = false },
|
|
[5] = { name = "opend4", forward = false },
|
|
[6] = { name = "opend3", forward = false },
|
|
},
|
|
open_doors_right = {
|
|
[2] = { name = "opend1", forward = true },
|
|
[3] = { name = "opend1", forward = true },
|
|
[4] = { name = "opend3", forward = true },
|
|
[7] = { name = "opend4", forward = true },
|
|
},
|
|
close_doors_right = {
|
|
[2] = { name = "opend1", forward = false },
|
|
[3] = { name = "opend1", forward = false },
|
|
[4] = { name = "opend3", forward = false },
|
|
[7] = { name = "opend4", forward = false },
|
|
},
|
|
},
|
|
matConfigs = {
|
|
{
|
|
0, 0, 0, 0, 0,
|
|
0, 0, 0, 0, 0,
|
|
},
|
|
},
|
|
static = false,
|
|
visibleFrom = 0,
|
|
visibleTo = 80,
|
|
|
|
},
|
|
},
|
|
metadata = {
|
|
description = {
|
|
name = _("Three-axle car"),
|
|
description = _("Three-axle coach with open platforms on both sides, used in Germany.")
|
|
},
|
|
railVehicle = {
|
|
topSpeed = 100,
|
|
weight = 15,
|
|
configs = {
|
|
{
|
|
axles = { "vehicle/waggon/3axes_person/lod_2_w1.msh" }
|
|
},
|
|
{
|
|
axles = { "vehicle/waggon/3axes_person/3axes_person_lod_1_w3.msh" }
|
|
},
|
|
{
|
|
axles = { "vehicle/waggon/3axes_person/lod_0_w1.msh" }
|
|
}
|
|
},
|
|
soundSet = "waggon_old"
|
|
},
|
|
transportVehicle = {
|
|
capacities = {
|
|
{ type = "PASSENGERS", capacity = 54 }
|
|
},
|
|
carrier = "RAIL",
|
|
loadSpeed = 2,
|
|
seats = {
|
|
|
|
|
|
--passangers
|
|
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-10.0, 0.0, 0.0), vec3.new(-4.15, 0.8, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-10.0, 0.0, 0.0), vec3.new(-4.15, 0.5, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(10.0, 0.0, 0.0), vec3.new(-4.15, -1, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(10.0, 0.0, 0.0), vec3.new(-4.15, -0.6, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(170.0, 0.0, 0.0), vec3.new(-3.15, 0.5, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(170.0, 0.0, 0.0), vec3.new(-3.15, -0.5, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-160.0, 0.0, 0.0), vec3.new(-3.15, 1, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(170.0, 0.0, 0.0), vec3.new(-3.15, -.8, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-10.0, 0.0, 0.0), vec3.new(-2.65, 0.8, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-10.0, 0.0, 0.0), vec3.new(-2.65, 0.5, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(10.0, 0.0, 0.0), vec3.new(-2.65, -1, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(10.0, 0.0, 0.0), vec3.new(-2.65, -0.6, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(170.0, 0.0, 0.0), vec3.new(-1.7, 0.5, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(170.0, 0.0, 0.0), vec3.new(-1.7, -0.5, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-160.0, 0.0, 0.0), vec3.new(-1.75, 1, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(170.0, 0.0, 0.0), vec3.new(-1.7, -.8, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-10.0, 0.0, 0.0), vec3.new(-1.2, 0.8, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-10.0, 0.0, 0.0), vec3.new(-1.2, 0.5, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(10.0, 0.0, 0.0), vec3.new(-1.2, -1, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(10.0, 0.0, 0.0), vec3.new(-1.2, -0.6, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(170.0, 0.0, 0.0), vec3.new(-0.3, 0.5, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(170.0, 0.0, 0.0), vec3.new(-0.3, -0.5, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-160.0, 0.0, 0.0), vec3.new(-0.3, 1, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(170.0, 0.0, 0.0), vec3.new(-0.3, -.8, 1.15))},
|
|
|
|
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-10.0, 0.0, 0.0), vec3.new(3.15, 0.8, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-10.0, 0.0, 0.0), vec3.new(3.15, 0.5, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(10.0, 0.0, 0.0), vec3.new(3.15, -1, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(10.0, 0.0, 0.0), vec3.new(3.155, -0.6, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(170.0, 0.0, 0.0), vec3.new(4.15, 0.5, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(170.0, 0.0, 0.0), vec3.new(4.15, -0.5, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-160.0, 0.0, 0.0), vec3.new(4.15, 1, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(170.0, 0.0, 0.0), vec3.new(4.15, -.8, 1.15))},
|
|
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-10.0, 0.0, 0.0), vec3.new(1.7, 0.8, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-10.0, 0.0, 0.0), vec3.new(1.7, 0.5, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(10.0, 0.0, 0.0), vec3.new(1.7, -1, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(10.0, 0.0, 0.0), vec3.new(1.7, -0.6, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(170.0, 0.0, 0.0), vec3.new(2.65, 0.5, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(170.0, 0.0, 0.0), vec3.new(2.65, -0.5, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-160.0, 0.0, 0.0), vec3.new(2.65, 1, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(170.0, 0.0, 0.0), vec3.new(2.65, -.8, 1.15))},
|
|
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-10.0, 0.0, 0.0), vec3.new(0.3, 0.8, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-10.0, 0.0, 0.0), vec3.new(0.3, 0.5, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(10.0, 0.0, 0.0), vec3.new(0.32, -1, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(10.0, 0.0, 0.0), vec3.new(0.3, -0.6, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(170.0, 0.0, 0.0), vec3.new(1.2, 0.5, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(170.0, 0.0, 0.0), vec3.new(1.2, -0.5, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-160.0, 0.0, 0.0), vec3.new(1.2, 1, 1.15))},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(170.0, 0.0, 0.0), vec3.new(1.2, -.8, 1.15))},
|
|
|
|
}
|
|
},
|
|
availability = {
|
|
yearFrom = 3000,
|
|
yearTo = 3000
|
|
},
|
|
cost = {
|
|
price = -1
|
|
},
|
|
maintenance = {
|
|
runningCosts = -1,
|
|
lifespan = 30
|
|
}
|
|
|
|
},
|
|
|
|
}
|
|
end
|