167 lines
6.5 KiB
Plaintext
Executable File
167 lines
6.5 KiB
Plaintext
Executable File
local vec3 = require "vec3"
|
|
local transf = require "transf"
|
|
function data()
|
|
return {
|
|
lods = {
|
|
{
|
|
animations = {
|
|
|
|
},
|
|
children = {
|
|
{
|
|
id = "vehicle/tram/schst_lod_0_front.grp",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 5, 0, 0, 1,
|
|
},
|
|
type = "GROUP",
|
|
|
|
},
|
|
{
|
|
id = "vehicle/tram/schst_lod_0_back.grp",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -3.8755, 0, 0, 1,
|
|
},
|
|
type = "GROUP",
|
|
|
|
},
|
|
},
|
|
events = {
|
|
close_all_doors = {
|
|
[1] = {
|
|
forward = true,
|
|
name = "close_doors",
|
|
},
|
|
[2] = {
|
|
forward = true,
|
|
name = "close_doors",
|
|
},
|
|
},
|
|
open_all_doors = {
|
|
[1] = {
|
|
forward = true,
|
|
name = "open_doors",
|
|
},
|
|
[2] = {
|
|
forward = true,
|
|
name = "open_doors",
|
|
},
|
|
},
|
|
|
|
},
|
|
matConfigs = {
|
|
{
|
|
0, 0,
|
|
},
|
|
},
|
|
static = false,
|
|
visibleFrom = 0,
|
|
visibleTo = 1700,
|
|
|
|
},
|
|
},
|
|
metadata = {
|
|
description = {
|
|
name = _("Ce 2/2 SchSt"),
|
|
description = _("Twin axle electrical tram from the game's home town, Schaffhausen, Switzerland.")
|
|
},
|
|
railVehicle = {
|
|
configs = {
|
|
{
|
|
axles = { "vehicle/tram/schst/lod_0_w1.msh" },
|
|
|
|
}
|
|
},
|
|
topSpeed = 40,
|
|
weight = 20,
|
|
engines = {
|
|
{ type = "ELECTRIC", power = 100, tractiveEffort = 40 }
|
|
},
|
|
soundSet = "tram_old"
|
|
},
|
|
transportVehicle = {
|
|
carrier = "TRAM",
|
|
capacities = {
|
|
{ type = "PASSENGERS", capacity = 45 }
|
|
},
|
|
loadSpeed = 4,
|
|
|
|
seats = {
|
|
--driver
|
|
{ group = 1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(3.4, 0.0, 0.6)), 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.6)) },
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(-90.0, 0.0, 0.0), vec3.new(0.5, 0.6, 0.6)) },
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(-90.0, 0.0, 0.0), vec3.new(1.5, 0.6, 0.6)) },
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(-90.0, 0.0, 0.0), vec3.new(1, 0.6, 0.6)) },
|
|
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(-90.0, 0.0, 0.0), vec3.new(-0.5, 0.6, 0.6)) },
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(-90.0, 0.0, 0.0), vec3.new(-1.5, 0.6, 0.6)) },
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(-90.0, 0.0, 0.0), vec3.new(-1, 0.6, 0.6)) },
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(-90.0, 0.0, 0.0), vec3.new(-2, 0.6, 0.6)) },
|
|
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(0.0, -0.6, 0.6)) },
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(0.5, -0.6, 0.6)) },
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(1.5, -0.6, 0.6)) },
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(1, -0.7, 0.6)) },
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(2, -0.7, 0.6)) },
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(-0.5, -0.6, 0.6)) },
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(-1.5, -0.6, 0.6)) },
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(-1, -0.6, 0.6)) },
|
|
|
|
|
|
{ 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 },
|
|
{ group =1 , transf = transf.rotZYXTransl(transf.degToRad(80.0, 0.0, 0.0), vec3.new(-3.5, 0.3, 0.6)),standing = true },
|
|
|
|
--back
|
|
|
|
{group =20 , transf = transf.rotZYXTransl(transf.degToRad(-90.0, 0.0, 0.0), vec3.new(0.0, 0.6, 0.6)) },
|
|
{group =20 , transf = transf.rotZYXTransl(transf.degToRad(-90.0, 0.0, 0.0), vec3.new(0.5, 0.6, 0.6)) },
|
|
{group =20 , transf = transf.rotZYXTransl(transf.degToRad(-90.0, 0.0, 0.0), vec3.new(1.5, 0.6, 0.6)) },
|
|
{group =20 , transf = transf.rotZYXTransl(transf.degToRad(-90.0, 0.0, 0.0), vec3.new(1, 0.6, 0.6)) },
|
|
|
|
{group =20 , transf = transf.rotZYXTransl(transf.degToRad(-90.0, 0.0, 0.0), vec3.new(-0.5, 0.6, 0.6)) },
|
|
{group =20 , transf = transf.rotZYXTransl(transf.degToRad(-90.0, 0.0, 0.0), vec3.new(-1.5, 0.6, 0.6)) },
|
|
{group =20 , transf = transf.rotZYXTransl(transf.degToRad(-90.0, 0.0, 0.0), vec3.new(-1, 0.6, 0.6)) },
|
|
{group =20 , transf = transf.rotZYXTransl(transf.degToRad(-90.0, 0.0, 0.0), vec3.new(-2, 0.6, 0.6)) },
|
|
|
|
{group =20 , transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(0.0, -0.6, 0.6)) },
|
|
{group =20 , transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(0.5, -0.6, 0.6)) },
|
|
{group =20 , transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(1.5, -0.6, 0.6)) },
|
|
{group =20 , transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(1, -0.7, 0.6)) },
|
|
{group =20 , transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(2, -0.7, 0.6)) },
|
|
{group =20 , transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(-0.5, -0.6, 0.6)) },
|
|
{group =20 , transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(-1.5, -0.6, 0.6)) },
|
|
{group =20 , transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(-1, -0.6, 0.6)) },
|
|
|
|
|
|
{group =20 , transf = transf.rotZYXTransl(transf.degToRad(90.0, 0.0, 0.0), vec3.new(-1, -0.68, 0.45)) },
|
|
{group =20 , transf = transf.rotZYXTransl(transf.degToRad(-60.0, 0.0, 0.0), vec3.new(-3, -0.3, 0.6)),standing = true },
|
|
{group =20 , transf = transf.rotZYXTransl(transf.degToRad(80.0, 0.0, 0.0), vec3.new(-2.8, 0.3, 0.6)),standing = true },
|
|
{group =20 , transf = transf.rotZYXTransl(transf.degToRad(-60.0, 0.0, 0.0), vec3.new(-3, -0.3, 0.6)),standing = true },
|
|
{group =20 , transf = transf.rotZYXTransl(transf.degToRad(120.0, 0.0, 0.0), vec3.new(2.3, 0.5, 0.6)),standing = true },
|
|
{group =20 , transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(3.4, 0, 0.6)),standing = true },
|
|
|
|
|
|
|
|
|
|
}
|
|
},
|
|
availability = {
|
|
yearFrom = 1901,
|
|
yearTo = 1959
|
|
},
|
|
cost = {
|
|
price = -1
|
|
},
|
|
maintenance = {
|
|
runningCosts = -1,
|
|
lifespan = 30
|
|
}
|
|
|
|
},
|
|
|
|
}
|
|
end
|