// Uncomment the following line to change the fontsize and font: fontsize=16 // fontfamily=SansSerif //possible: SansSerif,Serif,Monospaced ////////////////////////////////////////////////////////////////////////////////////////////// // Welcome to UMLet! // // Double-click on elements to add them to the diagram, or to copy them // Edit elements by modifying the text in this panel // Hold Ctrl to select multiple elements // Use Ctrl+mouse to select via lasso // // Use +/- or Ctrl+mouse wheel to zoom // Drag a whole relation at its central square icon // // Press Ctrl+C to copy the whole diagram to the system clipboard (then just paste it to, eg, Word) // Edit the files in the "palettes" directory to create your own element palettes // // Select "Custom Elements > New..." to create new element types ////////////////////////////////////////////////////////////////////////////////////////////// // This text will be stored with each diagram; use it for notes. 10 UMLClass 950 960 270 180 _PlatformerPlayerMove_ -- + is_grounded : bool -- + give_vertical_jump_impulse() + accelerate_to_x_velocity() // ...helper methods... + switch_to_ground_move() + switch_to_air_move() + switch_to_dash_move() + switch_to_squat_move() + switch_to_slide_move() bg=#7fff7f UMLClass 950 810 260 90 _PlatformerMove_ -- + actor_hysics : ActorPhysics + rigid_body : RigidBody + platformer_actor_controller bg=#7fff7f UMLClass 550 810 310 50 _PlatformerActorController_ -- + abilities : PlatformerActorAbilities bg=#7fff7f UMLClass 580 520 270 90 _ActorController_ -- + move : Move + actor_physics : ActorPhysics + rigid_body : RigidBody bg=#7fff7f UMLClass 920 580 300 110 _Move_ -- + actor_controller : ActorController -- + is_completed() : bool + _move_started() + _move_stopped() bg=#7fff7f Relation 850 960 120 30 lt=<- 10.0;10.0;100.0;10.0 Relation 1060 680 30 150 lt=<<- 10.0;10.0;10.0;130.0 Relation 1060 890 30 90 lt=<<- 10.0;10.0;10.0;70.0 Relation 700 600 30 230 lt=<<- 10.0;10.0;10.0;210.0 UMLClass 550 960 310 120 _PlatformerPlayerMoveRepository_ -- + get_ground_move() + get_air_move() + get_dash_move() + get_squat_move() + get_slide_move() bg=#7fff7f Relation 840 570 100 40 10.0;20.0;80.0;20.0 UMLNote 870 460 330 100 An actor controller has a current move that it forwards _process() etc. to. Moves are tasks (AI) or states (player) that control the movement of an actor. bg=yellow UMLNote 540 1090 350 70 Optional component that to reuse moves and one way to inject custom moves for the predefined moves to switch to. bg=yellow UMLClass 1250 960 240 150 _PlatformerAiMove_ -- + navmesh_node -- // ...helper methods... + switch_to_walk_move() + switch_to_jump_move() + switch_to_ragdoll_move() + switch_to_idle_move() + switch_to_hurt_move() bg=#7fff7f Relation 1060 890 320 90 lt=<<- 10.0;10.0;10.0;40.0;300.0;40.0;300.0;70.0 UMLPackage 520 760 990 420 Platformer -- UMLPackage 560 420 680 300 Actors --