528 lines
13 KiB
Plaintext
Executable File
528 lines
13 KiB
Plaintext
Executable File
local vec3 = require "vec3"
|
|
local transf = require "transf"
|
|
|
|
|
|
-- transf = transf.rotZYXTransl(transf.degToRad(179.382,0.054,44.205), vec3.new(18.423, 0.432, -0.819+4)),
|
|
-- transf.flipY()
|
|
|
|
|
|
function data()
|
|
return {
|
|
boundingInfo = {
|
|
bbMax = {
|
|
35.955730438232, 12.800143241882, 12.222454071045,
|
|
},
|
|
bbMin = {
|
|
-24.32844543457, -12.800143241882, -0.33479624986649,
|
|
},
|
|
|
|
},
|
|
collider = {
|
|
params = {
|
|
|
|
},
|
|
type = "MESH",
|
|
|
|
},
|
|
lods = {
|
|
{
|
|
animations = {
|
|
|
|
},
|
|
children = {
|
|
-- Body
|
|
{
|
|
id = "vehicle/plane/concorde/lod_0_body.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0+4, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/plane/concorde/lod_0_d1.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 23.7473, 1.3694, 0+4, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/plane/concorde/lod_0_d2.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 9.9035, 1.3894, 0+4, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/plane/concorde/lod_0_d3.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -7.8979, 1.3629, 0+4, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/plane/concorde/lod_0_d4.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 23.7473, -1.3694, 0+4, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/plane/concorde/lod_0_d5.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 9.9035, -1.3894, 0+4, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/plane/concorde/lod_0_d6.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -7.8979, -1.3629, 0+4, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/plane/concorde/lod_0_interior.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0+4, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/plane/concorde/lod_0_nose.msh",
|
|
transf = transf.rotZYXTransl(transf.degToRad(-90,0,90), vec3.new(28.5702, 0, 0.0691+4)),
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/plane/concorde/lod_0_nose_window.msh",
|
|
transf = transf.rotZYXTransl(transf.degToRad(-90,0,90), vec3.new(27.8155, 0, 0.2827+4)),
|
|
type = "MESH",
|
|
|
|
},
|
|
-- back wheels
|
|
{
|
|
id = "vehicle/plane/concorde/lod_0_flap_back_left1.msh",
|
|
transf = transf.rotZYXTransl(transf.degToRad(0,-1.784,-46.358), vec3.new(-0.5968, 3.9065, -0.1049+4)),
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/plane/concorde/lod_0_flap_back_left2.msh",
|
|
transf = transf.rotZYXTransl(transf.degToRad(0,0,90), vec3.new(-0.2251, 0.075, -0.5258+4)),
|
|
type = "MESH",
|
|
|
|
},
|
|
{
|
|
id = "vehicle/plane/concorde/lod_0_back_wheel_mount_left_strut.msh",
|
|
transf = transf.rotZYXTransl(transf.degToRad(0,0,0), vec3.new(-0.2207, 1.3113, -0.0756+4)),
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/plane/concorde_lod_0_back_wheel.grp",
|
|
transf = transf.rotZYXTransl(transf.degToRad(0,0,0), vec3.new(-0.0934, 3.7455, 0.0552+4)),
|
|
type = "GROUP",
|
|
|
|
},
|
|
|
|
-- back wheels mirrored
|
|
{
|
|
id = "vehicle/plane/concorde/lod_0_flap_back_left1.msh",
|
|
transf = transf.flipY(transf.rotZYXTransl(transf.degToRad(0,-1.784,-46.358), vec3.new(-0.5968, 3.9065, -0.1049+4))),
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/plane/concorde/lod_0_flap_back_left2.msh",
|
|
transf = transf.flipY(transf.rotZYXTransl(transf.degToRad(0,0,90), vec3.new(-0.2251, 0.075, -0.5258+4))),
|
|
type = "MESH",
|
|
|
|
},{
|
|
id = "vehicle/plane/concorde/lod_0_back_wheel_mount_left_strut.msh",
|
|
transf = transf.flipY(transf.rotZYXTransl(transf.degToRad(0,0,0), vec3.new(-0.2207, 1.3113, -0.0756+4))),
|
|
type = "MESH",
|
|
|
|
},{
|
|
id = "vehicle/plane/concorde_lod_0_back_wheel.grp",
|
|
transf = transf.flipY(transf.rotZYXTransl(transf.degToRad(0,0,0), vec3.new(-0.0934, 3.7455, 0.0552+4))),
|
|
type = "GROUP",
|
|
|
|
},
|
|
|
|
-- end wheel
|
|
{
|
|
id = "vehicle/plane/concorde/lod_0_flap_tail_left.msh",
|
|
transf = transf.rotZYXTransl(transf.degToRad(0,10.618,46.368), vec3.new(-18.8415, 0.1937, 1.1772+4)),
|
|
type = "MESH",
|
|
|
|
},{
|
|
id = "vehicle/plane/concorde/lod_0_flap_tail_left.msh",
|
|
transf = transf.flipY(transf.rotZYXTransl(transf.degToRad(0,10.618,46.368), vec3.new(-18.8415, 0.1937, 1.1772+4))),
|
|
type = "MESH",
|
|
|
|
},{
|
|
id = "vehicle/plane/concorde_lod_0_tail_wheel.grp",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -17.5255, 0, 1.0068+4, 1,
|
|
},
|
|
type = "GROUP",
|
|
|
|
},
|
|
-- front wheels
|
|
{
|
|
id = "vehicle/plane/concorde/lod_0_flap_front_left1.msh",
|
|
transf = transf.rotZYXTransl(transf.degToRad(0,0,0), vec3.new(20.6553, 0.5019, -0.3512+4)),
|
|
type = "MESH",
|
|
|
|
}, { -- CLOSE not open anim
|
|
id = "vehicle/plane/concorde/lod_0_flap_front_left2.msh",
|
|
transf = transf.rotZYXTransl(transf.degToRad(0,0,-65), vec3.new(17.7644, 0.5019, -0.3512+4)),
|
|
type = "MESH",
|
|
|
|
},{
|
|
id = "vehicle/plane/concorde/lod_0_flap_front_left1.msh",
|
|
transf = transf.flipY(transf.rotZYXTransl(transf.degToRad(0,0,0), vec3.new(20.6553, 0.5019, -0.3512+4))),
|
|
type = "MESH",
|
|
|
|
}, { -- CLOSE not open anim
|
|
id = "vehicle/plane/concorde/lod_0_flap_front_left2.msh",
|
|
transf = transf.flipY(transf.rotZYXTransl(transf.degToRad(0,0,-65), vec3.new(17.7644, 0.5019, -0.3512+4))),
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/plane/concorde_lod_0_front_wheel.grp",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 17.5105, 0, 0.2064+4, 1,
|
|
},
|
|
type = "GROUP",
|
|
|
|
},
|
|
-- Aircraft rudders
|
|
{
|
|
id = "vehicle/plane/concorde/lod_0_aileron_left.msh",
|
|
transf = transf.rotZYXTransl(transf.degToRad(90,10.887,-262.65), vec3.new(-9.2316, 9.3404, -0.0929+4)),
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/plane/concorde/lod_0_aileron_right.msh",
|
|
transf = transf.rotZYXTransl(transf.degToRad(90,-10.887,97.35), vec3.new(-9.2316, -9.3404, -0.0929+4)),
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/plane/concorde/lod_0_inboard_flap_left1.msh",
|
|
transf = transf.rotZYXTransl(transf.degToRad(90,4.778,91.76), vec3.new(-9.2316, 8.1387, 0.0076+4)),
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/plane/concorde/lod_0_inboard_flap_left2.msh",
|
|
transf = transf.rotZYXTransl(transf.degToRad(90,0,90), vec3.new( -9.2316, 2.9728, 0.208+4)),
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/plane/concorde/lod_0_inboard_flap_right1.msh",
|
|
transf = transf.rotZYXTransl(transf.degToRad(-270,-4.778,91.76), vec3.new(-9.2316, -8.1387, 0.0076+4)),
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/plane/concorde/lod_0_inboard_flap_right2.msh",
|
|
transf = transf.rotZYXTransl(transf.degToRad(90,0,90), vec3.new(-9.2316, -2.9728, 0.208+4)),
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/plane/concorde/lod_0_rudder_bottom.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -17.8003, 0, 2.5222+4, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/plane/concorde/lod_0_rudder_top.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -17.8003, 0, 4.9894+4, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
},
|
|
-- lights
|
|
|
|
{
|
|
id = "vehicle/plane/concorde/lod_0_navigation_light_left.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0+4, 1,
|
|
},
|
|
type = "MESH",
|
|
},{
|
|
id = "vehicle/plane/concorde/lod_0_navigation_light_right.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0+4, 1,
|
|
},
|
|
type = "MESH",
|
|
},{
|
|
id = "vehicle/plane/concorde/lod_0_aft_light.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0+4, 1,
|
|
},
|
|
type = "MESH",
|
|
},{
|
|
id = "vehicle/plane/concorde/lod_0_logo_body.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0+4, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
}, {
|
|
id = "vehicle/plane/concorde/lod_0_logo_rudder_top.msh",
|
|
transf = {
|
|
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -17.8003, 0, 4.9894+4, 1,
|
|
},
|
|
type = "MESH",
|
|
|
|
},
|
|
},
|
|
events = {
|
|
open_wheels = {
|
|
|
|
[11] = {
|
|
forward = true,
|
|
name = "open",
|
|
},
|
|
[12] = {
|
|
forward = true,
|
|
name = "open",
|
|
},
|
|
[13] = {
|
|
forward = true,
|
|
name = "open",
|
|
},
|
|
[14] = {
|
|
forward = true,
|
|
name = "open",
|
|
},
|
|
[15] = {
|
|
forward = true,
|
|
name = "open",
|
|
},
|
|
[16] = {
|
|
forward = true,
|
|
name = "open",
|
|
},
|
|
[17] = {
|
|
forward = true,
|
|
name = "open",
|
|
},
|
|
[18] = {
|
|
forward = true,
|
|
name = "open",
|
|
},
|
|
[19] = {
|
|
forward = true,
|
|
name = "open",
|
|
},
|
|
[20] = {
|
|
forward = true,
|
|
name = "open",
|
|
},
|
|
[21] = {
|
|
forward = true,
|
|
name = "open",
|
|
},
|
|
[22] = {
|
|
forward = true,
|
|
name = "open",
|
|
},
|
|
[23] = {
|
|
forward = true,
|
|
name = "open",
|
|
},
|
|
[24] = {
|
|
forward = true,
|
|
name = "open",
|
|
},
|
|
[25] = {
|
|
forward = true,
|
|
name = "open",
|
|
},
|
|
[26] = {
|
|
forward = true,
|
|
name = "open",
|
|
},
|
|
},
|
|
close_wheels = {
|
|
|
|
[11] = {
|
|
forward = false,
|
|
name = "open",
|
|
},
|
|
[12] = {
|
|
forward = false,
|
|
name = "open",
|
|
},
|
|
|
|
[13] = {
|
|
forward = false,
|
|
name = "open",
|
|
},
|
|
[14] = {
|
|
forward = false,
|
|
name = "open",
|
|
},
|
|
[15] = {
|
|
forward = false,
|
|
name = "open",
|
|
},
|
|
[16] = {
|
|
forward = false,
|
|
name = "open",
|
|
},
|
|
[17] = {
|
|
forward = false,
|
|
name = "open",
|
|
},
|
|
[18] = {
|
|
forward = false,
|
|
name = "open",
|
|
},
|
|
[19] = {
|
|
forward = false,
|
|
name = "open",
|
|
},
|
|
[20] = {
|
|
forward = false,
|
|
name = "open",
|
|
},
|
|
[21] = {
|
|
forward = false,
|
|
name = "open",
|
|
},
|
|
[22] = {
|
|
forward = false,
|
|
name = "open",
|
|
},
|
|
[23] = {
|
|
forward = true,
|
|
name = "close",
|
|
},
|
|
[24] = {
|
|
forward = false,
|
|
name = "open",
|
|
},
|
|
[25] = {
|
|
forward = true,
|
|
name = "close",
|
|
},
|
|
[26] = {
|
|
forward = false,
|
|
name = "open",
|
|
},
|
|
|
|
},
|
|
open_doors_left = {
|
|
[2] = {
|
|
forward = true,
|
|
name = "opend1",
|
|
},
|
|
},
|
|
open_doors_right = {
|
|
[5] = {
|
|
forward = true,
|
|
name = "opend4",
|
|
},
|
|
},
|
|
close_doors_left = {
|
|
[2] = {
|
|
forward = false,
|
|
name = "opend1",
|
|
},
|
|
},
|
|
close_doors_right = {
|
|
[5] = {
|
|
forward = false,
|
|
name = "opend4",
|
|
},
|
|
},
|
|
},
|
|
matConfigs = {
|
|
{
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
},
|
|
},
|
|
static = false,
|
|
visibleFrom = 0,
|
|
visibleTo = 7430,
|
|
|
|
},
|
|
},
|
|
metadata = {
|
|
airVehicle = {
|
|
weight = 78700.0,
|
|
maxPayload = 0,
|
|
maxTakeOffWeight = 187000.0,
|
|
maxThrust = 560000.0,
|
|
idleThrust = 28000.0,
|
|
timeToFullThrust = 5,
|
|
wingArea = 358,
|
|
topSpeed = 599.444444444,
|
|
configs = {
|
|
{
|
|
axles = {
|
|
"vehicle/plane/concorde/lod_0_w2.msh",
|
|
"vehicle/plane/concorde/lod_0_w3.msh",
|
|
},
|
|
wheels = {
|
|
"vehicle/plane/concorde/lod_0_w1.msh",
|
|
},
|
|
elevator = {
|
|
ids = { 44, 45, 46, 47 },
|
|
maxAngle = 15
|
|
},
|
|
aileronLeft = {
|
|
ids = { 42 },
|
|
maxAngle = 15
|
|
},
|
|
aileronRight = {
|
|
ids = { 43 },
|
|
maxAngle = 15
|
|
},
|
|
flaps = {
|
|
ids = { 9, 10, 44, 45, 46, 47 },
|
|
maxAngle = 12.5
|
|
},
|
|
rudder = {
|
|
ids = { 48, 49, 54 },
|
|
maxAngle = 20
|
|
}
|
|
}
|
|
}
|
|
},
|
|
availability = {
|
|
yearFrom = 3000,
|
|
yearTo = 3000
|
|
},
|
|
cost = {
|
|
price = -1
|
|
},
|
|
description = {
|
|
name = _("Concorde"),
|
|
description = _("The Concorde is a British-French turbojet-powered supersonic passenger jet airliner that was operated until 2003.")
|
|
},
|
|
maintenance = {
|
|
runningCosts = -1,
|
|
lifespan = 50
|
|
},
|
|
transportVehicle = {
|
|
carrier = "AIR",
|
|
capacities = {
|
|
{
|
|
type = "PASSENGERS",
|
|
capacity = 95, -- AirFrance, wikipedia
|
|
}
|
|
},
|
|
loadSpeed = 4,
|
|
seats = {
|
|
|
|
{ group =1, transf = transf.rotZYXTransl(transf.degToRad(0.0, 0.0, 0.0), vec3.new(28.2, 0.45, 0.28)), crew = true},
|
|
}
|
|
},
|
|
soundConfig = {
|
|
soundSet = { name = "concorde" }
|
|
}
|
|
}
|
|
}
|
|
end
|