25 lines
780 B
Plaintext
25 lines
780 B
Plaintext
@startuml
|
|
class AttachableBlock {
|
|
- blockType : BlockType
|
|
- socketContainer : SocketContainer
|
|
- connectedBlocks : List<AttachableBlock>
|
|
- attachedJoints : List<JointBlock>
|
|
+ GetConnectedBlocks() : List<AttachableBlock>
|
|
+ GetAttachedJoints() : List<JointBlock>
|
|
+ SetBlockType(BlockType:BlockType) : void
|
|
+ DisconnectFrom(otherBlock:AttachableBlock) : void
|
|
+ UnregisterJoint(joint:JointBlock) : void
|
|
- Awake() : void
|
|
+ GetSocketContainer() : SocketContainer
|
|
+ ConnectTo(otherBlock:AttachableBlock, mySocket:SocketPoint, theirSocket:SocketPoint) : void
|
|
+ RegisterJoint(joint:JointBlock) : void
|
|
}
|
|
enum BlockType {
|
|
Regular,
|
|
Link,
|
|
Gear,
|
|
Structural,
|
|
}
|
|
MonoBehaviour <|-- AttachableBlock
|
|
@enduml
|