-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathserver.uml
92 lines (81 loc) · 2.26 KB
/
server.uml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
@startuml
top to bottom direction
frame "Client Events" {
[Rifle Effects]
[Play Animations]
}
frame "Bullet (Class)" {
note as B
Primary purpose of the class: to create,
launch, and move a created bullet
end note
[Launch]
note top of [Launch]
The main function called from this class
manages the initial position and runs
movencheck every game heartbeat
end note
[moveNCheck]
note left of [moveNCheck]
Moves the bullet and then checks
collisions. How? Check the physics document!
end note
[formulateXPosition]
[formulateYPosition]
[getDragAdjustedXAcceleration]
[getDragAdjustedYAcceleration]
[adjustForZ]
note left of adjustForZ
Adjusts 1d x displacement into
the 2d XZ plane
end note
[convertUnits]
note left of [convertUnits]
Converts major units by multiplying
them by 20 (the meters to studs conversion)
and divides by 8 (conversion of a roblox
character assuming two meters height).
More in the physics document.
end note
[Launch] --> [moveNCheck]
[moveNCheck] --> [adjustforX]
[moveNCheck] --> [adjustForZ]
[moveNCheck] ---> [formulateYPosition]
[adjustforX] --> [formulateXPosition]
[adjustForZ] --> [formulateXPosition]
[formulateXPosition] --> [getDragAdjustedXAcceleration]
[formulateYPosition] --> [getDragAdjustedYAcceleration]
}
frame "Init Manager (Server Script)" {
note as I
Primary purpose of the script: Initiate
necesary components and recive input
from the client
end note
[Receive MouseClick]
[PlayerSpawn]
}
frame "Action Manager (Module Script)" {
[interpretMouseClick]
[giveLoadout]
}
frame "Rifle (Class)" {
[receiveMouseClick]
[???]
[receiveMouseClick] -u-> [???]
}
frame "Server Events" {
[MouseClick]
[FKey]
}
[Rifle Effects] -[hidden]-> [MouseClick]
[MouseClick] -[hidden]d-> [FKey]
[MouseClick] -l-> [Receive MouseClick]
[Receive MouseClick] -u-> [interpretMouseClick]
[PlayerSpawn] -u-> [giveLoadout]
[interpretMouseClick] -u-> [receiveMouseClick]
[???] -l-> [Launch]
[???] -r-> [Rifle Effects]
[???] -r-> [Play Animations]
[Rifle Effects] -[hidden]d-> [Play Animations]
@enduml