133 lines
3.5 KiB
Plaintext
Executable File
133 lines
3.5 KiB
Plaintext
Executable File
local vec3 = require "vec3"
|
|
local transf = require "transf"
|
|
function data()
|
|
return {
|
|
lods = {
|
|
{
|
|
animations = {
|
|
|
|
},
|
|
children = {
|
|
{
|
|
id = "vehicle/tram/strassenbahn_lod_0_body.grp",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1,
|
|
},
|
|
type = "GROUP",
|
|
|
|
},{
|
|
id = "vehicle/tram/strassenbahn_lod_0_guide.grp",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 2.9697, 0, 0.5662, 1,
|
|
},
|
|
type = "GROUP",
|
|
|
|
},{
|
|
id = "ross1-lod0.grp",
|
|
transf = {
|
|
0.32, 0, 0, 0, 0, 0.32, 0, 0, 0, 0, 0.32, 0, 5.3723, 0, 0, 1,
|
|
},
|
|
type = "GROUP",
|
|
|
|
},
|
|
},
|
|
events = {
|
|
drive = {
|
|
[3] = {
|
|
forward = true,
|
|
name = "walk",
|
|
},
|
|
},
|
|
close_all_doors = {
|
|
[1] = {
|
|
forward = false,
|
|
name = "open_all_doors",
|
|
},
|
|
},
|
|
open_all_doors = {
|
|
[1] = {
|
|
forward = true,
|
|
name = "open_all_doors",
|
|
|
|
},
|
|
},
|
|
|
|
},
|
|
matConfigs = {
|
|
{
|
|
0, 0, 0,
|
|
},
|
|
},
|
|
static = false,
|
|
visibleFrom = 0,
|
|
visibleTo = 1010,
|
|
|
|
},
|
|
},
|
|
metadata = {
|
|
description = {
|
|
name = _("Horse tram"),
|
|
description = _("The first trams in history were horse-driven. Thanks to the rail only one horse was enough.")
|
|
},
|
|
railVehicle = {
|
|
configs = {
|
|
{
|
|
axles = { "vehicle/tram/strassenbahn_1850/lod_0_w.msh" },
|
|
fakeBogies = {
|
|
{ group = 13, position = 0, offset = 2.6137 } ,
|
|
{ group = 13, position = 4.8723, offset = 0.0 } ,
|
|
{ group = 15, position = 4.8723, offset = 0.0 }
|
|
}
|
|
|
|
}
|
|
},
|
|
topSpeed = 15,
|
|
weight = 1,
|
|
engines = {
|
|
{ type = "HORSE", power = 2, tractiveEffort = 2 }
|
|
},
|
|
soundSet = "tram_horse"
|
|
},
|
|
transportVehicle = {
|
|
carrier = "TRAM",
|
|
capacities = {
|
|
{ type = "PASSENGERS", capacity = 20 }
|
|
},
|
|
loadSpeed = 2,
|
|
seats = {
|
|
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(2.4, -0.1, .64)), crew = true, standing = true},
|
|
--passangers
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(1.2, -0.6, .64)),},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(0.7, -0.6, .64)),},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(0.2, -0.6, .64)),},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(-0.3, -0.6, .64)),},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(-0.8, -0.6, .64)),},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-90.0, 0.0, 0.0), vec3.new(1.2, 0.6, .64)),},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-90.0, 0.0, 0.0), vec3.new(0.7, 0.6, .64)),},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-90.0, 0.0, 0.0), vec3.new(0.2, 0.6, .64)),},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-90.0, 0.0, 0.0), vec3.new(-0.3, 0.6, .64)),},
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(-90.0, 0.0, 0.0), vec3.new(-0.8, 0.6, .64)),},
|
|
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(-2.1, 0.2, .64)),standing = true},
|
|
|
|
|
|
}
|
|
},
|
|
availability = {
|
|
yearFrom = 1850,
|
|
yearTo = 1905
|
|
},
|
|
cost = {
|
|
price = -1
|
|
},
|
|
maintenance = {
|
|
runningCosts = -1,
|
|
lifespan = 30
|
|
},
|
|
|
|
},
|
|
|
|
}
|
|
end
|