local vec3 = require "vec3" local transf = require "transf" function data() return { boundingInfo = { bbMax = { 6.480800151825, 1.7743511199951, 2.7697329521179, }, bbMin = { -5.5385432243347, -1.3530210256577, 4.3004751205444e-005, }, }, collider = { params = { }, type = "MESH", }, lods = { { animations = { }, children = { { id = "vehicle/bus/volvo_5000/lod_2_volvo5000.msh", transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, }, type = "MESH", }, { id = "vehicle/bus/volvo_5000/lod_2_door1.msh", transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -0.3426, -1.1448, 0, 1, }, type = "MESH", }, { id = "vehicle/bus/volvo_5000/lod_2_door2.msh", transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0.8837, -1.1448, 0, 1, }, type = "MESH", }, { id = "vehicle/bus/volvo_5000/lod_2_door3.msh", transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 3.8825, -1.1447, 0, 1, }, type = "MESH", }, { id = "vehicle/bus/volvo_5000/lod_2_door4.msh", transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 5.0572, -1.1475, 0, 1, }, type = "MESH", }, { id = "vehicle/bus/volvo_5000/lod_2_w1.msh", transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -2.4992, 0, 0.4804, 1, }, type = "MESH", }, { id = "vehicle/bus/volvo_5000/lod_2_w2.msh", transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 2.9743, -1.008, 0.4804, 1, }, type = "MESH", }, { id = "vehicle/bus/volvo_5000/lod_2_w2.msh", transf = { -1, 0, 0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 2.9743, 1.008, 0.4804, 1, }, type = "MESH", }, }, events = { close_all_doors = { [2] = { forward = false, name = "opend1", }, [3] = { forward = false, name = "opend2", }, [4] = { forward = false, name = "opend1", }, [5] = { forward = false, name = "opend4", }, }, open_all_doors = { [2] = { forward = true, name = "opend1", }, [3] = { forward = true, name = "opend2", }, [4] = { forward = true, name = "opend1", }, [5] = { forward = true, name = "opend4", }, }, }, matConfigs = { { 0, 0, 0, 0, 0, 0, 0, 0, }, }, static = false, visibleFrom = 250, visibleTo = 1140, }, { animations = { }, children = { { id = "vehicle/bus/volvo_5000/lod_1_volvo5000.msh", transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, }, type = "MESH", }, { id = "vehicle/bus/volvo_5000/lod_1_door1.msh", transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -0.3426, -1.1448, 0, 1, }, type = "MESH", }, { id = "vehicle/bus/volvo_5000/lod_1_door2.msh", transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0.8837, -1.1448, 0, 1, }, type = "MESH", }, { id = "vehicle/bus/volvo_5000/lod_1_door3.msh", transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 3.8825, -1.1447, 0, 1, }, type = "MESH", }, { id = "vehicle/bus/volvo_5000/lod_1_door4.msh", transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 5.0572, -1.1475, 0, 1, }, type = "MESH", }, { id = "vehicle/bus/volvo_5000/lod_1_w1.msh", transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -2.4992, 0, 0.4804, 1, }, type = "MESH", }, { id = "vehicle/bus/volvo_5000/lod_1_w2.msh", transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 2.9743, -1.008, 0.4804, 1, }, type = "MESH", }, { id = "vehicle/bus/volvo_5000/lod_1_w2.msh", transf = { -1, 0, 0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 2.9743, 1.008, 0.4804, 1, }, type = "MESH", }, }, events = { close_all_doors = { [2] = { forward = false, name = "opend1", }, [3] = { forward = false, name = "opend2", }, [4] = { forward = false, name = "opend1", }, [5] = { forward = false, name = "opend4", }, }, open_all_doors = { [2] = { forward = true, name = "opend1", }, [3] = { forward = true, name = "opend2", }, [4] = { forward = true, name = "opend1", }, [5] = { forward = true, name = "opend4", }, }, }, matConfigs = { { 0, 0, 0, 0, 0, 0, 0, 0, }, }, static = false, visibleFrom = 120, visibleTo = 250, }, { animations = { }, children = { { id = "vehicle/bus/volvo_5000/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/bus/volvo_5000/lod_0_d1.msh", transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -0.3426, -1.1448, 0, 1, }, type = "MESH", }, { id = "vehicle/bus/volvo_5000/lod_0_d2.msh", transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0.8837, -1.1448, 0, 1, }, type = "MESH", }, { id = "vehicle/bus/volvo_5000/lod_0_d3.msh", transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 3.8825, -1.1447, 0, 1, }, type = "MESH", }, { id = "vehicle/bus/volvo_5000/lod_0_d4.msh", transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 5.0572, -1.1475, 0, 1, }, type = "MESH", }, { id = "vehicle/bus/volvo_5000/lod_0_w1.msh", transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -2.4992, 0, 0.4804, 1, }, type = "MESH", }, { id = "vehicle/bus/volvo_5000/lod_0_w2.msh", transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 2.9743, -1.008, 0.4804, 1, }, type = "MESH", }, { id = "vehicle/bus/volvo_5000/lod_0_w2.msh", transf = { -1, 0, 0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 2.9743, 1.008, 0.4804, 1, }, type = "MESH", }, { id = "vehicle/bus/volvo_5000/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_square_white.msh", --manual lights transf = transf.scaleRotZYXTransl(vec3.new(1.0,0.9,0.5),transf.degToRad( -2.0, 0.0, 0.0), vec3.new( 5.45, -0.84, 0.675)), type = "MESH", }, { id = "vehicle/asset/lod_0_light_square_white.msh", --manual lights transf = transf.scaleRotZYXTransl(vec3.new(1.0,0.9,0.5),transf.degToRad( 2.0, 0.0, 0.0), vec3.new( 5.45, 0.84, 0.675)), type = "MESH", }, { id = "vehicle/bus/volvo_5000/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 = "opend3", }, [5] = { forward = false, name = "opend4", }, }, open_all_doors = { [2] = { forward = true, name = "opend1", }, [3] = { forward = true, name = "opend2", }, [4] = { forward = true, name = "opend3", }, [5] = { forward = true, name = "opend4", }, }, }, matConfigs = { { 0, 0, 0, 0, 0, 0,0, 0, 0,0, 0, }, }, static = false, visibleFrom = 0, visibleTo = 120, }, }, metadata = { description = { name = _("Volvo 5000"), description = _("This bus is a rear-engine, low-floor single-deck city bus with a chassis built by Volvo and bodywork by Säffle.") }, roadVehicle = { topSpeed = 100, weight = 10, power = 120, tractiveEffort = 15, configs = { { axles = { "vehicle/bus/volvo_5000/lod_2_w1.msh" }, wheels = { "vehicle/bus/volvo_5000/lod_2_w2.msh" }, fakeBogies = { { group = 0, position = 0, offset = 0 } } }, { axles = { "vehicle/bus/volvo_5000/lod_1_w1.msh" }, wheels = { "vehicle/bus/volvo_5000/lod_1_w2.msh" }, fakeBogies = { { group = 0, position = 0, offset = 0 } } }, { axles = { "vehicle/bus/volvo_5000/lod_0_w1.msh" }, wheels = { "vehicle/bus/volvo_5000/lod_0_w2.msh" }, fakeBogies = { { group = 0, position = 0, offset = 0 } } } }, soundSet = { name = "bus_modern", horn = "vehicle/truck_modern/horn.wav" } }, transportVehicle = { carrier = "ROAD", capacities = { { type = "PASSENGERS", capacity = 72 } }, loadSpeed = 3, seats = { { group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(4.55, 0.55, 0.3)), crew = true}, --passangers { group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(3.35, 0.67, 0.6))}, { group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(3.35, 0.2, 0.6))}, { group =1, transf = transf.rotZYXTransl(transf.degToRad(20.0, 0.0, 0.0), vec3.new(3.35, -0.9, 0.6))}, { group =1, transf = transf.rotZYXTransl(transf.degToRad(200.0, 0.0, 0.0), vec3.new(2.4, 0.87, 0.4))}, { group =1, transf = transf.rotZYXTransl(transf.degToRad(180.0, 0.0, 0.0), vec3.new(2.4, 0.4, 0.4))}, { group =1, transf = transf.rotZYXTransl(transf.degToRad(-200.0, 0.0, 0.0), vec3.new(2.4, -0.7, 0.4))}, { group =1, transf = transf.rotZYXTransl(transf.degToRad(20.0, 0.0, 0.0), vec3.new(1.25, -0.98, 0.4))}, { group =1, transf = transf.rotZYXTransl(transf.degToRad(20.0, 0.0, 0.0), vec3.new(1.25, -0.5, 0.4))}, { group =1, transf = transf.rotZYXTransl(transf.degToRad(-10.0, 0.0, 0.0), vec3.new(1.25, 0.27, 0.4))}, { group =1, transf = transf.rotZYXTransl(transf.degToRad(-10.0, 0.0, 0.0), vec3.new(1.25, 0.75, 0.4))}, { group =1, transf = transf.rotZYXTransl(transf.degToRad(20.0, 0.0, 0.0), vec3.new(-1.18, -0.98, 0.4))}, { group =1, transf = transf.rotZYXTransl(transf.degToRad(20.0, 0.0, 0.0), vec3.new(-1.18, -0.5, 0.4))}, { group =1, transf = transf.rotZYXTransl(transf.degToRad(-10.0, 0.0, 0.0), vec3.new(-1.18, 0.27, 0.4))}, { group =1, transf = transf.rotZYXTransl(transf.degToRad(-10.0, 0.0, 0.0), vec3.new(-1.18, 0.75, 0.4))}, { group =1, transf = transf.rotZYXTransl(transf.degToRad(20.0, 0.0, 0.0), vec3.new(-2, -0.98, 0.6))}, { group =1, transf = transf.rotZYXTransl(transf.degToRad(20.0, 0.0, 0.0), vec3.new(-2, -0.5, 0.6))}, { group =1, transf = transf.rotZYXTransl(transf.degToRad(-10.0, 0.0, 0.0), vec3.new(-2, 0.27, 0.6))}, { group =1, transf = transf.rotZYXTransl(transf.degToRad(-10.0, 0.0, 0.0), vec3.new(-2, 0.75, 0.6))}, { group =1, transf = transf.rotZYXTransl(transf.degToRad(-200.0, 0.0, 0.0), vec3.new(-2.9, -0.76, 0.6))}, { group =1, transf = transf.rotZYXTransl(transf.degToRad(-200.0, 0.0, 0.0), vec3.new(-2.9, -0.25, 0.6))}, { group =1, transf = transf.rotZYXTransl(transf.degToRad(190.0, 0.0, 0.0), vec3.new(-2.9, 0.5, 0.6))}, { group =1, transf = transf.rotZYXTransl(transf.degToRad(190.0, 0.0, 0.0), vec3.new(-2.9, 0.9, 0.6))}, { group =1, transf = transf.rotZYXTransl(transf.degToRad(20.0, 0.0, 0.0), vec3.new(-4, -0.98, 0.6))}, { group =1, transf = transf.rotZYXTransl(transf.degToRad(20.0, 0.0, 0.0), vec3.new(-4, -0.5, 0.6))}, { group =1, transf = transf.rotZYXTransl(transf.degToRad(-10.0, 0.0, 0.0), vec3.new(-4, 0.27, 0.6))}, { group =1, transf = transf.rotZYXTransl(transf.degToRad(-10.0, 0.0, 0.0), vec3.new(-4, 0.75, 0.6))}, { group =1, transf = transf.rotZYXTransl(transf.degToRad(20.0, 0.0, 0.0), vec3.new(-5, -0.92, 0.74))}, { group =1, transf = transf.rotZYXTransl(transf.degToRad(20.0, 0.0, 0.0), vec3.new(-5, -0.4, 0.74))}, { group =1, transf = transf.rotZYXTransl(transf.degToRad(-10.0, 0.0, 0.0), vec3.new(-5, 0.2, 0.74))}, { group =1, transf = transf.rotZYXTransl(transf.degToRad(-10.0, 0.0, 0.0), vec3.new(-5, 0.7, 0.74))}, } }, availability = { yearFrom = 2003, yearTo = 2005 }, cost = { price = -1 }, maintenance = { runningCosts = -1, lifespan = 35 } }, } end