build_street.lua
proposal = api.type.SimpleProposal.new()
edge0 = api.type.SegmentAndEntity.new()
edge0.entity = -1
edge0.comp.node0 = -3
edge0.comp.node1 = -4
edge0.comp.tangent0 = api.type.Vec3f.new(40.0, 0.0, 0.0)
edge0.comp.tangent1 = api.type.Vec3f.new(40.0, 0.0, 0.0)
edge0.comp.type = 0
edge0.comp.typeIndex = 0
edge0.comp.objects = {{ -1, 1 }} edge0.type = 0
edge0.streetEdge = api.type.BaseEdgeStreet.new()
edge0.streetEdge.streetType = api.res.streetTypeRep.find("standard/country_small_new.lua")
edge1 = api.type.SegmentAndEntity.new()
edge1.entity = -2
edge1.comp.node0 = -4
edge1.comp.node1 = -5
edge1.comp.tangent0 = api.type.Vec3f.new(40.0, 0.0, 0.0)
edge1.comp.tangent1 = api.type.Vec3f.new(40.0, 0.0, 0.0)
edge1.comp.type = 0
edge1.comp.typeIndex = 0
edge1.type = 0
edge1.streetEdge = api.type.BaseEdgeStreet.new()
edge1.streetEdge.streetType = api.res.streetTypeRep.find("standard/country_small_new.lua")
proposal.streetProposal.edgesToAdd[1] = edge0
proposal.streetProposal.edgesToAdd[2] = edge1
eo = api.type.SimpleStreetProposal.EdgeObject.new()
eo.left = true
eo.model = "street/signal_waypoint.mdl"
eo.playerEntity = game.interface.getPlayer()
eo.oneWay = false
eo.param = 0.5
eo.edgeEntity = -1
eo.name = "MY Beautiful Signal"
proposal.streetProposal.edgeObjectsToAdd[1] = eo
node0 = api.type.NodeAndEntity.new()
node1 = api.type.NodeAndEntity.new()
node2 = api.type.NodeAndEntity.new()
node0.entity = -3
node0.comp.position = api.type.Vec3f.new(0.0, 0.0, 0.0)
node1.entity = -4
node1.comp.position = api.type.Vec3f.new(40.0, 0.0, 0.0)
node2.entity = -5
node2.comp.position = api.type.Vec3f.new(80.0, 0.0, 0.0)
proposal.streetProposal.nodesToAdd[1] = node0
proposal.streetProposal.nodesToAdd[2] = node1
proposal.streetProposal.nodesToAdd[3] = node2
callback = function(res, success)
print(res)
print(success)
end
cmd = api.cmd.make.buildProposal(proposal, nil, false)
api.cmd.sendCommand(cmd, callback)