Started implementing prologue
This commit is contained in:
43
proto2/vehicles/cars/import_cars.gd
Normal file
43
proto2/vehicles/cars/import_cars.gd
Normal file
@@ -0,0 +1,43 @@
|
||||
tool
|
||||
extends EditorScenePostImport
|
||||
|
||||
func post_import(scene):
|
||||
for g in scene.get_children():
|
||||
if g is VehicleBody:
|
||||
var car_data = g.name.split("-", true)
|
||||
if car_data.size() > 1:
|
||||
var bodymass = float(car_data[car_data.size() - 1])
|
||||
g.mass = bodymass
|
||||
var new_name = []
|
||||
for c in range(car_data.size() - 1):
|
||||
new_name += [car_data[c]]
|
||||
g.name = PoolStringArray(new_name).join("-")
|
||||
g.transform = g.transform.rotated(Vector3(0, 1, 0), PI)
|
||||
var queue = [g]
|
||||
while queue.size() > 0:
|
||||
var item = queue.pop_front()
|
||||
if item is VehicleWheel:
|
||||
var wheel_data = item.name.split("-", true)
|
||||
if wheel_data.size() > 1:
|
||||
var wheel_radius : = float(wheel_data[wheel_data.size() - 1]) / 10.0
|
||||
item.wheel_radius = wheel_radius
|
||||
if item.name == "collision":
|
||||
var mesh: ArrayMesh = item.mesh
|
||||
var hull = mesh.create_convex_shape()
|
||||
var col = CollisionShape.new()
|
||||
col.shape = hull
|
||||
col.name = "col"
|
||||
g.add_child(col)
|
||||
col.owner = g
|
||||
item.queue_free()
|
||||
continue
|
||||
item.owner = g
|
||||
for c in item.get_children():
|
||||
queue.push_back(c)
|
||||
var new_scene = PackedScene.new()
|
||||
var res = new_scene.pack(g)
|
||||
if res == OK:
|
||||
ResourceSaver.save("res://vehicles/cars/car_" + g.name + ".tscn", new_scene)
|
||||
scene.remove_child(g)
|
||||
scene.add_child(new_scene.instance())
|
||||
return scene
|
||||
Reference in New Issue
Block a user