C# 클래스 TrafficManager.Traffic.TrafficPriority

파일 보기 프로젝트 열기: Katalyst6/CSL.TransitAddonMod 1 사용 예제들

공개 프로퍼티들

프로퍼티 타입 설명
PrioritySegments TrafficSegment[]
markedVehicles HashSet[]
maxStopVelocity float

공개 메소드들

메소드 설명
AddPrioritySegment ( ushort nodeId, ushort segmentId, SegmentEnd type ) : void
GetPrioritySegment ( ushort nodeId, ushort segmentId ) : SegmentEnd
GetPrioritySegmentIds ( ushort nodeId ) : List
GetSegmentDir ( int segment, ushort nodeid ) : Vector3
GetVehiclePosition ( ushort vehicleId ) : VehiclePosition
HasIncomingVehiclesWithHigherPriority ( ushort targetVehicleId, ushort nodeId ) : bool
IsLaneOrderConflictFree ( ushort segmentId, uint leftLaneIndex, uint rightLaneIndex ) : bool
IsLeftHandDrive ( ) : bool

Determines if the map uses a left-hand traffic system

IsLeftSegment ( ushort fromSegment, ushort toSegment, ushort nodeid ) : bool
IsPriorityNode ( ushort nodeId ) : bool
IsPrioritySegment ( ushort nodeId, ushort segmentId ) : bool
IsRightSegment ( ushort fromSegment, ushort toSegment, ushort nodeid ) : bool
RemovePrioritySegments ( ushort nodeId ) : void
TrafficLightSimulationStep ( ) : void
getPriorityNodes ( ) : HashSet
nodeHousekeeping ( ushort nodeId ) : void
segmentHousekeeping ( ushort segmentId ) : void

보호된 메소드들

메소드 설명
HasVehiclePriority ( bool debug, ushort targetCarId, bool targetIsOnMainRoad, ushort incomingCarId, bool incomingIsOnMainRoad, ushort nodeId ) : bool

비공개 메소드들

메소드 설명
AddPriorityNode ( ushort nodeId ) : byte

Adds/Sets a node as a priority node

AddVehicle ( ushort vehicleId, VehiclePosition vehiclePos ) : void
ClearTraffic ( ) : void
HandleAllVehicles ( ) : void
InvertLeftRight ( Direction dir ) : Direction
MarkVehicleInSegment ( ushort vehicleId, ushort segmentId ) : void
OnLevelLoading ( ) : void
OnLevelUnloading ( ) : void
RemovePrioritySegment ( ushort nodeId, ushort segmentId ) : void
RemoveVehicleFromSegments ( ushort vehicleId ) : void
RequestClearTraffic ( ) : void
TrafficPriority ( ) : System
UnmarkVehicleInSegment ( ushort vehicleId, ushort segmentId ) : void
fixJunctions ( ) : void
isValidPriorityNode ( ushort nodeId, NodeValidityState &nodeState ) : bool
rebuildPriorityNodes ( ) : void

rebuilds the implicitly defined set of priority nodes (traffic light nodes & nodes with priority signs)

메소드 상세

AddPrioritySegment() 공개 정적인 메소드

public static AddPrioritySegment ( ushort nodeId, ushort segmentId, SegmentEnd type ) : void
nodeId ushort
segmentId ushort
type SegmentEnd
리턴 void

GetPrioritySegment() 공개 정적인 메소드

public static GetPrioritySegment ( ushort nodeId, ushort segmentId ) : SegmentEnd
nodeId ushort
segmentId ushort
리턴 SegmentEnd

GetPrioritySegmentIds() 공개 정적인 메소드

public static GetPrioritySegmentIds ( ushort nodeId ) : List
nodeId ushort
리턴 List

GetSegmentDir() 공개 정적인 메소드

public static GetSegmentDir ( int segment, ushort nodeid ) : Vector3
segment int
nodeid ushort
리턴 Vector3

GetVehiclePosition() 공개 정적인 메소드

public static GetVehiclePosition ( ushort vehicleId ) : VehiclePosition
vehicleId ushort
리턴 VehiclePosition

HasIncomingVehiclesWithHigherPriority() 공개 정적인 메소드

public static HasIncomingVehiclesWithHigherPriority ( ushort targetVehicleId, ushort nodeId ) : bool
targetVehicleId ushort
nodeId ushort
리턴 bool

HasVehiclePriority() 보호된 정적인 메소드

protected static HasVehiclePriority ( bool debug, ushort targetCarId, bool targetIsOnMainRoad, ushort incomingCarId, bool incomingIsOnMainRoad, ushort nodeId ) : bool
debug bool
targetCarId ushort
targetIsOnMainRoad bool
incomingCarId ushort
incomingIsOnMainRoad bool
nodeId ushort
리턴 bool

IsLaneOrderConflictFree() 공개 정적인 메소드

public static IsLaneOrderConflictFree ( ushort segmentId, uint leftLaneIndex, uint rightLaneIndex ) : bool
segmentId ushort
leftLaneIndex uint
rightLaneIndex uint
리턴 bool

IsLeftHandDrive() 공개 정적인 메소드

Determines if the map uses a left-hand traffic system
public static IsLeftHandDrive ( ) : bool
리턴 bool

IsLeftSegment() 공개 정적인 메소드

public static IsLeftSegment ( ushort fromSegment, ushort toSegment, ushort nodeid ) : bool
fromSegment ushort
toSegment ushort
nodeid ushort
리턴 bool

IsPriorityNode() 공개 정적인 메소드

public static IsPriorityNode ( ushort nodeId ) : bool
nodeId ushort
리턴 bool

IsPrioritySegment() 공개 정적인 메소드

public static IsPrioritySegment ( ushort nodeId, ushort segmentId ) : bool
nodeId ushort
segmentId ushort
리턴 bool

IsRightSegment() 공개 정적인 메소드

public static IsRightSegment ( ushort fromSegment, ushort toSegment, ushort nodeid ) : bool
fromSegment ushort
toSegment ushort
nodeid ushort
리턴 bool

RemovePrioritySegments() 공개 정적인 메소드

public static RemovePrioritySegments ( ushort nodeId ) : void
nodeId ushort
리턴 void

TrafficLightSimulationStep() 공개 정적인 메소드

public static TrafficLightSimulationStep ( ) : void
리턴 void

getPriorityNodes() 공개 정적인 메소드

public static getPriorityNodes ( ) : HashSet
리턴 HashSet

nodeHousekeeping() 공개 정적인 메소드

public static nodeHousekeeping ( ushort nodeId ) : void
nodeId ushort
리턴 void

segmentHousekeeping() 공개 정적인 메소드

public static segmentHousekeeping ( ushort segmentId ) : void
segmentId ushort
리턴 void

프로퍼티 상세

PrioritySegments 공개적으로 정적으로 프로퍼티

Dictionary of segments that are connected to roads with timed traffic lights or priority signs. Index: segment id
public static TrafficSegment[] PrioritySegments
리턴 TrafficSegment[]

markedVehicles 공개적으로 정적으로 프로퍼티

Markers that defined in which segment(s) a vehicle will be in the near future. Index: vehicle id
public static HashSet[] markedVehicles
리턴 HashSet[]

maxStopVelocity 공개적으로 정적으로 프로퍼티

public static float maxStopVelocity
리턴 float